Commit Graph

65 Commits

Author SHA1 Message Date
a8151d5c63 Fix HitWindows getting serialized alongside HitObjects
These were being serialized as the base type. On deserialization, due to
the HitWindow of objects being non-null, they would not get correctly
initialised by the CreateHitWindows() virtual method.

- Closes #10403
2020-10-07 13:45:42 +09:00
73a7b759cb Add missing obsoletion notice 2020-09-17 17:04:44 +09:00
f3b5149648 Move some suggestions to warnings, resolve issues 2020-06-03 16:48:44 +09:00
cbd563e80b Rename to IHasDuration 2020-05-27 12:38:39 +09:00
6f4cd6111c Drop obsoletion status for now 2020-05-25 16:50:49 +09:00
98125102a7 Add cancellation token support to CreateNestedHitObjects() 2020-05-15 18:07:41 +09:00
efff2bf15d Add HitObject to DefaultsApplied event 2020-05-08 18:49:19 +09:00
36079236e6 Remove pointless comment
Co-Authored-By: Dan Balasescu <smoogipoo@smgi.me>
2020-02-25 19:22:51 +09:00
a047456354 Revert changes to make HitObject abstract 2020-02-25 19:07:15 +09:00
ffc7eaa3f2 Fix hitobjects with unknown lifetimes by enforcing non-null judgement
We've seen multiple cases where DrawableHitObject are stuck in the lifetime management container
due to not implementing a judgement (meaning they are never "hit" or "missed"). To avoid this going forward
CreateJudgement() must be implemented and return a non-null judgement.

This fixes BananaShower and JuiceStreams in osu!catch.

This also makes HitObject abstract and cleans up convert HitObject implementations.
2020-02-23 13:49:06 +09:00
434c0d92e4 Use Bindable{Float,Double}s everywhere
To avoid further floating-point comparison bugs, remove all usages of
Bindable<{float,double}>, replacing them with their
Bindable<Float,Double> counterparts.
2020-02-01 22:50:29 +01:00
ddb2cfc46d Use GetEndTime in Taiko and Mania 2019-12-14 18:16:13 +08:00
709ec1404f Centralise End/StartTime retrieval to extension method 2019-11-25 19:09:14 +09:00
6fc1be64c2 Make hitobject samples a bindable list 2019-11-08 14:04:57 +09:00
9a896d52bf Fix nested hitobjects not updating 2019-10-18 13:18:41 +09:00
51bf600ea7 Use empty hitwindows instead of null 2019-10-09 19:08:31 +09:00
897b3233af Add start time tracking to EditorBeatmap 2019-10-03 14:23:48 +09:00
45f2bcc440 Fix combo bindings not being bound to nested hitobjects 2019-09-26 17:39:19 +09:00
f925e781a9 Refactor HitWindows for legibility 2019-09-06 15:24:14 +09:00
f20e07136a Add attribute to catch potential future nullrefs 2019-09-02 17:48:41 +09:00
f6102b4d92 Adjust xmldoc 2019-09-02 17:15:36 +09:00
60ea3d4e1a Fix skinning support for combobreak 2019-06-30 21:58:30 +09:00
0bd35ab7bb Turn on warnings, resolve issues 2019-04-25 17:36:17 +09:00
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
9fdd48ded2 Add 1ms offset to controlpoint lookup times 2018-12-04 12:08:46 +09:00
eb88768bd0 Fix incorrect controlpoint being applied to samples 2018-12-03 17:21:27 +09:00
1fffa48aa0 Sort nested hitobjects post-creation 2018-11-05 12:15:45 +09:00
d282d16e1c Use SortedList again 2018-10-11 20:49:12 +09:00
f53bb81723 Remove unnecessary lambda allocation 2018-10-10 14:58:54 +09:00
417ebaeb85 Reduce hitobject size by removing lazy 2018-10-10 13:03:18 +09:00
1125075b37 Use list with post-sort for nested hitobjects 2018-10-10 13:02:27 +09:00
3a7488767c Make HitObject not store the judgement 2018-08-06 11:50:18 +09:00
0d6a8a2bf5 More xmldocs 2018-08-06 11:31:54 +09:00
b35817c877 More xmldocs to hitobject/drawablehitobject 2018-08-06 10:55:38 +09:00
2a4994e5ce Make hitobjects only have one judgement + result 2018-08-03 15:38:48 +09:00
d51d0e8547 Initial structure for new hitobject judgement system 2018-08-01 21:45:59 +09:00
c67f372560 Don't create nested hitobjects unless absolutely required 2018-05-17 12:29:33 +09:00
97a523584d Make HitWindows not return null by default 2018-05-11 15:52:51 +09:00
5245d2d426 Add info about when CreateHitWindows is invoked 2018-05-11 15:36:53 +09:00
8216bc311a Restructure HitWindows to allow outside setting 2018-05-11 15:30:26 +09:00
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
0511728fbe Remove "keypress" from comment 2018-02-08 17:38:46 +09:00
70462ebee3 Make HitWindows settable by derived HitObjects 2018-02-02 18:53:05 +09:00
558c53a6ba Give HitObject some HitWindows 2018-02-02 18:47:10 +09:00
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
0fb620a8d3 Make HitObject.Samples non-nullable 2017-12-25 16:41:18 +09:00
d288d8a51f Remove SampleInfoList 2017-12-25 15:40:01 +09:00
aeafa5645a Make Samples null by default and prepopulate in mania 2017-12-23 18:06:46 +09:00
5026c7a95e SoundControlPoint -> SampleControlPoint 2017-12-23 16:34:34 +09:00
6a29f6020a Make HitObjects construct nested hit objects 2017-12-22 21:42:54 +09:00