Commit Graph

1236 Commits

Author SHA1 Message Date
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
smoogipoo
d3f0c0730d Merge branch 'master' into non-concurrent-sample-playback 2021-02-12 17:22:15 +09:00
Bartłomiej Dach
68c20a2a37 Allow autoplay score generation to access mod list 2021-02-07 18:35:34 +01:00
Firmatorenio
37ef5c7072 rename SliderVelocity to ScrollSpeed 2021-01-29 15:04:55 +06:00
Firmatorenio
449f883be1 add SV multiplier adjustment to TaikoModDifficultyAdjust 2021-01-29 11:48:51 +06:00
Dean Herbert
dee0d3c33a
Merge branch 'master' into apply-sv-to-taiko-hr-ez 2021-01-25 14:28:06 +09:00
smoogipoo
de9d075f94 Initial sample + samplechannel rework 2021-01-19 17:11:40 +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
smoogipoo
9a22df2b88 Fix BPM multiplier not working in all cases 2021-01-12 17:50:22 +09:00
smoogipoo
22a0f99f35 Add failing test 2021-01-12 17:49:21 +09:00
Firmatorenio
669c42a38d add remarks explaining HR SV multiplier 2020-12-30 20:57:41 +06:00
Firmatorenio
013b9b62a1 add SV multipliers to taiko difficulty mods 2020-12-29 20:22:56 +06:00
Bartłomiej Dach
b24fc1922e Enable pooling for taiko DHOs 2020-12-20 18:44:47 +01:00
Bartłomiej Dach
5d575d2a9b Accept proxied content via OnNewDrawableHitObject
In the non-pooled case, `OnNewDrawableHitObject()` will be called
automatically on each new DHO via `Playfield.Add(DrawableHitObject)`.

In the pooled case, it will be called via `Playfield`'s implementation
of `GetPooledDrawableRepresentation(HitObject, DrawableHitObject)`.
2020-12-20 18:26:45 +01:00
Bartłomiej Dach
62da4eff37 Route new result callback via playfield
Follows route taken by osu! and catch (and required for proper pooling
support).
2020-12-20 18:26:45 +01:00
Bartłomiej Dach
370f56eadb Make strong hit DHOs public for pool registration 2020-12-20 18:02:34 +01:00
Bartłomiej Dach
0c5333bd58 Adjust top-level hitobjects to support nested pooling 2020-12-20 17:57:19 +01:00
Bartłomiej Dach
ae6dedacaf Implement nested strong hit application 2020-12-20 16:26:39 +01:00
Bartłomiej Dach
d823c77a63 Implement swell tick application 2020-12-20 16:26:39 +01:00
Bartłomiej Dach
3bd4279589 Implement drum roll tick application 2020-12-20 16:26:39 +01:00
Bartłomiej Dach
e3b6eaa390 Implement swell application
Also removes a weird sizing application that seems to have no effect
(introduced in 27e63eb; compare removals for other taiko DHO types in
9d00e5b and 58bf288).
2020-12-20 16:26:39 +01:00
Bartłomiej Dach
8b6bc09b8f Implement drum roll application 2020-12-20 16:26:16 +01:00
Bartłomiej Dach
e32b1c34ca Implement hit application 2020-12-20 16:26:16 +01:00
Bartłomiej Dach
7b350fc8e5 Prepare strongable DHO for HO application 2020-12-20 15:42:24 +01:00
Bartłomiej Dach
a25cd910f8 Prepare base DHO for HO application 2020-12-20 15:42:24 +01:00
Dean Herbert
88b3bf06e8 Merge branch 'master' into add-bundle-header 2020-12-16 13:40:15 +09:00