smoogipoo
2bb7484608
Merge branch 'immutable-hit-samples' into hit-sample-pooling
2020-12-01 16:05:28 +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
Bartłomiej Dach
5fbe1823a0
Merge branch 'master' into editor-beat-snap-always
2020-11-30 18:39:22 +01:00
Dean Herbert
51741c4791
Merge branch 'master' into hit-sample-pooling
2020-11-30 22:25:28 +09:00
Dean Herbert
7f34e11467
Merge pull request #10962 from smoogipoo/improve-dho-time-offsets
...
Fix judgement offsets in non-framestable contexts
2020-11-30 19:13:25 +09:00
Dean Herbert
3ad2eeaff5
Fix outdated xmldoc
2020-11-30 18:35:30 +09:00
Dean Herbert
c17d67bc7d
Merge branch 'master' into editor-beat-snap-always
2020-11-30 18:34:38 +09:00
smoogipoo
4bbeb9ebd4
Merge branch 'master' into hit-sample-pooling
2020-11-30 18:31:58 +09:00
Dan Balasescu
b56e832e83
Merge pull request #10950 from ekrctb/pool-scrolling
...
Support hit object pooling in ScrollingPlayfield
2020-11-30 18:29:34 +09:00
smoogipoo
8f48389f89
Merge branch 'master' into improve-dho-time-offsets
2020-11-30 18:01:48 +09:00
smoogipoo
7ac2fba127
More reordering of public vs private methods
2020-11-30 17:44:58 +09:00
Dan Balasescu
11d1450c76
Merge branch 'master' into fruit-bindables
2020-11-30 16:48:22 +09:00
Dean Herbert
2745659986
Reword and xmldoc some comments
2020-11-30 15:54:20 +09:00
Dan Balasescu
69c2a18220
Merge branch 'master' into fix-drawable-judgement-animation-loss
2020-11-30 14:05:03 +09:00
Dan Balasescu
0c36a3c263
Merge branch 'master' into pool-scrolling
2020-11-30 14:04:54 +09:00
Dean Herbert
18bb0cb45b
Remove unnecessary schedule logic from Apply's local updateState call
...
There were cases in the editor where rewinding of transforms would
leave the `DrawableHitObject` in a non-`IsPresent` state, resulting in
this scheduled logic never running.
This would in turn cause ghost hitobjects, which disappear under certain
circumstances.
Reproduction:
- Open editor to empty beatmap
- Place single hitcircle at current point in time
- Drag editor timeline backwards to seek before zero, and wait for
return to zero
- Select hitcircle in playfield
- Drag hitcircle to right in timeline, triggering a start time change
2020-11-27 16:32:05 +09:00
Dean Herbert
bcc197f9fe
Merge branch 'master' into improve-dho-time-offsets
2020-11-27 15:03:56 +09:00
ekrctb
6e40de58e9
Use new OnAdd and OnRemove to invalidate DHO
2020-11-27 13:36:40 +09:00
ekrctb
8f5129323d
Merge branch 'master' into pool-scrolling
2020-11-27 13:12:05 +09:00
ekrctb
e36bb7631d
Fix colour not updated when index changes
2020-11-27 11:41:39 +09:00
ekrctb
57454bbb1c
Remove hitObject argument from OnApply and OnFree
2020-11-27 10:13:05 +09:00
Dean Herbert
94dc61150b
Merge branch 'master' into fix-drawable-judgement-animation-loss
2020-11-27 00:43:47 +09:00
Dean Herbert
b1864670a2
Merge pull request #10961 from smoogipoo/better-dho-rewind
...
Rewind pooled DHOs into better states
2020-11-27 00:42:58 +09:00
smoogipoo
aa4da2a5f8
Add xmldoc on State
2020-11-26 23:42:05 +09:00
Dean Herbert
741902f1b3
Merge pull request #10971 from smoogipoo/fix-timeline-combo-colour
...
Fix timeline blueprints sometimes not receiving combo colours
2020-11-26 19:47:21 +09:00
Dean Herbert
9811c46e35
Rename application method to better describe what it actually does
2020-11-26 19:16:18 +09:00
ekrctb
05e245d445
Allow non-pooled DHO to be reused
2020-11-26 19:07:09 +09:00
smoogipoo
e53f849aa0
Completely separate combo colours from DHOs
2020-11-26 18:14:25 +09:00
Dan Balasescu
aad6cf4ad3
Merge branch 'master' into editor-multiple-object-positional-snap
2020-11-26 17:06:47 +09:00
ekrctb
eae33fe74a
Fix format
2020-11-26 14:16:33 +09:00
ekrctb
e43f928588
Use DHO.HitObjectApplied to invalidate computation
2020-11-26 14:07:40 +09:00
ekrctb
f6faf95e33
Revert changes to HitObjectUsageBegan, not use it.
2020-11-26 14:01:46 +09:00
ekrctb
1a6e5bdaba
Merge branch 'master' into pool-scrolling
2020-11-26 13:52:52 +09:00
Bartłomiej Dach
8ff1688c4b
Merge branch 'master' into fix-drawable-judgement-animation-loss
2020-11-25 20:11:09 +01:00
smoogipoo
0414e5c550
Add MaximumJudgementOffset to DrawableHitObject, use in more places
2020-11-26 01:12:42 +09:00
smoogipoo
c744db1b57
Rewind pooled DHOs into better states
2020-11-26 00:42:25 +09:00
Dean Herbert
c46d655832
Uncomment incorrectly commented lines
2020-11-25 12:11:44 +09:00
ekrctb
b8a5cd94f7
Invoke HitObjectUsageFinished before removal
2020-11-24 19:46:57 +09:00
ekrctb
e34a205104
Rewrite hit object management, take three
2020-11-24 18:56:05 +09:00
ekrctb
7f6e4d5b21
Delay lifetime computation until loaded
2020-11-24 18:56:05 +09:00
ekrctb
d5f082e5fb
Comment about lifetime assumption
2020-11-24 18:56:05 +09:00
ekrctb
ce57e8ddfb
Separate Lifetime computation and layout update
2020-11-24 18:56:05 +09:00
ekrctb
cabc8aa63b
Revert "Simplify ScrollingHitObjectContainer logic"
...
This reverts commit b4cc39149c117e6a0e95ee917a67cec8ba723d06.
2020-11-24 18:56:05 +09:00
ekrctb
8f39b54e58
Simplify ScrollingHitObjectContainer logic
2020-11-24 18:56:05 +09:00
ekrctb
5c743adbae
Support hit object pooling scrolling playfield
2020-11-24 18:56:05 +09:00
Dean Herbert
c9a41f9dae
Make all objects in selection candidates for spatial snapping
...
Closes #10898 .
2020-11-24 17:35:54 +09:00
Dan Balasescu
87ce8a53ff
Merge branch 'master' into on-drawable-hitobject-added
2020-11-24 16:09:57 +09:00
Dean Herbert
1682260677
Remove left over logging line
2020-11-24 15:28:03 +09:00
Dean Herbert
ee33f62809
Fix DrawableJudgement not always animating correctly on skin change
...
If the skin is changed before gameplay has started (at the loading
screen) it is possible for a sequence of events to occur which results
in the animation not being played:
- `SkinReloadableDrawable` runs its BDL load (and calls `OnSkinChanged`
once)
- User changes skin, triggering `DrawableJudgement`'s skin change
handling (binding directly on the `SkinSource` locally)
- This will call `PrepareDrawables` and reinitialise the
`SkinnableDrawable` child hierarchy, then immediately apply the
animations to it.
- The new `SkinnableDrawable` will then get the `SkinChanged` event and
schedule a handler for it, which will run on its first Update call.
- Any added animations will be lost as a result.
Fixed by binding directly to the `SkinnableDrawable`'s `OnSkinChanged`.
This has the added bonus of not needing to reinitialise the child
hierarchy on skin change (which felt a bit weird in the first place).
2020-11-24 15:23:53 +09:00