Dean Herbert
013b5fa916
Move beat snap grid implementation details to ScrollingHitObjectComposer
2023-10-19 23:54:34 +09:00
Dean Herbert
52c2eb93de
Merge branch 'master' into taiko-beat-snap-grid
2023-10-19 23:53:01 +09:00
Bartłomiej Dach
0c4e74c82d
Inherit ScrollingHitObjectComposer
in catch
2023-10-19 11:58:25 +02:00
Bartłomiej Dach
31849192c3
Remove DistancedHitObjectComposer
inheritance from catch composer
2023-10-19 11:46:30 +02:00
Dean Herbert
42087037ae
Fix Catcher
code change not accounting for double sizing requirement
2023-10-18 23:56:17 +09:00
Dean Herbert
3a5490892c
Centralise and repair circle size calculations game-wide
2023-10-18 19:50:42 +09:00
Bartłomiej Dach
e927267c4d
Merge pull request #25155 from peppy/fix-new-inspections
...
Fix various new rider EAP inspections
2023-10-17 17:04:39 +02:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
4381169a3f
Combine selection and input handling logic for beat snap grids across all rulesets
2023-10-17 17:09:42 +09:00
Dean Herbert
1b9acdf55c
Abstract out common implementation of BeatSnapGrid
2023-10-17 16:42:52 +09:00
Bartłomiej Dach
79a4b985fe
Use left mouse as alternative default binding for catch dash
...
This mirrors stable. Although the way stable does this is pretty dodgy,
see:
https://github.com/peppy/osu-stable-reference/blob/master/osu!/GameModes/Play/Rulesets/Fruits/RulesetFruits.cs#L274-L275
2023-10-17 09:31:29 +02:00
Dean Herbert
3849b11644
Fix "Hard Rock" mod affecting CS/AR in osu!mania
...
Closes https://github.com/ppy/osu/issues/25090 .
Not sure if there are other exceptions we should account for here.
2023-10-12 19:48:47 +09:00
Salman Ahmed
6073f3e756
Refactor catch playfield size adjustment logic w.r.t. catcher position
2023-10-10 02:42:37 +03:00
Salman Ahmed
b2987caf7c
Adjust the catch playfield's position to match 1:1 with stable
2023-10-10 02:17:43 +03:00
Salman Ahmed
fed0deac02
Add brief explaination of BASE_SIZE
2023-10-10 01:26:59 +03:00
Salman Ahmed
fc63ee43be
Fix legacy catcher sprites getting shrunk
2023-10-10 01:26:59 +03:00
Salman Ahmed
0fb7895a52
Adjust catcher origin position to match 1:1 with stable
...
Change catcher origin position logic to 1:1 match stable on legacy skin
2023-10-10 01:26:59 +03:00
Bartłomiej Dach
71c4b138fb
Merge branch 'master' into fix-legacy-score-multipliers-2
2023-10-09 10:53:14 +02:00
Bartłomiej Dach
0ae4a0f11f
Adjust gameplay element maximum size limits for backwards compatibility
...
The new limits were chosen by sampling across over 4000 skins. The
methodology for doing so is described in the following gist:
https://gist.github.com/bdach/6228ba41d128b23d1f89142f404108a3
2023-10-05 20:37:10 +02:00
Dan Balasescu
bbe9d95b3d
Merge branch 'master' into catch-hyperdash-stable-sort
2023-10-04 20:38:08 +09:00
Dan Balasescu
da2a4681d9
Add method to retrieve legacy score multiplier
2023-10-02 16:52:01 +09:00
Dean Herbert
d7119674e8
Update comments to better explain what LastTick
is doing
2023-09-29 14:40:44 +09:00
Dean Herbert
81485c548c
Move LegacyLastTickOffset
specification to generation code and stop passing everywhere
2023-09-29 14:32:29 +09:00
Dean Herbert
9d8c3f0f5c
Merge pull request #24779 from smoogipoo/split-legacy-scoring-attribs
...
Split legacy scoring attribs into its own table
2023-09-26 22:35:38 +09:00
Dean Herbert
990c54519b
Merge branch 'master' into limit-gameplay-sprite-dimensions
2023-09-26 16:40:32 +09:00
Dean Herbert
0dcf7a2fa9
Merge branch 'master' into split-legacy-scoring-attribs
2023-09-26 15:52:27 +09:00
Salman Ahmed
c4fc4199d1
Use correct maximum size for droplets
2023-09-21 19:02:31 +03:00
Bartłomiej Dach
f2791d4f3e
Move comment a bit to fix formatting
...
Would otherwise trigger IDE0055, but that isn't resolveable without
an inspection cycle with resharper, so just move in a more sane place.
2023-09-20 12:22:05 +02:00
Dean Herbert
41a8239e49
Remvoe null default for mods which can't be null
2023-09-20 15:27:50 +09:00
Dean Herbert
c5397bdbb3
Merge branch 'master' into mania-edit-disable-sv
2023-09-20 14:23:07 +09:00
Dean Herbert
8e16b1d507
Simplify some maximum size specs
2023-09-20 12:48:15 +09:00
Dan Balasescu
4e1800860e
Merge branch 'master' into catch-hyperdash-stable-sort
2023-09-19 10:10:57 +09:00
Salman Ahmed
291a91be66
Change extension from retrieval to post-processing instead
2023-09-19 03:40:30 +03:00
Salman Ahmed
57dc76b345
Revert "Update GetTexture
signature rather than creating new overload"
...
This reverts commit 96f12cfbaa
.
2023-09-19 03:21:19 +03:00
Givikap120
1a70110a4e
Added BeatmapAttributesDisplay support
2023-09-12 16:44:44 +03:00
Givikap120
c61212c523
Merge pull request #1 from Givikap120/master
...
add display to calibrate
2023-09-12 13:02:19 +03:00
Dan Balasescu
2334be1987
Split legacy scoring attributes into a separate object
2023-09-07 21:10:38 +09:00
Dean Herbert
1a37543d28
Rename SliderVelocity
to SliderVelocityMultiplier
to distinguish from Velocity
2023-09-06 19:01:08 +09:00
Dean Herbert
96f12cfbaa
Update GetTexture
signature rather than creating new overload
2023-09-05 18:01:19 +09:00
Salman Ahmed
f182f571cb
Add limit to catch palpable object elements
2023-09-03 02:22:58 +03:00
Dean Herbert
37c2b330a2
Move toggle implementation to work on all scrolling rulesets automatically
2023-09-01 19:53:10 +09:00
Givikap120
290f8db341
fixed stated problems
...
removed functions from `Ruleset.cs` and added a `GetEffectiveDifficulty()` instead
2023-08-26 02:13:14 +03:00
Givikap120
17b9b1649a
Fixed "works only for std" problem
...
1) Now it use AR/OD calculation from Ruleset class
2) Implemented needed functions in each of default rulesets
2023-08-25 00:58:26 +03:00
Dan Balasescu
a2fd7707a1
Allow toggling SVs in the editor
2023-08-18 18:55:24 +09:00
OliBomby
cc4e11a5ac
Ensure populated node samples so new objects have unique node sample lists
2023-08-16 20:48:52 +02:00
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