1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-07 20:47:26 +08:00
Commit Graph

38730 Commits

Author SHA1 Message Date
Naxess
7a6e9e5070 Change category of unsnap check to timing
Makes more sense, as this is typically the result of timing changes.
2021-04-27 02:32:57 +02:00
Naxess
9e49ecb573 Remove unused virtual keywords
Added these in a previous iteration, where I had the mania variant inherit this class.

No longer necessary as `IHasColumn` was used to make this check more generic.
2021-04-27 02:23:06 +02:00
Christine Chen
260dd06f47 Move AdminChecker to osu.Desktop.Admin 2021-04-26 20:04:34 -04:00
Naxess
a3c1b1fd52 Fix accessibility of areConcurrent 2021-04-27 01:24:38 +02:00
Naxess
217ff8238e Add snapping time comment 2021-04-27 01:23:03 +02:00
Naxess
6d5883abcb Return result of local variable instead 2021-04-27 01:19:38 +02:00
Naxess
0f0870c8b8 Sort objects by time in concurrent check test 2021-04-27 00:36:26 +02:00
Christine Chen
9ad30da729 Show a notification if game is run as administrator 2021-04-26 16:41:26 -04:00
Naxess
ce258febf6 Rename CheckUnsnaps -> CheckUnsnappedObjects
Will potentially have `CheckUnsnappedKiai` or similar later, so this is worth specifying.

Also consistent with `CheckConcurrentObjects`, which will likely have a `CheckConcurrentLines` later.
2021-04-26 20:32:44 +02:00
Naxess
b9e4f73f78 Add concurrent objects check to BeatmapVerifier 2021-04-26 20:28:59 +02:00
Naxess
b8cdcf56c0 Add concurrent object check tests 2021-04-26 20:22:24 +02:00
Naxess
a3570e18dd Add concurrent objects check
Here we use `IHasColumn` to support rulesets with columns, and so I moved that interface out into `osu.Game` from `osu.Game.Rulesets.Mania`.

We also use the same threshold as the unsnap check to ensure that no problems slip through. Specifically where an object is simultaneously not concurrent and not unsnapped but still on the same tick.
2021-04-26 20:17:18 +02:00
Derrick Timmermans
08a232f7fa
Add method to safely refresh DrawableHitObject transforms 2021-04-26 20:08:40 +02:00
Naxess
71f880aa94 Fix duplicate code in unsnap test 2021-04-26 17:44:46 +02:00
Naxess
9b9c473616 Remove redundant string formatting 2021-04-26 16:17:38 +02:00
Naxess
7b9ed924be Rename snapping methods
Further separates them from `IBeatSnapProvider`'s `SnapTime`, and groups them together more, to prevent confusion between the two interfaces.

Also changes the xmldoc of the reference time to that of `IBeatSnapProvider` for consistency.
2021-04-26 16:07:30 +02:00
Dean Herbert
bec16436b0
Merge pull request #12583 from smoogipoo/fix-score-export
Fix exported scores not being compatible with osu-stable
2021-04-26 22:32:18 +09:00
smoogipoo
213ac88a8b Fix exported scores not being compatible with osu-stable 2021-04-26 20:52:20 +09:00
smoogipoo
6560dc2d1f Fix exported replays being wrapped in zip packages 2021-04-26 20:46:44 +09:00
Dan Balasescu
47925de7ae
Merge pull request #12500 from ekrctb/drawable-object
Factor out pooling and lifetime management logic of DHO to a base class
2021-04-26 19:30:43 +09:00
Dan Balasescu
6d2a5b614c
Merge branch 'master' into drawable-object 2021-04-26 18:33:44 +09:00
Dan Balasescu
72d9cdcdf9
Merge pull request #12580 from peppy/fix-editor-slider-repeat-animation
Fix slider repeats and tails still animating with editor hit animations disabled
2021-04-26 17:36:51 +09:00
smoogipoo
1e0ee3cd61 Merge branch 'master' into fix-editor-slider-repeat-animation 2021-04-26 16:45:04 +09:00
Dan Balasescu
0727728771
Merge pull request #12579 from peppy/rename-edit-classes
Rename "EditRuleset" and "EditPlayfield" to use full "Editor" keyword
2021-04-26 16:44:35 +09:00
Dean Herbert
8b60f6e7fb
Merge pull request #12581 from smoogipoo/fix-simultaneous-slider-input
Fix simultaneous slider input not allowing both keys to be accepted
2021-04-26 16:21:48 +09:00
smoogipoo
0d0b4ea78a Rewrite comment to hopefully be more readable 2021-04-26 15:47:37 +09:00
smoogipoo
fd5fbaf0db Rename ruleset wrapper class 2021-04-26 15:37:42 +09:00
smoogipoo
f70e45b199 Prevent adding null enumerable 2021-04-26 15:35:08 +09:00
Dean Herbert
d10aac851d Extract scale constant 2021-04-26 15:30:22 +09:00
Dean Herbert
8795c5f082 Update osu! editor transform logic to allow adjustments to DrawableSliderRepeat and DrawableSliderTail 2021-04-26 15:27:10 +09:00
Dean Herbert
4da964c3f3 Expose DrawableSliderRepeat's arrow and move transforms to children 2021-04-26 15:22:42 +09:00
Dean Herbert
aa7ade8186 Expose presence of MainCirclePiece via an interface 2021-04-26 15:22:17 +09:00
smoogipoo
6182181ea1 Fix simultaneous slider input not allowing both keys 2021-04-26 15:20:29 +09:00
smoogipoo
bda8f68da4 Add failing test 2021-04-26 15:03:43 +09:00
Dean Herbert
4898471d68 Merge branch 'master' into fix-editor-slider-repeat-animation 2021-04-26 14:43:22 +09:00
Dean Herbert
cefdf1bf98
Merge pull request #12574 from frenzibyte/animate-circle-piece-usages
Fix missing animation of slider repeat and tail circle pieces
2021-04-26 14:42:46 +09:00
Dean Herbert
e8d83f2f99 Rename "EditRuleset" and "EditPlayfield" to use full "Editor" keyword 2021-04-26 14:33:30 +09:00
Dean Herbert
2764a42824
Merge pull request #12546 from smoogipoo/gcc-change-source-on-reset
Ensure source is set on GameplayClockContainer.Reset()
2021-04-26 14:12:12 +09:00
Naxess
049e42fa85 Move snapping responsibility to IBeatmap
Seems `EditorBeatmap` already implements a different kind of `SnapTime` from `IBeatSnapProvider`, so method names here aren't great.

This is very similar to what https://github.com/ppy/osu/pull/12558 is doing, so may need to do some duplicate resolution later, especially surrounding `ClosestBeatSnapDivisor`.

Worth noting that this change makes 1/7, 1/5, etc unsupported for now, as we now rely on `BindableBeatDivisor.VALID_DIVISORS`.
2021-04-26 05:07:24 +02:00
ekrctb
6561a7c7d6 Rename DrawableObject -> PoolableDrawableWithLifetime 2021-04-26 12:06:21 +09:00
ekrctb
20e3cadd30 freeIfInUse -> free, and add comments 2021-04-26 12:04:59 +09:00
Naxess
9178aa1d7d Add unsnap check tests 2021-04-26 04:48:56 +02:00
ekrctb
e6474e6ff7 Remove redundant statement (lifetime is set in base) 2021-04-26 11:47:38 +09:00
Salman Ahmed
0b9172a1dc Animate back slider repeat and tail circle pieces 2021-04-26 02:39:49 +03:00
Dean Herbert
6eee229a20
Merge pull request #12569 from plan-do-break-fix/Typo-correction
fix(docs): corrects typo in project README
2021-04-25 13:00:33 +09:00
plan-do-break-fix
fa8e8ed36f fix(docs): corrects typo in project README 2021-04-24 22:57:18 -05:00
Naxess
6fd77e536d Add unsnap check 2021-04-25 05:34:54 +02:00
Joseph Madamba
c9967f7b74 Fix button being recreated on importing state 2021-04-24 08:37:37 -07:00
Joseph Madamba
46c44c576d Fix beatmap info download button content not scaling on mouse down 2021-04-24 08:23:27 -07:00
Bartłomiej Dach
e937b778f6 Fix potential failure in ensureSourceClockSet()
`ensureSourceClockSet()` was intended to only run when the adjustable
source hasn't been set at all yet. As it turns out permitting it to run
unconditionally can break the state of the underlying interpolated
clock. This is caused by the following factors:

* While the decoupleable clock is running, its `CurrentTime` does not
  come from either the source clock, or the internal stopwatch; it is
  instead calculated using the base `InterpolatingFramedClock` logic.

* A source change of a decoupleable clock seeks the provided source
  clock to the decoupleable's current time.

* When an interpolating clock is seeked (decoupleable clock is also
  an interpolating one), its interpolation state
  (`{Last,Current}InterpolatedTime`) are reset to 0.

* If the interpolating clock determines that its current time is too
  far away from the source's time (which was set when the source is
  changed), it will ignore the source and instead continue to use
  its current time until the source clock has caught up.

Overall, the source change is not really necessary if a source is
already there. The only reason to ensure it was set was to make sure
the first seek of the gameplay clock wasn't performed in decoupled
mode. Therefore, add a guard to make sure the source is only set if
there isn't one already.
2021-04-24 14:19:39 +02:00