6e5c4ed7c6
Revert "Remove empty override"
...
This reverts commit a86a4bab91
.
2021-05-15 11:45:14 +08:00
628e7a71ed
Ignore possible nulls in Type.GetType()
calls
...
They're mostly used in extensibility scenarios, so everything happens in
runtime. There is no better resolution than to crash with a null
reference exception.
2021-05-15 00:09:34 +02:00
a86a4bab91
Remove empty override
2021-05-14 21:55:32 +08:00
67dfeeb1b7
Cleanup code in ModHidden
2021-05-14 21:29:13 +08:00
fcb226bd20
Add local variable for regular access to HitObjects
2021-05-14 16:23:45 +09:00
a447f20095
Fix formatting of #nullable enable
2021-05-14 03:38:35 +02:00
90e0b3374e
Add #nullable enable
...
Co-authored-by: Dean Herbert <pe@ppy.sh >
2021-05-14 03:34:50 +02:00
ffb6135a1b
Rework hitobject blueprints to take in hitobject models
2021-05-13 19:53:32 +09:00
19800f5f7f
Move IBeatmap
arg into context
2021-05-13 11:24:22 +02:00
b37cb3bdbe
Change interpreted difficulty from bindable to regular value
...
There's no reason for why checks would need this to be bindable. A 1-directional binding is more appropriate.
2021-05-13 09:00:30 +02:00
e7c7786db3
Merge branch 'master' into beatmap-verifier-context
2021-05-13 07:40:33 +02:00
5b71d8ca37
Merge pull request #12758 from Naxesss/verify-settings-ui
...
Add setting UI components to the verify screen
2021-05-13 14:35:35 +09:00
1b579dd838
Extract invariant instantiation info extension method
2021-05-12 23:23:51 +02:00
b7bc42e0d3
Rename "playableBeatmap" check arg to "beatmap"
...
The working beatmap is now in the context, so it's easier to distinguish beatmap type, hence no need for this prefix.
2021-05-12 02:34:16 +02:00
64d96b06a6
Add interpreted difficulty info to BeatmapVerifierContext
...
Enables checks to make use of the difficulty level as shown in the settings UI.
2021-05-12 02:30:21 +02:00
c13b93e6f1
Replace IWorkingBeatmap
arg with BeatmapVerifierContext
in checks
...
This simplifies passing of contextual information by enabling addition without needing to refactor lots of classes.
See next commit for example.
2021-05-12 02:29:18 +02:00
75adec57eb
Remove negligible default hidden TODO
2021-05-12 01:31:16 +02:00
2ecd638f7f
Merge branch 'master' into skin-components-list
2021-05-10 18:13:10 +09:00
111b501ced
Revert accidental removal of UTF-8 BOM
2021-05-07 18:04:38 +09:00
207f7f1e56
Rename FramedAutoGenerator<T> -> AutoGenerator<T>
2021-05-07 00:31:12 +09:00
ea35b72436
Remove unused IAutoGenerator interface
2021-05-06 22:57:07 +09:00
9be36230f9
Introduce AutoGenerator subclass for frame based replay generation
2021-05-06 21:59:11 +09:00
aff32b0d19
Merge branch 'master' into skin-components-list
2021-05-06 14:17:33 +09:00
cd6d070b4a
Consider "combo offsets" as legacy logic and separate from combo information
2021-05-05 07:43:08 +03:00
eeeb001d62
Refactor combo colour retrieval logic to request skin lookups instead
2021-05-05 07:17:27 +03:00
aa42cf2fc0
Fix setting lifetime during KeepAlive is ignored
2021-05-04 16:56:48 +09:00
913fc8c3bc
Revert the change of not adding non-pooled DHO to HOC until alive
2021-05-04 16:44:48 +09:00
36438175a0
Throw an exception if try to modify lifetime of PoolableDrawableWithLifetime without lifetime
2021-05-04 16:04:58 +09:00
943c497397
Return back removed using
2021-05-03 02:02:14 +03:00
b2130fc600
Fix replay frames sort instability
2021-05-03 01:58:44 +03:00
a551958eeb
Move caching of IBeatmap
to base DrawableRuleset
2021-05-01 21:32:45 +09:00
fdf8c12947
Replace BeatDivisorFinder with GetClosestBeatDivisor
2021-05-01 11:57:47 +08:00
ecb053b0de
Merge branch 'master' of https://github.com/ppy/osu into justusft/mania-color-snap
2021-05-01 11:20:28 +08:00
9cb55ca245
Merge branch 'master' into barrel-roll
2021-04-30 22:27:27 +02:00
b145f46a0a
Merge branch 'master' into skin-components-list
2021-04-30 21:10:55 +03:00
e6eea73b8b
Merge branch 'master' into basic-compose-checks
2021-04-30 23:41:46 +09:00
a1e64f4e3c
Use the existing toolbox design
2021-04-30 14:41:06 +09:00
e69ec91c07
Add xmldoc for CurrentRotation
2021-04-30 11:25:39 +09:00
7bf3498e2a
Calculate playfield scale locally
2021-04-30 02:49:19 +03:00
25e0fb1cf9
Refactor OsuModBarrelRoll to allow it's usage by other rulesets
2021-04-30 01:59:59 +03:00
9c62c90cfc
Refactor SelectionBlueprint
and MoveSelectionEvent
to work in screen-space coordinates
...
Until now, the implementation of the overrides in `SelectionBlueprint`
have been confusing to the point where I would just implement by
trial-and-error (or copying from an existing implementation). This was
due to a combination of using "object" space coordinates
(ie. the thing the `Blueprint` is operating on) and screen-space coordinates.
This change switches all event related coordinates to screen-space,
which is how we already handle rotation/scale operations. With the
introduction of other editor types where the related objects are
drawables, this also makes a lot more sense.
2021-04-29 16:10:42 +09:00
5b009c21bb
Merge branch 'master' into abstract-blueprint-handling
2021-04-29 16:10:22 +09:00
73dfb04df8
Fix uninitialized scrollLength value is used
2021-04-29 15:17:30 +09:00
632bb70e0f
Use entry to calculate lifetime in ScrollingHOC
...
DHOs cannot be used to calculate lifetime, it is not created before the entry became alive.
2021-04-29 15:04:32 +09:00
c83c804057
Expose lifetime entries from HOC
2021-04-29 14:42:41 +09:00
5aa522b1c2
Completely delegate DHO lifetime to Entry lifetime
...
A downside is lifetime update is not caught by LifetimeManagementContainer if used.
2021-04-29 14:38:01 +09:00
799d2a3300
Replace failed mania test (pooling not accounted) with a more robust test
...
Also fix null reference in Playfield
2021-04-29 14:38:01 +09:00
d262956146
Always use LifetimeEntry to manage hit objects in HitObjectContainer
...
Previously, non-pooled DHOs were immediately added as children of the HOC when Add is called. Also, non-pooled DHOs were always attached to the HOC as children.
New behavior is that non-pooled DHOs are only added after CheckChildLifetime, and only attached to the HOC while the DHOs are alive.
- LifetimeManagementContainer inheritance of HOC is removed, as it is now all DHOs are "unmanaged" (previously `AddInternal(false)`).
- The signature of `Clear` is changed, and it is now always not disposing the children immediately.
2021-04-29 14:38:01 +09:00
f3c7694eeb
Rename methods to match generally how these find-methods are named elsewhere
2021-04-28 16:57:52 +09:00
48d6c9ac4b
Move snap/divisor helper methods to inside ControlPointInfo
2021-04-28 16:47:30 +09:00