666112cb5a
Address @bdach's minor suggestions
2020-11-22 18:51:16 +09:00
4345d8dcb6
Event -> virtual method
2020-11-21 15:20:33 +09:00
281ed49332
Add HasInitialized
to DHO
...
As it turned out, `IsLoaded` is not a reliable way.
2020-11-21 11:19:52 +09:00
82aefa3868
Rework and rename to OnNewDrawableHitObject.
...
The semantics is changed and hopefully more clear.
2020-11-21 00:27:19 +09:00
772f6df668
Add a remark for DrawableHitObjectAdded
2020-11-20 18:00:00 +09:00
c013cd11c9
Add DrawableHitObjectAdded event
2020-11-20 17:56:47 +09:00
e8dbc190f1
Remove ability to pool DHOs in parent playfields
2020-11-16 23:30:24 +09:00
610ed99ae3
Add null checks to unguarded resolved-as-null fields
2020-11-14 14:52:58 +01:00
21b015d63a
Remove explicit public
2020-11-14 01:06:38 +09:00
c71b237c4f
Merge all pooling support into Playfield
2020-11-14 00:59:08 +09:00
36f1833f6e
Move hitobject pooling to Playfield
2020-11-14 00:41:18 +09:00
d83b479c81
Internalise lifetime extensions and events too
2020-11-13 19:21:45 +09:00
4a4219fd11
Add region
2020-11-13 19:21:45 +09:00
92189e35cc
Make playfield KeepAlive methods internal
2020-11-13 19:21:45 +09:00
688a442fb3
Add missing dictionary
2020-11-13 17:26:46 +09:00
942ecde0e1
Merge branch 'master' into pooling-editor-support
2020-11-13 17:23:35 +09:00
4236dd826d
Improve documentation and make abstract again
2020-11-13 14:57:09 +09:00
a07d4a7915
Remove unnecessary dictionary for now
2020-11-13 14:42:41 +09:00
8aaa500431
Add lifetime extensions
2020-11-12 18:34:50 +09:00
243e913e4a
Add hitobject usage events
2020-11-12 18:32:20 +09:00
fe347c8661
Add playfield support for keeping hitobjects alive
2020-11-12 18:30:32 +09:00
e44a8b3934
Resort as early as possible
2020-11-12 17:07:20 +09:00
cf91962865
Fix test failures due to on-the-fly starttime changes
2020-11-12 16:58:40 +09:00
974390bda7
Make Add() + Remove() virtual
2020-11-12 15:36:02 +09:00
72a6b75626
Add back removed event
2020-11-12 15:34:51 +09:00
4e43235955
Fix double bind leading to test failures
2020-11-12 15:33:49 +09:00
653f5bce67
Reword xmldocs
2020-11-12 15:00:58 +09:00
16e4e8d032
Fix possible nullref
2020-11-12 14:54:33 +09:00
1f8d376b85
Replace CreatePool() with non-virtual RegisterPool() overload
2020-11-12 14:17:33 +09:00
5dbbe11fc6
Remove PoolHitObjects, use return value of CreateDrawableRepresentation() instead
2020-11-12 14:04:16 +09:00
f652eb9982
Remove GetDrawableRepresentation() override, add null hinting
2020-11-12 13:18:44 +09:00
d7d77460fb
Small refactorings
2020-11-12 12:55:42 +09:00
a8929b0764
Revert unnecessary change of casting
2020-11-11 19:27:07 +09:00
7fdaf69903
Add some more xmldocs
2020-11-11 19:12:12 +09:00
7d02018134
Remove some unnecessary implementations for now
2020-11-11 18:54:40 +09:00
d7bee80d4e
Merge branch 'fix-incorrect-framestability-value' into hitobject-pooling-base
2020-11-11 18:52:51 +09:00
90499329bd
Fix frame stable playback not being set correctly
2020-11-11 18:50:38 +09:00
99e5450af3
Cache DrawableRuleset
2020-11-11 00:22:36 +09:00
66213f2ed0
Add pooling support to DrawableRuleset + Playfield
2020-11-10 23:56:32 +09:00
31e4d71852
Rewrite HitObjectContainer with pooling support
2020-11-10 22:49:02 +09:00
6f3f6dc28b
Add hitobject lifetime support
2020-11-10 20:16:52 +09:00
45e9f16f6b
Add initial DrawableRuleset interface
2020-11-10 19:27:08 +09:00
91c627c22d
Revert HOC changes
2020-11-07 00:57:33 +09:00
248d342a2f
Initial Apply()/FreeAfterUse() DHO implementation
2020-11-06 23:02:37 +09:00
b7696c85ad
Add more xmldocs
2020-11-01 15:23:03 +01:00
b4e5311014
Move initial state set inside updateClock
2020-10-30 20:39:25 +09:00
1bd461f229
Move clock logic back to inside updateClock method
2020-10-30 20:21:14 +09:00
0f997386ae
Fix direction and IsRunning not updating on first frame after becoming valid
...
The parent clock will not unpause until WaitingForFrames becomes false,
so I've moved the set of that before we start to propagate its values
across. Doesn't fix any visible issue but should make propagation one
game loop faster.
2020-10-30 15:26:23 +09:00
326fd03525
Fix loop not exiting after first valid frame
2020-10-30 15:25:53 +09:00
8e6c803900
Avoid running full updateClock loop when waiting on frames
2020-10-30 12:39:11 +09:00