1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-11 12:57:36 +08:00
Commit Graph

1850 Commits

Author SHA1 Message Date
Dean Herbert
2073810e95 Add performance breakdown chart for osu!catch 2023-07-13 18:48:24 +09:00
Dean Herbert
d12845d7b1 Remove no-longer-necessary ReceivePositionalInputAt overide in CatchPlacementBlueprint 2023-07-12 17:39:54 +09:00
Bartłomiej Dach
7be5e0e978
Implement back-and-forth conversion of ModScoreV2 and LegacyMods 2023-07-09 16:15:21 +02:00
Bartłomiej Dach
9dae806734
Use IsRewinding in a few more places 2023-07-08 13:32:24 +02:00
Dean Herbert
e0fc97bb93 Replace various local implementations of rewinding checks with new property 2023-07-07 15:21:24 +09:00
Dean Herbert
1629024111 ILegacyScoreProcessor -> ILegacyScoreSimulator 2023-07-04 17:32:54 +09:00
Dan Balasescu
c6ad184d94 Move Ruleset method to ILegacyRuleset interface 2023-06-29 17:24:37 +09:00
Dan Balasescu
09bc8e45de Refactoring 2023-06-28 16:14:32 +09:00
Dan Balasescu
5f350aa66f Fix float division
Firstly, this is intended to be a float division.

Secondly, dividing integers by 0 results in an exception, but dividing
non-zero floats by 0 results in +/- infinity which will be clamped to
the upper range.
In particular, this occurs when the beatmap has 1 hitobject (0 drain
length).
2023-06-27 17:14:35 +09:00
Dan Balasescu
a9c65d200a Initial conversion of scores 2023-06-26 22:19:01 +09:00
Dan Balasescu
e1d723a2cc Merge branch 'master' into diffcalc-total-scorev1 2023-06-26 14:32:14 +09:00
Dan Balasescu
5fadadc3d0 Merge branch 'master' into diffcalc-total-scorev1 2023-06-24 02:46:15 +09:00
Dan Balasescu
06565871d6 Add flag to disable computing legacy scoring values 2023-06-24 01:03:18 +09:00
Dan Balasescu
87447f41d0 Fix incorrect calculation of difficulty 2023-06-24 00:58:45 +09:00
Dean Herbert
08b3c0cce0 Change "floating fruits" mod to only apply adjustments to the playfield
Avoids things like touch screen inputs also being flipped.

Note that these adjustments can't be applied directly to the playfield
due to how playfields are used in various rulesets (basically relying on
the `PlayfieldAdjustContainer` to get things in the right place).

Closes #24000.
2023-06-23 14:18:43 +09:00
Dean Herbert
4be8eede88 Fix combo counter on legacy skins flipping when "Floating Fruits" mod is active
Closes #23989.
2023-06-22 18:46:43 +09:00
Dan Balasescu
bfa449e47a Adjust attribute data 2023-06-19 21:38:13 +09:00
Dan Balasescu
0844a21a51 Merge branch 'master' into diffcalc-total-scorev1 2023-06-15 19:33:29 +09:00
Dan Balasescu
3ec97121e1 Add ScoreV1 calculation for CatchRuleset 2023-06-13 19:41:39 +09:00
Dean Herbert
6d446d3e97 Fix incorrect colouring of beat snap grids (mania and catch) 2023-06-07 12:25:34 +09:00
Dean Herbert
c1f23ef211 Add beat snap grid for osu!catch editor
As discussed in https://github.com/ppy/osu/discussions/23462.
2023-06-06 17:52:29 +09:00
Dan Balasescu
e402c6d2b4 Write max combo attribute from base class 2023-06-02 21:53:25 +09:00
Dean Herbert
1558723420 Merge branch 'master' into scorev2 2023-05-29 20:06:32 +09:00
Dean Herbert
3c69956b55 Fix incorrect catch grid specification 2023-05-26 10:41:29 +09:00
Dean Herbert
804671ca74 Split out grid snapping modes into "relative" and "global" types 2023-05-25 21:41:19 +09:00
Dan Balasescu
fee3d43596 Merge branch 'master' into scorev2 2023-05-23 19:07:54 +09:00
Dan Balasescu
c291d6fc82 Remove catch tiny droplet portion 2023-05-23 15:36:34 +09:00
Dan Balasescu
30a296bd09 Rename parameters 2023-05-19 17:27:02 +09:00
Dan Balasescu
6c6f8621c1 Add score processor statistics to replay header 2023-05-19 16:29:24 +09:00
Dan Balasescu
d74bf2a096 Refactor for safety 2023-05-19 14:37:26 +09:00
Dan Balasescu
2ae34530f7 Avoid NaN values during ApplyBeatmap processing() 2023-05-19 14:14:34 +09:00
Dan Balasescu
7cbf48ffcf Fix TestSceneScoring and incorrect combo calculations 2023-05-19 14:09:19 +09:00
Dan Balasescu
8b56a3f87d Remove ClassicScoreMultiplier and DefaultScoreProcessor 2023-05-19 12:24:52 +09:00
Dean Herbert
510ebe1f23 Fix weird optional usage in HitSampleInfo.With 2023-05-17 14:11:52 +09:00
Dean Herbert
dc51d5ecf3 Rename GetSampleInfo to better describe what method does
Also add full xmldoc
2023-05-17 14:07:48 +09:00
Dean Herbert
f443cfb93e Move blueprint validity conditions to allow more correct external usage of EndPlacement
Until now, these were haphazardly enforce inline in blueprint
implementations. The only thing stopping complete breakage is that
`EndPlacement` wasn't called (too much) from outside the blueprint,
leaving them responsible for their own placement.

By moving this conditional out of the provided paramters to
`EndPlacement`, it allows more flexible usage of that method externally.
Coming in a future PR.
2023-05-12 16:02:22 +09:00
Dan Balasescu
a7b623f52a Reimplement classic scoring mode 2023-05-09 20:21:38 +09:00
Dan Balasescu
3c3c812ed6 Initial implementation of ScoreV2 2023-05-09 19:33:33 +09:00
Dean Herbert
16c624fb61 Ensure static banana samples are not mutated 2023-05-03 13:02:37 +09:00
OliBomby
90d98cd329 remove constructor argument from Banana 2023-05-02 12:41:39 +02:00
OliBomby
d2d81bb82c remove redundant zero check in sv calculation 2023-05-02 12:29:11 +02:00
OliBomby
27cfadca16 add sample info to Banana and SpinnerBonusTick 2023-05-01 14:54:06 +02:00
OliBomby
608fa3cc73 Merge remote-tracking branch 'upstream/master' into sample-control-points 2023-04-30 19:47:03 +02:00
OliBomby
41d4894aa3 add min and max value to SliderVelocity 2023-04-30 19:32:24 +02:00
OliBomby
4a0ff046ae pass new hitobject properties through beatmap converters 2023-04-30 19:20:42 +02:00
OliBomby
79f3cfec91 fix 0 velocity juicestream 2023-04-30 16:43:26 +02:00
OliBomby
c44f71a737 remove all regular usage of DifficultyControlPoint 2023-04-26 17:55:38 +02:00
Terochi
bb1ed387ef fixed missed bit and comments 2023-04-22 10:54:50 +02:00
Terochi
847b63066b fix 2023-04-21 22:44:31 +02:00
Bartłomiej Dach
ead5e9f027
Merge branch 'master' into editor-inspector 2023-04-10 14:29:05 +02:00
Dan Balasescu
ad51f880e0 Remove overrides on DC/NC mods 2023-04-10 17:49:29 +09:00
Dan Balasescu
15f6bc155e Add progressive score multiplier for HT 2023-04-10 13:35:48 +09:00
Dan Balasescu
c923482976 Add progressive score multiplier for DT 2023-04-10 13:31:48 +09:00
Dean Herbert
f9ebdadfe8 Move right-side editor toolbox to base HitObjectComposer
Move right-side editor toolbox to base `HitObjectComposer`
2023-04-04 19:00:56 +09:00
Dean Herbert
a394036279
Merge pull request #23020 from rrex971/fix-ar-cs-catch-less-than-1
Allow AR and CS values below 1.0 for osu!catch Difficulty Adjust mod
2023-04-03 15:30:05 +09:00
Dean Herbert
836c884aae Fix circle-size based scale being applied twice to caught fruit
Closes #22968.
2023-03-29 18:03:22 +09:00
rrex971
9426633a05 Allow AR and CS values below 1.0 for Catch the Beat Difficulty Adjustment mod 2023-03-27 20:39:13 +05:30
Bartłomiej Dach
3183f5cee2
Merge branch 'master' into revert-result-in-playfield 2023-02-19 16:33:10 +01:00
Bartłomiej Dach
3ee046000e
Merge branch 'master' into revert-result-in-playfield 2023-02-16 21:54:29 +01:00
Dean Herbert
76f7accd13 Standardise all local SkinComponentsContainerLookup variables to containerLookup 2023-02-16 15:33:56 +09:00
Dean Herbert
a92e42bb84 Rename SkinnableTargetContainer to SkinComponentsContainer
Also use full `SkinComponentsContainerLookup` instead of the sub-type.
This will potentially be useful once we bring in per-ruleset targets.
2023-02-15 18:37:41 +09:00
Dean Herbert
8bbd00822c Simplify and rename SkinnableTargetComponentsContainer 2023-02-15 17:30:21 +09:00
ekrctb
491ba13b6f Factor out palpable obejct enumeration logic 2023-02-03 14:07:21 +09:00
ekrctb
f8a5ce0cd2 Use stable sort for catch hyperdash generation 2023-02-02 22:32:33 +09:00
Dean Herbert
f0406c34fd Merge branch 'master' into revert-result-in-playfield 2023-01-25 17:35:33 +09:00
ekrctb
812a4b412a Move judgement result revert logic to Playfield
Previously, some judgement results were not reverted
when the source DHO is not alive (e.g. frames skipped in editor).
Now, all results are reverted in the exact reverse order.
2023-01-19 19:57:13 +09:00
Dean Herbert
70cb23bbc9
Merge branch 'master' into mod-accuracy-challenge 2023-01-17 16:46:54 +09:00
ekrctb
1f8b7b8f03 Remove #nullable disable from CaughtObject 2023-01-15 23:21:38 +09:00
ekrctb
d664a66a37 Remove redundant canBeNull: true 2023-01-15 23:11:59 +09:00
ekrctb
086604cd14 Remove #nullable disable from Catch.Objects.Drawables
Except DrawableCatchHitObject, it complains in base(hitObject) call.
2023-01-15 17:29:35 +09:00
ekrctb
b88091262d Remove #nullable disable from Catch.UI 2023-01-15 17:29:35 +09:00
ekrctb
b08a1e3a0b Remove #nullable disable from misc Catch files 2023-01-15 17:29:35 +09:00
ekrctb
56fb315f32 Remove #nullable disable from Catch.Objects 2023-01-15 17:29:35 +09:00
ekrctb
2468911f4b Remove #nullable disable from Catch.Judgements 2023-01-15 17:29:32 +09:00
ekrctb
3ab3f556ae Remove #nullable disable from Catch.Difficulty 2023-01-15 17:29:32 +09:00
ekrctb
b049244b75 Remove #nullable disable from Catch.Beatmaps 2023-01-15 17:29:32 +09:00
ekrctb
a75fc5108a Remove #nullable disable from Catch.Edit namespace 2023-01-15 17:29:32 +09:00
Dylan Nantz
6028abff39 Code Quality 2023-01-13 10:16:52 -05:00
Dylan Nantz
5dd0aaccef Merge branch 'master' of https://github.com/ppy/osu into 18469 2023-01-13 09:54:29 -05:00
Dylan Nantz
e38075c4ef Use PlacementState to check juice stream placement 2023-01-13 09:37:23 -05:00
Dean Herbert
98483d2a1b
Merge pull request #21638 from Mogiiii/touchscreen-control-disable-mouse
Disable touchscreen controls responding to mouse in scrolling gamemodes
2023-01-06 20:39:09 +08:00
Salman Ahmed
efbd9ba4b9 Fix catcher not moving when fully hidden in "No Scope" mod 2023-01-03 15:28:05 +03:00
Berkan Diler
335cb0205f Remove now unnecessary using 2022-12-26 22:50:36 +01:00
Berkan Diler
c7ca4bbba5 Use generic Enum methods 2022-12-26 20:36:39 +01:00
Dean Herbert
e8a0f8996c Remove unused osu!catch ArgonJudgementPiece 2022-12-24 03:35:27 +08:00
Dean Herbert
727ac00f6d Combine base class for JudgementPiece 2022-12-24 03:32:13 +08:00
Dean Herbert
4a7d7c6ed9 Use MaxBy in all locations that can and update inspection level to match dotnet-build 2022-12-19 16:47:10 +09:00
Dean Herbert
d6cae991da Update netstandard2.1 references to net6.0 2022-12-16 17:16:13 +09:00
Dylan Nantz
f5cc2f6ed5 remove unnecessary using 2022-12-14 11:19:16 -05:00
Dylan Nantz
ee945c9b58 disable mouse input to touchscreen controls 2022-12-14 10:34:21 -05:00
Dean Herbert
775952380f Remove unused using statements 2022-12-13 18:57:17 +09:00
Dylan Nantz
0dd4e0cf94 hide cursor in catch 2022-12-12 21:18:01 -05:00
Dylan Nantz
4ab7ef9af9 Show distance snap for first juice stream object. Fixes #18469 2022-12-05 15:12:50 -05:00
Bartłomiej Dach
7f68fe429f
Remove unused using directive 2022-11-30 20:01:59 +01:00
Bartłomiej Dach
285248d554
Fix potential null dereference in CatchPlayfield 2022-11-30 20:01:11 +01:00
Dean Herbert
5ce2d6f54a Hide the game mouse cursor when playing osu!catch with relax mod 2022-11-30 18:13:53 +09:00
Dan Balasescu
7bc8908ca9 Partial everything 2022-11-27 00:00:27 +09:00
Hồ Nguyên Minh
3f8c4a5dff Stack Catch dash/normal touch input vertically 2022-11-13 17:09:43 +07:00
Dean Herbert
1aa0e40f2f Add "Component" prefix to lookup naming 2022-11-09 17:46:43 +09:00
Dean Herbert
e75c3b3f94 Rename SkinnableTarget to GlobalSkinLookup 2022-11-09 17:46:43 +09:00
Dean Herbert
c908969d9b Rename ISkinComponent to ISkinLookup 2022-11-09 17:46:43 +09:00
Dean Herbert
2952dbc8fb Apply nullability to osu!catch skinning classes 2022-11-09 13:58:58 +09:00
andy840119
4d4d7cf863 Remove nullable disable annotation in the cache ruleset. 2022-11-05 16:49:55 +08:00
Dean Herbert
a985151e31 Fix incorrect constant 2022-10-29 18:07:17 +09:00
Dean Herbert
40efa1603b Adjust metrics to make banana lens flares look better 2022-10-28 19:35:50 +09:00
Dean Herbert
e87b541c58 Add fade to banana's lighting as it approaches the catcher
This also avoids using the `UprightScalingContainer` (and allows for
scale adjust in the process).
2022-10-28 18:29:59 +09:00
Dan Balasescu
eeee928f73
Merge pull request #20946 from peppy/argon-catch
Add first pass osu!catch "argon" skin
2022-10-28 15:45:46 +09:00
Dean Herbert
9969c00ead
Apply two minor fixes from code review
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-10-28 10:19:53 +09:00
Dean Herbert
d48f95cf7c Use shader based implementation instead of sprites 2022-10-27 19:01:10 +09:00
Dean Herbert
8a80cb55bd Remove unused catcher animation state for now 2022-10-26 18:55:47 +09:00
Dean Herbert
44f55ed152 Add argon osu!catch hit explosion 2022-10-26 18:55:47 +09:00
Dean Herbert
8a513003ce Add argon droplet 2022-10-26 18:55:47 +09:00
Dean Herbert
14a4fad6f1 Remove unused VisualRepresentation 2022-10-26 18:55:47 +09:00
Dean Herbert
2deaae270c Fix catcher not consdiering allowable catch range 2022-10-26 18:55:47 +09:00
Dean Herbert
0a8a13f529 Add argon banana piece 2022-10-26 18:55:47 +09:00
Dean Herbert
a475ca848d Add rotation to fruit pieces 2022-10-26 18:55:47 +09:00
Dean Herbert
4ff4de00b3 Add argon fruit design 2022-10-26 18:55:47 +09:00
Dean Herbert
81bb00c258 Add argon transformer for osu!catch (and basic new catcher design) 2022-10-26 18:55:47 +09:00
Dean Herbert
f8a4af5e0e Add osu!catch read-distance-spacing implementation 2022-10-26 13:45:06 +09:00
Dean Herbert
7d59bc6e2f Merge branch 'grid-momentary-shortcuts' into read-current-distance-snap 2022-10-26 13:28:04 +09:00
Dean Herbert
54ae16badc Move distance snap toggle button implementation to DistancedHitObjectComposer 2022-10-26 13:27:23 +09:00
Dean Herbert
2f0283e4d4 Simplify logic with new multi-grid snap support 2022-10-25 14:22:30 +09:00
Dean Herbert
645a84b1d6 Display current distance snap and add button to update to use it 2022-10-21 22:58:36 +09:00
Dean Herbert
1e09a21279 Remove unused using statement 2022-10-21 19:55:58 +09:00
Dean Herbert
16f5c2a7c6 Apply same fix to osu!catch composer 2022-10-21 17:15:36 +09:00
Dean Herbert
830b92d3ae Add momentary shortcuts to toggle grid/distance snap
Matching osu!stable. I use these quite a lot while mapping and I'm sure
others do as well.

Hold `Shift` = invert grid snap
Hold `Alt` = invert distance snap
2022-10-19 20:06:41 +09:00
Dean Herbert
ccbac08985
Merge pull request #20593 from ekrctb/catch-editor-height
Allow arbitrary height catch editor
2022-10-18 12:10:49 +09:00
Dean Herbert
1778120f3e Add inline comment mentioning binding issues 2022-10-18 12:10:30 +09:00
Salman Ahmed
ba72f13f54 Merge branch 'master' into hide-mouse-on-keyboard-input 2022-10-14 22:26:30 +03:00
Salman Ahmed
09cc89cfa0 Update existing usages of Cursor to handle null value 2022-10-13 00:17:08 +03:00
Dean Herbert
8bf4ca4b53 Add legacy skin fallback when beatmap skin is providing resources 2022-10-12 17:47:20 +09:00
Dean Herbert
f3e85d2302 Fix initial state being wrong due to BindValueChanged call in BDL load 2022-10-12 15:26:26 +09:00
Dean Herbert
ea3d08d5a0 Fix collision of external hide with internal logic in LegacyCatchComboCounter 2022-10-12 15:26:26 +09:00
Dean Herbert
2e3e4ac5be Update CatchComboDisplay to use NRT 2022-10-12 15:26:26 +09:00
Dean Herbert
652bc4ac61 Update CatchComboDisplay implementation to use newly exposed bindable 2022-10-12 15:14:33 +09:00
Dean Herbert
d2d589a156 Expose HUD state via Player 2022-10-12 15:11:52 +09:00
Dean Herbert
a10fda2843
Merge branch 'master' into catch-combo-hide 2022-10-12 15:00:35 +09:00
Dean Herbert
b444f0fd0b
Merge pull request #20714 from frenzibyte/improve-flashlight-on-break
Improve flashlight display on break periods
2022-10-12 13:10:12 +09:00
Salman Ahmed
84fdd2e107 Improve flashlight display on break periods 2022-10-11 17:16:57 +03:00
Dean Herbert
f41b79688f Avoid casting by accepting all Playfields but throwing on a bad choice 2022-10-11 16:54:41 +09:00
ekrctb
6ab29a62d0 Anchor drag box on time (catch, mania)
Not done for taiko because I cannot figure out how it should work with the overlapping scroll algorithm.
2022-10-11 14:23:17 +09:00
Dan Balasescu
bce20e0a59 Merge branch 'master' into adjust-flashlight 2022-10-07 14:45:30 +09:00
Dan Balasescu
c6b5fdc7d0 Adjust catch flashlight to closely match classic 2022-10-07 14:34:48 +09:00
Dean Herbert
994db55b6d Simplify check conditionals 2022-10-07 02:22:13 +09:00
NullifiedJosh
c73195fa77
Merge branch 'ppy:master' into catch-hide-in-relax 2022-10-06 18:52:59 +08:00
NullifiedJosh
6543171169
Fix formating. 2022-10-06 18:30:49 +08:00
NullifiedJosh
0f6a6287f2
Fix bugs and add test 2022-10-06 18:17:33 +08:00
ekrctb
9247ff3e0a Allow changing scrolling speed in catch editor
Scroll speed is not saved and doesn't affect gameplay.
It is purely a feature for a better visualization.
It is currently bind to scroll speed increase/decrease.
Default F3/F4 crashes with editor shortcuts so it has to be changed.
2022-10-06 18:06:16 +09:00
ekrctb
e8cd9a5d11 Allow arbitrary height catch editor
Useful because can see more notes at once.
2022-10-06 17:26:03 +09:00
o-dasher
f3e25eacad Removes unnecessary setting sources specifications 2022-09-27 09:25:58 -04:00