Commit Graph

434 Commits

Author SHA1 Message Date
Darius Wattimena 38edeac710 Moved the logic to the bottom as placeCaughtObject is otherwise not called yet 2021-11-18 20:24:40 +01:00
Darius Wattimena 95891bc655 Moved clear plate logic to Catcher class 2021-11-18 20:03:41 +01:00
Darius Wattimena 2c4f1817d3 Fixed an issue where banana showers don't clear the plate when missing the last banana 2021-11-14 20:43:31 +01:00
Dan Balasescu cab254dc81
Merge branch 'master' into var-inspections-update 2021-10-27 14:02:49 +09:00
Dean Herbert 6944151486 Apply batch fixing of built-in types using `var` 2021-10-27 13:04:41 +09:00
ekrctb e5050b90a5 Don't assume catcher dash speed is 2x the walk speed 2021-10-26 20:09:48 +09:00
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
smoogipoo f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Bartłomiej Dach e79150d4da
Reorder constructor arguments for `HitExplosionEntry` 2021-08-12 21:48:08 +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 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
smoogipoo 3e56388ba8 Match casing in enum value 2021-08-02 15:08:42 +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
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
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
ekrctb d9f9ad35be Move catcher base size constant to `Catcher`. 2021-07-21 16:43:24 +09:00
ekrctb 30777795ce Add some doc comment to `CatcherArea` 2021-07-21 16:40:35 +09:00
ekrctb 94678064ff Rename `CatcherArea.MovableCatcher` to `Catcher` 2021-07-21 16:28:31 +09:00
ekrctb 81d0a9bd9c Fix item ordering 2021-07-19 21:05:36 +09:00
ekrctb 41169fbdaf Add `[NotNull]` 2021-07-19 20:20:10 +09:00
ekrctb 7201cfe0b4 Move child drawable creation of `CatchPlayfield` from constructor to `load`. 2021-07-19 20:18:17 +09:00
ekrctb 879467961f Fix catcher trails displayed in wrong place 2021-07-19 20:13:31 +09:00
ekrctb b88ee3c1a1 Pass `DroppedObjectContainer` via constructor instead of DI
It is now just one level deep, so it is not beneficial to use DI here.
This effectively reverts ae09c23e.
2021-07-19 20:11:49 +09:00
ekrctb 50f9e5f362 Replace usage of `CatcherArea.MovableCatcher` with `Catcher` 2021-07-19 19:52:40 +09:00
ekrctb 97059a9f50 Create `Catcher` in `CatchPlayfield` 2021-07-19 19:44:40 +09:00
Dean Herbert 01961fe4f9
Merge pull request #13747 from ekrctb/catcher-flip
Don't flip catcher plate contents when catcher changes direction
2021-07-06 00:02:23 +09:00
ekrctb 83c80291d4 Don't flip catcher plate contents in legacy skin 2021-07-02 23:23:21 +09:00
ekrctb fbba32647e Decouple direction of catcher from its scale 2021-07-02 23:22:39 +09:00
ekrctb 170513568b Move caught object stack vertical offset logic 2021-07-02 20:43:47 +09:00
Dean Herbert ee6cf4396a
Merge pull request #13648 from ekrctb/dropped-object-container
Use DI to resolve "dropped object target" container in `Catcher`
2021-06-25 18:23:39 +09:00
ekrctb c0c1b8d620 Fix catcher hyper-dash afterimage is not always displayed 2021-06-24 16:12:43 +09:00
ekrctb ae09c23e4e Resolve `DroppedObjectContainer` via DI 2021-06-24 16:09:13 +09:00
ekrctb 16d5893535 Add `DroppedObjectContainer` class 2021-06-24 15:51:54 +09:00