1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-27 07:02:54 +08:00
Commit Graph

5882 Commits

Author SHA1 Message Date
Dean Herbert
7ed4eb5815 Adjust transform logic to match osu-stable (and add TODOs for remaining oversights) 2022-07-15 17:17:55 +09:00
Dean Herbert
0ade8db550 Tidy up nullability and casting 2022-07-15 16:40:48 +09:00
Alden Wu
1581f1a0ff Convert constructor in abstract class to protected 2022-07-14 17:11:01 -07:00
Alden Wu
4453b0b3e8 Replace comment pointer with actual comment 2022-07-14 17:11:01 -07:00
Alden Wu
66932f1af6 Move shared followcircle code into abstract base class 2022-07-14 17:11:01 -07:00
StanR
760742e358 Move relax global multiplier to diffcalc 2022-07-14 00:42:50 +03:00
Dean Herbert
e2f2d5f794 Rename last action to better represent that it is only captured actions 2022-07-14 01:40:44 +09:00
Dean Herbert
0bc42ef67d
Merge branch 'master' into stable-slider-followcircle-anims 2022-07-14 00:24:33 +09:00
James
4d9494d3b3 change LastPressedAction to have a private setter 2022-07-13 14:42:45 +01:00
James
af03002495 make flash duration and ruleset private 2022-07-13 14:31:09 +01:00
James
0da1bd393c privatise checkCorrectAction, add abstract CheckValidNewAction function 2022-07-13 14:29:27 +01:00
Dean Herbert
be3187c3a4 Remove remnant nullable disables 2022-07-13 22:05:56 +09:00
Dean Herbert
33dd9562cc Privatise some fields 2022-07-13 22:04:57 +09:00
Dean Herbert
5e6b9b96b0 Apply NRT to new InputBlockingMod class 2022-07-13 22:02:46 +09:00
tsunyoku
6755a771b4 make Cinema incompatible with InputBlockingMod 2022-07-13 07:49:08 +01:00
tsunyoku
e9b0a3e4fa make alternate and singletap incompatible with eachother 2022-07-13 07:35:53 +01:00
James
20d2b86193 make Single Tap incompatible with Autoplay, Cinema and Relax 2022-07-12 23:18:20 +01:00
James
c05263c3c3 add Single Tap mod 2022-07-12 23:15:18 +01:00
James
f90f93a43c abstract OsuModAlternate into InputBlockingMod 2022-07-12 23:15:18 +01:00
StanR
0983e4f81e Increase 50s nerf again 2022-07-12 17:57:00 +03:00
Gabe Livengood
b96734e31a
fix mod incompatibility between repel and relax 2022-07-12 08:43:48 -04:00
StanR
e58c365276 Merge branch 'master' into pp-balancing 2022-07-12 10:53:31 +03:00
Dan Balasescu
7ab75606a1
Merge branch 'master' into velocitychanges 2022-07-12 16:52:57 +09:00
StanR
58c687172b Reduce low AR bonus 2022-07-12 10:52:44 +03:00
Dean Herbert
fa626a82b3 Add missed incompatilibity rules 2022-07-12 15:19:06 +09:00
Gabe Livengood
28278e2554
enable NRT again 2022-07-11 17:27:25 -04:00
Gabe Livengood
54fe84350c
reciprocate mod incompatibility 2022-07-11 17:23:32 -04:00
Alden Wu
48911b956a Remove ClearTransformsAfter call
A bit weird only having one call on its own; probably deserves an
entire PR dedicated to adding ClearTransformsAfter calls
2022-07-10 17:07:21 -07:00
Gabe Livengood
6443338251
use cursor position instead of destination for dampLength calculation
the destination vector is clamped within playfield borders, we want dampLength to be based on distance from the cursor.
2022-07-10 01:22:22 -04:00
為什麼
1725a76fa0 Remove the nullable disable annotation for all rulesets. 2022-07-10 10:15:27 +08:00
為什麼
857377e145 Move CreateConvertibleReplayFrame() into legacy ruleset interface because technically only legacy ruleset use it to convert the legacy frame.
But seems some of the customized ruleset use it for save the replay frame.
2022-07-10 10:15:27 +08:00
Gabe Livengood
a606d545c1
update new usage of CalculatePossibleMovementBounds 2022-07-08 12:00:07 -04:00
Dean Herbert
36f129a9b6
Merge branch 'master' into osu-mod-repel 2022-07-09 00:26:49 +09:00
Dean Herbert
8071335f3a
Merge pull request #18596 from hlysine/fix-random-mod-slider
Fix random mod generating off-screen sliders
2022-07-08 19:28:34 +09:00
goodtrailer
84dcd042f4 Protect duration calculations against unstable fps 2022-07-07 20:30:31 -07:00
Gabe Livengood
62beae4063
add nullable directive 2022-07-06 17:18:21 -04:00
Gabe Livengood
b3f23d93e8
Merge branch 'master' into osu-mod-repel 2022-07-06 17:05:09 -04:00
Gabe Livengood
d5b4d14670
modify damp length to effectively invert repulsion strength 2022-07-06 17:01:14 -04:00
Salman Ahmed
7f94405c9e Rename method and make duration optional 2022-07-06 23:38:11 +03:00
Gabe Livengood
40e98f84f3
change default strength back to 0.5 2022-07-06 16:01:08 -04:00
Gabe Livengood
0281bf672c
operate on vectors instead of vector components 2022-07-06 15:58:25 -04:00
goodtrailer
72fb1ae892 Add forgotten unsubscribes 2022-07-05 21:04:13 -07:00
goodtrailer
1e6def8209 Fix spinner accent animation on rewind 2022-07-04 22:58:41 -07:00
apollo-dw
5b96f67a8b Remove non-overlapping velocity buff 2022-07-04 20:49:26 +01:00
StanR
4f77637946 Update desmos 2022-07-04 21:52:57 +03:00
StanR
bf738aa04f Account for extreme ODs in relax multipliers 2022-07-04 21:49:45 +03:00
StanR
afa3f8cda3 Make relax ok/meh multipliers dependent on OD 2022-07-04 20:53:20 +03:00
StanR
11eb344476 Reduce 50s nerf further 2022-07-04 20:28:15 +03:00
StanR
db8bb07c78 Reduce 50s nerf effect 2022-07-04 20:10:26 +03:00
StanR
212360f67e Make relax ok/meh nerfs less drastic, add flashlight nerf, remove ar bonus for relax 2022-07-04 19:59:30 +03:00
StanR
45258b3f14 Buff aim slightly 2022-07-04 19:53:34 +03:00
goodtrailer
e6a05ce3e2 Slow down legacy followcircle animations 2022-07-03 13:51:30 -07:00
Dan Balasescu
ccc322e100
Merge pull request #18985 from andy840119/remove-nullable-disable-in-the-replays
Remove nullable disable annotation in replays namespace
2022-07-03 21:19:36 +09:00
Dean Herbert
c07ee80dbe
Merge pull request #18977 from goodtrailer/stable-slider-ball-fadeout
Imitate stable's slider ball fade in/out animation
2022-07-02 18:47:31 +09:00
andy840119
19721a9bbb Remove the nullable disable annotation and fix the breaking api. 2022-07-02 13:33:05 +08:00
Dean Herbert
9a5431d93f Minor renaming / refactoring to use local parameter rather than DI'd object 2022-07-02 13:37:10 +09:00
goodtrailer
f2141715b8 Replace AsNonNull() with Assert() 2022-07-01 21:22:48 -07:00
goodtrailer
471b64bd20 Reinstate early return with comment
Whoops, didn't read the reply until after I pushed...
2022-07-01 21:19:54 -07:00
goodtrailer
6d6ffd35d0 Remove unused parameter 2022-07-01 21:14:53 -07:00
goodtrailer
2e3ff2c7e0 Prefer [Resolved] and LoadComplete 2022-07-01 21:12:36 -07:00
goodtrailer
76d4f86ca3 Make legacy slider ball fade out instantly 2022-07-01 18:21:03 -07:00
Dean Herbert
a17e18103f Improve description 2022-07-01 18:19:31 +09:00
Dean Herbert
cdc4caa8c4
Merge pull request #18945 from goodtrailer/separate-ball-followcircle
Separate slider ball and followcircle skinnables into default/legacy classes
2022-07-01 17:54:29 +09:00
Dan Balasescu
d4aa18112b
Merge pull request #15035 from emu1337/speed-acc-scaling
Change speed accuracy scaling to be closer to worst case scenario
2022-06-29 18:04:23 +09:00
goodtrailer
0e0e9968ac Split ball and followcircle into default/legacy files 2022-06-29 01:23:35 -07:00
Dan Balasescu
6d91c0f375 Resolve inspection issue 2022-06-29 16:57:11 +09:00
Dan Balasescu
ad95f037de Prevent another case of potential div-by-0 2022-06-29 16:42:53 +09:00
Dan Balasescu
e6ccca8045 Fix inspection 2022-06-29 16:29:17 +09:00
Dan Balasescu
0211fe7ae8 Fix exception + possible div-by-0 2022-06-29 16:29:14 +09:00
Dan Balasescu
2989803b71 Merge branch 'master' into speed-acc-scaling 2022-06-29 16:15:20 +09:00
Dan Balasescu
34b9118fb3 Cleanup by using const value 2022-06-29 16:10:06 +09:00
Dan Balasescu
7d743994bc Merge branch 'master' into FL-diffspike 2022-06-29 16:05:53 +09:00
Dean Herbert
8cda55e224
Merge pull request #18795 from smoogipoo/full-size-follow-circle
Track the full size of the follow circle at all times
2022-06-28 19:20:34 +09:00
Dan Balasescu
0fd2c010e5 Remove NRT disables from attributes classes 2022-06-27 16:07:15 +09:00
Dan Balasescu
0579780bb8 Add IBeatmapOnlineInfo parameter and use to extract more data 2022-06-27 16:07:15 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Bartłomiej Dach
26c5b59f6d
Replace usages of string.To{Lower,Upper}() 2022-06-24 11:57:45 +02:00
Pasi4K5
2f1186d328 Add comments and XML doc 2022-06-22 16:49:07 +02:00
Dan Balasescu
a7de43ade6 Add attribute ID 2022-06-21 19:31:45 +09:00
Dan Balasescu
ede5ca31a1 Always track final follow circle size 2022-06-21 18:10:11 +09:00
apollo-dw
630bd244d5 Inherit StrainSkill instead 2022-06-21 10:01:11 +01:00
apollo-dw
0f6f000188 Remove difficulty spike nerf 2022-06-21 09:13:44 +01:00
Dan Balasescu
e0c82d11ab Convert == usages to ReferenceEquals 2022-06-20 16:56:19 +09:00
emu1337
26b0815fc8 fixed casting the wrong skill 2022-06-20 04:19:07 +02:00
emu1337
ecbbd29c9b Merge branch 'master' into speed-acc-scaling
# Conflicts:
#	osu.Game.Rulesets.Osu/Difficulty/OsuDifficultyAttributes.cs
#	osu.Game.Rulesets.Osu/Difficulty/OsuDifficultyCalculator.cs
#	osu.Game.Rulesets.Osu/Difficulty/OsuPerformanceCalculator.cs
#	osu.Game.Rulesets.Osu/Difficulty/Skills/Speed.cs
2022-06-20 04:15:35 +02:00
Pasi4K5
a912bcadf8 Fix possible exception caused by log(0) 2022-06-20 00:19:29 +02:00
Pasi4K5
3356742ba2 Adjust angle offset caluclations 2022-06-20 00:05:03 +02:00
Pasi4K5
1bb27cd488 Code optimisation 2022-06-19 23:03:41 +02:00
Pasi4K5
9090e75020 Add XML documentation 2022-06-19 20:43:17 +02:00
Pasi4K5
7317b9b909 Remove unused field 2022-06-19 14:59:28 +02:00
Pasi4K5
33c6c6af6b Adjust target angle calculation parameters 2022-06-19 13:50:09 +02:00
Pasi4K5
c6ac60c0b5 Enhance target angle calculation 2022-06-19 13:07:10 +02:00
Dan Balasescu
1bd6198da2
Merge pull request #18692 from apollo-dw/dbltap
Rework doubletap detection in osu!'s Speed evaluator
2022-06-19 11:03:16 +09:00
apollo-dw
c4d69405bf Adjust speed ratio fraction to avoid division by 0 2022-06-17 21:18:16 +01:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
apollo-dw
2634e56944 Further adjustments 2022-06-14 16:16:12 +01:00
apollo-dw
737197591d Change doubletap algorithm 2022-06-13 17:49:56 +01:00
Dan Balasescu
f73142c50f Remove for loop 2022-06-13 20:43:56 +09:00
Dan Balasescu
b300bc1e24 Fix ever-increasing flashlight-strain 2022-06-13 20:41:32 +09:00
apollo-dw
4e3dd1ce18 Merge remote-tracking branch 'master/master' into evaluators 2022-06-13 12:27:02 +01:00
apollo-dw
add9b4a7a4 Merge branch 'master' into evaluators 2022-06-13 12:16:22 +01:00
apollo-dw
e7602563fb Fetch lastlast object from beatmap, not objects list 2022-06-10 10:28:14 +01:00
Gabe Livengood
2fe34f188f shamelessly copy osumodmagnetised 2022-06-09 18:52:10 -04:00
Gabe Livengood
569c39942a replace easement with easing 2022-06-09 18:26:18 -04:00
Gabe Livengood
4e01db03bb don't specify icon 2022-06-09 18:25:04 -04:00
Gabe Livengood
6e883a69d9 revert slider radius parameter addition 2022-06-09 18:07:37 -04:00
Dan Balasescu
6d2a2ba7d6 Rename Position -> Index 2022-06-09 18:49:11 +09:00
Dan Balasescu
f0ef2e610e Merge branch 'master' into dho 2022-06-09 18:29:14 +09:00
Gabe Livengood
f54a68f6ca
scale down repulsion strength 2022-06-08 01:00:47 -04:00
Gabe Livengood
f21c9fb520
add newline 2022-06-07 12:05:53 -04:00
Gabe Livengood
b7bdad4074
clamp sliders, expose slider bounds function 2022-06-07 09:36:44 -04:00
Henry Lin
de224e79c7 Limit slider rotation when the slider is too large 2022-06-07 10:32:51 +08:00
Salman Ahmed
b6e97e699a Remove unnecessary position specification 2022-06-07 00:34:18 +03:00
Salman Ahmed
4158146c71 Fix spinenr tick samples not positioned at centre
Causing samples to be played at left ear rather than centre.
2022-06-07 00:30:11 +03:00
Salman Ahmed
0eaf420fa1 Specify full size for spinner ticks container 2022-06-07 00:29:14 +03:00
Gabe Livengood
a805f78909
Merge branch 'master' into mod-accuracy-challenge 2022-06-06 12:11:47 -04:00
Salman Ahmed
fe96e15b1b Update spinner approach circle to handle LegacySkinTransformer 2022-06-04 01:15:39 +03:00
apollo-dw
774ac13900 Add xmldocs 2022-05-28 14:09:08 +01:00
apollo-dw
b631cefc55 Move object difficulty calculation to evaluator methods 2022-05-28 13:29:09 +01:00
apollo-dw
777d9af0f5 Move object difficulty calculation to evaluator methods 2022-05-28 13:28:04 +01:00
Gabe Livengood
5d838628d7
add test, fix formatting, expose easing function 2022-05-27 23:15:19 -04:00
apollo-dw
66a6467403 Pass object position to the object 2022-05-26 19:26:14 +01:00
Henry Lin
e205aeff38
Merge branch 'master' into random-mod-slider-rotation 2022-05-26 22:51:34 +08:00
Gabe Livengood
10287e0150
initial implementation 2022-05-26 00:08:00 -04:00
Dan Balasescu
8a4f52287c Re-invert distances, cleanup, use actual normalised distance 2022-05-25 13:38:36 +09:00
Dan Balasescu
cde06ecf17 Apply code reviews 2022-05-25 13:03:08 +09:00
Dan Balasescu
7b2a5d4f76 Adjust xmldoc for correctness 2022-05-25 13:01:27 +09:00
apollo-dw
1ef711de41 Return null for out of range objects 2022-05-24 16:40:24 +01:00
apollo-dw
30b9e0e7ab Use object list size for object position 2022-05-24 16:30:25 +01:00
Gabe Livengood
dde0756bed add accuracy challenge mod 2022-05-24 10:23:44 -04:00
apollo-dw
5dbec92d9e Update comments 2022-05-23 22:17:29 +01:00
apollo-dw
903c4f7b3d Merge remote-tracking branch 'master/master' into dho 2022-05-23 13:39:04 +01:00
Jamieson Berida
c9b00a2302
Merge branch 'master' into fl-slider 2022-05-23 17:42:12 +10:00
apollo-dw
26985ca8af Store hitobject history in the hitobject 2022-05-22 16:26:22 +01:00
Dean Herbert
2e21d75b10 Move metronome into own class and rename to avoid conflict with mod sounds 2022-05-20 17:30:04 +09:00
Dan Balasescu
64a371638e
Merge pull request #18236 from peppy/snap-unification
Add `enum` to snap method as alternative to multiple nested invocations
2022-05-20 11:35:05 +09:00
Dean Herbert
a443200d0d Make dependency nullable to allow for safer disposal unbinding 2022-05-19 13:49:52 +09:00
Dean Herbert
cf3ead8047 Remove unused local 2022-05-13 22:06:30 +09:00
Dean Herbert
d9782b5ef6 Remove redundant parenthesis 2022-05-13 21:31:49 +09:00
Dean Herbert
38b8baf095 Remove unused border colour 2022-05-13 21:28:50 +09:00
Dean Herbert
1529162318 Remove circle scaling (apparently the fixed scale is required for spacing) 2022-05-13 21:28:45 +09:00
Dean Herbert
0318944b80 Fix incorrect alive criteria causing clicking future objects to be too greedy 2022-05-12 23:37:29 +09:00
Dean Herbert
51744e428f Merge branch 'master' into editor-readability 2022-05-12 22:56:55 +09:00
Dean Herbert
0c335592b3 Tidy up interpolation and move const to new home 2022-05-12 19:44:07 +09:00
Dean Herbert
f22ff4e087 Remove editor animation toggling (replaced by overlap markers) 2022-05-12 19:28:56 +09:00
Dean Herbert
be3d4c9bf5 Add circle overlap marker, bringing back stable-like visibility of circles in the past 2022-05-12 19:27:32 +09:00
Dean Herbert
1b2c07e142 Extend lifetime of OsuSelectionBlueprint to allow for lingering display 2022-05-12 19:25:51 +09:00
Dan Balasescu
b71274265f
Merge pull request #15665 from MBmasher/fl-opacity
Consider opacity of hit objects in Flashlight skill
2022-05-12 19:00:21 +09:00
Dan Balasescu
c3d472310f
Merge pull request #18237 from peppy/editor-animation-toggle-refresh-immediately
Fix toggling hit animations on the editor not applying immediately
2022-05-12 18:51:04 +09:00
Dan Balasescu
4463a26f4e Refactor opacity computation algorithm 2022-05-12 18:31:10 +09:00
Dean Herbert
f5649b926a Use AliveObjects rather than tracking all hitobjects manually 2022-05-12 18:04:26 +09:00
Dean Herbert
c4854d4004 Fix slider ball rotation becoming undefined when time is not flowing smoothly 2022-05-12 17:55:12 +09:00
Dean Herbert
10e41d018a Fix toggling hit animations on the editor not applying immediately 2022-05-12 17:36:35 +09:00
Dean Herbert
c0abce918f Add enum to snap method as alternative to mutliple nested invocations 2022-05-12 16:19:07 +09:00
Dan Balasescu
2d33859e7a
Merge pull request #18094 from apollo-dw/sliderticks
Reimplement slider ticks in Strict Tracking mod sliders
2022-05-09 17:16:47 +09:00
Dean Herbert
c7e7aa5962 Don't draw distance snap grid on the start time of the next object 2022-05-06 17:05:52 +09:00
Bartłomiej Dach
8b4e4b48d1
Merge branch 'master' into sliderticks 2022-05-05 14:38:09 +02:00
Bartłomiej Dach
2039d3db6a
Use standard slider ticks in strict tracking mod 2022-05-05 14:37:57 +02:00
Dan Balasescu
39d10487b9
Merge branch 'master' into snapping-tidy-distance 2022-05-05 19:55:55 +09:00
Bartłomiej Dach
5e4d07760d
Merge branch 'master' into snapping-tidy 2022-05-05 10:17:48 +02:00
Dean Herbert
19cf9dc20b Merge branch 'snapping-tidy-distance' 2022-05-05 16:51:32 +09:00
Dean Herbert
225fc65068 Merge branch 'snapping-tidy' 2022-05-05 16:51:31 +09:00
Dean Herbert
977e6d8a80 Add xmldoc for IDistanceSnapProvider and related properties 2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
Bartłomiej Dach
79ecf5dd5d
Merge branch 'master' into strict-tracking-description 2022-05-05 08:41:27 +02:00
Dean Herbert
cbc58c67bf Remove weird strict tracking icon and reword description to explain what the mod does 2022-05-05 15:16:01 +09:00
Supersonicboss1
81b4622620 fixed autoplay not showing compat, + relax compat 2022-05-04 22:25:34 +01:00
apollo-dw
81ce0e6565 Reimplement sliderticks 2022-05-04 12:55:22 +01:00
Dean Herbert
bb086800b1 Remove ugly playfield border 2022-05-04 13:41:30 +09:00
Dan Balasescu
637f817696 Ignore zero-sections on a per-case basis 2022-05-03 16:06:20 +09:00
Dean Herbert
faeefc5e18
Merge pull request #16576 from frenzibyte/osu-distance-spacing
Add "distance spacing" support in editor for osu! ruleset
2022-05-03 12:15:18 +09:00
Bartłomiej Dach
bba7722837
Merge branch 'master' into improve-alternate-after-break 2022-05-02 10:52:48 +02:00
Dean Herbert
b911981d80
Merge pull request #18002 from Pasi4K5/add-target-incompatibilities
Make some mods incompatible with `OsuModTarget`
2022-04-29 23:18:31 +09:00
Salman Ahmed
a4ca8bfe75 Improve "Alternate" to reset before first hitobject after break 2022-04-29 06:41:21 +03:00
Bartłomiej Dach
96f6c918a8
Merge branch 'master' into first-run-behaviour-screen 2022-04-29 00:55:30 +02:00
Pasi4K5
e31fdc28dd Make Classic and Target compatible again 2022-04-28 22:31:48 +02:00
Pasi4K5
d5702e2955 Append incompatible mods to base.IncompatibleMods 2022-04-28 18:29:37 +02:00
Salman Ahmed
835898dd30 Introduce DistancedHitObjectComposer and supersede OsuToolboxComposite 2022-04-28 06:44:50 +03:00
Pasi4K5
d6395b14be Add incompatibilities 2022-04-28 05:15:04 +02:00
Salman Ahmed
59cf3ff50f Move distancing methods from IPositionSnapProvider to IDistanceSnapProvider 2022-04-28 05:48:45 +03:00
Salman Ahmed
66c730c382 Change distance spacing keybind to Ctrl+Alt 2022-04-27 17:11:23 +03:00
Salman Ahmed
fb6a112708 Mark OsuModTarget and OsuModSuddenDeath as mutually exclusive
`OsuModTarget` already fails on miss, so "Sudden Death" doesn't make
sense to be enabled and may only cause issues.
2022-04-26 23:27:03 +03:00
Dan Balasescu
ce095d6af6 Merge branch 'master' into fl-opacity 2022-04-26 18:34:53 +09:00
Dean Herbert
942f4e8ac2 Merge branch 'first-run-show-get-started' into first-run-behaviour-screen 2022-04-26 16:10:16 +09:00
Dean Herbert
b41e273086 Convert function weirdness to property + bool 2022-04-26 15:06:27 +09:00
Salman Ahmed
0738cd028f Give snapping toolbox enough hover delay for interaction with expand button
With 0 delay, if the `SettingsToolboxGroup` has been contracted via
button, there's no chance to be able to expand it via button again.

This is temporary at best just to keep things working somewhat, not sure
if the expansion logic will still be required in editor redesign, so
deciding to roll with it for now.
2022-04-24 08:53:11 +03:00
Salman Ahmed
8ed39009fd Encapsulate distance spacing control handling to a "distance toolbox composite"
Encapsulated in a way which can allow further extensibility for the
right-side area of toolboxes.
2022-04-24 08:33:03 +03:00
Salman Ahmed
4f8f27a58b Merge branch 'master' into osu-distance-spacing 2022-04-24 05:23:30 +03:00
Salman Ahmed
61078910a6 Handle all skin component types explicitly 2022-04-23 03:34:05 +03:00
Dean Herbert
e0b9ab022d Add classic default values against setting controls 2022-04-22 18:05:24 +09:00
Dean Herbert
d43c66a3dd Merge branch 'master' into sample-positional-playback-screen-space 2022-04-21 16:57:20 +09:00
Joseph Madamba
5e5c8e78a6 Use existing web localisation for most hardcoded strings 2022-04-20 16:31:11 -07:00
Salman Ahmed
fd20c2bdcd Change circle/overlay sprite fields to protected for better test assertion 2022-04-20 00:24:28 +03:00
Salman Ahmed
a96664295b Fix nullability preprocessor placed over the copyright header 2022-04-19 19:48:44 +03:00
Salman Ahmed
033b556be5 Simplify texture lookup further 2022-04-19 19:44:35 +03:00
Dean Herbert
75a6e9fd7f Convert to use nullable and rearrange fields 2022-04-19 18:10:10 +09:00
Salman Ahmed
b067924ada Avoid applying state transforms when no object is present 2022-04-19 08:08:02 +03:00
Salman Ahmed
fd113953ac Rename prioritiyLookup and add xmldoc 2022-04-19 08:06:39 +03:00
Salman Ahmed
ec7bb876b5 Improve legacy circle texture lookup to match 1:1 with stable 2022-04-19 07:12:07 +03:00
Salman Ahmed
8d0dd3961e Add failing test cases 2022-04-19 07:12:07 +03:00
Salman Ahmed
3a00931e38 Update slider sliding samples balance calculation to use screen-space as well 2022-04-18 09:18:56 +03:00
Salman Ahmed
fcb48c69cf Calculate sample playback position using screen-space drawable rectangles 2022-04-18 07:57:31 +03:00
Henry Lin
e5e1960975 Add inline comments 2022-04-18 09:38:51 +08:00
Henry Lin
1d79266d42 Clarify in the xmldoc that angles are measured in radians 2022-04-17 10:40:43 +08:00
Henry Lin
610d2dc1a3 Use a bigger sample step to calculate slider center of mass 2022-04-17 10:34:48 +08:00
Henry Lin
72cb3d6ad6 USe MathF in all applicable places 2022-04-11 14:15:08 +08:00
Dan Balasescu
c48f8d7b9b
Merge pull request #17714 from bdach/mod-overlay/multimod-incompatibility
Ensure that mods grouped into multi mods are pairwise incompatible
2022-04-08 16:43:06 +09:00
Dean Herbert
879267862c Fix typo in DrawableOsuHitObject 2022-04-08 15:20:22 +09:00
Bartłomiej Dach
e99d0f9fae
Make all OsuModObjectScaleTween implementations incompatible with each other 2022-04-07 22:38:47 +02:00
Bartłomiej Dach
5e02ba353b
Make OsuMod{Blinds,Flashlight} incompatible 2022-04-07 22:38:46 +02:00
Dean Herbert
ee8451c8ca
Merge branch 'master' into osu-diff-calc-max-combo 2022-04-04 14:20:44 +09:00
Dean Herbert
de625125d6 Rename magnetised mod attraction strength property to match new naming 2022-04-01 13:03:48 +09:00
Henry Lin
3bebc88306 Consider spinners when calculating jump angles
Spinners are considered in `GeneratePositionInfos`, so they should also be considered in `RepositionHitObjects`
2022-04-01 11:59:24 +08:00
Henry Lin
ee65677884 Use height of playfield instead of width when randomizing the first object
This is the change discussed in #17194. The effect of this change is barely noticeable, but it makes more sense to generate the object within playfield from the start.
2022-04-01 11:57:45 +08:00
Henry Lin
031a977009 Calculate slider rotation using end point of path instead of EndPosition 2022-04-01 11:50:30 +08:00
Henry Lin
0015f627b0 Add xmldoc 2022-04-01 11:49:27 +08:00
Henry Lin
c0a78924aa Fix generation for zero-length sliders 2022-04-01 11:47:21 +08:00
Henry Lin
af3835083c Fix slider relative rotation calculation 2022-04-01 11:41:45 +08:00
Henry Lin
998df5a4fe Fix large slider clamping 2022-04-01 11:37:10 +08:00
Henry Lin
cabbc486e9 Rotate sliders in random mod 2022-04-01 11:36:20 +08:00
Dean Herbert
a987cda30d Rename "Aim Assist" to "Magnetised" to better suit the mod's behaviour
As proposed in https://github.com/ppy/osu/discussions/17375.
2022-04-01 12:15:52 +09:00
Dan Balasescu
32e55e7d78 Merge branch 'master' into osu-diff-calc-max-combo 2022-03-31 15:08:08 +09:00
Dan Balasescu
ff4745be59
Merge branch 'master' into extract-random-mod-logic-2 2022-03-31 13:42:47 +09:00
Dean Herbert
0cac935939 Shorten class name of ModCreatedReplayUser 2022-03-31 11:34:23 +09:00
Dean Herbert
4b2c01a8c1 Bring all mod implementations up-to-date 2022-03-29 16:59:03 +09:00
Dean Herbert
d2d88015e3 Update all cinema/autoplay mods to specify the system user ID 2022-03-28 22:22:56 +09:00
Henry Lin
e44db4e726 Revert unintentional behavior change of random mod
Actually, using OsuPlayfield.BASE_SIZE.Y makes a touch more sense since it is the short side of the playfield, but I guess it is better to preserve replays than to introduce pointless breaking changes.
2022-03-25 15:13:25 +08:00
Dan Balasescu
cd5907f8da Merge branch 'master' into extract-random-mod-logic-2 2022-03-25 14:25:43 +09:00
Dan Balasescu
36772ec652
Merge pull request #17356 from apollo-dw/strict-tracking
Implement "Strict Tracking" mod in osu!
2022-03-22 07:32:36 +09:00
Dean Herbert
e4b2242719 Fix follow point animations not looping
Because they do in stable. I don't know why but let's go with it.

Resolves issue reported in https://github.com/ppy/osu/discussions/17072.
2022-03-21 18:29:13 +09:00
apollo-dw
d3742a91a8 Nest specific object classes within the mod 2022-03-20 15:56:41 +00:00
apollo-dw
35e2e6a4e7 Remove slider tick judgement flag 2022-03-20 15:41:46 +00:00
apollo-dw
52d6f083dc Only miss slider tail on untrack 2022-03-19 23:42:12 +00:00
apollo-dw
149cfd338d Use new mod-related object types for Strict Tracking 2022-03-19 18:29:44 +00:00
Noah M
78869c462a
Use .Concat() instead of chained Append
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-18 14:24:36 -05:00
Noah M
b4a8defe1a Make Relax and Aim assist mods incompatible 2022-03-18 14:12:36 -05:00
Dean Herbert
6fb06d69cc
Merge branch 'master' into pp-counter-alloc-reduction 2022-03-15 13:31:57 +09:00
Dean Herbert
deb4aeb4b2
Merge pull request #17242 from smoogipoo/performance-calculator-cleanup
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-15 13:31:34 +09:00
Dan Balasescu
523f668c8c Remove unnecessary ctor argument 2022-03-15 12:37:39 +09:00
Dan Balasescu
daac933498 Remove unnecessary ctor arguments 2022-03-15 12:34:58 +09:00
Dan Balasescu
59d57a44d4 Prevent incorrect usages by hard-typing ctor type 2022-03-15 09:11:59 +09:00
Henry Lin
76021c7627 Remove extra parameters 2022-03-14 20:23:35 +08:00
Henry Lin
6657d93b29 Separate the two nested classes 2022-03-14 20:18:30 +08:00
Dean Herbert
1b8c632b87 Add TailSamples to auxiliary samples list 2022-03-14 17:19:48 +09:00
Dean Herbert
6d6f73e016 Add overrides in DrawableSliderTail to explain/warn that this class never plays its own samples 2022-03-14 17:19:48 +09:00
Dean Herbert
be99202188 Move spinner spin samples to auxiliary specification 2022-03-14 17:19:48 +09:00
Dean Herbert
90e34d7686 Move slider slide samples to auxiliary specification 2022-03-14 17:19:48 +09:00
Dan Balasescu
3fff7f4b7e Require ScoreProcessor to receive ruleset 2022-03-14 15:51:10 +09:00
Dan Balasescu
4a3e3aba65 Restructure PerformanceCalculator to not require ScoreInfo argument 2022-03-14 14:25:28 +09:00
Dean Herbert
f82687a2c6
Merge pull request #17150 from SiimPender/master
Fix crash during kiai section on specific map due to negative transform duration
2022-03-10 18:09:41 +09:00
Dean Herbert
a1b7bf3986
Use a minimum fade length for clamping rather than zero
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-03-10 16:47:02 +09:00
Henry Lin
5e36383258 Convert IObjectPositionInfo to a class 2022-03-10 12:02:25 +08:00
Henry Lin
3a71d81775 Convert the position modifier to stateless methods 2022-03-10 11:53:03 +08:00
Henry Lin
ede838c4b3 Use ObjectPositionInfo.HitObject 2022-03-10 11:23:52 +08:00
Dan Balasescu
c36badab4b Add per-ruleset score multipliers for classic scoring 2022-03-10 10:26:09 +09:00
Henry Lin
e8dbed738e Move OsuHitObjectPositionModifier to Utils/ 2022-03-09 21:52:15 +08:00
Henry Lin
8e12a067df Remove an unused property 2022-03-09 21:04:35 +08:00
Henry Lin
6a507ca11b Rename identifiers to remove references to random mod 2022-03-09 20:52:11 +08:00
Henry Lin
37328f8d24 Extract hit object positioning logic to a separate class
It is intentional to not rename the identifiers at this point to produce a cleaner diff.
2022-03-09 20:36:31 +08:00
Dan Balasescu
1646e9d64c
Merge pull request #17153 from hlysine/osu-random-mod-logic-changes
Separate randomization and object positioning logic in osu random mod
2022-03-09 20:52:33 +09:00
Dan Balasescu
353b251d38 Attempt to merge conditional expression
Hoping to fix CI error, caused by older R# version.
2022-03-09 17:46:42 +09:00
Dean Herbert
75c6a676b4 Apply nullable to OsuModRandom rather than using jetbrains annotations 2022-03-09 16:58:36 +09:00
Henry Lin
e3cf2c6acd Merge getAbsoluteAngle into computeRandomisedPosition 2022-03-09 13:27:33 +08:00
Henry Lin
3ced5e7904 Rename Distance to DistanceFromPrevious 2022-03-09 13:09:33 +08:00
apollo-dw
e2001148d5 Implement strict tracking mod 2022-03-08 21:47:54 +00:00
Henry Lin
ae1c65c38d Add xmldoc 2022-03-08 12:07:10 +08:00
Henry Lin
8cfeffc085 Extract a major part of ApplyToBeatmap to a new method 2022-03-08 11:50:30 +08:00
Henry Lin
ded84cab3f Separate randomisation and object positioning logic 2022-03-08 11:45:16 +08:00
Siim Pender
a02adfdbd4 Fix crash on super high bpm kiai sections 2022-03-07 20:36:09 +02:00
Henry Lin
c9b205afeb Add adaptive speed mod 2022-03-02 09:57:52 +08:00
Dean Herbert
a41e1c80f1 Show hit error on results screen
Leading up to implementation of "local offset", this feels like a good
thing to have visible first and foremost.
2022-02-28 19:11:06 +09:00
Dean Herbert
692ddd5f52 Merge branch 'master' into issues/16839-spun-out-rate 2022-02-22 14:04:45 +09:00
Dan Balasescu
567da9214e Merge branch 'master' into osu-diff-calc-max-combo 2022-02-18 18:35:24 +09:00
Dan Balasescu
84e82ef5e4 Add XMLDocs to difficulty attribute properties 2022-02-16 14:09:19 +09:00
Dan Balasescu
215da7e933 Reimplement as extension method on IBeatmap
Implementation has changed slightly to support arbitrary levels of
nested hitobjects.
2022-02-16 12:06:49 +09:00
Salman Ahmed
19ee05c232 Add "distance spacing" multiplier for osu! ruleset
While osu!catch also implements a distance snap grid, it doesn't rely on
`GetBeatSnapDistanceAt` (unlike osu!), therefore it can't have the
"distance spacing" multiplier yet.
2022-02-15 02:21:53 +03:00
Kaleb
df9535d195
Update RPM calculation for readability
Multiply the 1.01 factor to the resulting RPM, not to the duration.
2022-02-13 14:28:40 -05:00
Kaleb
585bd541f3
Add missing parentheses to RPM calculation 2022-02-13 02:38:49 -05:00
Kaleb
f1535b74be
Give Spun Out mod dynamic spin rate 2022-02-13 02:16:06 -05:00
PercyDan
639d813d06
Don't override previous value
Co-authored-by: Salman Ahmed <frenzibyte@gmail.com>
2022-02-12 11:15:03 +08:00
PercyDan54
053f41d755
Simplify code 2022-02-12 10:06:43 +08:00
PercyDan54
2ed3d58531
Ignore short spinners for relax mod 2022-02-12 09:28:50 +08:00
Henry Lin
ee6d4b2583 Move performance breakdown to the top to prevent re-ordering after watching replay 2022-02-05 21:39:01 +08:00
Henry Lin
0b1fef38af Use the playable beatmap provided in CreateStatisticsForScore 2022-02-05 21:36:34 +08:00
Henry Lin
2e1a9f1379 Add performance breakdown as statistic item in extended statistics panel 2022-02-05 21:13:16 +08:00
Henry Lin
f29301cd1e
Merge branch 'master' into display-performance-attributes 2022-02-05 16:59:46 +08:00
mk-56
dd8fc710fa removed wiggle duration 2022-02-04 15:48:46 +01:00
Dean Herbert
df9d99f5aa Merge branch 'master' into extended-statistics-without-replay 2022-02-03 18:59:48 +09:00
Dean Herbert
2731d8e3c2
Merge pull request #16701 from LeNitrous/mod-alternate-osu
Add "Alternate" mod for osu! ruleset
2022-02-03 10:41:23 +09:00
Dean Herbert
be9df2ca11
Merge pull request #5774 from MaxOhn/aimassist-mod
Add "Aim Assist" mod
2022-02-03 10:40:43 +09:00
Bartłomiej Dach
82f9ad63f5
Fix flashlight size multiplier printing with too many decimal digits 2022-02-02 20:41:25 +01:00
Bartłomiej Dach
7463744407
Fix osu! autoplay-like mods not declaring incompatibility with AimAssist 2022-02-02 19:17:33 +01:00
Dean Herbert
19eb9ad8a7 Reorder StatisticsItem constructor to make a touch more sense 2022-02-02 23:02:38 +09:00
Henry Lin
6a482827fe Fix weird line breaking 2022-02-02 17:23:03 +08:00
Dean Herbert
6e41a6e704 Tidy up code into a presentable state 2022-02-02 16:27:16 +09:00
Dean Herbert
2e46404fe5 Remove spinner support for now 2022-02-02 16:26:00 +09:00
Dean Herbert
f07502ac5f Use simple damp easing rather than transforms 2022-02-02 16:15:06 +09:00
Dean Herbert
334ed2c9c4 Fix sliders moving before they are actually hit 2022-02-02 15:36:09 +09:00
Dean Herbert
6b31e7e9db Merge branch 'master' into aimassist-mod 2022-02-02 15:18:48 +09:00
Dean Herbert
e7d72f1823 Revert recent changes 2022-02-02 15:18:44 +09:00
Dean Herbert
a2affefb0a Avoid checking gameplay clock time in Update method 2022-02-02 14:33:17 +09:00
Henry Lin
c5c4c85006 Lazily create content of StatisticItem 2022-02-02 13:29:18 +08:00
Dean Herbert
c7a192cc5f Only handle LeftButton and RightButton actions
There are definitely going to be other actions used in the future, which
would immediately cause this mod to fail. Limiting handling to
left/right buttons only is the correct way forward.
2022-02-02 14:04:12 +09:00
Dean Herbert
fed63abd83 Sanitise interceptor logic to now require two separate check paths 2022-02-02 14:02:48 +09:00
Dean Herbert
0036d0e26d Move alternate mod to "conversion" category 2022-02-02 13:58:13 +09:00
Bartłomiej Dach
9227211a44
Privatise shouldAlternate 2022-01-31 22:56:27 +01:00
Dan Balasescu
0458d408bb Add replay statistics frames to FramedReplayInputHandler 2022-01-31 18:53:47 +09:00
Nitrous
40f43344f1
remove unused using 2022-01-29 23:31:26 +08:00
Nitrous
535216a0d3
rename CanIntercept to ShouldAlternate 2022-01-29 23:20:31 +08:00
Nitrous
24f9ef4005
make xmldoc more verbose 2022-01-29 22:31:04 +08:00
Nitrous
98d8b26a9c
move ModAlternate to OsuModAlternate and check if intro has ended 2022-01-29 21:49:40 +08:00
Nitrous
2326c36836
remove unused method and fix description 2022-01-29 21:09:36 +08:00
Nitrous
aa582fb0e1
add Alternate Mod 2022-01-29 20:38:12 +08:00
mk-56
35be0f24d0 fixed leading "0"s not being present infront of decimal floats 2022-01-27 00:10:15 +01:00
MK56
c17ff49427
Merge branch 'ppy:master' into Wiggle-strength-duration 2022-01-25 19:57:14 +01:00
Bartłomiej Dach
a227af75ed
Simplify flashlight parameter passing flow 2022-01-24 21:03:02 +01:00
Bartłomiej Dach
5874475dff
Extract DefaultFlashlightSize to base flashlight class 2022-01-24 21:03:02 +01:00
Bartłomiej Dach
a7c0d507ce
Rename flashlight settings to be more accurate 2022-01-24 21:03:02 +01:00
mk-56
836cb1ee32 Suggested boundary change 2022-01-24 12:16:29 +01:00
mk-56
948867898c ModeMultiplier rename 2022-01-24 11:38:52 +01:00
mk-56
a427e20090 Fixes 2022-01-24 10:38:11 +01:00
mk-56
e3ba7d9ba5 Wiggle mod expansion
Free dlc!
2022-01-24 10:24:40 +01:00
mk-56
161a2a321e Remove bindable from ModeMultiplier 2022-01-24 09:07:07 +01:00
mk-56
ed84ae0ac0 Adjust values to Bdach's refined taste 2022-01-24 00:42:43 +01:00
Henry Lin
74a55ead77 Simplify combo counting logic 2022-01-23 13:00:54 +08:00
Henry Lin
f53ce5aedf Fix max combo calculation in osu diffcalc 2022-01-23 11:11:12 +08:00
mk-56
955bab926f Separate the settings for each modes radiuses 2022-01-22 19:38:56 +01:00
MK56
b5f813a949
Merge branch 'ppy:master' into Liswiera-FL-changes 2022-01-22 19:04:39 +01:00
Bartłomiej Dach
1ce0b18003
Merge branch 'master' into display-performance-attributes 2022-01-22 14:12:57 +01:00
Dan Balasescu
36d1cdb95a Merge branch 'master' into fl-opacity 2022-01-20 14:48:20 +09:00
StanR
b77e6f92b7 Fix touch device difficulty reduction not affecting star rating 2022-01-19 22:31:11 +03:00
Dan Balasescu
58bae9bda3
Merge pull request #16331 from stanriders/continuous-effective-misscount
Don't floor `effectiveMissCount`
2022-01-19 14:13:12 +09:00
mk-56
bd308ca38c Cleanup 2022-01-17 15:15:25 +01:00
Henry Lin
b81fc675e8 Include PropertyName in PerformanceDisplayAttribute 2022-01-17 20:45:25 +08:00
Henry Lin
d014fef179 Hide confusing attributes 2022-01-17 20:36:36 +08:00
Henry Lin
511a607599 Display performance breakdown in a tooltip 2022-01-17 18:28:17 +08:00
mk-56
ee4331dda4 Merge remote-tracking branch 'origin/Liswiera-FL-changes' into Liswiera-FL-changes 2022-01-15 21:44:03 +01:00
mk-56
2a59735525 Initial commit 2022-01-15 21:43:28 +01:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-15 14:45:42 +01:00
Salman Ahmed
3ab13dd78c Assign position to spinner ticks for correct positional playback 2022-01-15 14:24:52 +03:00
Susko3
19467e58c1 Remove unused params from BDL methods 2022-01-15 01:06:39 +01:00
Dean Herbert
4f8d29c1c0 Merge branch 'master' into realm-integration/score-and-beatmaps 2022-01-13 18:25:09 +09:00
Joseph Madamba
b245ffefc1 Merge remote-tracking branch 'upstream/master' into fix-remaining-identifier-names 2022-01-12 15:05:07 -08:00
Dean Herbert
51251e3204 Fix CI reported warnings 2022-01-12 22:39:00 +09:00
Dean Herbert
d8c52740cb
Merge pull request #16354 from bdach/slider-snapping
Apply slider snapping to current beat divisor more liberally to match user expectations
2022-01-12 11:18:18 +09:00
Dan Balasescu
b88a65166e Fix pp counter underflow with SpunOut mod 2022-01-11 10:22:16 +09:00
Bartłomiej Dach
c09f6ee052
Use slider snapping more liberally to match user expectations
Previously the slider path length would be snapped using the current
beat snap setting on *every* change of the slider path. As it turns out
this is unexpected behaviour in some situations (e.g. when reversing a
path, which is expected to preserve the previous duration, even though
the slider may be technically "unsnapped" at that point in time due to a
different beat snap setting being selected afterwards).
2022-01-07 16:02:04 +01:00
MaxOhn
b3230868cc use playfield clock 2022-01-06 16:31:30 +01:00
MaxOhn
197ada1a8c naive 10hz update 2022-01-06 16:04:38 +01:00
MaxOhn
b9d2a10530 adjustable assist strength + dont update spinner & running slider 2022-01-06 16:00:49 +01:00
MaxOhn
04d060aba3 update general playfield only once 2022-01-06 10:38:30 +01:00
Dean Herbert
ee24713002 Fix single sliders not being flippable due to incorrect precondition 2022-01-06 14:37:13 +09:00
StanR
dc755f4a7f Remove redundant casts 2022-01-05 15:07:02 +03:00
MaxOhn
5a62760fe4 hold spinners & minor adjustments 2022-01-05 13:05:22 +01:00
StanR
b317a95fe1 Don't floor effectiveMissCount 2022-01-05 14:36:07 +03:00
Dean Herbert
6779503e57 Refactor logic to avoid TimelineSelectionHandler having to block base calls 2022-01-05 16:56:54 +09:00
Dean Herbert
866ae3472b Add global flip hotkeys 2022-01-05 16:48:07 +09:00
MaxOhn
27a8bfa496 handle spinners and follow points 2022-01-04 22:17:50 +01:00
MaxOhn
612f69782b use Playfield.HitObjectContainer.AliveObjects 2022-01-04 14:29:44 +01:00
MaxOhn
168a105ed8 merged upstream 2022-01-04 09:34:02 +01:00
Dean Herbert
408e8d5710 Fix null reference causing crash in KiaiFlashingDrawable
Can occur if there is no fallback graphics available. Previously would
work as it was only setting the `Texture`.

As reported in https://github.com/ppy/osu/discussions/16281.
2021-12-30 22:21:39 +09:00
Joseph Madamba
c22a07d9fc Bump identifier typo inspection and fix remaining identifier names 2021-12-28 11:26:42 -08:00
Bartłomiej Dach
eea0fea69f
Add support for animated legacy hit circle overlay 2021-12-28 15:58:34 +01:00
Bartłomiej Dach
448c6ed515
Generalise KiaiFlashingSprite for arbitrary drawables 2021-12-28 15:58:34 +01:00
Bartłomiej Dach
63e0492725
Mark ShouldSerialize() methods as implicitly used 2021-12-28 09:02:03 +01:00
Joseph Madamba
7de43e3aba Fix most open compound words in identifiers being closed 2021-12-27 20:26:28 -08:00
Bartłomiej Dach
c6a5ac1c5f
Fix control point additions without a drag not being undoable 2021-12-23 09:32:52 +01:00
Bartłomiej Dach
cbda637d66
Fix drag after placement moving last placed point sometimes
More specifically, if the left mouse button was just pressed without a
drag, `OnDragEnd()` wouldn't fire, and the next drag would start moving
the last placed control point around regardless of where the mouse was.
2021-12-23 09:25:10 +01:00
Dean Herbert
b0df787b1a Move public method up and add xmldoc to second public method 2021-12-23 14:13:57 +09:00
Dean Herbert
60c9827187
Merge branch 'master' into move-many-slider-nodes-at-once 2021-12-23 14:11:04 +09:00
MBmasher
bb4e8add4d
Merge branch 'master' into fl-slider 2021-12-23 15:31:30 +11:00
Bartłomiej Dach
c3fada1926
Replace assertion with soft null check
Surrounding `OnDrag{Start,End}` methods did so already.
2021-12-22 10:33:08 +01:00
Bartłomiej Dach
6330fa5dc5
Select newly created control point 2021-12-22 10:33:07 +01:00
Bartłomiej Dach
e22745397d
Fix right click deselecting clicked path piece with control held 2021-12-22 08:55:26 +01:00
Dan Balasescu
98f044881e
Merge branch 'master' into refactor-diffcalc 2021-12-22 12:31:28 +09:00
Dan Balasescu
e50609c546 Rename method 2021-12-22 12:28:07 +09:00
Bartłomiej Dach
e715bff535
Fix selections including head not correctly dragging if not started from head 2021-12-21 12:35:48 +01:00
StanR
40b3ce0ade Clean up comments 2021-12-21 14:03:24 +03:00
StanR
cca02a8016 Create PerformanceAttributes 2021-12-21 13:08:31 +03:00
MBmasher
2aafcd3628 Refactor code regarding hidden boolean 2021-12-21 20:58:05 +11:00
MBmasher
c5de203aa5 Multiply opacityBonus to base strain 2021-12-21 20:10:19 +11:00
MBmasher
5d8968498c Adjust skillMultiplier after merging #15728, #15867 2021-12-21 20:08:57 +11:00
MBmasher
3d3de00581 Move hidden initialisation to Flashlight constructor 2021-12-21 20:06:53 +11:00
MBmasher
a7aea49cb3 Rename osuPreviousHitObject to currentHitObject 2021-12-21 20:06:07 +11:00
MBmasher
0a33f336b0
Merge branch 'master' into fl-opacity 2021-12-21 19:48:49 +11:00
Dan Balasescu
05b79f864e
Merge pull request #15867 from MBmasher/fl-cumulative-strain
Fix cumulative strain time calculation in Flashlight skill
2021-12-21 17:19:09 +09:00
Dan Balasescu
f366cdc73e Extract initial set out of loop 2021-12-21 12:39:34 +09:00
Dan Balasescu
c21b2d1662 Fix incorrect variable 2021-12-21 12:39:09 +09:00
Dan Balasescu
e21dbf10ff Refactor further to remove indexing confusion 2021-12-21 12:25:32 +09:00
Dan Balasescu
377cb1d9e3
Merge pull request #15728 from MBmasher/fl-decay
Remove decay factor in Flashlight skill
2021-12-21 07:59:32 +09:00
Bartłomiej Dach
5ef4e23335
Fix selecting control points without control not deselecting other selected points 2021-12-20 22:41:24 +01:00
Bartłomiej Dach
bf8c87e9b7
Fix releasing mouse after drag deselecting dragged point 2021-12-20 22:41:23 +01:00
Bartłomiej Dach
d2417beeac
Implement drag operation for multiple path control points 2021-12-20 21:29:57 +01:00
Bartłomiej Dach
a9408485cc
Change control point piece selection logic to allow dragging multiple 2021-12-20 21:18:38 +01:00
Bartłomiej Dach
b0ca82e1e5
Move slider path point drag handling to visualiser 2021-12-20 20:56:06 +01:00
MBmasher
c71655a75e
Merge branch 'master' into fl-cumulative-strain 2021-12-21 06:06:19 +11:00
MBmasher
6caa950c44 Rename osuPrevious to osuLoop 2021-12-20 19:16:41 +11:00
StanR
2f2006715e Slightly refactor difficulty and pp calculators 2021-12-17 23:40:23 +03:00
Dean Herbert
abb617a3df Avoid blocking Active state propagation 2021-12-16 19:57:24 +09:00
Dean Herbert
6bffeb6a24
Merge branch 'master' into fix-autopilot-touch-devices 2021-12-15 12:04:35 +09:00
rumoi
e662a9f0c4 Remove redundant code. 2021-12-15 12:36:45 +13:00
rumoi
4664bb1d29 Remove uneeded complexity 2021-12-15 05:16:10 +13:00
rumoi
c87ff82c1c calculateRhythmBonus performance fix. 2021-12-14 09:25:29 +13:00
Salman Ahmed
cf30411288 Revert "Remove now redundant inclusion of TouchMoveEvent in OsuInputManager.Handle"
This reverts commit bc1f1f35b5.
2021-12-10 17:13:13 +03:00
Salman Ahmed
bc1f1f35b5 Remove now redundant inclusion of TouchMoveEvent in OsuInputManager.Handle
Now it's handled separately via the `HandleMouseTouchStateChange` override.
2021-12-10 16:44:16 +03:00
Dean Herbert
5a953f3811 Fix autopilot not working as expected on touch devices
Closes https://github.com/ppy/osu/issues/12731.

I haven't tested this, but quite confident it should work. Will test
later today unless someone else beats me.
2021-12-10 19:14:35 +09:00
Dan Balasescu
99991a6703 Minor cleanups, unifying wording a bit more 2021-12-08 15:59:15 +09:00
Dan Balasescu
1a09a3469a Merge branch 'master' into refactor-osu-difficulty-hit-object 2021-12-08 15:53:44 +09:00
Dan Balasescu
11104124f1 Restructure doc for easier readability 2021-12-08 15:52:59 +09:00
Dan Balasescu
814f072767 Use new LazyJumpDistance terminology in documentation 2021-12-08 15:17:56 +09:00
Dan Balasescu
7c0f7b1baa Use "x" for cursor position in diagrams 2021-12-08 14:57:21 +09:00
Dan Balasescu
bcda777071
Merge branch 'master' into speedbug 2021-12-07 23:43:17 +09:00
Dan Balasescu
ded86282c1 Rename + better documentation 2021-12-07 23:14:35 +09:00
Dan Balasescu
7c3d1d630e Merge branch 'master' into refactor-osu-difficulty-hit-object 2021-12-07 21:05:49 +09:00
MBmasher
9824d805ea Remove unnecessary clockRate in Opacity function 2021-11-30 14:36:38 +11:00
MBmasher
5884b058b9 Add blank line 2021-11-30 13:54:41 +11:00
MBmasher
3339afd648 Change input variable name in Opacity function 2021-11-30 13:52:58 +11:00
MBmasher
b0dc8bf061 Change Opacity function to take in absolute map time rather than relative time 2021-11-30 12:58:49 +11:00
MBmasher
4354699258 Fix cumulative strain time calculation in Flashlight skill 2021-11-30 12:51:23 +11:00
Dan Balasescu
383bf7cdfc Only allow HD combination alongside FL 2021-11-30 10:39:48 +09:00
Dan Balasescu
e6e6e2d951 Merge branch 'master' into fl-opacity 2021-11-30 10:00:44 +09:00
Bartłomiej Dach
5001412a0d
Reorder easing mapping to match enum order and throw on unknown animation style 2021-11-28 15:19:12 +01:00
Bartłomiej Dach
aba9ed624a
Remove unnecessary whitespace 2021-11-28 15:16:33 +01:00
mk-56
1ae41118cd Added gravity as a default. 2021-11-27 22:59:09 +01:00
mk-56
0df97744ad Moved linear to a better place.
i decided to go with leaving it under gravity, its plenty visible and fine there, since the public enum list self orders I wasn't sure about how i could set a default that wasn't the topmost option
2021-11-27 13:34:09 +01:00
MK-56
5e56122d65 Linear approach type moved per peppys request 2021-11-26 09:48:38 +01:00
MK56
5e0763ae33 Expand the functionality of Approach different 2021-11-25 10:24:00 +01:00
Dan Balasescu
3e4b774992 Invert lines for better chronological order 2021-11-25 14:08:08 +09:00
Dan Balasescu
b20ff22af0 Ensure travel distance is calculated for all sliders 2021-11-24 16:50:33 +09:00
Dan Balasescu
274444ed67 Add additional information to diagram 2021-11-24 13:22:52 +09:00
Dan Balasescu
b5747f351d Reword xmldocs 2021-11-24 13:11:44 +09:00
Dan Balasescu
a081038076 Normalized -> Normalised 2021-11-24 13:01:53 +09:00
Dan Balasescu
e07c44d79a Reword comment with a more diagrammatical explanation 2021-11-24 13:01:15 +09:00
Dan Balasescu
402de754f7 Make TravelDistance/TravelTime apply to the current object 2021-11-24 12:37:22 +09:00
Dan Balasescu
e67d9b1c21 Reorder members a bit 2021-11-24 12:14:52 +09:00
GoldenMine0502
9157b91e5f fix adding wrong values 2021-11-23 16:41:20 +09:00
MBmasher
7560d3de04 Remove decay factor in Flashlight skill 2021-11-22 10:52:04 +11:00
MBmasher
65ef030341 Further balancing 2021-11-22 08:59:41 +11:00
MBmasher
7833fab02d Balancing bonuses to adjust for corrected opacity formula 2021-11-22 08:41:56 +11:00
MBmasher
e9745a3ac4 Fix wrong opacity formula 2021-11-22 08:32:35 +11:00
MBmasher
e9a4ee6800 Cleaning up code 2021-11-21 23:53:40 +11:00
MBmasher
a57c277a58 Move preempt back to CreateDifficultyAttributes 2021-11-21 23:43:09 +11:00
MBmasher
afbec94124 Move opacity function to OsuDifficultyHitObject 2021-11-21 23:40:15 +11:00
Dean Herbert
9f688f6291 Stop persisting Skills in DifficultyAttributes 2021-11-21 12:15:32 +09:00
MBmasher
fe83b8fc77 Add line break 2021-11-18 10:50:32 +11:00
MBmasher
f4b23f0960 Remove setting preempt in CreateDifficultyAttributes 2021-11-18 10:37:07 +11:00
MBmasher
30e18f16d9 Change mods and preemptTime to readonly 2021-11-18 10:33:44 +11:00
MBmasher
92cf447180 Remove unnecessary braces 2021-11-18 10:32:41 +11:00
MBmasher
e42f28990b Add blank line 2021-11-18 10:30:17 +11:00
MBmasher
a77a9a2309 Balancing slider bonus 2021-11-18 10:13:25 +11:00
MBmasher
05b44f5df4 Add slider bonus to Flashlight skill 2021-11-18 09:55:04 +11:00
MBmasher
8e8571543d Removing unnecessary file 2021-11-18 09:48:18 +11:00
MBmasher
6a444b9edb Further balancing opacity/hidden bonus 2021-11-18 09:47:41 +11:00
Dean Herbert
fd0cae2bfb
Merge branch 'master' into difficulty-attribute-helpers 2021-11-17 20:49:31 +09:00
Dan Balasescu
815179f713 Use consts for attribute IDs 2021-11-17 20:31:18 +09:00
Dan Balasescu
43cbb23b15 Use ShouldSerializeFlashlightRating() to serialise database attribute 2021-11-17 20:23:08 +09:00
Dan Balasescu
2ae46f901e Add comment for implicitly-used method 2021-11-17 20:22:43 +09:00
MBmasher
63c5f7d9d7 Balancing opacity and hidden bonus 2021-11-17 11:39:12 +11:00
MBmasher
f2d05ea899 Remove strain being multiplied by max opacity bonus 2021-11-17 11:27:48 +11:00
Dan Balasescu
2c45a327bb Remove JsonIgnores, require opt-in properties 2021-11-15 19:54:35 +09:00
Dean Herbert
369b4ba789 Update DifficultyCalculator to take an IRulesetInfo 2021-11-15 19:16:48 +09:00
Dean Herbert
62d670a3ca Update DifficultyCalculator to take an IWorkingBeatmap 2021-11-15 19:16:48 +09:00
Dan Balasescu
c8a01c35f7 Remove extra members from FromDatabaseAttributes 2021-11-15 18:11:07 +09:00
Dan Balasescu
21c0882b74 Don't serialize FL rating without FL mod 2021-11-15 17:24:53 +09:00
Dan Balasescu
45382a8127 Ignore some properties 2021-11-15 16:32:25 +09:00
Dan Balasescu
0cfd6fdf04 Add to/from database mapping functions to difficulty attributes 2021-11-15 16:06:50 +09:00
Dan Balasescu
907499f73a Add json properties to difficulty attributes 2021-11-15 16:06:29 +09:00
MBmasher
efac11e886 Add extra bonus for hidden+flashlight 2021-11-12 21:42:27 +11:00
MBmasher
5a3be778a1 Resolve conflicts with recent slider hotfix 2021-11-12 21:41:01 +11:00
MBmasher
131e64e56c Add bonus based on opacity of hit objects 2021-11-12 21:29:51 +11:00
Dan Balasescu
a76247603f
Merge pull request #15564 from apollo-dw/sliderend-sr
Nerf dropped sliders in osu! difficulty calculation
2021-11-12 18:16:28 +09:00
Dan Balasescu
9fb2402781 Remove unnecessary parens 2021-11-12 17:31:25 +09:00
apollo-dw
cdfe022805 Fix potential NaN values 2021-11-12 00:56:08 +00:00
Bartłomiej Dach
8aa04864ce
Add support for converting sliders with repeats to streams 2021-11-11 23:25:49 +01:00
Bartłomiej Dach
0cd3f98598
Ensure samples & sample points are carried over during conversion 2021-11-11 21:43:06 +01:00
Bartłomiej Dach
27707d52ec
Implement slider-to-stream conversion 2021-11-11 21:01:30 +01:00
apollo-dw
c330093476 Add clamp back in 2021-11-11 14:42:54 +00:00
apollo-dw
1ba01a7e9a Fix circle-only map NaN values 2021-11-11 14:37:50 +00:00
apollo-dw
95bfb2c69b Clamp slider end estimate to 0 2021-11-11 12:46:22 +00:00
apollo-dw
7075108062 Clean up clamp logic relating to slider end estimate 2021-11-11 02:57:34 +00:00
apollo-dw
86c6837e5d Make slider nerf factor more lenient 2021-11-11 02:49:24 +00:00
apollo-dw
5df694e912 Estimate number of difficult sliders, and increase assumed slider radius 2021-11-11 00:42:06 +00:00
ekrctb
116b857cea
Merge branch 'master' into no-scope-catch 2021-11-10 20:50:31 +09:00
Bartłomiej Dach
6d04823b05
Remove unnecessary virtual specs 2021-11-10 12:00:36 +01:00
apollo-dw
2d2a6d8a18 Swap to a harsher formula for slider dropped nerf 2021-11-10 04:00:54 +00:00
apollo-dw
fe2f143e8a Nerf slider aim for plays with dropped slider ends 2021-11-10 00:59:28 +00:00
Semyon Rozhkov
41f4f0ab5e Different setting slider description in each mod 2021-11-10 03:57:22 +03:00
Semyon Rozhkov
64bc8da14c Add "No Scope" mod implementation for Catch 2021-11-09 17:11:19 +03:00
Dan Balasescu
2c1941eec6
Merge pull request #15514 from Wieku/fix-initial-strain
Change currentStrain to 0 for standard mode skills
2021-11-08 12:04:50 +09:00
Dean Herbert
17637d9dac
Merge pull request #15505 from peppy/use-class-rename
Rename `User` to `APIUser` and move to correct namespace
2021-11-08 11:48:19 +09:00
Sebastian Krajewski
b84b288c23 Merge branch 'master' of github.com:ppy/osu into fix-initial-strain 2021-11-08 02:07:08 +01:00
Sebastian Krajewski
bd35a3b7ba Change currentStrain to 0 for standard mode skills 2021-11-08 01:53:51 +01:00
Dan Balasescu
547feaa392
Merge branch 'master' into aim-refactor-ppcalc 2021-11-08 01:38:18 +09:00
Dan Balasescu
fd9e86d399
Merge pull request #14847 from emu1337/aim-refactor-velocity
osu! Difficulty Aim Overhaul: velocity change
2021-11-08 01:38:07 +09:00
smoogipoo
480a1604fa Rename constant 2021-11-08 00:47:22 +09:00
smoogipoo
84f3168a6c More comment refactorings 2021-11-08 00:46:35 +09:00
smoogipoo
5ada167709 Merge branch 'master' into aim-refactor-velocity 2021-11-08 00:32:40 +09:00
Bartłomiej Dach
cc73db09d3
Merge branch 'master' into relax-nan-fix 2021-11-07 16:31:59 +01:00
Dan Balasescu
c62b6ab492
Merge pull request #14846 from emu1337/aim-refactor-slider
osu! Difficulty Aim Overhaul: slider change
2021-11-08 00:31:37 +09:00
Xexxar
fed733202e removed unneeded comment 2021-11-07 14:59:25 +00:00
Xexxar
4493ca4dda Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-07 14:56:50 +00:00
Xexxar
86b635cdd3 refactor comments to be on previous line for readability 2021-11-07 14:56:23 +00:00
Dean Herbert
ca933c53ab
Fix weird english in old comment 2021-11-07 23:52:32 +09:00
Xexxar
80248f436d Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-07 14:51:19 +00:00
Xexxar
e23b93bc4c Merge branch 'aim-refactor-slider' of https://github.com/emu1337/osu into aim-refactor-slider 2021-11-07 14:50:29 +00:00
Xexxar
03476e018e fixed comment 2021-11-07 14:49:26 +00:00
Bartłomiej Dach
6d30248cef
Merge branch 'master' into use-class-rename 2021-11-07 15:41:00 +01:00
smoogipoo
6aecd682af Refactor a bit 2021-11-07 23:26:13 +09:00
Xexxar
771620cef1 refactored duplicate code for simplicity 2021-11-07 14:21:18 +00:00
Sebastian Krajewski
91e261e256 Start comments with upper case 2021-11-07 14:51:17 +01:00
Sebastian Krajewski
fedbbc0210 Add a comment why Math.Min is used 2021-11-07 14:50:00 +01:00
Sebastian Krajewski
b1f3fee239 Add sanity check in Relax effectiveMissCount calculation 2021-11-07 05:54:17 +01:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09:00
Xexxar
291ef1fe9c Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-07 01:50:59 +00:00
Xexxar
24ba515f09 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-07 01:50:47 +00:00
Xexxar
22b9d2e879 adjustment to decrease slider leniency 2021-11-07 01:50:17 +00:00
Xexxar
866c731b74 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-07 01:09:09 +00:00
Xexxar
26ff292337 revert velchangetest change 2021-11-07 01:08:51 +00:00
Xexxar
fc25f9501f Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-07 00:13:37 +00:00
Xexxar
adeebd954a update to fix velocity change oversight 2021-11-07 00:13:13 +00:00
Xexxar
e0632c4b1f Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-06 22:28:13 +00:00
Xexxar
f135a98d69 updated for review, adding wide angle buff for velchanges 2021-11-06 22:27:58 +00:00
Xexxar
860f9f0860 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-06 21:56:02 +00:00
Xexxar
bd58d2873e revert velocity multiplier to 0.75 2021-11-06 21:55:47 +00:00
Xexxar
0fdfa77185 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-06 21:12:03 +00:00
Xexxar
7af1a0bf12 buffed velocity constant 2021-11-06 21:11:37 +00:00
Xexxar
454e51a4c5 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-06 21:11:14 +00:00
Xexxar
14a3e3bb06 nerfed approx slider window 2021-11-06 21:10:21 +00:00
Xexxar
fc33c96c38 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-06 19:44:39 +00:00
Xexxar
e50c7fff2f Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-06 19:44:21 +00:00
Xexxar
7d2c31f4df cleaned up code uglies 2021-11-06 19:42:54 +00:00
Xexxar
9b8b6846e9 restore original global multiplier so people dont mald 2021-11-06 19:22:30 +00:00
Xexxar
6f5cfe3268 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-06 19:22:08 +00:00
Xexxar
beea8e8ba6 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-06 19:18:50 +00:00
Xexxar
7e47432f93 merged latest 2021-11-06 19:18:25 +00:00
Xexxar
3e08772660 updated slider to use lazytraveldistance code location 2021-11-06 19:16:58 +00:00
Dean Herbert
6399c695e8 Update usages of BufferedContainer in line with framework changes 2021-11-05 15:54:49 +09:00
smoogipoo
d76158cbad Resolve inspection 2021-11-04 09:20:46 +09:00
smoogipoo
23dbf04764 Fix incorrect type 2021-11-04 09:17:51 +09:00
Xexxar
6c6a440f1b applied constants to numbers 2021-11-03 18:09:44 +00:00
Xexxar
7eb0edf046 added stanrs requested changes 2021-11-03 17:59:09 +00:00
Xexxar
8e0d845f21 added small length component to ARbuffs 2021-11-03 16:39:05 +00:00
Xexxar
a92e588389 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-03 16:37:19 +00:00
Xexxar
45e0897530 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-03 16:37:02 +00:00
Xexxar
a32c97427d set angleBonus to take max of acute and wide multipliers 2021-11-03 16:36:39 +00:00
Xexxar
93ed97d11e increased global multiplier due to adjustment to sliders 2021-11-03 16:16:09 +00:00
Xexxar
a8d4d7ca2d Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-03 16:15:40 +00:00
Xexxar
d1ec245685 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-03 16:15:17 +00:00
Xexxar
7fc60a840e added radial leniency to movementdistance 2021-11-03 16:14:45 +00:00
Xexxar
8fdffbf08f adjusted global multiplier to better balance values against inflation 2021-11-03 16:02:23 +00:00
Xexxar
2d48301223 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-11-03 15:55:01 +00:00
Xexxar
d74e181531 renamed prev to last 2021-11-03 15:54:49 +00:00
Xexxar
b9fc355f74 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-11-03 15:53:41 +00:00
Xexxar
b3b44c0795 merged in aim-base 2021-11-03 15:52:48 +00:00
Xexxar
9afca5c5b6 rewrote slider algorithm to be based on leniency and stored current cursor positions 2021-11-03 15:38:23 +00:00
smoogipoo
133218ecbb Document special MovementDistance for sliders, ensure always has a value 2021-11-03 01:04:07 +09:00
smoogipoo
c3a31a019b Merge branch 'master' into aim-refactor-base 2021-11-03 00:32:51 +09:00
smoogipoo
b0d9c0eca3 Refactor variables for readability in angle calculations 2021-11-03 00:16:33 +09:00
smoogipoo
93c03b9d37 Refactor documentation around velocity calculations 2021-11-03 00:04:19 +09:00
smoogipoo
7e0629774b Rename variables for readability
In particular, "last" vs "prev" can get confusing because they mean the
same thing.
2021-11-02 23:51:10 +09:00
smoogipoo
5454de7ae8 Refactor xmldocs 2021-11-02 23:47:20 +09:00
smoogipoo
be8a1f60c0 Apply styling changes 2021-11-02 23:33:51 +09:00
Dean Herbert
e0cdcdd7a4 Merge branch 'master' into spinner-judgement-fix 2021-10-29 12:13:42 +09:00
Xexxar
9f5a7526ed merge in ppy/master 2021-10-28 14:47:28 +00:00
Xexxar
219880d719 add in stanrs review 2021-10-28 14:45:45 +00:00
Dean Herbert
5c7623e68e
Merge pull request #15255 from goodtrailer/node-samples-ilist
Change IHasRepeats.NodeSamples to IList from List
2021-10-28 14:24:26 +09:00
Dean Herbert
add39fbd4f Merge branch 'master' into fix-skin-layout-editor-crash 2021-10-28 06:24:24 +09:00
Xexxar
bc98e8c97c Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-27 18:10:11 +00:00
Xexxar
09d4ed149c merged latest slider 2021-10-27 18:09:50 +00:00
Xexxar
7eb7d12589 updated sliders to handle increased tick rates better 2021-10-27 18:08:30 +00:00
Xexxar
626db1f274 updated sliders to handle increased tick rates better 2021-10-27 18:08:06 +00:00
Xexxar
ddf87316df updated to add nerf for repeated acute angles 2021-10-27 16:30:17 +00:00
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
Dean Herbert
838481bf3a
Merge pull request #15252 from jaswon/no-scope-breaks
Show cursor during breaks and spinners in no scope mod
2021-10-27 12:55:02 +09:00
Dean Herbert
d80a73b63d Use explicit primitive types 2021-10-27 12:53:02 +09:00
Bartłomiej Dach
670fcea68d
Rename some variables 2021-10-26 18:56:34 +02:00
smoogipoo
1147c6cbfc Remove unnecessary default value 2021-10-26 19:56:54 +09:00
Roxie Wattz
8b85c78b0d Add processing of Spinner approach circles 2021-10-25 20:16:45 -07:00
Dean Herbert
0757044b15 Refactor logic to work 2021-10-26 11:42:15 +09:00
Dean Herbert
e7b19cb724 Rename test and fix incorrect layout 2021-10-26 11:30:36 +09:00
Roxie Wattz
cf7fbf4b63 updated bdach's suggestion 2021-10-25 17:15:43 -07:00
Roxie Wattz
c9a2c6c031 Reworking the Ouendan 2 Hidden code AGAIN
Not finished. Will be finished in a later commit.
2021-10-25 14:09:22 -07:00
Roxie Wattz
7a92c7ab7e Move condition to separate switch statement
No clue if this is how peppy wanted me to do it but it still works
2021-10-25 00:25:32 -07:00
Roxie Wattz
cb36a23cdc
Update osu.Game.Rulesets.Osu/Mods/OsuModHidden.cs
Suggested by peppy. Changes name and description of setting

Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-10-24 22:52:10 -07:00
Roxie Wattz
d1b720af16 Add Ouendan 2 reference 2021-10-24 21:51:12 -07:00
Roxie Wattz
6b9e8dbd2e Added the ouendan 2 style hidden
Added as an option for nostalgia nerds like me
2021-10-24 21:34:40 -07:00
Roxie is Flux3on
0c57453f4d Reverted special case code changes
As requested by @frenzibyte
2021-10-24 18:16:14 -07:00
Roxie is Flux3on
a8e3d0bacc Added an override for StackedEndPosition
This ensures the spinner's hit judgement will always be centre instead of in the top left corner.
2021-10-24 18:15:40 -07:00
Roxie is Flux3on
861cd4852a Made StackedEndPosition virtual
Done to allow overriding in the other object classes.
2021-10-24 18:14:37 -07:00
Roxie is Flux3on
386910ca2e Cut amount of code down for the spinner judgement fix 2021-10-24 15:29:47 -07:00
Roxie is Flux3on
b8308b9715 Corrected spinner judgement positions.
For some reason, spinner judgements would stack from the top left in an awkward fashion. This patch ensures that the judgement location will always be in the centre of the screen.
2021-10-24 15:28:38 -07:00
Dean Herbert
99d01f2162 Fix a couple of new layout inspections introduces in Rider 2021.3 EAP5 2021-10-24 23:51:49 +09:00
goodtrailer
4440b9ca11 Change IHasRepeats.NodeSamples to IList from List 2021-10-23 01:59:07 -07:00
Jason Won
9fcb3d9dd1 NoScopeMod: show cursor during breaks + spinners 2021-10-22 18:14:32 -04:00
Xexxar
ceb2bdece9 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-22 17:22:00 +00:00
Xexxar
b6e7d898f1 constant didnt update during last merge 2021-10-22 17:21:34 +00:00
Xexxar
19fb848ed2 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-22 17:19:04 +00:00
Xexxar
b9748399c4 added velocity adjustment for sliders 2021-10-22 17:18:34 +00:00
Xexxar
06e7c3cd04 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-10-22 17:17:36 +00:00
Xexxar
62197fec3a updated sliders for rebalance again 2021-10-22 17:17:19 +00:00
Dean Herbert
93482414d6 Remove SkinConfiguration subclasses and allow configuration parsing for all skin types 2021-10-22 14:42:23 +09:00
Xexxar
ce8899e7c8 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-21 21:38:37 +00:00
Xexxar
5ee2272d8a added slider changes 2021-10-21 21:37:38 +00:00
Xexxar
85f28a843a adjusted sliders further 2021-10-21 21:30:00 +00:00
Xexxar
ac22d31b34 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-21 19:58:55 +00:00
Xexxar
534d1e72ce merged sliders 2021-10-21 19:58:41 +00:00
Xexxar
ec06e53212 further rebalancing of sliders 2021-10-21 19:58:02 +00:00
Xexxar
b51a8dead5 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-21 19:29:30 +00:00
Xexxar
be2f9603c9 merged slider updates 2021-10-21 19:29:06 +00:00
Xexxar
e3a0e4749e removed excess acute anglebuff and buffed sliders to comp 2021-10-21 19:28:06 +00:00
Xexxar
55809c43ee Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-21 18:38:59 +00:00
Xexxar
692c7b4be1 Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-10-21 18:38:32 +00:00
Xexxar
b1c18d1f36 Merge branch 'aim-refactor-base' into aim-refactor-slider 2021-10-21 18:37:22 +00:00
Xexxar
2f8972b529 reverted overwritten file 2021-10-21 18:37:06 +00:00
Xexxar
ca3259d4e9 Merge branch 'aim-refactor-velocity' into aim-refactor-ppcalc 2021-10-21 17:22:33 +00:00
Xexxar
fd991296fa Merge branch 'aim-refactor-slider' into aim-refactor-velocity 2021-10-21 17:22:09 +00:00
Xexxar
613a548583 Merge branch 'aim-refactor-base' into aim-refactor-slider 2021-10-21 17:21:52 +00:00
Xexxar
d6aa2fe6e4 identified case with spinner where / 0 could theoretically be possible 2021-10-21 17:21:34 +00:00
Xexxar
a23330c49b removed comment 2021-10-21 17:21:03 +00:00
Xexxar
dba0ee0b1d added ppcalc changes to build 2021-10-21 17:18:24 +00:00
Xexxar
81e817f881 updated to latest version of velchange 2021-10-21 17:07:56 +00:00
Xexxar
276b4afdb0 removed unnecessary test code 2021-10-21 16:14:31 +00:00
Xexxar
4fe007aa2e new slider travel dist algorithm 2021-10-21 16:08:35 +00:00
Xexxar
bef6e100fa Merge branch 'aim-refactor-base' into aim-refactor-slider 2021-10-21 16:01:38 +00:00
Xexxar
cb605f9156 removed ppCalc changes and sliderabuseChecks 2021-10-21 16:00:57 +00:00
Xexxar
750c5a0181 Merge remote-tracking branch 'ppy/master' into aim-refactor-base 2021-10-21 15:45:31 +00:00
Xexxar
c074304ec3 updated to latest version of base 2021-10-17 04:48:57 +00:00
Xexxar
14d405786e resolved nans and added stacked slider fix 2021-10-17 03:56:53 +00:00
smoogipoo
30eb08d394 Merge branch 'master' into aim-refactor-base 2021-10-17 12:00:39 +09:00
smoogipoo
80827b741f Merge branch 'master' into effective-miss-count 2021-10-16 21:43:34 +09:00
StanR
ccaac97794 Clamp comboBasedMissCount 2021-10-16 14:50:15 +03:00
StanR
c8d99e68a5 Remove calculation for scores with combo above threshold, avoid division by zero 2021-10-15 16:51:05 +03:00
smoogipoo
1a18d3598a Merge branch 'master' into fix-invisible-sinners 2021-10-15 20:45:40 +09:00
Dean Herbert
30c3fcb4ea Merge branch 'master' into slider-timeline-velcotiy-adjust-v2 2021-10-15 19:45:04 +09:00
Dean Herbert
4cba1fce07
Merge pull request #15111 from jaswon/ghost-mod
Add "no scope" mod for osu
2021-10-15 15:44:05 +09:00
Dean Herbert
3a7eb7dd25 Make const private 2021-10-15 14:27:20 +09:00
Dean Herbert
6a80a417bd Use Interpolation.Lerp instead of transforms
Better handles cases where the combo may be changing faster than the
transition length.
2021-10-15 14:25:51 +09:00
Jason Won
538d980072 Rename Mod 2021-10-15 00:22:57 -04:00
Jason Won
2dfc42dd53 revert interpolation changes + fix cursor trail 2021-10-14 23:34:43 -04:00
Jason Won
23b50a054b address comments 2021-10-14 20:50:47 -04:00
Jason Won
6b1534f5a6 Add "ghost" mod for osu 2021-10-14 18:30:55 -04:00
smoogipoo
901f107b2e Merge branch 'master' into slider-timeline-velcotiy-adjust-v2 2021-10-14 17:25:51 +09:00
StanR
205d95e8c6 Approximate amount of effective misses using combo 2021-10-13 20:04:34 +03:00
Xexxar
4edf559408 adjusted constant to 1.5 from 2.0 for acute 2021-10-13 16:45:58 +00:00
Xexxar
cde4b0b17c forgot to add double delcaration, remember to test 2021-10-13 16:25:16 +00:00
Xexxar
0b794728ea updated to latest version with slider calc 2021-10-13 16:17:49 +00:00
Xexxar
0292fe1c83 removed residual code leftover 2021-10-13 16:04:39 +00:00
Xexxar
200149c9d7 updated to newly refactored aim 2021-10-13 15:41:24 +00:00
Dan Balasescu
e49f1f6e6b
Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-13 20:17:57 +09:00
emu1337
d7483a6c5d changed pow to exp function 2021-10-11 19:58:03 +02:00
emu1337
aab3277024 changed speed acc scaling to be closer to worst case scenario 2021-10-11 03:12:57 +02:00
Xexxar
56daac73f2 merged ppy/master 2021-10-10 17:12:49 +00:00
Dean Herbert
b8fe744d2b
Merge pull request #15008 from stanriders/remove-int-casts
Remove int casts in difficulty calculation
2021-10-10 16:48:37 +09:00
smoogipoo
e7a3467655 Merge branch 'master' into skillsrework 2021-10-10 16:16:54 +09:00
StanR
abd32e30f1
Update osu.Game.Rulesets.Osu/Difficulty/Preprocessing/OsuDifficultyHitObject.cs
Co-authored-by: Liam DeVoe <orionldevoe@gmail.com>
2021-10-09 21:11:24 +03:00
StanR
3b0b8707fe Reduce nesting, check all objects for spinners 2021-10-09 20:28:42 +03:00
StanR
b72b071c25 Fix instant spinners giving insane amounts of strain 2021-10-09 12:35:17 +03:00
StanR
37632fe4dc Remove int casts in difficulty calculation, fixup some comments 2021-10-09 12:08:57 +03:00
smoogipoo
f0affa9f5a Don't refer to BeatmapInfo 2021-10-08 19:50:31 +09:00
smoogipoo
3a4807a032 Merge branch 'master' into blinds-pp 2021-10-08 19:45:59 +09:00
smoogipoo
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
smoogipoo
cefef81cdf Merge branch 'master' into skillsrework 2021-10-08 18:21:51 +09:00
Dan Balasescu
5b89293fa3
Merge pull request #14942 from apollo-dw/relax-osu-pp
Implement Relax difficulty calculation in osu!
2021-10-08 16:47:43 +09:00
apollo-dw
57c069e0e1 Remove unused strings 2021-10-06 23:50:23 +01:00
apollo-dw
d6eab02d92 Return 0 for speed with relax 2021-10-06 16:53:33 +01:00
apollo-dw
34269d48e5 Use global multipliers instead of multiplying skill values 2021-10-06 12:25:19 +01:00
Dean Herbert
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
emu1337
d17beb9bbe improved overall balance 2021-10-06 01:39:01 +02:00
emu1337
3cb816b6cd fixed some nerfs not carrying to the next iteration 2021-10-05 21:19:00 +02:00
Dean Herbert
bd84a8b749 Merge branch 'new-interfaces' into beatmap-difficulty-more-interface-usage 2021-10-05 18:21:21 +09:00
Dean Herbert
1d99bc280f Merge branch 'master' into new-interfaces 2021-10-04 20:42:40 +09:00
Dan Balasescu
aa1bfc16d2
Merge pull request #14929 from peppy/gameplay-state
Replace `GameplayBeatmap` with `GameplayState`
2021-10-04 15:56:44 +09:00
Xexxar
94f8692b00 removed acc changes to put in seperate PR 2021-10-03 17:42:49 +00:00
Xexxar
bc3ae4c4f8 changed function names to be consistent 2021-10-03 17:36:34 +00:00
Xexxar
6d134b2a83 resolved code cleanliness issues 2021-10-03 17:32:03 +00:00
Xexxar
ba2c44a2f4 reworked strain to fix issue with overlapping hitwindo 2021-10-03 17:31:56 +00:00
Bartłomiej Dach
5e5cdaab5e
Privatise setter
Co-authored-by: Dean Herbert <pe@ppy.sh>
2021-10-03 19:14:01 +02:00
Bartłomiej Dach
abe0ced48c
Proxy slider head circle number along with overlay 2021-10-03 15:53:49 +02:00
apollo-dw
03f0a36589 additional balancing 2021-10-03 11:53:14 +01:00
apollo-dw
bc1ff019da Implement relax checks 2021-10-03 11:27:17 +01:00
apollo-dw
a5025dc8b8 Buff base multiplier 2021-10-01 22:23:16 +01:00
Dean Herbert
32afd3f426 Replace all basic usages 2021-10-02 02:22:23 +09:00
apollo-dw
310bf3e580 more code quality (oops) 2021-10-01 15:29:20 +01:00
apollo-dw
7d77c279e1 Merge branch 'blinds-pp' of https://github.com/mrowswares/osu into blinds-pp 2021-10-01 15:27:17 +01:00
apollo-dw
57b9a91cba trim whitespace cuz code quality 2021-10-01 15:26:59 +01:00
apollo
d13e8c0354
Merge branch 'ppy:master' into blinds-pp 2021-10-01 15:24:13 +01:00
apollo-dw
7884dbbd11 adjust formulae 2021-10-01 15:04:44 +01:00
Dean Herbert
ac471a0ec1 Merge branch 'no-more-difficulty-control-points-info' into slider-timeline-velcotiy-adjust-v2 2021-10-01 17:46:58 +09:00
Dean Herbert
05996cc2e9 Add changes that got forgotted in branch surgery 2021-10-01 17:04:53 +09:00
Dean Herbert
a92d499d7a Convert usages of BeatmapDifficulty to IBeatmapDifficultyInfo 2021-10-01 16:55:50 +09:00
Xexxar
d14eed88fd final clean up before PR 2021-09-29 19:14:54 +00:00
Dean Herbert
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
Bartłomiej Dach
5bd09a4a30
Rename inner lambda parameter 2021-09-27 22:21:14 +02:00
Bartłomiej Dach
7a0499ad07
Fix repeat arrow texture not falling back to default legacy skin 2021-09-27 21:45:26 +02:00
Xexxar
7001578045
Update osu.Game.Rulesets.Osu/Difficulty/Preprocessing/OsuDifficultyHitObject.cs
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-09-26 20:39:57 -05:00
Xexxar
e4fb5a01c9 readded missing aim nerf for low acc 2021-09-26 21:58:26 +00:00
Xexxar
c4430182dd used new slider bonus alg to not overbuff slider jumps 2021-09-26 21:32:36 +00:00
Xexxar
81921bee11 updated rhythmbonus to be OD sensitive 2021-09-26 19:46:24 +00:00
apollo-dw
b6f494cbb7 accuracy and speed changes pt 1 2021-09-25 17:34:24 +01:00
Xexxar
b7444ee9eb replaced original velocity alg 2021-09-25 04:20:35 +00:00
Xexxar
ffa0fac5eb refactored to clean up issues with streams 2021-09-25 04:08:05 +00:00
Xexxar
2508171d41 nerfed rhythm further to attempt to balance 2021-09-25 03:52:05 +00:00
Xexxar
9802f4fc90 added wide angle buff to velchange 2021-09-25 03:37:19 +00:00
Xexxar
010078778e velocity buff isolation + small refactor 2021-09-25 03:27:07 +00:00
Xexxar
8c6a035369 added slider calc bonus 2021-09-25 03:04:22 +00:00
Xexxar
587cf09d2a base change of aim refactor, isolated 2021-09-25 03:02:33 +00:00
Xexxar
0129762104 merged in strainTime change and augmented rhythm calc 2021-09-25 02:52:10 +00:00
apollo-dw
70119d3a43 add drain rate term 2021-09-24 15:02:19 +01:00
apollo-dw
c62e429cea buff miss factor 2021-09-22 19:02:25 +01:00
apollo-dw
857ce721da share BlindsMultiplier everywhere, make it completely negate HD pp 2021-09-22 16:48:11 +01:00
apollo-dw
e52621c60f basically disable HD pp when blinds enabled 2021-09-22 16:38:50 +01:00
apollo-dw
85fd4bdbf8 add accuracy nerf 2021-09-22 16:19:41 +01:00
apollo-dw
2bac15ca1a base formula implementation 2021-09-22 14:17:27 +01:00
Dan Balasescu
512af8809e
Merge pull request #14617 from apollo-dw/speedpp
Remove speed caps in osu! difficulty calculation
2021-09-22 12:10:16 +09:00
Dean Herbert
60c9e9f704
Merge pull request #14805 from bdach/rectangular-snap-grid
Add rectangular snap grid to osu! editor composer
2021-09-22 00:12:03 +09:00
Dean Herbert
59d6a718d6 Fix value not being loaded from beatmap in case of most dense grid setting 2021-09-21 20:09:34 +09:00
smoogipoo
e3b6c15a73 Merge branch 'master' into speedpp 2021-09-21 18:41:27 +09:00
smoogipoo
6c91d39c15 Remove GameplayClock dependency 2021-09-21 14:48:46 +09:00
smoogipoo
f0971cb90c Fix kiai spawner using wrong current time 2021-09-21 14:40:33 +09:00
smoogipoo
b9c91111d2 Add some whitespace 2021-09-21 12:43:29 +09:00
Dan Balasescu
6d6ad126a4
Merge branch 'master' into fl-total-sr 2021-09-21 12:31:40 +09:00
Dan Balasescu
204ee2e281
Merge branch 'master' into fl-skill 2021-09-21 12:06:28 +09:00
Bartłomiej Dach
c911332540
Merge branch 'master' into correct-reverse-arrow-depth 2021-09-20 22:32:28 +02:00
Bartłomiej Dach
d15bd5a15e
Store grid size back to beatmap on change 2021-09-20 20:39:39 +02:00
Bartłomiej Dach
0d7dac03f4
Start with largest grid size 2021-09-20 20:34:22 +02:00
Bartłomiej Dach
52542374e8
Fix rectangular grid snap being always active 2021-09-20 20:14:28 +02:00
Bartłomiej Dach
b5af01f456
Always show rectangular grid in osu! composer 2021-09-20 20:13:06 +02:00
Dean Herbert
20eeb36567 Avoid AliveObject enumeration when not in kiai section 2021-09-20 18:49:36 +09:00
Dean Herbert
cdef6d0cf5 Add key binding support for grid mode cycle 2021-09-20 16:43:15 +09:00
Bartłomiej Dach
4e094b2127
Implement grid size toggling matching stable 2021-09-19 20:26:02 +02:00
Bartłomiej Dach
e1738025d4
Add basic integration of rectangular grid to osu! composer 2021-09-19 18:07:20 +02:00
Opelkuh
761da45f6a Revert af4c3727d77a16e2534df9bbf452336b5c544342 2021-09-19 14:00:56 +02:00
Opelkuh
af4c3727d7 Fix build errors 2021-09-19 04:39:35 +02:00
Opelkuh
1d7d779f66 Merge branch 'master' into add-legacy-star-particles 2021-09-19 04:34:35 +02:00
Opelkuh
3f8454cb76 Remove abstract from ParticleSpewer 2021-09-19 03:19:16 +02:00
Bartłomiej Dach
36237398fa
Remove accidental leftover nullable BDL spec 2021-09-18 18:24:36 +02:00
Bartłomiej Dach
c23354bb67
Remove unused setter 2021-09-18 16:28:44 +02:00
Bartłomiej Dach
59657aca9a
Remove redundant qualifier 2021-09-18 16:28:25 +02:00
Bartłomiej Dach
79438c19a4
Fix slider parts not reproxying after first hitobject freed 2021-09-18 16:27:30 +02:00
Xexxar
cdd813926b nerf to high bpm rhythm changes, nerf to 1/3->1/4 2021-09-17 00:27:42 +00:00
Dean Herbert
fde7c88999
Merge branch 'master' into update-framework 2021-09-16 22:49:02 +09:00
smoogipoo
bcbd0e0961 Revert ctor param 2021-09-16 20:06:20 +09:00
smoogipoo
d8f27633a4 Fix legacy approach circles accepting alpha 2021-09-16 19:35:15 +09:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert
2df4073946 SpawnParticle -> CreateParticle (and set time outside of virtual call)
Allows easier overriding (no need to call the `base.CreateParticle` call
and worry about overwriting the time value.
2021-09-16 16:52:46 +09:00
Dean Herbert
29ce2f05bd Remove implied defaults 2021-09-16 16:44:46 +09:00
smoogipoo
7976442aec Fix CI issues 2021-09-16 14:20:42 +09:00
smoogipoo
2dd9d457e8 Merge branch 'master' into speedpp 2021-09-16 14:18:47 +09:00
Opelkuh
32d65adb35 Fix cursor particle scale 2021-09-15 21:22:37 +02:00
apollo-dw
2637c063a9 forgot a deltatime 2021-09-15 15:40:26 +01:00
apollo-dw
2c3e7bfd2d moved 2b straintime cap up to 25ms 2021-09-15 15:27:36 +01:00
apollo-dw
463b92fcca remove unused strings 2021-09-15 12:41:29 +01:00
apollo-dw
cf63a45f32 swap speedwindowratio in cap so values are correct 2021-09-15 12:36:15 +01:00
apollo-dw
2fe0681310 elaborate comment 2021-09-15 12:03:47 +01:00
apollo-dw
7f6722e43f throw math.max(N, 1) into straintime 2021-09-15 11:24:48 +01:00
apollo-dw
4017598af0 simplify algebra down 2021-09-15 11:15:05 +01:00
apollo-dw
3a16ec277a refactor speed window ratios 2021-09-15 11:12:36 +01:00
apollo-dw
a0bd73c356 refactor hit window calc 2021-09-15 10:52:50 +01:00
apollo-dw
49658b6f82 set greatWindow to readonly 2021-09-15 10:29:30 +01:00
apollo-dw
6d254fba0a digestify speed return 2021-09-15 10:27:18 +01:00
MBmasher
a8539bc75b Add newline to end of file 2021-09-15 19:04:36 +10:00
MBmasher
33e1273df8 Include Flashlight in total SR calculation 2021-09-15 19:03:42 +10:00
MBmasher
31baac5879
Merge branch 'master' into fl-skill 2021-09-15 11:50:25 +10:00
apollo-dw
8796e45f63 prevent 2B objects from dividing by zero 2021-09-14 15:22:03 +01:00
Dean Herbert
2114a4729c Set a sane default for new slider blueprints 2021-09-14 18:28:27 +09:00
smoogipoo
81ced68f89 Merge branch 'master' into display-sr-changes 2021-09-14 13:32:58 +09:00
MBmasher
c4fbae136a Rename FlashlightStrain to FlashlightRating 2021-09-14 10:34:21 +10:00
MBmasher
453d63cd5c Merge branch 'fl-skill' of https://github.com/mbmasher/osu into fl-skill 2021-09-14 10:23:41 +10:00
MBmasher
178a3d1132 Remove redundant check 2021-09-14 10:23:11 +10:00
Opelkuh
d13ff12a3e Remove hardcoded particle scale 2021-09-14 00:36:52 +02:00
Opelkuh
c4886be7e1 Add StarBreakAdditive config support 2021-09-14 00:36:01 +02:00
Opelkuh
9fd616c578 Tiny refactor 2021-09-14 00:16:42 +02:00
Opelkuh
224244801f Remove Particles namespace 2021-09-13 21:44:27 +02:00
Opelkuh
16f98357e6 Add cursor particles tests 2021-09-13 21:44:25 +02:00
Opelkuh
82d16ab394 Fix LegacyCursorParticles texture null reference 2021-09-13 21:44:24 +02:00
Opelkuh
a688e69859 Scale down cursor particles 2021-09-13 21:44:24 +02:00
Opelkuh
911282234e Rename legacy cursor particle classes 2021-09-13 21:44:23 +02:00
Opelkuh
8862d3fa1e Add OsuSkinComponents.CursorParticles 2021-09-13 21:44:23 +02:00
Opelkuh
99eff4f41f Move cursor particles under OsuCursorContainer 2021-09-13 21:44:22 +02:00
Opelkuh
c2f7b01ca4 Change particle AngularVelocity into StartAngle and EndAngle 2021-09-13 21:44:21 +02:00
Opelkuh
6d68da8ff0 Remove StartScale from ParticleSpewer particles 2021-09-13 21:44:20 +02:00
Opelkuh
db662f8c5c Add ParticleParent option to ParticleSpewer 2021-09-13 21:44:20 +02:00
Opelkuh
5b1b36436f Add cursor velocity to star particles 2021-09-13 21:44:19 +02:00
Opelkuh
ee4006f3d7 Add legacy cursor star particles 2021-09-13 21:44:18 +02:00
apollo-dw
68050a4073 Merge branch 'speedpp' of https://github.com/mrowswares/osu into speedpp 2021-09-13 14:51:19 +01:00
apollo-dw
e9f7258f2b adjust hitwindow nerf to be harsher 2021-09-13 14:50:40 +01:00
smoogipoo
0dc31a476f Invert condition to reduce nesting 2021-09-13 16:39:05 +09:00
Xexxar
44163dc9ec updated to use deltaTime not stainTime for more accuracy 2021-09-12 18:14:05 +00:00
Xexxar
b05963cc50 update to fix review issues 2021-09-12 16:08:17 +00:00
Xexxar
a6c3798491 Merge remote-tracking branch 'ppy/master' into skillsrework 2021-09-12 12:45:59 +00:00
smoogipoo
aafbc3e0e4 Merge branch 'master' into fl-skill 2021-09-10 16:39:39 +09:00
Dean Herbert
714f55b6bc Clone control points when copying to HitObjects 2021-09-10 14:36:39 +09:00
Dan Balasescu
ceca229dbc
Merge branch 'master' into speedpp 2021-09-07 18:54:49 +09:00
Dean Herbert
0500cd578a Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-06 21:06:12 +09:00
Dean Herbert
25420af078 Rename method to drop redundant ruleset suffix 2021-09-05 13:34:23 +09:00
apollo-dw
3fce3f620f use OsuHitWindows, amend comment 2021-09-04 16:56:15 +01:00
Dean Herbert
d4e5a612ea Update IPositionalSnapProvider to take a HitObject as reference, rather than raw time
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +09:00
Dean Herbert
a3d9ab1e2e Move approach rate to EffectControlPoint 2021-09-03 16:58:16 +09:00
Dean Herbert
071c56e90b Update usages of DifficultyPointAt 2021-09-03 16:58:16 +09:00
apollo-dw
8654a0af05 remove unnecessary min & renamed variable so its more descriptive 2021-09-03 03:01:25 +01:00
apollo-dw
bf87a4b2d3 interpolate the doubletap cheese nerf instead 2021-09-03 02:39:21 +01:00
apollo-dw
0beef9c1e7 made double cheese detection stricter 2021-09-03 02:20:22 +01:00
Bartłomiej Dach
a2d2ed2ef6
Add stack leniency setting for osu! 2021-09-02 23:29:14 +02:00
apollo-dw
57a2ba9aa8 remove "straintime" 2021-09-02 18:29:55 +01:00
apollo-dw
0d60076f34 fix doubletap cheese detect (base on hitwindow) 2021-09-02 17:14:23 +01:00
apollo-dw
d9cc497801 refactoring 2021-09-02 17:02:23 +01:00
apollo-dw
3e98c71ece cap deltatime to hitwindow sorta 2021-09-02 16:48:34 +01:00
apollo-dw
711baa12ba emu's doubletap cheese nerf 2021-09-02 16:31:31 +01:00
Dean Herbert
b907c2f4f6 Fix osu! judgements getting scaled twice over different durations 2021-09-02 16:31:43 +09:00
Dean Herbert
738ce0f689 Fix repeat arrows being hidden beneath head circles in legacy skins
Aims to make minimal changes to `DrawableSlider` itself. I'm not super
happy about the slider ball being moved above the head circle, but it
*is* what people are used to so no one except for me is going to
complain.

Supersedes and closes https://github.com/ppy/osu/pull/14561.
2021-09-01 19:41:49 +09:00
Dean Herbert
4f9c3fde07 Move alpha adjustment back to LegacySliderBody to correctly handle default legacy skin 2021-09-01 15:10:56 +09:00
Dean Herbert
7a447f5128 Mark SankingSliderBody as abstract 2021-09-01 15:10:24 +09:00
Dean Herbert
3f93aa1507 Fix traceable sliders incorrectly being opaque
Closes https://github.com/ppy/osu/issues/14449.
Regressed in https://github.com/ppy/osu/pull/14205.
2021-08-31 20:13:54 +09:00
mrowswares
a190038c33 remove writelines 2021-08-29 20:16:13 +01:00
mrowswares
1ca0223c71 remove straintime & speed skill caps, implement basic doubletap cheese detection 2021-08-29 17:19:26 +01:00
Dan Balasescu
f0296e5d12
Merge branch 'master' into avoid-default-skin-judgement-transform-overhead 2021-08-27 10:02:40 +09:00
Dan Balasescu
a28bc9f6b2
Merge branch 'master' into path-control-point-bindable-removal 2021-08-27 09:37:37 +09:00
Salman Ahmed
b9ea984c36 Remove redundant default value 2021-08-26 08:18:58 +03:00
Dean Herbert
17f6efc6fe Fix missed cases of incorrect .Value usage
Changing from `Bindable` to `Nullable` comes with its issues...
2021-08-26 14:02:57 +09:00
Dean Herbert
8cfb3d456b Avoid expensive text spacing transforms for now 2021-08-26 13:15:27 +09:00
Dean Herbert
69064c1938 Avoid unnecessary unbind operations when constructing FollowPointLifetimeEntry 2021-08-26 12:35:31 +09:00
Dean Herbert
6dcd9427ac Remove bindable usage in PathControlPoint
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.

I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
MBmasher
c91feb2968 Fix multiplying instead of dividing by scalingFactor 2021-08-25 11:18:21 +10:00
MBmasher
7188a3268f Apply a nerf to stacks for Flashlight skill 2021-08-24 14:01:54 +10:00
Xexxar
aaffc05b82 removed accuracy penalty for misses 2021-08-21 17:56:45 +00:00
Xexxar
0402f85eb0 left residual code from testing prevprevdeltas 2021-08-21 17:29:17 +00:00
Xexxar
536aef6f2f merged latest from origin 2021-08-21 17:25:06 +00:00
Xexxar
270f497af8 penalized 1/1->1/2->1/4 rhythm transitions 2021-08-21 17:23:17 +00:00
Bartłomiej Dach
812c85f3de
Clean up code style issues 2021-08-21 17:26:05 +02:00
Xexxar
a46ae855aa implemented object count limitation for rhythm build up 2021-08-20 15:40:34 +00:00
Dan Balasescu
6128a38054
Merge branch 'master' into cursor-trail-middle 2021-08-20 13:28:51 +09:00
Xexxar
d36eb269b4 fixed code quality issues 2021-08-19 20:11:18 +00:00
Xexxar
5b2cfcc2ff adjusted low acc nerf on speed 2021-08-19 15:27:37 +00:00
Xexxar
b44e6f634d noticed a bug with double applying historicaldecay 2021-08-19 15:05:39 +00:00
Xexxar
7b70d41a93 forgot about the / 0 2021-08-19 14:49:44 +00:00
Xexxar
0effc8f5d8 refactored speed skill, implemented better acc pp 2021-08-19 14:12:03 +00:00
Xexxar
9cd82ea75f merged master 2021-08-18 19:03:16 +00:00
ekrctb
3d88a745cd Fix osu editor transforms not specified in the absolute time 2021-08-18 14:27:16 +09:00
Xexxar
b9ba4c1d97 finalized change for PR 2021-08-17 19:25:49 +00:00
Xexxar
ac1ed00f3e added initial balance of rhythm complexity to tap 2021-08-17 14:39:43 +00:00
Xexxar
471ae9664e cleaned up jank 2021-08-17 13:47:45 +00:00
Xexxar
c99a96a8c8 initial rhythm calc testing 2021-08-17 13:39:18 +00:00
Xexxar
9b21016eed accidently renamed osuStrainSkill, fixed 2021-08-16 22:46:56 +00:00
Xexxar
5561e4852e removed stuff 2021-08-16 22:23:40 +00:00
Xexxar
ae076c9a4e merged latest ppy/master 2021-08-16 22:20:12 +00:00
Xexxar
176b3e7533 changed decay system to allow for customizing the currentStrain 2021-08-16 22:14:29 +00:00
Endrik Tombak
ef367c6547 Move implementation to be legacy only 2021-08-16 22:52:19 +03:00
Endrik Tombak
314c342841 Avoid drawing segments of cursor trail near current cursor position 2021-08-16 22:13:01 +03:00
Xexxar
7d46b3f9c5 initial testing and debugging 2021-08-16 16:06:50 +00:00
Xexxar
19cdd5c323 recoded and added rhythm complexity calculator (untested) 2021-08-16 15:25:35 +00:00
emu1337
df6e4664e0 changed history length in speed 2021-08-16 16:42:07 +02:00
emu1337
29a22bd11f added rhythm multiplier for strain sections 2021-08-15 20:48:00 +02:00
Dean Herbert
8742fa3f68
Merge pull request #13971 from aitani9/fix-blinds-barrel-roll-compatibility
Make blinds move correctly when barrel roll mod is active
2021-08-13 18:48:13 +09:00
smoogipoo
55ddc2c6e3 Merge branch 'master' into fix-blinds-barrel-roll-compatibility 2021-08-13 12:45:04 +09:00
smoogipoo
7cc0a2a76f Refactor to fix InterpolateMovements=false 2021-08-13 12:10:33 +09:00
smoogipoo
5241029513 Use new FadeExponent shader uniform 2021-08-13 10:27:26 +09:00
TheOmyNomy
1069f9d501 Always add cursor trail for legacy cursor with disjoint trail 2021-08-13 00:13:03 +10:00
smoogipoo
fbaa480b3e Fix out-of-order hits in editor causing exceptions 2021-08-12 10:08:54 +09:00
MBmasher
eaa0d38315 Add a buff to short maps for Flashlight skill 2021-08-12 10:00:24 +10:00
MBmasher
b06226e738 Change comments 2021-08-12 09:54:25 +10:00
MBmasher
27918583e1 Increase the multiplier when hidden is applied on the Flashlight skill 2021-08-11 15:55:13 +10:00
MBmasher
1cadcb43d9 Apply nerf to Flashlight skill on high star maps 2021-08-11 15:54:30 +10:00
smoogipoo
2196ae9ca2 Merge branch 'master' into display-sr-changes 2021-08-11 13:02:34 +09:00
MBmasher
b1d25346a2 Move HistoryLength override from OsuStrainSkill to Flashlight 2021-08-11 13:30:40 +10:00
MBmasher
cee69eaad0 Add a nerf to FL for TD plays 2021-08-11 06:14:38 +10:00
smoogipoo
f86ef54e93 Fix incorrect legacy slider body alpha 2021-08-10 17:38:51 +09:00
MBmasher
f4ceb17064 Cleanup of code 2021-08-10 16:06:20 +10:00
TheOmyNomy
24accdcab0 Add LegacyUtils class with non linear colour interpolation method 2021-08-09 18:56:47 +10:00
MBmasher
6b1a4a53d4 Cleanup of code 2021-08-09 08:31:28 +10:00
MBmasher
acdd08c966 Add Flashlight skill 2021-08-08 23:56:03 +10:00
TheOmyNomy
140d29d537 Use helper methods instead of local valueAt() method 2021-08-08 23:54:35 +10:00
TheOmyNomy
9e805dcd44 Fix legacy slider body colour interpolation 2021-08-08 21:27:32 +10:00
02Naitsirk
db1f43f6eb
Multiply star rating by a constant 2021-08-03 18:57:33 -04:00
Bartłomiej Dach
ea2ef55a8b
Remove unnecessary whitespace 2021-08-01 15:27:05 +02:00
Bartłomiej Dach
f868a201f5
Ensure proxied judgement content is correctly depth-ordered 2021-08-01 15:21:31 +02:00
02Naitsirk
5b5cf30cbd
Fix incorrect performance formula
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-07-31 12:23:03 -04:00
Henry Lin
7251c28c4a Merge branch 'master' into mod-muted 2021-07-29 21:14:03 +08:00
Henry Lin
935984d200 Rename MetronomeBeatContainer to Metronome 2021-07-29 15:17:21 +08:00
Henry Lin
0196141335 Remove unused constants 2021-07-29 14:52:40 +08:00
Henry Lin
18e760ee91 Extract metronome from OsuModTarget 2021-07-29 14:52:18 +08:00
Henry Lin
22d83c75e3 Revert imports re-ordering
Out of the scope of this PR
2021-07-28 18:32:38 +08:00
Henry Lin
58bbe9db7e Added muted mod 2021-07-28 18:21:08 +08:00
Dean Herbert
4a4d9b0dc6 Update description to match mania mirror implementation 2021-07-28 19:20:40 +09:00
Gabe Livengood
712bc578dc
update setting name and description 2021-07-27 17:45:52 -04:00
Salman Ahmed
5cb02002d7 Fix flipped xmldoc 2021-07-27 18:24:17 +03:00
Salman Ahmed
ed903c60ea Fix code style issues and remove unused using directives 2021-07-27 18:24:17 +03:00
Gabe Livengood
c741366c72
review modifications: change xmldocs, change reflection method name, remove reflection method returns, simplify incompat. mod list 2021-07-27 09:01:01 -04:00
Gabe Livengood
c7c261ba03
review modifications: change xmldoc wording, configure with enum instead of bool, declare incompatibility with hr 2021-07-26 17:48:03 -04:00
Gabe Livengood
49160e4482
review modifications: maniamodmirror inheritance, reflection utilities, vertical flip option 2021-07-26 10:46:41 -04:00
Gabe Livengood
eb585a6120
Add "Mirror" mod 2021-07-25 20:40:50 -04:00
Dean Herbert
50a2abbe7f
Merge pull request #12683 from frenzibyte/legacy-beatmap-combo-offset
Apply combo offsets "colour hax" only on beatmap skins
2021-07-23 14:30:18 +09:00
aitani9
715f3e3f7c Make blinds move correctly whenever the playfield is rotated 2021-07-22 14:07:41 -07:00
aitani9
80cb7c77b9 Calculate the diagonal length using Vector2.LengthFast instead of manually 2021-07-22 14:04:01 -07:00
aitani9
e6b28e1386 Rename origin to center for clarity 2021-07-22 14:01:31 -07:00
02Naitsirk
b31fef7e00
Implement total SR formula that better correlates with pp 2021-07-22 13:49:47 -04:00
Dean Herbert
3392086d1c
Merge pull request #13984 from ekrctb/catch-editor-reverse
Implement "reverse pattern" in catch editor
2021-07-23 01:12:13 +09:00
Salman Ahmed
523c154f15 Add ComboIndexWithOffsetsBindable and bind similar to ComboIndexBindable 2021-07-22 16:40:33 +03:00
Dean Herbert
cde8ae6f18
Merge pull request #13483 from emu1337/diffspike-balance
Spike difficulty / AR&FL adjustments
2021-07-22 19:28:22 +09:00
ekrctb
cc01b9e639 Extract SliderPath reverse logic to be used in other rulesets 2021-07-22 16:14:43 +09:00
aitani9
283d953c4f Fix blinds moving when barrel roll mod is active 2021-07-21 14:07:00 -07:00
Dean Herbert
adda96ac86
Merge pull request #13962 from ekrctb/platform-action
Adapt to framework `PlatformAction` type change
2021-07-21 18:17:38 +09:00
Dean Herbert
399c3b0be8 Rename property, reword xmldoc and improve readability of update code 2021-07-21 17:32:56 +09:00
ekrctb
1bac471b49 Adapt to PlatformAction type change 2021-07-21 16:12:53 +09:00
ekrctb
1bff4373b3 Allow specifying flipping support of selection box different from scaling 2021-07-21 15:59:45 +09:00
emu1337
84fd59777c Merge branch 'master' into diffspike-balance 2021-07-20 19:39:41 +02:00
Salman Ahmed
9d92b795fa Revert making ComboOffsets legacy and define BeatmapSkinComboIndex instead 2021-07-20 14:15:43 +03:00
Salman Ahmed
554652b033 Merge branch 'refactor-combo-colour-retrieval' into legacy-beatmap-combo-offset 2021-07-20 10:11:52 +03:00
Henry Lin
1c6a13fca7 Disallow mistimed event firing 2021-07-20 10:31:19 +08:00
Henry Lin
a387d8df74 Use BeatSyncClock 2021-07-20 10:30:40 +08:00
Bartłomiej Dach
fb5d25405e
Replace calls to obsoleted GetOrDefault() extension 2021-07-18 21:52:16 +02:00
Bartłomiej Dach
6e065362be
Merge branch 'master' into osu-target-mod 2021-07-18 18:22:36 +02:00
Henry Lin
fdebe4b94a Code formatting fixes 2021-07-18 22:01:26 +08:00
Dean Herbert
49f0c707f6 Move approach circle hiding within BeginAbsoluteSequence 2021-07-18 22:34:28 +09:00
Dan Balasescu
da7e880e46
Merge pull request #13893 from peppy/mouse-settings-localisation
Add localisation coverage of `MouseSettings`
2021-07-16 23:25:12 +09:00
Dean Herbert
8cdc3536f4
Merge pull request #13826 from stanriders/buff-ar
Change approach rate bonuses to be less punishing on mid-length maps
2021-07-16 22:47:10 +09:00
Dean Herbert
304eac26d3 Merge branch 'master' into osu-target-mod 2021-07-15 16:51:02 +09:00
Dean Herbert
ea87869753 Fix metronome playing during intro time 2021-07-15 16:50:55 +09:00
Dean Herbert
c38590f1ff Use a slightly more appropriate metronome sound 2021-07-15 16:43:24 +09:00
Dean Herbert
5b91111eda Update SettingsSubsection.Header to accept a LocalisableString 2021-07-15 13:09:51 +09:00
Dean Herbert
e7b78b1ea5 Adjust transform logic to hopefully be a bit easier to parse 2021-07-13 20:26:05 +09:00
Dean Herbert
4314946e10 Reorganise functions to order more logically (hitcircle before slider methods) 2021-07-13 19:37:17 +09:00
Dean Herbert
6b663037e4 Use switch for pattern matching 2021-07-13 19:37:02 +09:00
Dean Herbert
db8ffc6316
Merge branch 'master' into osu-random-mod-improvements 2021-07-13 19:31:37 +09:00
Naxess
3a5912e35e Add new checks to verifiers 2021-07-13 10:53:25 +02:00
Naxess
53c0298b5e Add too short spinners check and tests 2021-07-13 10:51:40 +02:00
Naxess
fec9448301 Add too short sliders check and tests 2021-07-13 10:50:41 +02:00
Bartłomiej Dach
63dedb36de Rename variable 2021-07-11 16:49:23 +02:00
Bartłomiej Dach
7aecafeecb Rename constant to reflect its purpose 2021-07-11 16:46:30 +02:00
Henry Lin
c181a724c6 Refactor hit object clamping 2021-07-11 22:01:28 +08:00
Bartłomiej Dach
e10b7867c1 Rewrite method again to hopefully help readability 2021-07-10 12:13:36 +02:00
Dean Herbert
90326f8864 Standardise variables 2021-07-09 13:24:26 +09:00
StanR
02298c2cf4 Fix incorrect curve, move total hits factor into a separate variable for clarity 2021-07-09 00:06:05 +03:00
StanR
592d3fdf00 Cleanup 2021-07-08 11:54:58 +03:00
StanR
c67f756c75 Change approach rate bonuses to be less punishing on mid-length maps 2021-07-08 11:52:43 +03:00
Dean Herbert
88b00123f6 Use existing reflection methods to avoid manual binding of ExtendedLimits 2021-07-08 17:49:00 +09:00
Dean Herbert
bd7c334588 Avoid the need for per-settings control classes 2021-07-08 17:49:00 +09:00
Dean Herbert
a6e94dd491 Add back extended limits support 2021-07-08 17:49:00 +09:00
Dean Herbert
c4313d6e96 Initial implementation of new flow (only working for approach rate) 2021-07-08 17:48:08 +09:00
Dean Herbert
0e4f4a6fde Initial storage changes 2021-07-08 14:28:13 +09:00
Dean Herbert
d07c469a89
Merge pull request #13783 from smoogipoo/smooth-auto-gen
Make osu! auto generator interpolate during key-up frames
2021-07-06 15:04:40 +09:00
Henry Lin
50e316fca4
Merge branch 'master' into osu-target-mod 2021-07-06 12:02:51 +08:00
Bartłomiej Dach
8e102280b7 Revert & disable case with two contradicting inspections
Leaving the `false` default value without the suppression triggers
`RedundantArgumentDefaultValue`, while removing it triggers
`BaseMethodCallWithDefaultParameter`.

Disable the former, because a single redundant parameter is less bad
than silent breakage if the default value of `propagateChildren` in the
base method ever changes.
2021-07-05 20:21:44 +02:00
PercyDan54
e1c646b9b2
Remove redundant arguments 2021-07-05 23:52:39 +08:00
smoogipoo
8b7ccdc8b5 Adjust comment 2021-07-05 18:51:23 +09:00
smoogipoo
7d6ab08bb3 Remove unnecessary conditional 2021-07-05 18:49:09 +09:00
smoogipoo
695af31c58 Start alternating at 225BPM as previously 2021-07-05 18:43:27 +09:00
smoogipoo
2b8efe21ca Don't ease with 0 time difference 2021-07-05 17:52:10 +09:00
smoogipoo
12ca845e55 Use marker class (cleanup) 2021-07-05 17:24:23 +09:00
smoogipoo
6a2c0f772e Always apply easing, adjust heuristic a bit 2021-07-05 17:22:48 +09:00
smoogipoo
96c0ab8ded Adjust last frame position when not waiting 2021-07-05 17:11:59 +09:00
Henry Lin
eecf4af029 Rename getSliderBoundingBox and add comments 2021-07-05 09:16:01 +08:00
Dean Herbert
ec71deec51 Remove some mentions of "lazer"
I am aware there are more throughout the codebase but intentionally left
the remaining mentioned for one reason or another. The intention here is
to mainly change user-facing versioning to change the positioning of the
"lazer" term (to be where we would expect "cuttingedge" or "beta" to
be).
2021-07-04 12:41:27 +09:00
Henry Lin
d1862d8cff Rename map to mapRange 2021-07-04 10:01:56 +08:00
Henry Lin
1470bb1563 Use IHidesApproachCircles 2021-07-03 13:02:39 +08:00
Henry Lin
f18c17d1a8
Merge branch 'master' into osu-target-mod 2021-07-03 13:00:52 +08:00
Henry Lin
b0a619bb4c Prevent multiple enumeration in checkForOverlap 2021-07-01 12:49:34 +08:00
Henry Lin
34be437d7a Added definitelyBigger 2021-07-01 12:21:41 +08:00
Henry Lin
58f80abe32 Several requested changes
- Rename `origHitObjects` to `originalHitObjects`
- Use `Value` instead of `GetValueOrDefault()`
- Remove `endObj`
- Added comments
- Rename `closestIdx` to `precedingIndex`
- Changed an `almostEquals` call
2021-07-01 11:57:57 +08:00
Henry Lin
c69455cfd0 Fixed slider bounding box calculation 2021-07-01 11:20:55 +08:00
Henry Lin
7585f1f790 Move special case handling back to moveSliderIntoPlayfield 2021-07-01 11:03:22 +08:00
Henry Lin
6e1839fcf2 Rename shift_object_count to objects_to_shift_before_slider 2021-07-01 11:03:22 +08:00
Henry Lin
328dcb4d6b Use Math.Clamp instead of MathHelper.Clamp 2021-07-01 11:03:22 +08:00
Henry Lin
3c1f0452a2 Refactor and rename getMinSliderMargin to getSliderBoundingBox. 2021-07-01 11:03:22 +08:00
Bartłomiej Dach
913f7602e4 Change seed control type in line with changes 2021-06-30 20:41:08 +02:00
Bartłomiej Dach
c0613a3e4f Merge branch 'master' into osu-target-mod 2021-06-30 20:27:55 +02:00
Salman Ahmed
4b56d94a98 Revert accidentally pushed part of change 2021-06-30 10:26:34 +03:00
Salman Ahmed
e3344c33ea Better convey reason of "Spin In" incompatibility with "Hidden" 2021-06-30 09:57:15 +03:00
Henry Lin
3f185a0622 Fixed an exception when clamping large sliders 2021-06-30 10:35:06 +08:00
Salman Ahmed
dbe3150f88 Mention about marker interfaces even more explicitly 2021-06-29 11:37:08 +03:00
Salman Ahmed
7997d57030 Mention interfaces being "markers" for the time being 2021-06-29 11:25:35 +03:00
Henry Lin
8d1eae7c70 Use IndexInCurrentCombo 2021-06-29 14:25:45 +08:00
Henry Lin
2722565204 Take circle radius into account when clamping to playfield 2021-06-29 13:36:30 +08:00
Henry Lin
0c5777c2c8 Added comments 2021-06-29 12:56:05 +08:00
Henry Lin
d4ff4b26f5 Split part of addHitSamples to a subroutine 2021-06-29 12:49:25 +08:00
Henry Lin
96e09605d8 Osu random mod improvements
- Reduce "jump streams" by increasing maximum jump angle and variance in jump angle
- Reduce weird jumps to sliders by shifting hit circles in front of sliders
2021-06-29 12:33:40 +08:00
Salman Ahmed
69dac018c7 Make OsuModSpinIn as incompatible with other IHidesApproachCircles mods
Respecting the TODO comment above it, mark `OsuModSpinIn` as
incompatible with other `IHidesApproachCircles` mods as well.
2021-06-28 21:20:07 +03:00
Salman Ahmed
baf736026b Mark IHidesApproachCircles mods as incompatible with IRequiresApproachCircles 2021-06-28 21:20:07 +03:00
Salman Ahmed
6a67a6736a Mark IRequireApproachCircles mods as incompatible with IHidesApproachCircles 2021-06-28 21:20:07 +03:00
Salman Ahmed
006cc331c8 Separate IMutateApproachCircles to requiring and hiding 2021-06-28 21:20:07 +03:00
Henry Lin
ea8993d6d6 Use IHasRepeats instead of IHasPathWithRepeats 2021-06-28 11:33:19 +08:00
Henry Lin
3eaa04115f Use OsuHitObjectGenerationUtils 2021-06-26 11:34:10 +08:00
Henry Lin
c543080923 Merge branch 'master' into osu-target-mod 2021-06-26 11:26:00 +08:00
Bartłomiej Dach
50c27d2635 Update usages of IHasTooltip in line with framework localisation changes 2021-06-25 19:10:04 +02:00
Henry Lin
ec8810cc2b Use MathF instead of (float)Math 2021-06-25 09:44:23 +08:00
Henry Lin
26086ca1ef Rename VectorUtils to OsuHitObjectGenerationUtils 2021-06-25 09:43:14 +08:00
Henry Lin
3fcda83713 Rename VectorHelper to VectorUtils 2021-06-24 22:00:19 +08:00
Henry Lin
1a47bc254d Increase acceptable difference for Precision calls 2021-06-24 14:55:49 +08:00
Henry Lin
be55c7e075 Minor fixes in comments 2021-06-24 13:39:50 +08:00
Henry Lin
153e204d20 Cap rotation ratio to 1 2021-06-24 13:22:10 +08:00
Henry Lin
2268d7f8a5 Extract utility methods into helper class; Better xmldoc and naming 2021-06-24 13:19:42 +08:00
Henry Lin
6629f8706a Directly fade to gray instead of computing the color values 2021-06-24 12:31:25 +08:00
Henry Lin
877c775e35 Added comments 2021-06-24 12:20:46 +08:00
Henry Lin
f8fe4ab482 Refactor and rename isOverlappingWithRecent 2021-06-24 12:02:48 +08:00
Henry Lin
71b5ed16c0 Avoid using osuTK constants; Use MathF 2021-06-24 11:37:00 +08:00
Henry Lin
f74275a3b5 Moved RNG initialisation to a better place 2021-06-24 11:29:10 +08:00
Henry Lin
6fca8ba5b0 Better explanation for fixComboInfo 2021-06-24 11:21:43 +08:00
Henry Lin
6202eed5e2 Moved a misplaced ! 2021-06-24 10:56:14 +08:00
Henry Lin
04510f1ace Removed odd-looking decrement and checks in addHitSamples 2021-06-24 10:54:21 +08:00
Henry Lin
58b439b728 Switch to IHasPathWithRepeats 2021-06-24 10:38:21 +08:00
Henry Lin
98003ec548 Avoid modulo when finding slider node index 2021-06-24 10:33:54 +08:00
Henry Lin
3eab540bcc Converted an inline lambda into a method (isInsideBreakPeriod); moved origHitObjects to be a private class field 2021-06-24 10:07:29 +08:00
Henry Lin
dae7b8025d Converted an inline lambda into a method (getBeatsForTimingPoint) 2021-06-24 09:51:45 +08:00
Henry Lin
a7ea7b8b0b Use GetEndTime() instead of a switch expression 2021-06-24 09:34:39 +08:00
Henry Lin
b7dd26612d Reordered things and added regions 2021-06-23 16:50:05 +08:00
Henry Lin
6dc5f406b2 Implement IMutateApproachCircles 2021-06-23 16:29:36 +08:00
Henry Lin
10541dbc0a Merge branch 'master' into osu-target-mod
# Conflicts:
#	osu.Game.Rulesets.Osu/Mods/OsuModTraceable.cs
#	osu.Game/Rulesets/Mods/IHasSeed.cs
2021-06-23 16:26:23 +08:00
Henry Lin
5a031eada8 Revert "Display results after fail"
This commit reverts 7815b3c7
2021-06-23 16:22:10 +08:00
Dean Herbert
4cb9c6a842
Merge pull request #13423 from frenzibyte/transformers-per-skin
Refactor ruleset skin transforming logic to be per-`ISkin` rather than one `ISkinSource`
2021-06-22 21:24:56 +09:00
Dean Herbert
6c3d2315d0
Merge pull request #13606 from Naxesss/low-diff-checks
Add low difficulty spacing checks
2021-06-22 16:29:37 +09:00
Dean Herbert
1b0aadcc6f Merge branch 'master' into transformers-per-skin 2021-06-22 16:03:15 +09:00
Dean Herbert
e9339d6100 Move some inline comments on consts to xmldoc instead 2021-06-22 15:16:19 +09:00
Naxess
2f3f4f3e4b Add new checks to verifier 2021-06-21 15:30:45 +02:00
Naxess
fcb918d0e1 Add time distance equality check 2021-06-21 15:30:23 +02:00
Naxess
3eb088f89a Add low difficulty overlaps check 2021-06-21 15:30:04 +02:00
Salman Ahmed
999bf27eae Remove unnecessary abstraction of ApproachCircle property 2021-06-21 12:07:00 +03:00
Henry Lin
e52a58c1bc Switched to a more reasonable sample sound for now 2021-06-21 16:24:37 +08:00
Salman Ahmed
ba15f7c19b Move ApproachCircle out of the scale container and revert relevant changes 2021-06-21 10:47:38 +03:00
Salman Ahmed
036b745425 Remove no longer needed LegacySpinnerApproachCircle 2021-06-21 08:41:10 +03:00
Salman Ahmed
42edbe4fb9 Move ApproachCircle implementation into per-style 2021-06-21 08:40:38 +03:00
Salman Ahmed
68e28f4903 Implement IHasApproachCircle in DrawableHitCircle as well 2021-06-21 07:35:07 +03:00
Salman Ahmed
01478d780d Generalize IHasSpinnerApproachCircle from being spinner-specifc 2021-06-21 03:43:11 +03:00
Salman Ahmed
72155a7c52 Replace if pattern-matching check with switch cases instead 2021-06-21 03:37:50 +03:00
Salman Ahmed
c3217fd8b1 Remove leftover approach circle skin component 2021-06-19 20:10:32 +03:00
Salman Ahmed
c04b09520d Replace spinner approach circle proxying logic with hooking up to OnSkinChange in mod 2021-06-19 20:06:28 +03:00
Henry Lin
c867940584 Marked target mod and traceable mod as incompatible; extracted playfield clamping logic
Nothing is visible when target mod and traceable mod are enabled together.
2021-06-19 12:26:16 +08:00
Henry Lin
b09165a074 Remove the circle size buff 2021-06-19 11:13:19 +08:00
Henry Lin
0cf3119006 Guard against edge cases 2021-06-19 11:12:29 +08:00
Henry Lin
ca8f08ca84 Avoid overlapping with recent circles 2021-06-19 10:04:48 +08:00
Salman Ahmed
d6b9436151 Proxy spinner approach circle before the spinner overlay components 2021-06-18 20:34:25 +03:00
Salman Ahmed
843c8bd7a4 Move spinner approach circle to its own SkinnableDrawable 2021-06-18 20:33:50 +03:00
Salman Ahmed
f7b5341663 Merge branch 'master' into legacy-spinner-approach-circle 2021-06-18 19:50:52 +03:00
Bartłomiej Dach
afc89b39d9 Use StateUpdateTime for transform clearing logic
`MainCirclePiece` specifies a state transform starting at
`StateUpdateTime`, which is earlier than the previously-used
`HitStateUpdateTime`. Change the transform clearing logic to use the
former to ensure that exactly all animation transforms are cleared.
2021-06-18 16:04:11 +02:00
Bartłomiej Dach
e94fbd83e2 Ensure editor ruleset animation disable execution order 2021-06-18 16:04:11 +02:00
Bartłomiej Dach
e2a370f602 Add coverage for hit circle fade-out duration 2021-06-18 16:04:11 +02:00
Henry Lin
cca26d4651 Take circle radius into account when clamping hit objects to playfield 2021-06-18 16:05:09 +08:00
Henry Lin
f5134c7fc2 Extract constants and add xmldoc 2021-06-18 14:39:46 +08:00
Henry Lin
dca2d8af4f Animate circles undimming 2021-06-18 13:18:44 +08:00
Dean Herbert
860626152a Mark all mods which adjust approach circle as incompatible with each other
Closes https://github.com/ppy/osu/issues/13543.
2021-06-18 13:21:53 +09:00
Salman Ahmed
c9458fd9ce Hide spinner approach circle in "Hidden" mod 2021-06-18 06:23:54 +03:00
Henry Lin
639e8b62b9 Make circles light up 1 beat length before start time 2021-06-18 11:20:04 +08:00
emu1337
8c4e60e5cc xmldoc and refactoring 2021-06-17 21:41:06 +02:00
Henry Lin
b7f43405fc Dim circles instead of fade; improved hit samples; changed jump distance to be closer to cuttingedge 2021-06-17 22:01:58 +08:00
Dan Balasescu
6cec1145e3
Merge pull request #13523 from ekrctb/applicable-to-dho
Reduce boilerplate of `IApplicableToDrawableHitObjects` by taking a single DHO instead of an enumerable
2021-06-17 19:59:06 +09:00
Henry Lin
f22beaeb5b Increase distance between combos; pull circles closer to center 2021-06-17 14:30:59 +08:00
Dean Herbert
a46f730a69 Fix approach circle fade not running early on an early user hit
Regressed in https://github.com/ppy/osu/pull/12153.
Closes https://github.com/ppy/osu/issues/13531.
2021-06-17 15:09:05 +09:00
Henry Lin
14622f4734 Improved guesstimations; fixed hit samples 2021-06-17 10:20:50 +08:00
Salman Ahmed
9d9892e99e Add legacy spinner approach circle implementation 2021-06-17 04:58:18 +03:00
emu1337
2665a873f8 fixed an error with extremely short maps 2021-06-16 19:55:19 +02:00
emu1337
41662a1643 refactored for clarity 2021-06-16 19:54:22 +02:00
emu1337
18fe05b7b5 diffspikes balance 2021-06-16 15:13:46 +02:00
ekrctb
90a13b8ed3 Use IApplicableToDrawableHitObject for OsuModApproachDifferent
Replacing the obsolete interface.
2021-06-16 22:05:40 +09:00
ekrctb
b6a9fa9999 Merge branch 'master' into applicable-to-dho 2021-06-16 22:04:10 +09:00
ekrctb
af80418ee8 Implement IApplicableToDrawableHitObject for mods
A breaking change in `ModWithVisibilityAdjustment` if the method was overriden.
2021-06-16 18:52:01 +09:00
Dean Herbert
7891ee4f32 Change order of settings to make scrolling easier
There's an issue with dropdown menus nested inside a scroll view being
very frustrating to scroll to off-screen items. This works around that
to some extent by giving the user more "parent-scrollable" space to
mouse wheel or drag over.
2021-06-16 17:32:31 +09:00
Dean Herbert
0c1023da31 Simplify transform logic 2021-06-16 17:27:52 +09:00
Dean Herbert
ee5f4f1856 Remove default (and make default "Gravity") 2021-06-16 17:27:43 +09:00
Dean Herbert
4b45d8318e
Merge branch 'master' into transformers-per-skin 2021-06-16 16:37:28 +09:00
Dean Herbert
f6f1a068b2 Rename "easing" references to be "style" instead 2021-06-16 15:15:12 +09:00
Dean Herbert
b1dd502e06 Rename class to match new name 2021-06-16 15:09:42 +09:00
Dean Herbert
2ce487bdac Rename mod and fix easing mappings / naming 2021-06-16 14:31:22 +09:00
Dean Herbert
c5f76c7352
Merge branch 'master' into AddApproachCircleMod 2021-06-16 14:30:58 +09:00
emu1337
be68950c30 refactoring 2021-06-16 03:34:46 +02:00
Salman Ahmed
52145c9237 Assign skinnable colour to spinner-background with correct default 2021-06-15 16:17:05 +03:00
Salman Ahmed
a85a592f70 Add lookup for spinner background colour 2021-06-15 16:16:25 +03:00
Henry Lin
4ffff06dcb Break ApplyToBeatmap into subroutines 2021-06-15 11:06:56 +08:00
emu1337
e987a511ba diffspike & wide angle balance 2021-06-14 19:22:35 +02:00
emu1337
fea7b029aa refactored diffspike nerf 2021-06-14 19:18:49 +02:00
Henry Lin
04c0db6dce Code cleanup 2021-06-14 21:34:34 +08:00
emu1337
4c949d9829 reduced diffspike nerf 2021-06-13 21:20:08 +02:00
emu1337
3309ab2be3 balance changes 2021-06-13 15:18:35 +02:00
Salman Ahmed
fbb856d84b Call base when overriding lookup methods
Rather than arbitrarily accessing `Skin` here and there.
2021-06-11 12:44:44 +03:00
Dan Balasescu
35d5632355
Merge pull request #13378 from Syriiin/diffcalc/refactor/auto-properties
Refactor DifficultyAttributes to use auto properties over public fields
2021-06-10 18:42:11 +09:00
Salman Ahmed
dde84e5cbd Merge branch 'master' into transformers-per-skin 2021-06-10 11:58:52 +03:00
Dan Balasescu
a44fd887ee
Merge branch 'master' into no-unranked-display 2021-06-10 17:09:46 +09:00
Henry Lin
12a17d0983 Extract seed setting contorl to IHasSeed 2021-06-10 15:31:20 +08:00
Henry Lin
80f38b347b Merge branch 'ppy:master' into osu-target-mod 2021-06-10 15:13:27 +08:00
Henry Lin
7815b3c72b Display results after fail 2021-06-10 10:58:42 +08:00
Salman Ahmed
cf40282f1f Convert LegacySkinTransformers to accept raw ISkins rather than a full ISkinSource 2021-06-09 22:49:31 +03:00
ekrctb
5418e895ae Remove useless ClearTransforms
The transforms are cleared by DHO before `ApplyCustomUpdateState` is invoked.
2021-06-09 16:50:13 +09:00
Bartłomiej Dach
020c63017e Fix inspectcode issues 2021-06-09 09:21:02 +02:00
ekrctb
610cdaea98 Fix circle piece animation is sometimes not playing when a replay is rewound 2021-06-09 16:14:55 +09:00
Dean Herbert
85abee5fc7 Remove difficulty calculator exceptions
I don't think there's any reason difficulty calculators shouldn't be
able to calculate for autoplays.
2021-06-09 14:33:35 +09:00
Dean Herbert
d0e9f8ef90 Replace and obsolete Ranked flag with IsUserPlayable 2021-06-09 14:17:03 +09:00
ekrctb
555ab8fccd Fix event not unregistered on dispose 2021-06-09 12:35:14 +09:00
Dean Herbert
e914fbf449
Merge pull request #13396 from ekrctb/fix-circle-piece
Fix hit circle animation is removed when a replay is rewound
2021-06-09 11:39:38 +09:00
ekrctb
4707918c6a Fix hit circle animation when a replay is rewound 2021-06-09 10:53:52 +09:00
Dean Herbert
475788041a
Merge pull request #13337 from Pasi4K5/fix-sliders-out-of-screen
Fix sliders sometimes being outside of the playfield with osu! random mod enabled
2021-06-08 21:18:21 +09:00
Samuel Cattini-Schultz
f1bef989b7 Refactor DifficultyAttributes to use auto properties over public fields 2021-06-08 19:43:59 +10:00
Dean Herbert
6017ef3825
Merge branch 'master' into fix-skin-sample-lookup 2021-06-08 17:37:36 +09:00
Dan Balasescu
791855dfa0
Merge branch 'master' into legacy-skin-default-fallback 2021-06-08 16:54:26 +09:00
Dean Herbert
e0f568aa8f Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-06-08 15:19:52 +09:00
Dean Herbert
88b87b98a8 Fix slider ball layer sources 2021-06-08 12:10:14 +09:00
Dean Herbert
277eb9fa6e Fix slider repeat arrow not updating rotation immediately while paused in editor
A bit of a local solution, but not sure there's a better way to handle
this.

Closes #13342.
2021-06-07 15:58:43 +09:00
Dean Herbert
d26c9a66c2 Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup 2021-06-07 12:01:19 +09:00
Dean Herbert
9ebafb1ec0 Fix cursor trail logic 2021-06-06 22:26:27 +09:00
Pasi4K5
b214f2ae0e Remove repeat and simplify getMinSliderMargin 2021-06-05 17:13:08 +02:00
Pasi4K5
f59263932a Use SliderPath.GetPathToProgress for getting the SliderPath's positions 2021-06-05 17:04:58 +02:00
Pasi4K5
b4f190c6ff Rename iteration variable 2021-06-04 17:22:36 +02:00
Pasi4K5
32e41048ff Fix System.ArgumentException caused by sliders bigger than the playfield 2021-06-04 16:50:27 +02:00
Pasi4K5
6357d1363c Add comment for slider_path_checking_rate 2021-06-04 16:26:40 +02:00
Pasi4K5
a0a6f3ef81 Replace Vector2 methods with math operators 2021-06-04 16:23:03 +02:00
Pasi4K5
9f2a9608f2 Rework slider positioning 2021-06-04 16:17:54 +02:00
ekrctb
d7da66d876 Bring back scheduling of follow point update 2021-06-04 18:41:02 +09:00
ekrctb
0098ac2760 Remove one TODO
It can be removed because pooled drawables are always ready, and `FollowPointConnection` is also ready when applied.
2021-06-04 17:09:59 +09:00
ekrctb
bc892086fe Resolve nullable inspection, enable nullable for FollowPointLifetimeEntry 2021-06-04 17:09:59 +09:00
ekrctb
b373b120ff Use general lifetime container for follow point container 2021-06-04 16:31:50 +09:00
Dean Herbert
06275a6a7d Merge branch 'master' into legacy-skin-default-fallback 2021-06-04 16:00:30 +09:00
Dean Herbert
f62a2747f6 Add legacy implementation 2021-06-04 14:51:35 +09:00
Dean Herbert
5953674737 Tidy up constants 2021-06-04 14:14:51 +09:00
Dean Herbert
ff70f99da2 Merge branch 'master' into kiai 2021-06-04 13:50:12 +09:00
Pasi4K5
7a4fc9ffc8 Move seed to base class 2021-06-03 18:16:11 +02:00
Dan Balasescu
15b43beef1
Merge pull request #11857 from Syriiin/diffcalc/refactor/catch-clockrate-effects
Refactor catch Movement skill to not require explicit clockrate usage
2021-06-03 17:29:27 +09:00
Dan Balasescu
d39eb7eac2
Merge pull request #12952 from peppy/autoplay-pause-support
Externalise autoplay generation from `Player` to allow use of replay playback functions
2021-06-03 17:29:17 +09:00
Dean Herbert
8b43cfdd7d
Merge pull request #12568 from Pasi4K5/mod-osu-random
Add mod "Random" for osu! ruleset
2021-06-03 17:14:27 +09:00
Samuel Cattini-Schultz
f51413ead9 Refactor to pass clockrate in constructor rather than deriving from mods 2021-06-03 16:09:42 +10:00
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
Henry Lin
15e7cce264 Added seed setting, fixed mod ignoring IncreaseFirstObjectVisibility 2021-05-22 14:14:41 +08: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
Henry Lin
d20b5c2d5a Refactored ApplyToBeatmap 2021-05-20 11:57:13 +08:00
Henry Lin
fe099be443 Implemented osu target mod 2021-05-19 22:25:56 +08: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
Salman Ahmed
cc24d8a6bd Remove unused using directive
I literally noticed it after I pushed, god damn it.
2021-05-05 14:27:38 +03:00
Salman Ahmed
6fb9eb8b33 Move legacy beatmap combo offset to osu! processor
Better suited there, I intiailly wanted the whole legacy interface to reside in `osu.Game.Rulesets.Osu` but it's required in `ConvertHitObjectParser` and that's in the main game project, so had to leave the interface as-is for now.
2021-05-05 14:24:14 +03: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
Salman Ahmed
cd6d070b4a Consider "combo offsets" as legacy logic and separate from combo information 2021-05-05 07:43:08 +03: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
Dean Herbert
03ba04e8ce Split out general checks into its own verifier class (and remove static usage) 2021-04-13 19:50:22 +09:00
Naxess
304fe5cd34 Add CheckBackground to OsuBeatmapVerifier 2021-04-13 10:41:02 +02:00
Naxess
60c2494b31 Make BeatmapVerifier an interface 2021-04-13 10:40:56 +02:00
Naxess
c8cb4286f6 Add reference for screen bounding box numbers 2021-04-13 10:35:06 +02:00
Dean Herbert
fbc6fb8fc5 Split out common logic into private method and add inline comment for future visitors 2021-04-13 15:35:57 +09:00
Naxess
6d3f9fa9ce Use is class instead of Equals with template index
Ensures ordering of `PossibleTemplates` does not affect tests.
2021-04-13 02:29:25 +02:00
Naxess
d9e3276d0e Don't update path type once immediately 2021-04-12 19:18:22 +02:00
Naxess
19a154ddf1 Rename checkOrigin -> check
More consistent with `Issue.ctor`'s "template".
2021-04-12 17:28:12 +02:00
Naxess
bb720c23a0 Remove check ctors and locals 2021-04-12 17:12:37 +02:00
Dean Herbert
62c1812282 Remove redundant parameter naming 2021-04-12 23:37:47 +09:00
Dean Herbert
36bd235021 Move nested classes to bottom of file 2021-04-12 23:36:10 +09:00
Naxess
7c4f6d2b62 Rework template usage
Includes moving the origin check back to templates, constructing nested template classes in each check, and making parameterized template usage.
2021-04-12 15:47:26 +02:00
Naxess
a2fc9c398f Rename CreateChecker -> CreateBeatmapVerifier 2021-04-12 10:08:30 +02:00
Naxess
65ebdd8f7a Move check origin from IssueTemplate to Issue
As a result we can also make check an interface, and need to provide the check itself when constructing an issue.
2021-04-12 10:08:08 +02:00
Dean Herbert
8bf85d737c Change Metadata into a get property 2021-04-12 15:52:29 +09:00
Dean Herbert
8c31e96cdf Change some methods to get properties 2021-04-12 15:52:18 +09:00
Dean Herbert
f78239c7f2 Move enums out of nesting 2021-04-12 15:52:18 +09:00
Dean Herbert
1c553b5d48 Checker -> BeatmapVerifier 2021-04-12 15:29:05 +09:00
Dean Herbert
14bd5bdc77 Merge branch 'master' into verify-tab 2021-04-12 15:14:37 +09:00
Dean Herbert
e2470d757e
Merge branch 'master' into legacy-spm-counter 2021-04-12 12:52:52 +09:00
Joseph Madamba
a42714540b Add follow delay setting to osu! flashlight mod 2021-04-10 23:04:15 -07:00
Naxess
dac733cced Fix field name and accessibility 2021-04-10 15:49:57 +02:00
Naxess
3289bb0379 Merge Check and BeatmapCheck
We're probably not going to need GeneralChecks or BeatmapsetChecks.

The verify tab is only available to a single difficulty at a time, and we already have access to the rest of the set through `IBeatmap`.
2021-04-10 14:56:30 +02:00
Naxess
bc4f3351f3 Replace checks with realistic ones 2021-04-10 13:03:16 +02:00
Naxess
d1007ff26a Move components to more appropriate spot 2021-04-10 13:02:22 +02:00
Dean Herbert
cceb10cc85
Merge pull request #12337 from Naxesss/slider-path-segments
Improve UX of correcting invalid slider path types
2021-04-09 19:26:49 +09:00
Naxess
f64b2095bf Carry over the previous path type 2021-04-09 11:04:00 +02:00
smoogipoo
f2e811928b Rework slider hackery to not overwrite Samples 2021-04-09 15:28:08 +09:00
smoogipoo
8efa381d3a Actually use whistle sample for sliderwhistle 2021-04-08 23:13:16 +09:00
smoogipoo
7d291ed7d7 Don't serialise OriginalSamples 2021-04-08 20:57:50 +09:00
smoogipoo
7713c8a45f Add support for sliderwhistle 2021-04-08 20:20:09 +09:00
Naxess
9a675a2219 Correct 4+ point perfect curves to Bezier 2021-04-08 12:33:43 +02:00
Naxess
be4520fe33 Fix index out of range possibility 2021-04-08 11:46:00 +02:00
Naxess
0341023d13 Improve UX of selecting PerfectCurve 2021-04-08 09:06:28 +02:00
Naxess
725edfcbf3 Add path type menu change method 2021-04-08 09:05:35 +02:00
Dean Herbert
a8839792fd
Merge branch 'master' into circular-arc-freeze 2021-04-08 14:33:03 +09:00
Naxess
d6490899e2 Simplify slider path bindings
Adds a slight performance overhead, but solves the memory leak and makes the code much easier to follow.
2021-04-08 03:21:56 +02:00
Naxess
d1d56c636a Convert pathTypes to local variable
Not entirely sure what holds the reference to pathTypes now (the binding to`slider.Path.ControlPoints` maybe?), but this does seem to work still.
2021-04-08 01:43:06 +02:00
Naxess
b8ab1c7682 Track path type changes for PointsInSegment 2021-04-07 17:19:12 +02:00
Naxess
9c4604e3c5 Add example checks 2021-04-07 14:36:53 +02:00
Naxess
0343ef7f14 Add ruleset-specific checker 2021-04-07 14:36:43 +02:00
Dean Herbert
784552022f
Merge pull request #12303 from smoogipoo/fix-last-control-point-segmenting
Make last control point not able to make an implicit segment
2021-04-06 13:35:55 +09:00
smoogipoo
42e816fcae Add failing tests 2021-04-05 17:48:29 +09:00
Samuel Cattini-Schultz
85d2b1232a Refactor to abstract out strain logic into StrainSkill class
While it is the case for the existing official Skills, Skill implementations shouldn't be required to conform to a strain based approach.
There are other valid approaches to calculating skill difficulty that can be supported by abstracting the strain logic into its own StrainSkill class.
2021-04-03 20:52:39 +11:00
smoogipoo
9c3d15171c Reword xmldoc slightly 2021-04-02 18:00:28 +09:00
Amber
5ac36a2462 Switch AlwaysPlaySample to SamplePlaysOnlyOnHit in DrawableSliderTail for conformity 2021-04-02 03:56:23 -05:00
Amber
48e9985782 Make "AlwaysPlayTailSample" a mod setting rather than a hardcoded constant. 2021-04-02 03:10:28 -05:00
Amber
5063cd957f Force hit sample to play when Classic mod is enabled 2021-04-02 02:54:35 -05:00
Naxess
7e47922fb7
Merge branch 'master' into circular-arc-freeze 2021-04-01 17:09:45 +02:00
Naxess
5022a78e80 Check current point instead of start point
Since each control point will call this when the path updates, the previous would correct the start segment 3 times instead of just once.

This fixes that.
2021-03-31 20:25:46 +02:00
Naxess
75b8f2535f Move updatePathTypes to PathControlPointPiece
Here we produce a local bound copy of the path version, and bind it to update the path type.

This way, if the path version updates (i.e. any control point changes type or position), we check that all control points have a well-defined path.

Additionally, if the control point piece is disposed of, the GB should also swoop up the subscription because of the local bound copy.
2021-03-31 20:09:56 +02:00
Dean Herbert
b82247aabe Add inline comments and use Vector2.Zero 2021-03-30 14:13:16 +09:00
Dean Herbert
eda45e0e28 Merge branch 'master' into scale-breaking-bounds 2021-03-30 14:05:19 +09:00
Dean Herbert
9504fe3f3c Inline add of spm calculation (no need for it to be a separate call) 2021-03-30 13:43:05 +09:00
Salman Ahmed
f848ef5347 Add legacy spinner SPM counter support 2021-03-30 04:19:23 +03:00
Salman Ahmed
0bf84e473d Refactor spinner SPM counter for skinning purposes 2021-03-30 04:19:23 +03:00
Naxess
70d5b616f2 Add scaling path type recovery 2021-03-29 15:49:49 +02:00
Leon Gebler
17b16d4f89 Clarify purpose of getClampedScale() 2021-03-29 14:17:30 +02:00
Leon Gebler
1d99a63f17 Limit minimum size for single slider scaling 2021-03-29 14:16:27 +02:00
Dean Herbert
690debe507
Merge pull request #12030 from LeNitrous/editor-platform-clipboard-copy 2021-03-29 19:31:16 +09:00
Nathan Alo
9a02f3868c return a string instead 2021-03-29 17:29:05 +08:00
Leon Gebler
a50c4be8ab Add missing space 2021-03-26 17:41:36 +01:00
Leon Gebler
305c2e31cf Clarify todo comment 2021-03-26 16:53:17 +01:00
Leon Gebler
25ea60cb92 Remove return values from HandleScale submethods 2021-03-26 16:40:10 +01:00
Leon Gebler
5d272bef97 Remember ContolPoint positions instead of recalculating them 2021-03-26 16:31:04 +01:00
Nathan Alo
b8b7eb4c4b refactor logic to its own component and handle hit object to string conversion to its ruleset-specific composers 2021-03-26 15:25:20 +08:00
Nathan Alo
2bea69456e remove implementations 2021-03-26 15:24:33 +08:00
Naxess
51f0477df4 Move bounding box logic to framework 2021-03-26 04:42:46 +01:00
Naxess
ce9130ca50 Remove determinant limit
This has since been added into the framework through https://github.com/ppy/osu-framework/pull/4302
2021-03-25 17:38:55 +01:00
Salman Ahmed
bada1e7189 Update legacy spinner bonus counter usage 2021-03-25 15:00:06 +03:00
Salman Ahmed
6aa0c9d8fd Merge branch 'master' into legacy-sprite-text-fonts 2021-03-25 14:52:01 +03:00
Dean Herbert
b4bccc19ba Refactor LegacySpriteText initialisation 2021-03-25 18:37:13 +09:00
Dean Herbert
c715b9b89e Merge branch 'master' into legacy-spinner-bonus 2021-03-25 18:09:25 +09:00
Naxess
9df059b01d Add bounding box limit 2021-03-24 17:25:28 +01:00
Leon Gebler
e67ab3cca7 Change single slider scaling to a method that works 2021-03-24 12:24:11 +01:00
Leon Gebler
3d471d239f Clamp multi-object scale instead of cancelling it 2021-03-24 12:24:11 +01:00
Leon Gebler
def0e5c42e Fix off-by-one error in isQuadInBounds 2021-03-24 12:24:11 +01:00
Naxess
e0240ab9d9 Increase exterior threshold 2021-03-24 05:55:34 +01:00
Naxess
4ae3eaaac6 Move path type correction
This is better because `PathControlPointVisualizer` is local to the editor, meaning there is no chance that this could affect gameplay.
2021-03-24 03:02:19 +01:00
Naxess
0bcd38e661 Simplify path type maintenance when dragging 2021-03-24 02:57:47 +01:00
Naxess
5ee280f941 Update PointsInSegment when adding/removing points
There was a bug where if you created a slider, moved the last point, and then added a point such that it became a PerfectCurve, it would fail to recover after becoming a Bezier.

This fixes that.
2021-03-24 02:56:32 +01:00
Dan Balasescu
ade542191a
Merge pull request #12154 from peppy/fix-hitcircle-glow-fade-out
Fix default skin's glow resetting fade on miss
2021-03-23 20:14:51 +09:00
Dean Herbert
d10ff615fe Fix default skin's glow resetting fade on miss 2021-03-23 19:28:08 +09:00
Dean Herbert
64e85ba995 Always fade out approach circles at a HitObject's start time to better match stable 2021-03-23 19:19:07 +09:00
Dan Balasescu
9e38d580ca
Merge pull request #12139 from peppy/fix-editor-spinner-looping-too-long
Fix spinners playing looping sound too long in the editor
2021-03-23 17:44:07 +09:00
Dean Herbert
098005393e Remove unnecessary null checks and debug code 2021-03-23 10:38:37 +09:00
Naxess
067178e537 Maintain path type when dragging/placing 2021-03-22 15:59:06 +01:00
smoogipoo
e60ff45b73 Add another test for colinear perfect curves 2021-03-22 16:57:40 +09:00
Dean Herbert
c4d08463ad Fix spinners playing looping sound too long in the editor
The `OnComplete` event was never being run due to the transform playing
out longer than the spinner's lifetime. I've matched the durations, but
also moved the `Stop()` call to what I deem a safer place to run it (I
did notice that without this it would still potentially never fire).

Note that this is more noticeable in the editor because of lifetime
extension. In gameplay, the returning of a spinner to the pool will
clean things up (but in the editor that can take longer, depending on
timeline zoom level).

Another thing worth mentioning is that the fade doesn't actually work.
This is due to https://github.com/ppy/osu-framework/pull/4212.

Closes #12119.
2021-03-22 16:04:51 +09:00
Bartłomiej Dach
e67c759eef Mark control point visualiser as possibly-null 2021-03-19 22:44:31 +01:00
Bartłomiej Dach
9634560d4b Fix control point visualiser crashing after deselections
`SliderSelectionBlueprint.OnDeselected()` would expire the
`ControlPointVisualiser` on deselection, leading to its removal from the
blueprint and eventual disposal, but still kept a separate reference to
said visualiser in another field.

This could lead to that stale reference to a disposed child getting read
in `ReceivePositionalInputAt()`, crashing quite a ways down over at the
framework side on futilely trying to compute the bounding box of a
drawable with no parent.
2021-03-19 21:40:22 +01:00
Dean Herbert
27c38db14d Add tooltips for slider path nodes which aren't inheriting 2021-03-19 16:58:08 +09:00
Dean Herbert
5f31304d05 Give each type of slider path type a unique colour to help visually distinguish them 2021-03-19 14:00:26 +09:00
Nathan Alo
51e0304c54 properly format strings per ruleset 2021-03-17 18:31:09 +08:00
smoogipoo
7fa5fd5647 Update usages of config with framework changes 2021-03-17 16:10:16 +09:00
Salman Ahmed
848adddd92 Use double.ToString(InvariantInfo) instead 2021-03-15 11:05:29 +03:00
Salman Ahmed
779c55d768 Fix potentially adding null legacy text to hierarchy 2021-03-14 03:27:47 +03:00
Salman Ahmed
43c1e1d217 Update existing usages
Resolve post-conflict issues
2021-03-13 06:09:07 +03:00
Salman Ahmed
115c186cb7 Move hit circle font from osu! ruleset 2021-03-13 06:05:36 +03:00
Salman Ahmed
98f6e16113 Move default spinner bonus counter to new DefaultSpinner 2021-03-13 05:59:42 +03:00
Salman Ahmed
774ebf50bc Move legacy spinner bonus counter to LegacySpinner 2021-03-13 05:59:42 +03:00
Salman Ahmed
8fdab5a7de Revert legacy spinner presence changes and bonus counter component
No longer necessary, after inlining legacy coordinates logic to `LegacySpinner` and limiting precisely-positioned legacy components there
2021-03-13 05:57:47 +03:00
Salman Ahmed
020a03e01e Use sensible "score per tick" constant 2021-03-13 05:56:28 +03:00
Salman Ahmed
c4048c9831 Merge branch 'master' into legacy-spinner-bonus 2021-03-13 05:54:34 +03:00
Dean Herbert
e3813ab828
Merge branch 'master' into legacy-spinner-placements 2021-03-12 19:47:34 +09:00
smoogipoo
ea9b48d17d Remove unused using 2021-03-11 21:21:48 +09:00
smoogipoo
b5bdf235ca Slightly improve comments more 2021-03-11 21:21:44 +09:00
smoogipoo
8bc494b224 Adjust explanatory comments 2021-03-11 20:57:00 +09:00
Dean Herbert
1591d593e2 Move spin start time to inside result and switch to standard state handling 2021-03-11 12:58:15 +09:00
Salman Ahmed
3f34981664 Fix incorrect spinner top offset calculation with clarification 2021-03-11 05:40:20 +03:00
Dean Herbert
4e8bcc9265 Fix SPM counter decreasing after spinner has already been completed 2021-03-09 16:54:46 +09:00
Dean Herbert
5a6864eb78 Fix SPM counter immediately disappearing on completion of spinners 2021-03-09 16:54:46 +09:00
Salman Ahmed
0549395869 Inline "legacy coordinates container" and add "spinner Y centre" const 2021-03-09 08:55:32 +03:00
Salman Ahmed
bb79da1aac Correct playfield shift counteract comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-09 00:34:00 +03:00
Salman Ahmed
0ad3073c1a
Use MathF utility class instead
Co-authored-by: Berkan Diler <b.diler@gmx.de>
2021-03-07 21:21:44 +03:00
Salman Ahmed
fbfaa378fc Move spinner top offset constant outside 2021-03-07 20:47:16 +03:00
Salman Ahmed
413cbb30a0
Reword playfield shift counteract comment
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-03-07 13:39:46 +03:00
Salman Ahmed
30f07aa9fc Add legacy spinner bonus counter piece 2021-03-06 20:27:56 +03:00
Salman Ahmed
3f1d36ee6b Add default spinner bonus counter piece 2021-03-06 20:27:56 +03:00
Salman Ahmed
c441e993ff Separate "gained bonus" to a read-only bindable 2021-03-06 20:27:56 +03:00
Salman Ahmed
1841a4d1c9 Extract legacy spinner presence to lazy field 2021-03-06 20:27:56 +03:00
Salman Ahmed
e4afe717d5 Publicize legacy coordinates container and sprite scale 2021-03-06 20:27:56 +03:00
Salman Ahmed
1525480e73 Demonstrate value of SPINNER_TOP_OFFSET to being more sensible 2021-03-06 19:18:40 +03:00
Dan Balasescu
5b6018295d
Merge branch 'master' into diffcalc/skill-mods 2021-03-04 13:06:26 +09:00
Salman Ahmed
d528ef426f Reposition legacy spinner components in-line with osu!stable 2021-02-28 22:59:22 +03:00
Salman Ahmed
41b43dd39a Add nested legacy-simulating coordinates container 2021-02-28 21:32:56 +03:00
Dean Herbert
8004652d27
Merge branch 'master' into optimised-has-flag-checks 2021-02-25 21:24:39 +09:00
Dean Herbert
90e8308716 Merge branch 'master' into localisation-refactor-framework 2021-02-25 17:28:55 +09:00
smoogipoo
dff1d80f39 Update HasFlag usages to HasFlagFast 2021-02-25 15:38:56 +09:00
Dean Herbert
0c202e0777
Merge branch 'master' into fix-selecting-incompatible-freemods 2021-02-24 19:24:04 +09:00
smoogipoo
14160b897e Fix references to ModSuddenDeath 2021-02-24 14:44:53 +09:00
Leon Gebler
877e19421b Refactor movement while scaling 2021-02-23 21:02:00 +01:00
Leon Gebler
2a4139a207 Refactor isQuadInBounds 2021-02-23 21:02:00 +01:00
Leon Gebler
71b30bdbbb Adjust tuple usage 2021-02-23 21:02:00 +01:00
Leon Gebler
3491021f72 Move moveSelection into HandleMovement 2021-02-23 21:02:00 +01:00
Dean Herbert
1fd76ea3fb Apply changes to UI components overriding functions with changing signatures 2021-02-22 19:01:42 +09:00
smoogipoo
ca92ad715a Add test 2021-02-22 13:32:54 +09:00
Leon Gebler
33985d9e7c Rewrite scaling bounds check to behave more intuively 2021-02-21 18:11:32 +01:00
Leon Gebler
2c6f92d12f Move bounds check from moveSelection to HandleMovement 2021-02-21 17:38:50 +01:00
Leon Gebler
562a4cefdb Simplify HandleScale by extracting methods 2021-02-21 12:12:32 +01:00
Leon Gebler
0b8009938a Prevent selection from breaking playfield bounds when scaling 2021-02-21 00:14:39 +01:00
Leon Gebler
cc4c5f72d8 Move logic to keep selection in bounds into it's own method 2021-02-21 00:14:39 +01:00
Samuel Cattini-Schultz
66643a97b0 Add a list of mods to Skill class
Although this isn't necessary for existing official rulesets and calculators, custom calculators can have use cases for accessing mods in difficulty calculation.
For example, accounting for the effects of visual mods.
2021-02-20 20:37:44 +11:00
smoogipoo
d3f0c0730d Merge branch 'master' into non-concurrent-sample-playback 2021-02-12 17:22:15 +09:00
Dan Balasescu
cb4d119f23
Merge pull request #11740 from peppy/editor-fix-slider-samples-new-placement
Fix newly placed sliders in the editor not playing hitsounds
2021-02-12 13:31:00 +09:00
Dean Herbert
f84ea30637 Expose Mods in DrawableRuleset to avoid using external DI 2021-02-11 17:47:29 +09:00
Dean Herbert
aaa0362b12 Merge branch 'master' into autoplay-rate-independence 2021-02-11 17:39:45 +09:00
Dean Herbert
db79080bc4 Fix GetNodeSamples potentially returning a live reference and overwriting existing samples 2021-02-11 17:14:49 +09:00
Dean Herbert
4710a12774
Merge branch 'master' into classic-mode-flags 2021-02-11 16:21:55 +09:00
smoogipoo
5d1d6ec1cb Fix inverted calculation 2021-02-10 22:09:24 +09:00
smoogipoo
20a6405fd2 Add explanatory comments + const 2021-02-10 22:06:19 +09:00
smoogipoo
bd2486e5a0 Fix grammatical error in comment 2021-02-10 21:27:12 +09:00
smoogipoo
1d425b8322 Simplify case 2021-02-10 21:25:31 +09:00
smoogipoo
4a391ce03d Fix div-by-0 when 0 ticks are hit 2021-02-10 21:24:41 +09:00
smoogipoo
be9b07a4cf Merge branch 'master' into difficulty-adjustment-extension 2021-02-10 20:42:08 +09:00
smoogipoo
c458c4cfae Fix unintended changes due to renaming or otherwise 2021-02-10 20:27:47 +09:00
smoogipoo
0dcdad9839 Adjust comment for DrawableSliderHead 2021-02-10 19:04:23 +09:00
smoogipoo
6bf40170db Rename SliderBall flag 2021-02-10 18:53:26 +09:00
smoogipoo
a16f4cee3a Adjust DrawableSlider comment 2021-02-10 18:52:39 +09:00
smoogipoo
2fcc4213e1 Rename IgnoreJudgement -> OnlyJudgeNestedObjects 2021-02-10 18:46:26 +09:00
smoogipoo
9519b7f7c1 Adjust comment 2021-02-10 18:43:14 +09:00
smoogipoo
18a29dcb96 Rename bindable member, reorder binds 2021-02-10 18:42:24 +09:00
smoogipoo
6730c4c58b Apply review comments (user explanations + property names) 2021-02-10 18:41:28 +09:00
smoogipoo
cf06684ad1 Judge heads as slider ticks instead 2021-02-10 18:38:31 +09:00
Dean Herbert
1cb51fa8d2
Merge branch 'master' into autoplay-rate-independence 2021-02-09 16:05:34 +09:00
Dean Herbert
695e46a358 Fix AutoPilot mod failing to block touch input 2021-02-09 15:31:55 +09:00
Dean Herbert
b96a594546 Remove unnecessary initial call to HitObjectApplied bound method
Was causing test failures. Looks to be unnecessary on a check of when
HitObjectApplied is invoked.
2021-02-09 15:11:59 +09:00
smoogipoo
7021d1dfdc Merge branch 'hit-policy-refactor' into classic-mode-flags 2021-02-08 20:12:33 +09:00
smoogipoo
f4a31287bf Add/use IHitObjectContainer interface instead of IEnumerables 2021-02-08 20:11:06 +09:00
smoogipoo
d955200e07 Prevent invalid hit results for ignored slider heads 2021-02-08 11:10:14 +09:00
smoogipoo
2218247b21 Override mod type 2021-02-08 11:07:50 +09:00
Bartłomiej Dach
0e1ec703d3 Use IApplicableToRate in osu! auto generator 2021-02-07 18:49:31 +01:00
Bartłomiej Dach
3fabe247b0 Allow OsuModGenerator to accept a mod list 2021-02-07 18:35:34 +01:00
Bartłomiej Dach
68c20a2a37 Allow autoplay score generation to access mod list 2021-02-07 18:35:34 +01:00
smoogipoo
a5855f5d28 Move follow circle tracking to DrawableSliderHead 2021-02-05 17:33:48 +09:00
smoogipoo
ee3367d7c5 Add classic slider ball tracking 2021-02-05 17:14:23 +09:00
smoogipoo
3aa3692ed4 Disable snaking out when tracking is disabled 2021-02-05 15:56:13 +09:00
smoogipoo
6aece18f8d Add OOHP tests 2021-02-05 15:36:47 +09:00
smoogipoo
a4551dc1ee Add object-ordered hit policy 2021-02-05 15:36:47 +09:00
smoogipoo
6c78d308a4 Merge branch 'hit-policy-refactor' into classic-mode-flags 2021-02-05 15:36:43 +09:00
smoogipoo
8adf37d958 Add SetHitObjects() to IHitPolicy instead of using ctor 2021-02-05 15:25:03 +09:00
smoogipoo
08aae011c1 Add IHitPolicy interface 2021-02-05 15:25:03 +09:00
smoogipoo
df1df81847 Better indicate ordering 2021-02-05 15:25:03 +09:00
smoogipoo
0528469b44 Rename OrderedHitPolicy -> StartTimeOrderedHitPolicy 2021-02-05 15:25:03 +09:00
smoogipoo
3b5c67a063 Add OsuModClassic 2021-02-03 23:08:59 +09:00
smoogipoo
2f22dbe06b Make sliders display judgements when not ignored 2021-02-03 22:42:50 +09:00
smoogipoo
03b7817887 Add flags to return to classic slider scoring 2021-02-03 22:12:20 +09:00
smoogipoo
623b47f9af Add flag to toggle follow circle tracking for slider heads 2021-02-03 21:55:19 +09:00
Bartłomiej Dach
ae08ef2543 Reset SPM counter state on DHO application 2021-01-29 20:32:45 +01:00
Dean Herbert
d521bfc251 Don't directly update HandleUserInput (as it is used by mods) 2021-01-30 02:35:11 +09:00
Dean Herbert
5a306dfc2b Fix unused using 2021-01-29 20:22:25 +09:00
Dean Herbert
f25809d35f Ensure spinners only handle input during their hittable time
While this was already being enforced inside of `CheckForResult`, the
internal tracking values of rotation were still being incremented as
long as the `DrawableSpinner` was present. This resulted in incorrect
SPM values being displayed if a user was to start spinning before the
object's `StartTime`.

Kind of annoying to write a test for (there's no setup for spinners yet)
but am willing to do so if that is deemed necessary.

Closes https://github.com/ppy/osu/issues/11600.
2021-01-29 19:55:55 +09:00
smoogipoo
de9d075f94 Initial sample + samplechannel rework 2021-01-19 17:11:40 +09:00
Dean Herbert
000c7dd07b
Merge pull request #11502 from peppy/fix-spinner-spinning-weirdness
Fix some issues with spinner spin sound
2021-01-18 22:50:32 +09:00
Dan Balasescu
95963f2fa2
Merge pull request #11526 from peppy/fix-editor-repeat-slider-adjustment
Fix sliders with an even number of repeats not allowing rotation/scale transforms
2021-01-18 18:56:25 +09:00
Dean Herbert
707d5346c9 Merge branch 'master' into fix-spinner-spinning-weirdness 2021-01-18 18:26:44 +09:00
Dean Herbert
2f1d4bf51b Add missing braces 2021-01-18 17:13:47 +09:00
Dean Herbert
c79ab63743 Fix sliders with an even number of repeats not allowing rotation/scale transforms 2021-01-18 16:59:16 +09:00
Dean Herbert
02d2b2742b Fix selection box not updating with hitcircles/sliders far in the future or past 2021-01-18 16:57:36 +09:00
smoogipoo
1b166d809e Adjust package titles 2021-01-18 11:08:03 +09:00
smoogipoo
ec00aaef90 Add nuget deploys for all rulesets 2021-01-18 10:53:31 +09:00
Dean Herbert
14b3323682 Use OnComplete instead of Finally to avoid potentially stopping on aborted transforms 2021-01-15 17:18:15 +09:00
Dean Herbert
311f8b7017 Only restart spinning sample if it was not already playing 2021-01-15 17:17:51 +09:00
Dean Herbert
767c76921f Adjust transition time of spinner sound 2021-01-15 17:17:28 +09:00
Bartłomiej Dach
1ba586a683 Revert overlooked AR<8 speed buff
Pull request #11107 introduced changes in osu! performance calculation,
related to a scaling coefficient applied to the speed and aim skills.
The coefficient in question was dependent on the approach rate of
a map. During a post-merge review of that PR, it was spotted that
the scaling coefficient for speed also had a 10x buff applied for AR<8,
which could reach magnitudes as large as 80% on AR0, which seems quite
exorbitant. This change was not discussed or mentioned anywhere in the
review process.

Revert back to the old multiplier of 0.01 rather than 0.1 for AR<8. The
negative slope through AR0 to 8 is retained in its previous form.
2021-01-13 17:59:29 +01:00
Bartłomiej Dach
303cc62ee7 Transfer flags indicating if settings were changed 2021-01-06 22:46:46 +01:00
TheOmyNomy
355ecc4499 Change cursor trail blending mode to match stable 2020-12-29 12:37:57 +11:00
Dean Herbert
a411b26a09
Remove unnecessary clamp
Co-authored-by: Joseph Madamba <madamba.joehu@outlook.com>
2020-12-24 10:51:24 +09:00
Dean Herbert
dec997c0f4 Fix flashlight not updating its position during replay rewinding
Closes #11260
2020-12-23 14:44:38 +09:00
Dean Herbert
87176edca1 Fix crash when attempting to scale two hitobjects on the same axis 2020-12-22 12:52:57 +09:00
Bartłomiej Dach
569caa9500
Merge branch 'master' into add-bundle-header 2020-12-17 20:55:24 +01:00
Dean Herbert
76ffe31855
Merge pull request #11138 from smoogipoo/stanr-nf-multiplier
Port StanR's NF multiplier changes
2020-12-17 18:59:46 +09:00
Dean Herbert
88b3bf06e8 Merge branch 'master' into add-bundle-header 2020-12-16 13:40:15 +09:00
Dan Balasescu
8bdef0ff55
Code quality fix
Co-authored-by: Dean Herbert <pe@ppy.sh>
2020-12-15 13:18:41 +09:00
Xexxar
54827d4e96 fixed low 50s count still penalizing high obj count maps 2020-12-14 12:41:24 -06:00
Dean Herbert
1793385e96 Pass a score to the replay recorder to allow reading more general scoring data 2020-12-14 16:52:14 +09:00
Dan Balasescu
66f43e523b
Merge pull request #11147 from Xexxar/miss-penalty-curve
Change miss penalty curve for speed and aim pp awarded in the osu! ruleset
2020-12-14 14:25:26 +09:00
Xexxar
1dce446c52 Merge branch 'miss-penalty-curve' 2020-12-11 10:49:31 -06:00
Xexxar
b7872a54b8 small factor rebalance 2020-12-11 10:48:53 -06:00
Xexxar
a5a66e71f9 Merge branch 'miss-penalty-curve' 2020-12-11 10:22:04 -06:00
Xexxar
abc8a2982c swapped ^.75 buff onto speed instead of aim 2020-12-11 08:20:56 -06:00
Xexxar
c20117f0fb Merge branch 'miss-penalty-curve' 2020-12-11 08:02:39 -06:00
Xexxar
544160798b cleaned up mistakes and made quality changes 2020-12-11 08:01:45 -06:00
Xexxar
fd0d793c69 changed the comment to reflect the change 2020-12-10 18:51:54 -06:00
Xexxar
e45417d4fe Merge branch 'lowacc-nerf' 2020-12-10 14:24:42 -06:00
Xexxar
1f2946d64c changed miss penalty curve to scale with totalhits 2020-12-10 14:21:06 -06:00
Xexxar
cc5639d2b4 added unneeded whitespace 2020-12-10 09:48:40 -06:00
smoogipoo
7c2f506b79 Port StanR's NF multiplier changes 2020-12-10 17:10:29 +09:00
Xexxar
54abc3bd4d revert aim curve and add new 50s nerf 2020-12-09 20:07:52 -06:00
Xexxar
149651dec1 Merge branch 'lowacc-nerf' of https://github.com/Xexxar/osu into lowacc-nerf 2020-12-09 13:05:11 -06:00
Xexxar
d604c51cbd capped scaling at OD 8 to prevent overscaling 2020-12-09 13:04:14 -06:00
Xexxar
a2bd8ece10
Merge branch 'master' into lowacc-nerf 2020-12-09 12:06:33 -06:00
Xexxar
05ad9aae8d changed curve to linear OD + acc based curve 2020-12-09 11:57:01 -06:00
Xexxar
cfc34a63bd realized i accidently deleted the OD scaling 2020-12-09 11:21:03 -06:00
Xexxar
7e3fcfe437 fixed issue with comment 2020-12-09 10:35:48 -06:00
smoogipoo
47a93d8614 Adjust osu! hitobject fade-ins to support AR>10 2020-12-10 00:37:19 +09:00
smoogipoo
ac91f0e270 Add extended limits to difficulty adjustment mod 2020-12-10 00:37:19 +09:00
Xexxar
748035e80a changes to acc scaling curve for speed and aim pp 2020-12-08 16:53:52 -06:00
smoogipoo
168ba62500 Port StanR's dynamic SO pp changes 2020-12-08 22:09:48 +09:00
Dan Balasescu
c3cb82489b
Merge pull request #11107 from Xexxar/ar11-nerf
osu! PerformanceCalc Short Map AR11 Nerf
2020-12-08 12:51:26 +09:00
smoogipoo
57b7ef88e2 Fix spacing 2020-12-08 12:12:53 +09:00
ekrctb
0d88ff3404 Adjust namespace 2020-12-07 12:27:12 +09:00
ekrctb
c905df8a77 Move LegacySkinTransformer 2020-12-07 12:26:58 +09:00
Xexxar
cf3fbe0b0b osuDifficulty ar11 nerf 2020-12-06 18:06:36 -06:00
ekrctb
0ed9989a82 Adjust namespace 2020-12-04 20:25:49 +09:00
ekrctb
626956febd Move some files from Drawables to Skinning.Default namespace 2020-12-04 20:25:12 +09:00
ekrctb
245be2c5ed Adjust namespace 2020-12-04 20:21:53 +09:00
ekrctb
a12b049154 Move piece files in Osu ruleset 2020-12-04 20:11:35 +09:00
Dean Herbert
2f4b3a2d4c
Merge branch 'master' into fix-hidden-increased-visibility-state-2 2020-12-04 13:38:01 +09:00
Dean Herbert
5db15a6b26
Merge branch 'master' into fix-hidden-mod-crash 2020-12-04 12:50:02 +09:00
Dean Herbert
5ded4b9faa
Merge branch 'master' into dho-remove-onparentreceived 2020-12-04 11:04:56 +09:00
Bartłomiej Dach
4d739f11a8 Fix spinner ticks getting increased visibility state
Regressed in #10696. The old `IsFirstHideableObject()` method did not
consider nested hitobjects, while its replacement -
`IsFirstAdjustableObject()` - did. Therefore, spinner ticks could be
considered first adjustable objects, breaking the old logic.

There is no need to match over `SpinnerBonusTick`, as it inherits from
`SpinnerTick`.
2020-12-03 22:51:59 +01:00
smoogipoo
09af4bbd57 Merge branch 'dho-remove-onparentreceived' into fix-hidden-mod-crash 2020-12-03 20:10:16 +09:00
smoogipoo
0bdf99b97a Remove OnParentReceived() 2020-12-03 20:08:42 +09:00
smoogipoo
73e99718bc Change order of OnParentReceived() 2020-12-03 20:06:26 +09:00
smoogipoo
e3bbc2b128 Rework osu! hidden mod to avoid storing hitobjects 2020-12-03 14:45:56 +09:00
smoogipoo
e831c797f3 Merge branch 'master' into hit-sample-pooling 2020-12-02 14:45:24 +09:00
Dean Herbert
71a121389b
Merge pull request #11033 from smoogipoo/immutable-hit-samples
Make HitSampleInfo immutable
2020-12-02 14:44:26 +09:00
Dean Herbert
d344268df7
Merge pull request #11028 from peppy/osu-fade-slider-body-on-hit
Hide slider body immediately on successful hit when snaking is enabled
2020-12-02 12:59:26 +09:00
Dan Balasescu
be3fed3072
Merge pull request #11024 from peppy/fix-slider-point-drag-offset
Fix slider control point dragging not correctly accounting for drag deadzone
2020-12-02 11:10:06 +09:00
Dan Balasescu
8dfe3a21cc
Merge pull request #11025 from peppy/editor-slider-control-point-scaling
Scale slider control point display in line with circle size
2020-12-02 11:06:00 +09:00
Dan Balasescu
46a57921e2
Merge branch 'master' into osu-fade-slider-body-on-hit 2020-12-02 11:03:04 +09:00
smoogipoo
2bb7484608 Merge branch 'immutable-hit-samples' into hit-sample-pooling 2020-12-01 16:05:28 +09:00
smoogipoo
5760e1c1fc Make HitSampleInfo immutable 2020-12-01 15:37:51 +09:00
Dean Herbert
dd05c56a08 Fix sliders playing hit animations when completely missed 2020-12-01 15:34:29 +09:00
Dean Herbert
f8ef822e73 Add short fade to better hide transition on default skin 2020-12-01 15:21:32 +09:00
Dean Herbert
d0852d7f4a Hide slider body immediately on successful hit when snaking is enabled 2020-12-01 14:56:41 +09:00
Dean Herbert
8d101efb24 Remove unused proxy layer 2020-12-01 14:56:14 +09:00
Dean Herbert
b256c54619 Scale slider control point display in line with circle size 2020-12-01 14:17:36 +09:00
Dean Herbert
c8c1848bb8 Fix slider control point dragging not correctly accounting for drag deadzone 2020-12-01 13:46:30 +09:00
Bartłomiej Dach
5fbe1823a0
Merge branch 'master' into editor-beat-snap-always 2020-11-30 18:39:22 +01:00
Dean Herbert
51741c4791
Merge branch 'master' into hit-sample-pooling 2020-11-30 22:25:28 +09:00
smoogipoo
f589da4317 Fix compilation error 2020-11-30 19:24:38 +09:00
Dean Herbert
c17d67bc7d Merge branch 'master' into editor-beat-snap-always 2020-11-30 18:34:38 +09:00
smoogipoo
4bbeb9ebd4 Merge branch 'master' into hit-sample-pooling 2020-11-30 18:31:58 +09:00
smoogipoo
fdef6e479c Remove 1000ms offset and adjust comment 2020-11-30 18:28:04 +09:00
smoogipoo
8f48389f89 Merge branch 'master' into improve-dho-time-offsets 2020-11-30 18:01:48 +09:00
Dean Herbert
5bc76cac58 Remove unused using statement 2020-11-27 17:01:07 +09:00
Dean Herbert
1246c8ba5f Reduce the opacity of the default skin slider ball
Previous value was [hitting pure white on some brighter combo
colours](https://github.com/ppy/osu/issues/10910#issuecomment-734354812).
2020-11-27 15:22:29 +09:00
Dean Herbert
bcc197f9fe
Merge branch 'master' into improve-dho-time-offsets 2020-11-27 15:03:56 +09:00
ekrctb
fe85b7d482 Remove unused import 2020-11-27 10:18:00 +09:00
ekrctb
57454bbb1c Remove hitObject argument from OnApply and OnFree 2020-11-27 10:13:05 +09:00
Dean Herbert
b1864670a2
Merge pull request #10961 from smoogipoo/better-dho-rewind
Rewind pooled DHOs into better states
2020-11-27 00:42:58 +09:00
Dean Herbert
9811c46e35 Rename application method to better describe what it actually does 2020-11-26 19:16:18 +09:00
Dan Balasescu
aad6cf4ad3
Merge branch 'master' into editor-multiple-object-positional-snap 2020-11-26 17:06:47 +09:00
smoogipoo
0414e5c550 Add MaximumJudgementOffset to DrawableHitObject, use in more places 2020-11-26 01:12:42 +09:00
smoogipoo
c744db1b57 Rewind pooled DHOs into better states 2020-11-26 00:42:25 +09:00
Dean Herbert
c9a41f9dae Make all objects in selection candidates for spatial snapping
Closes #10898.
2020-11-24 17:35:54 +09:00
Dan Balasescu
87ce8a53ff
Merge branch 'master' into on-drawable-hitobject-added 2020-11-24 16:09:57 +09:00
Dean Herbert
5662e722ed
Merge pull request #10936 from bdach/fix-follow-points-getting-stuck
Fix legacy follow point animations not playing after a while
2020-11-23 14:14:00 +09:00
Bartłomiej Dach
827a089810
Merge branch 'master' into change-taiko-ez 2020-11-22 13:29:02 +01:00
Bartłomiej Dach
1c31a4a6b6 Expose animation start time as mutable in interface 2020-11-22 13:11:22 +01:00
ekrctb
c506b438bf Remove more code and make some methods private 2020-11-22 18:51:16 +09:00
ekrctb
5247ebaf53 Restore accidently removed comment 2020-11-22 18:51:16 +09:00
Bartłomiej Dach
240c1b0aef Add support for changing animation start time after load 2020-11-21 20:06:30 +01:00
Bartłomiej Dach
e55326e7c7
Merge branch 'master' into fix-slider-selection-nre 2020-11-21 15:08:05 +01:00
ekrctb
295ca38cda Merge remote-tracking branch 'origin/master' into on-drawable-hitobject-added 2020-11-21 15:25:16 +09:00
ekrctb
4345d8dcb6 Event -> virtual method 2020-11-21 15:20:33 +09:00
ekrctb
82aefa3868 Rework and rename to OnNewDrawableHitObject.
The semantics is changed and hopefully more clear.
2020-11-21 00:27:19 +09:00
smoogipoo
9520cf6481 Merge branch 'master' into fix-judgement-ordering 2020-11-20 22:49:33 +09:00
smoogipoo
96abee3fde Fix silent NRE in slider selection blueprint 2020-11-20 22:43:10 +09:00
Dan Balasescu
de824e47df
Merge branch 'master' into remove-dead-playfield-code 2020-11-20 21:48:24 +09:00
Dan Balasescu
b799fcf65b
Merge pull request #10916 from peppy/fix-editor-context-menus-outside-playfield
Fix slider right click context menus not being shown outside the valid playfield area
2020-11-20 21:47:44 +09:00
Dan Balasescu
4213d6bdba
Merge pull request #10890 from peppy/legacy-jugement-match-stable-transforms
Adjust judgement animations to match stable
2020-11-20 21:47:21 +09:00
Dan Balasescu
79752bcb19
Merge branch 'master' into legacy-jugement-match-stable-transforms 2020-11-20 20:51:27 +09:00
ekrctb
27f5a99726 Fix more than one proxy is created 2020-11-20 18:42:48 +09:00
ekrctb
cd16a3fa61 Use event instead of using custom pools (osu) 2020-11-20 17:56:47 +09:00
smoogipoo
7bd75eca81 Separate classes 2020-11-20 16:53:08 +09:00
smoogipoo
c1f56cd0ba Remove aliveness hackery 2020-11-20 16:52:27 +09:00
smoogipoo
85eb98a7ec Clean up some code reuse 2020-11-20 16:43:07 +09:00
Dean Herbert
7fe0923fcf Show main judgement content above hitobjects 2020-11-20 16:25:48 +09:00
smoogipoo
2418f17b0c Fix lifetime not being set correctly in some cases 2020-11-20 16:19:02 +09:00
Dean Herbert
0e9999ecb1 Merge branch 'remove-dead-playfield-code' into fix-judgement-ordering 2020-11-20 16:12:48 +09:00
smoogipoo
2ed2ddfe8a Rename methods 2020-11-20 15:39:29 +09:00
smoogipoo
33eea64cfc Fix follow points not updating on positional changes 2020-11-20 15:31:04 +09:00
Dean Herbert
185653b1d8 Remove depth specifications 2020-11-20 15:11:24 +09:00
Dean Herbert
45b1fcf26f Remove unnecessary using statement 2020-11-20 15:01:37 +09:00
Dean Herbert
af67b4a346 Remove no longer necessary code from OsuPlayfield 2020-11-20 14:57:08 +09:00
smoogipoo
2fc53a278d Add back reorder support 2020-11-20 14:10:28 +09:00
smoogipoo
17ff7fe163 Fix failing test due to early lifetime end 2020-11-20 13:55:27 +09:00
smoogipoo
a3145ed96d Fix test compile errors 2020-11-20 13:54:41 +09:00
Dean Herbert
b547abafb2 Fix slider right click context menus not being shown outside the valid playfield area
Closes #10816.
2020-11-20 13:46:23 +09:00
smoogipoo
d467a00eea Add initial followpoint pooling implementation 2020-11-20 00:11:31 +09:00
smoogipoo
688a04c2ff Make slider/spinner use pooled samples 2020-11-19 20:40:30 +09:00
Dean Herbert
7f3c8ad744
Merge pull request #10872 from smoogipoo/fix-missing-triangles 2020-11-19 14:11:08 +09:00
Dean Herbert
3024ae6d86 Add better test coverage of hit lighting (and ensure reset after animation reapplication) 2020-11-19 14:10:07 +09:00
Bartłomiej Dach
24d7fa03d8
Merge branch 'master' into legacy-jugement-match-stable-transforms 2020-11-18 20:33:58 +01:00
Bartłomiej Dach
5156de3a10
Merge branch 'master' into fix-judgement-transform-logic 2020-11-18 19:20:11 +01:00
Dean Herbert
d017e725fb Add comment for future todo task 2020-11-18 19:03:34 +09:00
Dean Herbert
9d3de5bca0 Fix hit lighting dictating lifetime even when not present in skin 2020-11-18 19:03:34 +09:00
Dean Herbert
72a15ef2dc Handle DrawableJudgement lifetime more flexibly 2020-11-18 19:03:34 +09:00
Dean Herbert
94886a09b2 Remove fades from DrawableJudgement itself 2020-11-18 19:03:34 +09:00
Dean Herbert
37b9550e6e
Merge pull request #10876 from nbvdkamp/slider-control-point-connection-fix
Fix slider control point connections not being updated
2020-11-18 18:54:54 +09:00
kamp
2d66423fbd Simplify inequality 2020-11-17 23:04:38 +01:00
kamp
c8fb49d540 Apply suggestions and remove redundant updateConnectingPath call 2020-11-17 22:23:46 +01:00
smoogipoo
ce4baf328d Move into OnApply() to resolve one-frame issues 2020-11-17 23:35:36 +09:00
smoogipoo
04805b78c3 Tighten osu! ruleset lifetime expiry for past hitobjects 2020-11-17 23:20:19 +09:00
Dean Herbert
8247e6ce91 Move result type to ctor 2020-11-17 15:43:54 +09:00
Dean Herbert
f465dd5a5e Move all extended animation logic out of DrawableJudgement 2020-11-17 14:59:34 +09:00
Dean Herbert
82c3925a37 Remove unused DrawableOsuJudgement constructors 2020-11-17 14:13:51 +09:00
Dean Herbert
9dfa4249e0 Make Apply non-virtual 2020-11-17 14:05:13 +09:00
smoogipoo
c101f32db8 Reset osu! triangle pieces on hitobject application 2020-11-17 13:06:52 +09:00
kamp
c6618f08aa Fix slider control point connections not being updated 2020-11-16 21:26:08 +01:00
Bartłomiej Dach
8da40ce2dc Reduce duplication by extracting ModEasyWithExtraLives 2020-11-16 19:54:00 +01:00
Bartłomiej Dach
128adce017 Merge branch 'master' into change-taiko-ez 2020-11-16 19:37:47 +01:00
smoogipoo
84b42f207d Fix triangles disappearing after a while 2020-11-16 23:14:20 +09:00
smoogipoo
4cf6aca873 Fix slider ball tint not working 2020-11-16 22:40:25 +09:00
PercyDan54
99ee5e3ad7
Correct inheritance 2020-11-16 18:28:50 +08:00
PercyDan54
d7acfd5413
Remove retires from ModEasy 2020-11-16 18:15:15 +08:00
Dan Balasescu
09298139e1
Merge pull request #10844 from bdach/spinner-rotation-tracker-state
Fix rotation tracker state not being reset on drawable spinner re-use
2020-11-16 17:10:40 +09:00
Dean Herbert
6706840b54
Merge pull request #10853 from bdach/add-to-legacy-conversion-tests 2020-11-16 15:22:04 +09:00
Bartłomiej Dach
a17990f2ee Fix osu!-specific missing cases 2020-11-15 15:40:31 +01:00
kamp
268bbcf77d Clamp selection movement instead of refusing to move on borders 2020-11-15 14:22:46 +01:00
Bartłomiej Dach
532680bb36 Manually reset rest of rotation tracker state on object application 2020-11-14 23:23:11 +01:00
Bartłomiej Dach
727a886fb3 Move spinner completion info into judgement 2020-11-14 23:08:47 +01:00
Bartłomiej Dach
af392e3995 Move rate adjusted spinner rotation into judgement result 2020-11-14 21:10:12 +01:00
Dean Herbert
deea75b2e9 Fix typo in comment 2020-11-14 18:05:51 +09:00
Dean Herbert
7ac4d2c4be Move "drawable" to first prefix 2020-11-14 18:05:30 +09:00
Dean Herbert
90f37ff4ab Rejig namespaces 2020-11-14 18:04:59 +09:00
Dean Herbert
354e748e45
Merge branch 'master' into osu-hitobject-pooling-playfield 2020-11-14 15:44:00 +09:00
Bartłomiej Dach
3985fb1fa7
Merge branch 'master' into allow-reversing-spinners 2020-11-13 19:48:40 +01:00
smoogipoo
5b60f32c7f Move implementation into OsuPlayfield 2020-11-14 01:03:23 +09:00
smoogipoo
1e05fd48e2 Fix hidden mod crash 2020-11-13 23:08:27 +09:00
kamp
742a140462
Merge branch 'master' into allow-reversing-spinners 2020-11-13 11:08:56 +01:00
smoogipoo
f7f70d41df Add osu! editor pooling support 2020-11-13 17:28:26 +09:00
smoogipoo
3c91626132 Merge branch 'pooling-editor-support' into osu-editor-pooling 2020-11-13 17:27:00 +09:00
smoogipoo
942ecde0e1 Merge branch 'master' into pooling-editor-support 2020-11-13 17:23:35 +09:00
smoogipoo
4ef2e9548c Pass HitObjectComposer to BlueprintContainer via ctor 2020-11-13 16:59:37 +09:00
smoogipoo
beb6bbd2a1 Implement now abstract method 2020-11-13 14:58:32 +09:00
smoogipoo
7085b25898 Merge branch 'hitobject-pooling-base' into osu-hitobject-pooling 2020-11-13 14:57:59 +09:00
Dean Herbert
38105ed6a2
Merge branch 'master' into hitobject-pooling-base 2020-11-13 11:27:32 +09:00
Dean Herbert
030df8234a
Merge pull request #10805 from bdach/fix-osu-hd-mod-part-2
Fix slider ends not fading out after a rewind with hidden mod
2020-11-13 11:27:15 +09:00
kamp
66544544d3
Merge branch 'master' into allow-reversing-spinners 2020-11-13 00:40:49 +01:00
kamp
45ce6cc82d Allow spinners to be reversed 2020-11-13 00:36:47 +01:00
kamp
1439c0f392 Prevent SelectionBox handles from appearing when a stack of circles is selected 2020-11-12 23:19:29 +01:00
Dan Balasescu
2840fd0f8f
Merge branch 'master' into hitobject-pooling-base 2020-11-12 23:17:36 +09:00
smoogipoo
3f0a127196 Fix slider/spinner samples not being disposed 2020-11-12 18:51:58 +09:00
smoogipoo
7548db7ecc Fix hitobjects sometimes not fading in completely with HD mod 2020-11-12 18:29:22 +09:00
Bartłomiej Dach
0ae6f82291 Fix incorrect fade of slider ends after a rewind 2020-11-12 09:33:39 +01:00