1
0
mirror of https://github.com/ppy/osu.git synced 2024-09-24 06:47:36 +08:00
Commit Graph

1362 Commits

Author SHA1 Message Date
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
Bartłomiej Dach
540b7e1b38
Fix taiko editor not unapplying slider multiplier changes on save 2021-11-08 13:28:42 +01:00
Bartłomiej Dach
d88fd1bfd7
Add failing test case 2021-11-08 13:23:24 +01:00
Dean Herbert
0ecf5f201c Rename User to APIUser and move to correct namespace 2021-11-07 11:26:01 +09: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
Dean Herbert
6944151486 Apply batch fixing of built-in types using var 2021-10-27 13:04:41 +09:00
goodtrailer
4440b9ca11 Change IHasRepeats.NodeSamples to IList from List 2021-10-23 01:59:07 -07:00
Dean Herbert
93482414d6 Remove SkinConfiguration subclasses and allow configuration parsing for all skin types 2021-10-22 14:42:23 +09:00
Dan Balasescu
e49f1f6e6b
Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-13 20:17:57 +09: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
e30e5bd214 Remove int casts in other calculators 2021-10-10 16:23:35 +09:00
Bartłomiej Dach
8007ba93eb
Fix typo in TaikoMultiplierAppliedDifficulty class name 2021-10-09 14:25:40 +02:00
smoogipoo
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
Dean Herbert
0ab8dcc2a0 Fix taiko weird difficulty multiplier failing on double convert 2021-10-06 15:18:06 +09:00
Dean Herbert
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09: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
Dean Herbert
32afd3f426 Replace all basic usages 2021-10-02 02:22:23 +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
Dean Herbert
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
smoogipoo
430ecc5409 Adjust to make HD slightly harder and not obsolete 2021-09-21 15:20:04 +09:00
Dean Herbert
491430e88e
Merge branch 'master' into fix-taiko-hd 2021-09-17 23:20:57 +09:00
Dean Herbert
be7346d0b7 Refactor getSizeFor to read a touch better 2021-09-17 19:18:37 +09:00
smoogipoo
35c3d75cb8 Preserve flashlight size through aspect adjustment 2021-09-17 18:51:43 +09:00
smoogipoo
2d39131202 Refactor taiko flashlight a bit 2021-09-17 18:41:03 +09:00
smoogipoo
f584d6593a Fix flashlight alignment 2021-09-17 18:10:53 +09:00
smoogipoo
a4238e49a7 Revert "Don't apply normal visibility to increased visibility state"
This reverts commit 5dd0e0d961.
2021-09-17 17:39:34 +09:00
smoogipoo
5dd0e0d961 Don't apply normal visibility to increased visibility state 2021-09-17 17:33:32 +09:00
smoogipoo
ea68be08cb Split magic values into named constants 2021-09-17 17:27:54 +09:00
smoogipoo
c9e76783e6 Fix taiko HD not calculating pre-empt correctly 2021-09-17 17:24:03 +09:00
smoogipoo
f9d5abff8a Update with keybinding changes 2021-09-16 18:26:12 +09:00
Dean Herbert
693ecdf62a Refactor some incorrect/outdated terminology 2021-09-06 21:32:43 +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
Dean Herbert
b907c2f4f6 Fix osu! judgements getting scaled twice over different durations 2021-09-02 16:31:43 +09:00
Dan Balasescu
c4da966ad9
Merge pull request #14575 from peppy/add-legacy-convert-encode-stability-tests
Fix multiple conversions of a beatmap to taiko ruleset applying speed multiplier multiple times
2021-08-30 18:47:09 +09:00
Dean Herbert
6a6dac609c Fix instability of taiko double conversion
Until now, the taiko speed multiplier was potentially applied more than
once if conversion was run multiple times.
2021-08-30 15:30:18 +09:00
Dean Herbert
ee49305cad Move taiko legacy speed multiplier to osu.Game project
Allows it to be used in local case in `LegacyBeatmapEncoder`.
2021-08-30 15:13:31 +09:00
Salman Ahmed
cea632463e Remove empty newline 2021-08-26 22:30:20 +03:00
Dean Herbert
90e81a595d Move DrumSampleTriggerSource into its own class to avoid nested references 2021-08-26 17:19:46 +09:00
Dean Herbert
8e0a04c4e5 Update taiko InputDrum to use new trigger logic 2021-08-25 16:56:44 +09:00
Xexxar
176b3e7533 changed decay system to allow for customizing the currentStrain 2021-08-16 22:14:29 +00:00
Dean Herbert
6bbc23c831
Merge pull request #14106 from smoogipoo/taiko-classic-mod
Make taiko classic mod emulate the classic "4:3" scroll speed
2021-08-02 22:22:26 +09:00
smoogipoo
8d999d30f6 Remove interface definition 2021-08-02 20:38:49 +09:00
smoogipoo
455666ed94 Remove taiko HD mod 4:3 scaling 2021-08-02 20:18:01 +09:00
smoogipoo
9327bc169b Make TaikoModClassic use classic-like scroll speed 2021-08-02 20:01:46 +09:00
smoogipoo
c023ce78d7 Match osu!stable taiko playfield size at 16:9 2021-08-02 18:48:32 +09:00
Henry Lin
e89f33483d Code formatting fixes 2021-07-28 21:52:01 +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
Bartłomiej Dach
fb5d25405e
Replace calls to obsoleted GetOrDefault() extension 2021-07-18 21:52:16 +02:00
Dean Herbert
90326f8864 Standardise variables 2021-07-09 13:24:26 +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
0e4f4a6fde Initial storage changes 2021-07-08 14:28:13 +09:00
PercyDan54
e1c646b9b2
Remove redundant arguments 2021-07-05 23:52:39 +08:00
Dean Herbert
1b0aadcc6f Merge branch 'master' into transformers-per-skin 2021-06-22 16:03:15 +09:00
Dean Herbert
4b45d8318e
Merge branch 'master' into transformers-per-skin 2021-06-16 16:37:28 +09:00
Dean Herbert
98e0e89d3f Nest adjustments for readability 2021-06-16 16:32:59 +09:00
Dean Herbert
18343160cf Reword comments slightly 2021-06-16 16:31:38 +09:00
Dean Herbert
5944c45f55 Specify types explicitly and don't handle non-nullable values with fallbacks 2021-06-16 16:24:30 +09:00
Dean Herbert
a5c09454e6 Remove unnecessary configuration 2021-06-16 16:16:18 +09:00
Bartłomiej Dach
8c558610ab Fix hitobjects expiring before fully judged with hidden 2021-06-16 00:34:39 +02:00
Bartłomiej Dach
57f0c47ded Ezplain slider multiplier adjustment 2021-06-15 23:00:11 +02:00
Bartłomiej Dach
b0549187df Apply pre-empt formula which is closer to stable 2021-06-15 22:57:20 +02:00
Bartłomiej Dach
259e6cad4d Rearrange and rename member 2021-06-15 22:34:07 +02:00
Bartłomiej Dach
a549aebb3f Reword HD scale multiplier comment 2021-06-15 22:32:26 +02:00
Bartłomiej Dach
6d2b5252c6 Attempt to reword setting to be more understandable 2021-06-11 13:07:09 +02:00
Bartłomiej Dach
e194f8b34a Replace lifetime workaround with explicit set 2021-06-11 12:26:58 +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
Ivan Pavluk
6d06066dde forgot to run code inspection 2021-06-11 15:54:48 +07:00
Ivan Pavluk
e34e26ae52 remove outdated comment 2021-06-11 15:12:05 +07:00
Ivan Pavluk
09df23e2a6 improve reasoning for hd_sv_scale 2021-06-11 15:07:41 +07:00
Ivan Pavluk
46b379899e add taiko hd mod (2nd attempt) 2021-06-11 14:09:23 +07:00
Dean Herbert
9c34cb0777 Share colour constants with default drawable piece implementations 2021-06-11 14:20:08 +09:00
Dean Herbert
bc3b7233ab Show osu!taiko centre/rim colouring in editor timeline
Closes #13443.
2021-06-11 14:17:30 +09: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
Salman Ahmed
cf40282f1f Convert LegacySkinTransformers to accept raw ISkins rather than a full ISkinSource 2021-06-09 22:49:31 +03: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
Samuel Cattini-Schultz
f1bef989b7 Refactor DifficultyAttributes to use auto properties over public fields 2021-06-08 19:43:59 +10:00
Dan Balasescu
791855dfa0
Merge branch 'master' into legacy-skin-default-fallback 2021-06-08 16:54:26 +09:00
Dean Herbert
273d66a0e0 Fix TaikoMascot texture animation lookups 2021-06-08 00:42:34 +09:00
Dean Herbert
06275a6a7d Merge branch 'master' into legacy-skin-default-fallback 2021-06-04 16:00:30 +09:00
Dan Balasescu
b283c48abb
Merge branch 'master' into factor-out-hoc 2021-06-04 15:31:35 +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
Samuel Cattini-Schultz
f51413ead9 Refactor to pass clockrate in constructor rather than deriving from mods 2021-06-03 16:09:42 +10:00
ekrctb
2c9e5b6c7e Replace EntryCrossedBoundary with more useful RemoveRewoundEntry property
It can be used for dynamically added entries.
2021-06-03 15:00:16 +09:00
Dean Herbert
2e2281c7d2 Revert disabling taiko sample tests and fix logic 2021-06-01 18:57:19 +09:00
Dean Herbert
14570b6fb1 Merge branch 'master' into autoplay-pause-support 2021-06-01 14:19:21 +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
cbad7bb7f0 Move taiko Type to Hit and localise all bind handling 2021-05-26 13:40:36 +09:00
Dean Herbert
912748b428 Avoid bindable feedback causing overwrites 2021-05-26 13:24:22 +09:00
Dean Herbert
9223d85f37 Remove all local type update logic from TaikoBeatmapConverter
I believe the original goal was to keep this in the converter with the
idea that samples may not always be hard coupled to the strong/rim
states. But for now I think we can assume this coupling is going to
continue into the near future, so let's keep all the logic in
`TaikoHitObject`.
2021-05-26 13:23:01 +09:00
Dean Herbert
a3c78674a1 Add new interface for autoplay mods 2021-05-25 18:09:24 +09:00
Dean Herbert
4c9d72e62a Ensure EditorBeatmap.Update is called inside PerformOnSelection calls 2021-05-23 21:22:35 +09:00
Dean Herbert
dc322d1c63 Run all type and sample mutations through standardising methods 2021-05-23 20:22:48 +09:00
Dean Herbert
6471ce902d Run RecreatePieces using AddOnce to avoid multiple unnecessary calls 2021-05-21 16:45:28 +09:00
Dean Herbert
0bcd0cda6b Fix taiko drawable hit content not correctly being removed on regeneration 2021-05-21 16:41:40 +09:00
Dean Herbert
7bc8a4bb5f Apply same logic changes to IsStrong status 2021-05-21 16:15:27 +09:00
Dean Herbert
a5ca736e37 Fix RecreatePieces being called more than once 2021-05-21 16:10:48 +09:00
Dean Herbert
40c8378d81 Fix type-to-sample mapping being applied too late 2021-05-21 14:37:22 +09:00
Dean Herbert
c00e6e29a6 Remove static usage 2021-05-21 14:21:56 +09:00
Dean Herbert
df5970fab4 Create base implementations of the two most common TernaryStateMenuItems 2021-05-20 19:34:53 +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
Dean Herbert
de2900bc7c
Merge pull request #12834 from Henry-YSLin/flip-mod
Added "invert" mod for taiko
2021-05-17 12:47:05 +09:00
Henry Lin
f34637ea9c Renamed TaikoModFlip to TaikoModSwap 2021-05-17 11:04:01 +08:00
Henry Lin
c4ae70a827 Revert "Renamed TaikoModFlip to TaikoModInvert"
This reverts commit 5972e43bc2.
2021-05-17 10:59:56 +08: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
5972e43bc2 Renamed TaikoModFlip to TaikoModInvert 2021-05-16 12:51:40 +08:00
Dean Herbert
422a3b76b6 Remove unused using statements 2021-05-16 13:21:19 +09:00
Dean Herbert
cbc2a38b59 Move new mod to end to avoid reordering 2021-05-16 13:21:06 +09:00
Henry Lin
3d83741a23 Separate Flip and Random 2021-05-16 12:03:03 +08:00
Henry Lin
da13be6dd0 Trimmed trailing white space 2021-05-16 11:28:11 +08:00
Henry Lin
3519398a22 Added "flip" mod for taiko 2021-05-16 11:16:12 +08:00
PercyDan54
166974506e
Duplicate implementions 2021-05-15 11:55:50 +08:00
Bartłomiej Dach
f716fb0968 Remove bogus InternalChildren null-check
`InternalChildren` can't viably be `null`, and if it were, we have
bigger problems. The removed null-check was triggering false-positive
inspections further down.
2021-05-15 00:09:34 +02:00
smoogipoo
ffb6135a1b Rework hitobject blueprints to take in hitobject models 2021-05-13 19:53:32 +09:00
ekrctb
207f7f1e56 Rename FramedAutoGenerator<T> -> AutoGenerator<T> 2021-05-07 00:31:12 +09:00
ekrctb
cf39178099 Use FramedAutoGenerator in Taiko, Catch, Mania
OsuAutoGenerator is not included in this change because it uses SortedList-like thing
2021-05-06 22:57:07 +09:00
Dean Herbert
4c9e94da2b Move context menu logic to base class 2021-04-28 13:43:16 +09:00
Dean Herbert
f2e56bd306 Refactor editor selection/blueprint components to be generic 2021-04-27 19:01:29 +09:00
Salman Ahmed
e3398d8f1f Implement "classic" mod for all other legacy rulesets
Currently empty, automatically handled in game to not be selectable (see `Mod.HasImplementation`)
2021-04-21 09:14:33 +03: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
ekrctb
a965e8a75d Remove AutoGenerator workaround of now-fixed issue 2021-04-16 14:13:41 +09:00
Dean Herbert
119c9b4294 Fix placement blueprints not being correctly removed after a rolled back placement 2021-04-16 14:11:33 +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
Samuel Cattini-Schultz
5b2dcea8a8 Refactor to encapsulate strain logic into Skill class
As strains are an implementation detail of the current Skill calculations, it makes sense that strain related logic should be encapsulated within the Skill class.
2021-04-03 20:47:43 +11:00
Bartłomiej Dach
aec859b4d1 Merge branch 'master' into fix-unsafe-skinnable-sample-play 2021-03-18 19:51:46 +01:00
smoogipoo
0c3c8141da Remove Expires and RemoveWhenNotAlive override 2021-03-18 19:39:42 +09:00
Bartłomiej Dach
3bfde7341f Revert "Remove unnecessary overrides"
This reverts commit f4e508b570.
2021-03-17 17:14:53 +01:00
Bartłomiej Dach
72c18fbdfe Restructure explosion animation to avoid resetting transforms on free 2021-03-15 21:21:52 +01:00
Bartłomiej Dach
f4e508b570 Remove unnecessary overrides 2021-03-15 20:43:30 +01:00
Bartłomiej Dach
58220481db Rename I{-> Animatable}HitExplosion 2021-03-15 20:39:02 +01:00
Bartłomiej Dach
8b74666cc3 Add support for pooling explosions in taiko 2021-03-14 16:15:33 +01:00
Bartłomiej Dach
f5a80e6269
Merge branch 'master' into taiko-judgement-pooling 2021-03-07 13:35:25 +01:00
Bartłomiej Dach
ad1b86e33a Change LifetimeEnd idiom to Expire() for readability 2021-03-06 18:54:25 +01:00
Bartłomiej Dach
8f4dadb06a Enable pooling for taiko judgements 2021-03-06 17:38:04 +01:00
Bartłomiej Dach
06e42b4b4c Fix taiko leaving behind empty judgements on legacy skins 2021-03-06 16:02:20 +01:00
Dan Balasescu
5b6018295d
Merge branch 'master' into diffcalc/skill-mods 2021-03-04 13:06:26 +09:00
Dean Herbert
cd1c1bf534 Centralise cases of performing actions on the current selection
By moving this to a central location, we can avoid invoking the
EditorChangeHandler when there is no selection made. This helps
alleviate the issue pointed out in
https://github.com/ppy/osu/issues/11901, but not fix it completely.
2021-02-26 14:15:13 +09:00
smoogipoo
dff1d80f39 Update HasFlag usages to HasFlagFast 2021-02-25 15:38:56 +09: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
Dean Herbert
00574a5288 Use ISample everywhere in Skin GetSample lookup path 2021-02-18 18:32:28 +09:00