1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-22 13:27:23 +08:00
Commit Graph

3255 Commits

Author SHA1 Message Date
Dan Balasescu
44b1102241
Merge branch 'master' into autoplay-pause-support 2021-06-03 13:26:00 +09:00
Dan Balasescu
c065f761c7
Merge branch 'master' into legacy-skin-default-fallback 2021-06-02 19:08:52 +09:00
ekrctb
c06ff3c623 Remove defunct Animate calls 2021-06-02 11:46:28 +09:00
ekrctb
b82190e157 Fix hit circle animation reset when skin is changed
The transforms applied in `Animate` call was not applied because the piece is recreated.
2021-06-02 11:32:24 +09:00
Dean Herbert
14570b6fb1 Merge branch 'master' into autoplay-pause-support 2021-06-01 14:19:21 +09:00
Dean Herbert
00b3eea840 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-05-31 21:39:04 +09:00
Dean Herbert
33577cbad5 Fix multiple issues with default lookups 2021-05-31 21:29:47 +09:00
Dean Herbert
88ed95e012 Add FindProvider lookup function 2021-05-31 21:29:47 +09:00
Dean Herbert
de0e51a81d Merge branch 'master' into fix-skin-sample-lookup 2021-05-31 15:27:39 +09:00
Dean Herbert
17574833fb Update other transformers with similar refactored logic 2021-05-30 19:15:59 +09:00
Salman Ahmed
fbc316ea1d Fix legacy skin transformers potentially ignoring source implementations 2021-05-29 21:23:22 +03:00
Dean Herbert
6268bbea85 Merge branch 'master' into fix-skin-sample-lookup 2021-05-28 14:47:35 +09:00
Dean Herbert
70a844ac10 Remove allowFallback parameters completely 2021-05-27 14:50:42 +09:00
Endrik Tombak
9ac4ef273e Make DrawableSliderTail not require ITrackSnaking 2021-05-26 23:21:05 +03:00
Pasi4K5
d5de5ae640 Add comments explaining the usage of shiftNestedObjects() 2021-05-26 20:50:31 +02:00
Dean Herbert
a08a4aa911 Move second call to shiftNestedObjects to a more understandable location 2021-05-26 16:48:16 +09:00
Dean Herbert
d6c4be207b Simplify naming 2021-05-26 16:44:44 +09:00
Dean Herbert
ad3e4287cd Move distanceToPrev inside randomisation function 2021-05-26 16:44:05 +09:00
Dean Herbert
6ca9b37c28 Make random generator a field to avoid passing around internally 2021-05-26 16:42:20 +09:00
Dean Herbert
6181b1ac92 Simplify previous object handling by using a class instead of struct 2021-05-26 16:42:20 +09:00
Dean Herbert
c5ff052096 Change internal to public 2021-05-26 16:31:25 +09:00
Pasi4K5
c85d5513be Remove redundant parameter and unused setters 2021-05-25 21:42:26 +02:00
Pasi4K5
bdbd64c88d Fix sliders being partly outside of the playfield in some cases 2021-05-25 21:32:18 +02:00
Dean Herbert
a3c78674a1 Add new interface for autoplay mods 2021-05-25 18:09:24 +09:00
Pasi4K5
098d8c2131 Add complete randomisation for first hit object and hit objects after spinners 2021-05-24 15:13:31 +02:00
smoogipoo
3db995c778 Fix sliders jumping around the screen on movement 2021-05-24 17:15:57 +09:00
Dean Herbert
8336428574 Add regression test for spinner sample actually transforming its frequency 2021-05-24 15:10:33 +09:00
Dean Herbert
53b5341bb9 Simplify application logic 2021-05-24 14:34:27 +09:00
Dean Herbert
a92ded8a2f Apply renaming and general code clean-up 2021-05-24 14:28:07 +09:00
Dean Herbert
88d7bc195d Split out and clean up playfield sizing references 2021-05-24 14:27:56 +09:00
Dean Herbert
8dd3f11d28 Tidy up struct and previous object handling 2021-05-24 14:19:10 +09:00
Dean Herbert
bb2fae55ce Merge branch 'master' into refactor-selection-rotate-logic 2021-05-21 19:19:54 +09:00
Dean Herbert
df5970fab4 Create base implementations of the two most common TernaryStateMenuItems 2021-05-20 19:34:53 +09:00
Dean Herbert
27e81d6504 Implement proper rotation algorithm for skin editor 2021-05-20 18:21:16 +09:00
Dean Herbert
a0f67ef3bc Move scaling logic out of OsuSelectionHandler for reuse 2021-05-19 17:37:28 +09:00
Dean Herbert
d661e98fa6 Move common functionality out of OsuSelectionHandler and implement flip support 2021-05-18 18:34:06 +09:00
Dean Herbert
a96603f025
Merge pull request #12782 from smoogipoo/rework-hitobject-blueprints
Rename hitobject blueprints and tie them to HitObjects
2021-05-18 16:30:58 +09:00
smoogipoo
532c41c82e Remove nested blueprints from sliders 2021-05-18 14:19:11 +09:00
smoogipoo
e621cfc4ea Add Apply() method for applying new DHOs 2021-05-18 14:14:10 +09:00
smoogipoo
0989aa3364 Fix accuracy heatmap points changing colour 2021-05-17 18:07:50 +09:00
Dean Herbert
a32f1ef35a
Merge pull request #12811 from PercyDan54/hidden-code-cleanup
Remove obsolete methods in `ModHidden` and apply few touches
2021-05-16 22:07:45 +09:00
Henry Lin
a91f2d3dba Change "judgment" to "judgement" 2021-05-16 10:17:04 +08:00
Dean Herbert
bdcb1a624e
Merge pull request #12759 from Naxesss/beatmap-verifier-context
Encapsulate check arguments in context object
2021-05-15 15:39:12 +09:00
PercyDan54
63ac430386
Rename startTime in parameters 2021-05-15 11:26:16 +08:00
Pasi4K5
878182fbdf Fix slider ticks not being shifted along with their parent sliders 2021-05-15 02:07:24 +02:00
Pasi4K5
3fa6a0413b Add slider position randomisation 2021-05-14 23:04:09 +02:00
PercyDan54
a4c1b9a1a7
Rename startTime to fadeStartTime 2021-05-14 21:56:13 +08:00
PercyDan54
a86a4bab91
Remove empty override 2021-05-14 21:55:32 +08:00
PercyDan54
393ac4fdd1
Destruct declaration 2021-05-14 21:30:58 +08:00
PercyDan54
67dfeeb1b7
Cleanup code in ModHidden 2021-05-14 21:29:13 +08:00
Dean Herbert
dbc2318710 Initial tidying up 2021-05-14 14:13:35 +09:00
Pasi4K5
ac04e8afa2 Change name of option "Custom seed" to "Seed" and set its value to the generated seed 2021-05-14 01:50:11 +02:00
Pasi4K5
a9d5211e81 Remove seed from the ScorePanel and "Paste" button 2021-05-14 01:42:39 +02:00
smoogipoo
ffb6135a1b Rework hitobject blueprints to take in hitobject models 2021-05-13 19:53:32 +09:00
Naxess
19800f5f7f Move IBeatmap arg into context 2021-05-13 11:24:22 +02:00
Pasi4K5
946abfbb83 Rework settings; Add seed to ScorePanel; Apply requested changes from @bdach 2021-05-12 18:11:50 +02:00
Naxess
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
Naxess
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
Dean Herbert
004798d61d Update Legacy components to not require skin in ctor 2021-05-11 18:39:14 +09:00
Dean Herbert
01d732bb65 Revert "Refactor SliderSelectionBlueprint to not reference blueprint pieces for input handling"
This reverts commit 54fe10c82a.
2021-05-08 23:33:03 +09:00
Dean Herbert
63e267a3be Revert "Trim redundant this qualifier"
This reverts commit df630d9428.
2021-05-08 23:32:52 +09:00
Bartłomiej Dach
df630d9428 Trim redundant this qualifier 2021-05-08 14:53:19 +02:00
Dean Herbert
54fe10c82a Refactor SliderSelectionBlueprint to not reference blueprint pieces for input handling 2021-05-07 10:36:03 +09:00
Dean Herbert
39067e6926 Fix slider input handling potentially being offset after composer area resize
Closes https://github.com/ppy/osu/issues/12671.
2021-05-06 17:19:19 +09:00
Dean Herbert
1410b8f36d Fix follow points displaying at incorrect locations when dragging a slider out-of-bounds 2021-05-05 18:30:57 +09:00
Pasi4K5
6bed268bd8 Enhance mod settings and add option "Random seed"
+ slight adjustments
2021-05-01 04:01:43 +02:00
Pasi4K5
d90708d646
Merge branch 'master' into mod-osu-random 2021-05-01 02:45:32 +02:00
Bartłomiej Dach
9cb55ca245
Merge branch 'master' into barrel-roll 2021-04-30 22:27:27 +02:00
Andrei Zavatski
7bf3498e2a Calculate playfield scale locally 2021-04-30 02:49:19 +03:00
Andrei Zavatski
25e0fb1cf9 Refactor OsuModBarrelRoll to allow it's usage by other rulesets 2021-04-30 01:59:59 +03:00
Dean Herbert
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
Pasi4K5
95040f7edc Change initial seed to a random number 2021-04-27 22:19:04 +02:00
Pasi4K5
a141a4e9e6 Add setting "Seed"
Random numbers are now generated with the seed specified in the mod settings.
2021-04-27 20:44:36 +02:00
Pasi4K5
4b05568d2d Revert "Fix bug causing the star rating to change when Random is enabled"
This reverts commit 1dfe028c02.
2021-04-27 19:39:58 +02:00
Dean Herbert
f586bc46e6 Avoid using EditorBeatmap.SelectedHitObjects 2021-04-27 19:01:29 +09:00
Dean Herbert
f2e56bd306 Refactor editor selection/blueprint components to be generic 2021-04-27 19:01:29 +09:00
Dean Herbert
ec1c336b0a Fix a couple of inspections 2021-04-27 13:23:14 +09:00
Pasi4K5
1dfe028c02 Fix bug causing the star rating to change when Random is enabled 2021-04-26 22:26:13 +02:00
Pasi4K5
19fc224348 Revert "Make OsuAutoGenerator spin the cursor around the position of the spinner instead of a set value"
This reverts commit 817bb5213c.
2021-04-26 11:52:46 +02: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
smoogipoo
0d0b4ea78a Rewrite comment to hopefully be more readable 2021-04-26 15:47:37 +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
Dean Herbert
4898471d68 Merge branch 'master' into fix-editor-slider-repeat-animation 2021-04-26 14:43:22 +09:00
Dean Herbert
e8d83f2f99 Rename "EditRuleset" and "EditPlayfield" to use full "Editor" keyword 2021-04-26 14:33:30 +09:00
Salman Ahmed
0b9172a1dc Animate back slider repeat and tail circle pieces 2021-04-26 02:39:49 +03:00
Pasi4K5
6e85c4e069 Change randomisation process to keep distances between objects
Remove now unnecessary settings;
Remove spinners;
Sliders are not implemented yet
2021-04-25 23:57:01 +02:00
Pasi4K5
08821da954 Change mod description 2021-04-25 01:43:32 +02:00
Pasi4K5
f33f1b2bed Remove class "ModRandomOsu" and adjust code
Add documentation comment for OsuModRandom
2021-04-25 01:34:39 +02:00
Pasi4K5
92f765b958 Change ModType from Fun to Conversion 2021-04-25 01:19:06 +02:00
Pasi4K5
817bb5213c Make OsuAutoGenerator spin the cursor around the position of the spinner instead of a set value
This is to make Autoplay work with randomised spinner positions
2021-04-25 00:46:35 +02:00
Pasi4K5
961bd1177c Add mod "Random" for ruleset "osu!" 2021-04-25 00:39:36 +02:00
Dan Balasescu
50f37ef09c
Merge pull request #12519 from peppy/editor-hit-animation-toggle
Add editor hit animation toggle
2021-04-22 20:49:21 +09:00
smoogipoo
d4d78f7434 Merge branch 'master' into legacy-scores-classic-mod 2021-04-22 18:44:20 +09:00
Dean Herbert
0f70469d1c Only apply custom editor overrides if hit animations is disabled 2021-04-21 19:44:17 +09:00
Dean Herbert
f2824a222a Adjust existing fades to close match stable editor 2021-04-21 19:41:15 +09:00
Dean Herbert
47a4a07024 Split out animation triggering of MainCirclePiece to be interface driven 2021-04-21 19:15:10 +09:00
Salman Ahmed
e90d791754 Add base "classic" mod 2021-04-21 09:14:19 +03:00
Dean Herbert
6164902eba
Merge pull request #12510 from smoogipoo/fix-wiggle-slider-tails
Fix slider tails wiggling independently
2021-04-21 11:30:13 +09:00
smoogipoo
e454037d82 Add to comment 2021-04-21 10:32:13 +09:00
Dan Balasescu
397df41570
Merge pull request #12507 from peppy/fix-cursor-position-rotated
Fix click-to-resume cursor location being incorrect when playfield is transformed
2021-04-21 10:29:35 +09:00
smoogipoo
9d423201ed Fix slider tails wiggling independently 2021-04-21 10:29:18 +09:00
Dean Herbert
4910d8f56c Fix click-to-resume cursor location being incorrect when playfield is transformed
Closes #12501.
2021-04-21 00:12:49 +09:00
Dean Herbert
26430e3cb5
Merge pull request #12492 from Naxesss/bg-audio-quality-checks
Add background and audio checks
2021-04-21 00:10:32 +09:00
Dan Balasescu
86772869da
Merge pull request #12498 from peppy/barrel-roll-faster-spin
Allow faster roll speed selection in "Barrel Roll" mod
2021-04-20 20:39:45 +09:00
Dean Herbert
ac0ed72d04 Keep hitcircles aligned with view in "Barrel Roll" mod 2021-04-20 18:36:11 +09:00
Dean Herbert
f11b068dee Allow faster roll speed selection in "Barrel Roll" mod 2021-04-20 18:22:58 +09:00
Naxess
0e6b66f457
Merge branch 'master' into bg-audio-quality-checks 2021-04-20 02:36:13 +02:00
Naxess
8656176ab8 Add the playable beatmap as check argument
This is different from the working beatmap's `.Beatmap` property in that it is mutated by the ruleset/editor.

So hit objects, for example, are actually of type `Slider` and such instead of the legacy `ConvertSlider`.

This should be preferred over `workingBeatmap.Beatmap`.
2021-04-20 01:31:51 +02:00
Dean Herbert
510e54ff54 Update framework 2021-04-19 23:41:21 +09:00
Naxess
56bf49c85c Take IWorkingBeatmap instead of WorkingBeatmap
This makes testing much easier, and allows for checking of any class deriving from that interface, including `WorkingBeatmap`.
2021-04-18 01:21:20 +02:00
Naxess
448574e7e6 Use WorkingBeatmap instead of IBeatmap
This lets us access things like the background, track, etc. which are necessary for quality and filesize checks.

Also improves the structure of the `CheckBackgroundTest` class in the process.
2021-04-17 17:33:53 +02:00
Salman Ahmed
c1082ddb9a
Add space before the unit
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2021-04-17 06:28:07 +03:00
Salman Ahmed
892a8a7cd2 Remove unnecessary comma 2021-04-17 04:23:48 +03:00
Salman Ahmed
78c8508784 Remove unused using directive
gotta git gud
2021-04-17 03:52:08 +03:00
Salman Ahmed
d5a1e00feb Improve "barrel roll" mod settings description 2021-04-17 03:32:47 +03:00
Dean Herbert
f824105075 Merge branch 'master' into fix-slider-zero-length 2021-04-16 18:47:22 +09:00
Dan Balasescu
7648d6f7fb
Merge pull request #12443 from peppy/fix-slider-scale-crash
Fix div-by-zero when scaling a 1-dimensional slider
2021-04-16 17:31:42 +09:00
Dan Balasescu
5ad2d0e759
Merge pull request #12439 from ekrctb/further-refactor-framed-replay
Further refactor FrameReplayInputHandler, simplify the template code
2021-04-16 17:16:09 +09:00
Dean Herbert
401bf368a7 Merge branch 'fix-slider-scale-crash' into fix-slider-zero-length 2021-04-16 16:58:19 +09:00
Dean Herbert
8de68e0ebf Fix div-by-zero when scaling a 1-dimensional slider 2021-04-16 16:55:26 +09:00
Dean Herbert
ff408b852e Handle scaling a slider below minimum length 2021-04-16 15:45:24 +09:00
Dean Herbert
89373638be Handle control point deletion when the resulting slider would be too short to be useful 2021-04-16 15:45:24 +09:00
Dean Herbert
2949a6bbdc Handle control point drag revert 2021-04-16 15:45:24 +09:00
Dean Herbert
d38e294d96 Centralise length validation function 2021-04-16 15:45:24 +09:00
Dean Herbert
965a1ead36 Disallow zero-length slider blueprint placements 2021-04-16 14:38:30 +09:00
ekrctb
a965e8a75d Remove AutoGenerator workaround of now-fixed issue 2021-04-16 14:13:41 +09:00
ekrctb
91c7d8d26c Introduce StartFrame and EndFrame to simplify the replay interpolation code 2021-04-16 14:13:41 +09:00
ekrctb
84bc81a6de Make FramedReplayInputHandler.CurrentTime non-null 2021-04-16 14:13:41 +09:00
Dean Herbert
5c0ef55691 Rename SliderPlacementState to make way for more generic version 2021-04-16 14:09:35 +09:00
Dan Balasescu
587973be25
Merge pull request #12405 from frenzibyte/top-left-cursor
Add support for legacy skin's `CursorCentre` setting
2021-04-16 00:30:53 +09:00
smoogipoo
34859a4760 Invalidate drawnode on change 2021-04-15 23:37:05 +09:00
Dan Balasescu
3374895e40
Merge branch 'master' into mod-barrel-roll 2021-04-15 22:15:26 +09:00
smoogipoo
1a987dfbc0 Fix gameplay cursor showing offscreen 2021-04-15 21:16:38 +09:00
Dean Herbert
698a9d3fed Add rotation direction setting 2021-04-15 14:40:03 +09:00
Dean Herbert
23eb1c655c Add missing description 2021-04-15 14:37:47 +09:00
Dean Herbert
7469849e7c Merge branch 'abstract-mod-description' into mod-barrel-roll 2021-04-15 14:37:17 +09:00
Dean Herbert
346e36d32a Make Mod.Description abstract and add missing descriptions 2021-04-15 14:36:26 +09:00
Dean Herbert
0d32290cd5 Show roll speed in rotations-per-minute 2021-04-15 13:15:52 +09:00
Dean Herbert
362a5a39d0 Scale the playfield to avoid off-screen objects 2021-04-15 13:15:42 +09:00
Dean Herbert
a209415942 Add "Barrel Roll" mod 2021-04-14 16:52:29 +09:00
Salman Ahmed
367dafab56 Apply CursorCentre to old-style legacy cursor trail 2021-04-14 08:20:18 +03:00
Salman Ahmed
ad53ababe8 Fix wrong default
Ah, soz
2021-04-14 08:16:46 +03:00
Salman Ahmed
bf5ed12b75 Add support for legacy skin CursorCentre setting 2021-04-14 06:33:54 +03:00
Dean Herbert
1ff4e2076f Merge branch 'master' into verify-tab 2021-04-13 23:05:48 +09:00