351 Commits

Author SHA1 Message Date
ekrctb
e097b6e61c Add ScalingContainer back
Don't want to set DHO.Scale or DHO.Rotation because because DHO may be transformed by mods.
DHO.Size is also assigned for drawable visualizer
2020-12-10 19:42:01 +09:00
ekrctb
775c4bad97 Remove unneeded lifetime assignment 2020-12-09 10:47:04 +09:00
ekrctb
da2f3d4473 Move classes to separate files 2020-12-09 10:40:42 +09:00
ekrctb
b80204642e Revert rename error 2020-12-09 10:25:35 +09:00
ekrctb
1212ffd24f Rename to CopyStateFrom, and add comment 2020-12-08 23:35:24 +09:00
ekrctb
5ca98b0033 Add doc comments a bit 2020-12-08 23:11:22 +09:00
ekrctb
749d5380ca Pool caught objects and dropped objects 2020-12-08 22:38:10 +09:00
ekrctb
a32dac00dd Introduce IHasCatchObjectState implemented by DHO and CaughtObject 2020-12-08 21:29:26 +09:00
ekrctb
c301223d8c Make object on the catcher plate separate CaughtObject class 2020-12-08 21:11:40 +09:00
ekrctb
004c705aa9 Remove ScaleContainer and flatten the Drawable tree of catch DHO 2020-12-08 20:37:08 +09:00
Dan Balasescu
1757b9c3e7
Merge branch 'master' into fruit-piece-in-place 2020-12-08 17:42:34 +09:00
ekrctb
cb76a2d7b5 Restore catcher state on revert judgement result 2020-12-08 15:03:03 +09:00
ekrctb
b2e5658d23 Merge branch 'master' into fruit-piece-in-place 2020-12-07 18:57:42 +09:00
ekrctb
c1d39b6401 Don't inherit Fruit from Banana 2020-12-07 14:10:17 +09:00
ekrctb
7f1ad1040d Don't inherit DrawableFruit from DrawableBanana
- A banana cannot be hyper
2020-12-07 14:08:50 +09:00
ekrctb
b8f1c499a4 Allow PulpFormation to update formation dynamically
Pulps are lazily allocated but never deallocated for a DrawableFruit
2020-12-07 13:56:22 +09:00
ekrctb
0d73bf8488 Refactor catch default piece to allow reuse
But Fruit in-place update is still incomplete,
as child drawables are recreated when reused.
2020-12-07 13:14:00 +09:00
ekrctb
d51d2c5331 Don't recreate pieces when catch DHO is reused 2020-12-07 12:59:03 +09:00
ekrctb
d18397acad Adjust namespace 2020-12-07 12:35:24 +09:00
ekrctb
b4b9312e0f Move piece files of Catch ruleset 2020-12-07 12:34:38 +09:00
Dean Herbert
aa24890aff
Merge branch 'master' into caught-object-refactor 2020-12-04 14:12:33 +09:00
Dean Herbert
0134ac94a7
Merge pull request #11055 from ekrctb/catch-stateless-rng 2020-12-04 13:08:30 +09:00
ekrctb
873f2363c1 Simplify the fruit stacking code
It is now more clear that
the expression of distance checking is probably unintended (a bug)
2020-12-03 16:44:36 +09:00
ekrctb
2e8195e059 Use transformation to set fruit rotation 2020-12-03 12:13:14 +09:00
ekrctb
fdcfa81e46 Make RandomSeed a property, not a bindable 2020-12-02 20:53:47 +09:00
ekrctb
08848e49de Set banana combo colour using random seed 2020-12-02 17:12:30 +09:00
ekrctb
8b6161a51c Use deterministic randomness in catch hit object 2020-12-02 16:54:18 +09:00
ekrctb
e7c0e9834f Introduce RandomSeed in catch DHO 2020-12-02 16:53:01 +09:00
smoogipoo
946613e803 Fix bananas not playing sounds 2020-12-02 15:22:54 +09:00
Dean Herbert
71a121389b
Merge pull request #11033 from smoogipoo/immutable-hit-samples
Make HitSampleInfo immutable
2020-12-02 14:44:26 +09:00
smoogipoo
6b4a6c12c8 Fix bad equality comparer implementations 2020-12-01 18:13:53 +09:00
smoogipoo
199710b941 Implement equality comparers for HitSampleInfo 2020-12-01 16:04:08 +09:00
smoogipoo
5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00
ekrctb
70628235e3 Use hit object pooling for BananaShower. 2020-11-30 19:22:40 +09:00
ekrctb
9611aaf09e Use hit object pooling for JuiceStream.
- Use `Clear(false)` to not dispose pooled children.
- Don't set nested DHO `Origin`.
- Simplify the layout (remove custom `Origin`).
2020-11-30 19:19:14 +09:00
ekrctb
b76ae525b2 Use hit object pooling for Fruit and Banana. 2020-11-30 19:07:50 +09:00
ekrctb
94fd607a7c Use hit object pooling for Droplet and TinyDroplet. 2020-11-30 19:04:09 +09:00
ekrctb
8528b2687f Fix possible null reference. 2020-11-30 14:24:50 +09:00
ekrctb
4228977c86 Store a DHO in FruitPiece to animate itself. 2020-11-30 13:46:02 +09:00
ekrctb
5e0e4e9db7 Use private access modifier for Border field. 2020-11-30 13:07:55 +09:00
ekrctb
09b7ba41d6 Consistently use readonly field for bindables. 2020-11-30 13:00:01 +09:00
ekrctb
5d3a5081a0 Remove use of HitObject in DHO constructors. 2020-11-30 12:52:58 +09:00
ekrctb
35cd6674f6 Fix tiny droplet scale factor 2020-11-27 11:56:57 +09:00
ekrctb
e36bb7631d Fix colour not updated when index changes 2020-11-27 11:41:39 +09:00
ekrctb
dbf67f82c0 Use bindable for DrawableDroplet HyperDash state 2020-11-27 11:40:38 +09:00
ekrctb
23109f5bbc Add bindable to drawable catch hit obejcts 2020-11-27 11:08:32 +09:00
ekrctb
5e36fb322a Move fruit visual logic from CHO to DrawableFruit 2020-11-27 11:08:32 +09:00
ekrctb
c272fda416 Add bindables to catch hit objects 2020-11-27 11:02:23 +09:00
smoogipoo
e53f849aa0 Completely separate combo colours from DHOs 2020-11-26 18:14:25 +09:00
ekrctb
cafe8cf7fa Refactor border of fruits to classes 2020-11-26 15:24:32 +09:00