Commit Graph

1430 Commits

Author SHA1 Message Date
Dean Herbert b339c149d8 Copy `BaseDifficulty` to `Beatmap<T>` and move all write operations across 2021-10-06 15:10:45 +09:00
Dean Herbert a92d499d7a Convert usages of `BeatmapDifficulty` to `IBeatmapDifficultyInfo` 2021-10-01 16:55:50 +09:00
Dean Herbert 16e60eed56 Reduce `NestedHitObject` enumerator overhead
This was especially bad due to it allocating on any and every start time
change, even the first (see usage in `HitObject.ctor`).
2021-09-20 15:09:27 +09:00
smoogipoo f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert 6dcd9427ac Remove bindable usage in `PathControlPoint`
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.

I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
Xexxar ae076c9a4e merged latest ppy/master 2021-08-16 22:20:12 +00:00
Xexxar 176b3e7533 changed decay system to allow for customizing the currentStrain 2021-08-16 22:14:29 +00:00
Bartłomiej Dach b84f238106
Adjust scaling numbers to be closer to stable 2021-08-12 22:33:12 +02:00
Bartłomiej Dach e79150d4da
Reorder constructor arguments for `HitExplosionEntry` 2021-08-12 21:48:08 +02:00
Bartłomiej Dach f3045b3152
Add comment about swapped sprite names 2021-08-12 21:48:07 +02:00
Bartłomiej Dach 68f454b51a
Enable NRT in explosion-related classes and streamline null handling 2021-08-12 21:48:07 +02:00
Bartłomiej Dach 98ce69d1d3
Fix explosion reading out time values from wrong clock 2021-08-11 23:32:58 +02:00
Bartłomiej Dach 427a88940c
Remove duplicated `ClearTransforms()` call 2021-08-11 23:18:42 +02:00
Bartłomiej Dach 2fb19210af
Fix legacy explosion sprites incorrectly showing after skin change 2021-08-11 22:36:27 +02:00
Bartłomiej Dach 4bcbe6ac90
Restructure explosion to ensure proper lifetime bounds 2021-08-11 21:23:34 +02:00
Bartłomiej Dach 8c8a64fe6e
Add legacy hit lighting implementation 2021-08-11 21:23:33 +02:00
Bartłomiej Dach 95a58ca366
Store judgement directly in hit explosion entry 2021-08-11 21:23:33 +02:00
Bartłomiej Dach a1f50e39aa
Add basic structure for skinning catch explosions 2021-08-11 21:23:32 +02:00
Bartłomiej Dach a9e53107d1
Also mirror banana showers 2021-08-10 22:33:28 +02:00
Bartłomiej Dach 637e5cb6b7
Fix offsets not being mirrored 2021-08-10 22:33:28 +02:00
Dean Herbert 30cda318f9 Reorganise code slightly 2021-08-09 15:57:18 +09:00
Salman Ahmed 3a741affa3 Remove whitespaces 2021-08-08 21:27:48 +03:00
Gabe Livengood c72224fa94
Add "Mirror" mod to osu!catch 2021-08-08 13:45:13 -04:00
smoogipoo 3e56388ba8 Match casing in enum value 2021-08-02 15:08:42 +09:00
smoogipoo 9b98014606 Merge branch 'master' into catcher-trail-entry 2021-08-02 15:07:48 +09:00
ekrctb 4c68268d98 Call `ApplyTransformsAt` on free 2021-07-31 08:31:08 +09:00
ekrctb 4e2f928d65 Fix comment 2021-07-30 15:44:09 +09:00
Henry Lin 7251c28c4a Merge branch 'master' into mod-muted 2021-07-29 21:14:03 +08:00
ekrctb a204ef39dd Prevent catcher trail generation while rewinding 2021-07-29 17:32:38 +09:00
ekrctb 81f23e1111 Manage catcher trails by lifetime entries 2021-07-29 17:12:01 +09:00
Henry Lin e89f33483d Code formatting fixes 2021-07-28 21:52:01 +08:00
Henry Lin 22d83c75e3 Revert imports re-ordering
Out of the scope of this PR
2021-07-28 18:32:38 +08:00
Henry Lin 58bbe9db7e Added muted mod 2021-07-28 18:21:08 +08:00
ekrctb 90f3611ed0 Replace "sprite" variable names in `CatcherTrailDisplay`
The `CatcherTrail` was originally named `CatcherTrailSprite`, but it is not a sprite anymore.
2021-07-28 19:11:22 +09:00
ekrctb a960a28d06 Replace "end glow" terminology with "hyper-dash after-image"
Because the is "end glow" is when a hyper-dash is *started*, the name was confusing.
The "after-image" was already used in the code as a synonym of "end glow" inconsistently.
2021-07-28 19:11:22 +09:00
Dean Herbert 2b107d624a
Merge pull request #14024 from ekrctb/trail-generation
Move catcher trail generation logic to `CatcherArea` to remove mutual dependency of `Catcher` and `CatcherTrailDisplay`
2021-07-28 19:06:44 +09:00
ekrctb 0bf04ece34 Avoid `internal` property by using `ChildrenOfType` 2021-07-28 18:13:43 +09:00
ekrctb 846f539428 Avoid usage of LINQ in last dash trail computation 2021-07-27 19:11:08 +09:00
ekrctb da69867fd4 Move catcher trail generation logic to `CatcherArea` 2021-07-27 19:07:37 +09:00
ekrctb de68fd12b3 Move catcher trail colouring logic to `CatcherTrailDisplay` 2021-07-27 19:07:37 +09:00
ekrctb 8045534fa5 Remove outdated comment and simplify code 2021-07-26 18:18:24 +09:00
ekrctb 4282442278 Make `Catcher.body` private as it is no longer needed by `CatcherTrailDisplay` 2021-07-26 17:58:34 +09:00
ekrctb c08130398c Add some comments 2021-07-26 17:58:34 +09:00
ekrctb bb046fa3b8 Move catcher trail generation logic to `Catcher`
It resolves mutual dependency of `Catcher` and `CatcherTrailDisplay`.
Trail generation logic is moved to `Catcher`.
The generation logic no longer uses delayed scheduling because the hidden state is hard to manage.
Instead, the last time a trail is generated is calculated and used.
The new logic has a different behavior when the dash key is pressed in succession under 50ms, but it is not noticeable for normal plays.
2021-07-26 17:51:59 +09:00
Dean Herbert 50a2abbe7f
Merge pull request #12683 from frenzibyte/legacy-beatmap-combo-offset
Apply combo offsets "colour hax" only on beatmap skins
2021-07-23 14:30:18 +09:00
Dean Herbert a7d6c682de
Merge pull request #13983 from ekrctb/juice-stream-placement
Add initial implementation of juice stream placement
2021-07-23 13:52:25 +09:00
ekrctb bd3386e770 Fix previously placed vertices in juice stream placement
A different UX than not fixing vertices.
2021-07-23 10:18:37 +09:00
ekrctb 4509c8bcfb Use the more consistent `lastVertex`, with a comment 2021-07-23 10:13:55 +09:00
ekrctb d49d303bae Call `GetContainingInputManager` at `LoadComplete` 2021-07-23 10:10:55 +09:00
Salman Ahmed 523c154f15 Add `ComboIndexWithOffsetsBindable` and bind similar to `ComboIndexBindable` 2021-07-22 16:40:33 +03:00