Dean Herbert
6995945360
Use With
to simplify drawable construction
2021-06-10 15:45:49 +09:00
Salman Ahmed
cf40282f1f
Convert LegacySkinTransformer
s to accept raw ISkin
s rather than a full ISkinSource
2021-06-09 22:49:31 +03:00
ekrctb
e5deecf459
Check skin version for legacy catcher sprite
2021-06-09 15:47:23 +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
7df971a970
ICatcherPiece
-> ICatcherSprite
2021-06-08 22:10:13 +09:00
ekrctb
194c78f67a
Make current state bindable protected
2021-06-08 22:08:54 +09:00
ekrctb
109a366722
Use separate classes for old and new catcher legacy skin element
...
- Fix catcher texture animation is reset for legacy old catcher skin
2021-06-08 21:59:09 +09:00
ekrctb
0192549d6c
Refactor catcher sprite to use skinned piece pattern
2021-06-08 21:29:41 +09:00
Samuel Cattini-Schultz
f1bef989b7
Refactor DifficultyAttributes to use auto properties over public fields
2021-06-08 19:43:59 +10:00
ekrctb
6e28c1b29a
Move default catcher sprite to its own file
2021-06-08 17:54:57 +09:00
Dean Herbert
6017ef3825
Merge branch 'master' into fix-skin-sample-lookup
2021-06-08 17:37:36 +09:00
Dean Herbert
e388a896e8
Don't apply visibility increase to first object in osu!catch
...
The goal of the visibility increase is to help in cases where timing is
an issue (by showing the approach circle etc.). This doesn't need to
apply to catch.
@smoogipoo interested as to whether you agree with this one. Visually it
looks better to me but it does change the behaviour for only osu!catch,
so I'm not 100% confident on it.
Closes #13367 .
2021-06-08 16:02:26 +09:00
Bartłomiej Dach
122a624b7f
Remove bogus CatchHitWindows
...
`CatchHitWindows` were a vestige from the past, and were not actually
used anywhere except for the hit error meter test, giving off an
appearance that the hit error meter was working properly.
`CatchHitObject` actually specifies empty hit windows.
2021-06-07 13:16:07 +02:00
Dean Herbert
1b93234c76
Merge branch 'master' into fruit-representation
2021-06-07 16:05:00 +09:00
ekrctb
bb02c35f2d
Move all osu!catch legacy skin piece files to the correct location
2021-06-07 15:10:47 +09:00
ekrctb
ac5c55bd2c
Remove "fruit visual representation" state from DrawableFruit
...
Instead, skin pieces compute visual representation from `IndexInBeatmap`.
2021-06-07 14:49:37 +09:00
ekrctb
166e4565be
Move FruitVisualRepresentation
namespace
2021-06-07 13:59:17 +09:00
Dean Herbert
d26c9a66c2
Merge branch 'legacy-skin-default-fallback' into fix-skin-sample-lookup
2021-06-07 12:01:19 +09:00
ekrctb
8e20f90ed5
Use seeded RNG for catch explosion animation
...
The animation is always the same when a replay is rewound or a beatmap is played multiple times.
2021-06-04 19:54:46 +09:00
ekrctb
181f1da3d3
Maintain catch hit explosion by lifetime entries
...
- Fix hit explosion not showing when a replay is rewound to a time after a hit object is caught
2021-06-04 19:46:50 +09: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
Samuel Cattini-Schultz
7cdef5cb0a
Merge branch 'master' into diffcalc/refactor/catch-clockrate-effects
2021-06-03 15:51:03 +10:00
Samuel Cattini-Schultz
94701b77cb
Add TODO for variable clockrate support in catch difficulty calculator
2021-06-03 15:44:28 +10: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
de0e51a81d
Merge branch 'master' into fix-skin-sample-lookup
2021-05-31 15:27:39 +09:00
Salman Ahmed
4e186b0cf5
ContentVisible
-> HiddenByRulesetImplementation
2021-05-31 09:24:26 +03:00
Salman Ahmed
60b781701f
Rewrite catch combo counter hide logic
2021-05-30 14:22:11 +03:00
Salman Ahmed
fb81e5133f
Merge branch 'master' into catch-hide-combo-workaround
2021-05-30 14:16:46 +03:00
Dean Herbert
50d71faf56
Restructure lookup code to avoid repeating the base call
2021-05-30 17:55:10 +09:00
Dean Herbert
dac1a98d8a
Merge branch 'master' into fix-skin-sample-lookup
2021-05-30 15:19:47 +09:00
Salman Ahmed
fbc316ea1d
Fix legacy skin transformers potentially ignoring source implementations
2021-05-29 21:23:22 +03:00
Susko3
2439de1c3d
fix capitalzation of osu!catch HitResults
2021-05-28 18:40:58 +02:00
Dean Herbert
70a844ac10
Remove allowFallback
parameters completely
2021-05-27 14:50:42 +09:00
Dean Herbert
a3c78674a1
Add new interface for autoplay mods
2021-05-25 18:09:24 +09:00
Salman Ahmed
a4d52a7f52
Use switch—case instead
2021-05-19 23:37:22 +03:00
Salman Ahmed
c98d036b48
Merge branch 'master' into catch-hide-combo-workaround
2021-05-18 17:47:20 +03:00
Salman Ahmed
ff419af512
Hide the combo counter content rather than full death
2021-05-18 09:10:15 +03:00
Salman Ahmed
df248ea41b
Improve code readability
2021-05-17 11:41:53 +03:00
Salman Ahmed
102842bcf1
Expire legacy combo counters on catch ruleset
2021-05-15 16:55:15 +03:00
PercyDan54
166974506e
Duplicate implementions
2021-05-15 11:55:50 +08:00
PercyDan54
67dfeeb1b7
Cleanup code in ModHidden
2021-05-14 21:29:13 +08:00
Dean Herbert
004798d61d
Update Legacy components to not require skin in ctor
2021-05-11 18:39:14 +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
Salman Ahmed
cd6d070b4a
Consider "combo offsets" as legacy logic and separate from combo information
2021-05-05 07:43:08 +03:00
Salman Ahmed
eeeb001d62
Refactor combo colour retrieval logic to request skin lookups instead
2021-05-05 07:17:27 +03:00
Dean Herbert
0ccdfeea57
Fix code quality issues
2021-04-24 14:35:49 +09:00
Dean Herbert
d4ffd2ef4b
Merge branch 'master' into reversed-fruits
2021-04-23 15:08:18 +09:00
Dean Herbert
bc0e1d8c37
Remove dead newline
2021-04-23 15:06:39 +09:00
smoogipoo
d4d78f7434
Merge branch 'master' into legacy-scores-classic-mod
2021-04-22 18:44:20 +09:00
Dean Herbert
dc2bc462b8
Expose internal catcher width calculation methods
2021-04-22 17:27:23 +09:00
Dean Herbert
84a7138223
Update tests to better support stack regeneration cases
2021-04-22 17:13:19 +09:00
Dean Herbert
3e1002fbf3
Improve osu!catch caught fruit placement algorithm
2021-04-22 17:06:28 +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
Dean Herbert
ddf1b560f3
Remove catcher fade during hyperdash
...
Closes https://github.com/ppy/osu/issues/12472 .
2021-04-20 18:18:51 +09:00
Fabian
eec77b0527
replace icon
2021-04-17 23:55:39 +02:00
Fabian
5d274dbce8
replace IApplicableToPlayer with IApplicableToDrawableRuleset
2021-04-17 16:38:28 +02:00
Fabian
cf3aaff7bd
Add floating fruits mod
2021-04-17 16:01:23 +02: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
ekrctb
6d0dc62502
Make sure latest catcher position is used for catching logic
...
A replay frame processed in CatchInputManager is applied to catcher in `CatcherArea`.
The catcher position is then used for the catching logic for each hit object under `HitObjectContainer`.
Thus, if `HitObjectContainer` came before `CatcherArea`, the replay input is delayed one frame.
That was one reason why the catch autoplay misses hit objects (especially when fast-forwarded).
2021-04-09 16:04:45 +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
Dan Balasescu
b24c695146
Merge branch 'master' into hide-caught-fruit-in-hidden
2021-03-30 15:42:00 +09:00
Dean Herbert
89bea2868a
Move bool one level down
2021-03-30 14:33:55 +09:00
Dean Herbert
013ddc734c
Fix osu!catch fruit showing on plate when hidden mod is enabled
...
Closes https://github.com/ppy/osu/issues/12065 .
2021-03-25 17:04:37 +09:00
Salman Ahmed
43c1e1d217
Update existing usages
...
Resolve post-conflict issues
2021-03-13 06:09:07 +03:00
Dan Balasescu
5b6018295d
Merge branch 'master' into diffcalc/skill-mods
2021-03-04 13:06:26 +09:00
smoogipoo
dff1d80f39
Update HasFlag usages to HasFlagFast
2021-02-25 15:38:56 +09:00
Samuel Cattini-Schultz
323e4ac26b
Refactor catch Movement skill to not require explicit clockrate usage
...
In catch, rate adjustment mods do not only affect the timings of hitobjects, but also the speed of the player's catcher.
This catcher speed change has an impact on difficulty which is currently accounted for by using the clockrate directly in calculations.
Semantically this is a bad idea because clockrate adjustments are supposed to be fully accounted for in DifficultyHitObjects, but passing clockrate here for the purpose of being used as catcher speed doesn't make much sense, especially since it is copied in every DifficultyHitObject despite being the same value.
It makes more sense to account for this catch specific impact by handling rate adjustment mods in a catch specific way, or more specifically in a Movement skill specific way.
2021-02-21 18:24:30 +11: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
aaa0362b12
Merge branch 'master' into autoplay-rate-independence
2021-02-11 17:39:45 +09:00
smoogipoo
be9b07a4cf
Merge branch 'master' into difficulty-adjustment-extension
2021-02-10 20:42:08 +09:00
Bartłomiej Dach
68c20a2a37
Allow autoplay score generation to access mod list
2021-02-07 18:35:34 +01:00
Joehu
9ef130cdcc
Fix codefactor style issues
2021-02-04 13:28:35 -08:00
Corentin PALLARD
d168de0ae3
Formatting
2021-01-29 03:03:23 +01:00
Corentin PALLARD
da4c207a73
Fix the ctb auto mod speedup in some occasions
2021-01-29 02:53:26 +01: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
Bartłomiej Dach
303cc62ee7
Transfer flags indicating if settings were changed
2021-01-06 22:46:46 +01: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
Dean Herbert
b81dbfc192
Move shared implementation to a named function
2020-12-14 13:56:46 +09:00
ekrctb
5b5e883904
Remove EffectiveXBindable (setting Value was not handled)
...
And use orthogonal `OriginalXBindable` and `XOffsetBindable`.
2020-12-14 13:39:07 +09:00
ekrctb
0ad256a762
Fix comment
2020-12-14 13:18:32 +09:00
ekrctb
d96399ea42
Revert "Remove X setter from CatchHitObject"
...
This reverts commit 7cbbd74d
2020-12-14 13:18:14 +09:00
ekrctb
7cbbd74df2
Remove X setter from CatchHitObject
2020-12-14 11:38:07 +09:00
ekrctb
f621d977fc
Add some more doc comment
2020-12-14 11:32:34 +09:00
ekrctb
36529bdd1b
Use OriginalX for CatchHitObject.X instead of EffectiveX
...
And explicitly implement IHasXPosition interface to prevent use of the X property.
It should be preferred for beatmap conversion purpose.
2020-12-14 11:26:05 +09:00
ekrctb
089f3bebf5
Add doc comments to catch hit object X properties
2020-12-14 11:15:49 +09:00
ekrctb
cd2db59900
XBindable -> EffectiveXBindable in catch DHO
2020-12-14 11:05:26 +09:00
ekrctb
96f3e0dad8
Replace CatchHitObject.X usage to EffectiveX and OriginalX
2020-12-14 11:03:14 +09:00
ekrctb
c1f3f1c231
Obsolete X
getter
2020-12-14 11:03:10 +09:00
ekrctb
8da502da44
Separate asymmetric CatchHitObject.X to EffectiveX and OriginalX
2020-12-14 11:03:03 +09:00
Dean Herbert
c0d20d8ce4
Add some spacing to interface class
2020-12-11 16:43:00 +09:00
ekrctb
2634c6b8d9
Combine DisplayRadius and Scale to DisplaySize
2020-12-10 20:43:01 +09:00
ekrctb
e097b6e61c
Add ScalingContainer back
...
Don't want to set DHO.Scale or DHO.Rotation because because DHO may be transformed by mods.
DHO.Size is also assigned for drawable visualizer
2020-12-10 19:42:01 +09:00
smoogipoo
ac91f0e270
Add extended limits to difficulty adjustment mod
2020-12-10 00:37:19 +09:00
ekrctb
a8e2f35b62
Remove unneeded check of caught object removal
...
The logic was public but now it is private
so the condition is ensured by the caller
2020-12-09 10:50:35 +09:00
ekrctb
775c4bad97
Remove unneeded lifetime assignment
2020-12-09 10:47:04 +09:00
ekrctb
da2f3d4473
Move classes to separate files
2020-12-09 10:40:42 +09:00
ekrctb
b52e279702
Reword exception message
2020-12-09 10:38:11 +09:00
ekrctb
86445e7c23
Remove unnecessary copy
2020-12-09 10:36:54 +09:00
ekrctb
c8b0934573
Rename caughtFruitContainer -> caughtObjectContainer
2020-12-09 10:35:36 +09:00
ekrctb
ccca7e0b25
more specific type droppedObjectContainer
2020-12-09 10:35:01 +09:00
ekrctb
df9de7a8dd
Remove null check that is not required anymore
2020-12-09 10:28:42 +09:00
ekrctb
b80204642e
Revert rename error
2020-12-09 10:25:35 +09:00
ekrctb
1212ffd24f
Rename to CopyStateFrom, and add comment
2020-12-08 23:35:24 +09:00
ekrctb
5ca98b0033
Add doc comments a bit
2020-12-08 23:11:22 +09:00
ekrctb
1f36bbecd1
Fix dropped objects not removed on revert result
2020-12-08 23:07:30 +09:00
ekrctb
749d5380ca
Pool caught objects and dropped objects
2020-12-08 22:38:10 +09:00
ekrctb
a32dac00dd
Introduce IHasCatchObjectState implemented by DHO and CaughtObject
2020-12-08 21:29:26 +09:00
ekrctb
c301223d8c
Make object on the catcher plate separate CaughtObject class
2020-12-08 21:11:40 +09:00
ekrctb
94a59ac3b2
Make catch hit lighting logic not dependent on caught object
2020-12-08 20:41:26 +09:00
ekrctb
004c705aa9
Remove ScaleContainer and flatten the Drawable tree of catch DHO
2020-12-08 20:37:08 +09:00
ekrctb
56721a6fa9
Compute object position in stack via a pure function
2020-12-08 20:36:59 +09:00
Dan Balasescu
0739f09930
Merge pull request #11110 from ekrctb/fruit-piece-in-place
...
Implement in-place update of catch DrawableHitObject
2020-12-08 18:36:20 +09:00
Dan Balasescu
c3241f163d
Merge pull request #11126 from ekrctb/fix-catcher-trail-sprite-pooled
...
Clear all transforms of catcher trail sprite before returned to pool
2020-12-08 17:59:23 +09:00
Dan Balasescu
1757b9c3e7
Merge branch 'master' into fruit-piece-in-place
2020-12-08 17:42:34 +09:00
ekrctb
22a5df6309
Clear all transforms of catcher trail sprite before returned to pool
2020-12-08 17:31:00 +09:00
ekrctb
4d5c242d35
Use virtual property instead of a field for optional pieces
2020-12-08 17:15:40 +09:00
ekrctb
603cecb2eb
Make CatchHitObjectPiece abstract class
2020-12-08 17:02:57 +09:00
ekrctb
17d48c82f6
Use switch statement instead of an array
2020-12-08 16:59:06 +09:00
ekrctb
02571ec7ae
Remove hit explosion on revert result
2020-12-08 15:43:17 +09:00
ekrctb
1a66d8f2bc
Remove caught objects on revert result
2020-12-08 15:24:39 +09:00
ekrctb
100b365c98
Restore hyper dash state on revert judgement result
2020-12-08 15:21:47 +09:00
ekrctb
cb76a2d7b5
Restore catcher state on revert judgement result
2020-12-08 15:03:03 +09:00
ekrctb
0213f77b4b
Move catcher state changing logic to OnNewResult method
2020-12-08 14:28:30 +09:00
ekrctb
4da6717d0e
Rename things in PulpFormation
2020-12-08 10:33:18 +09:00
ekrctb
3cbdaf5960
Make resolved properties protected
2020-12-08 10:30:23 +09:00
ekrctb
b2e5658d23
Merge branch 'master' into fruit-piece-in-place
2020-12-07 18:57:42 +09:00
Dan Balasescu
fb599e0746
Merge pull request #11114 from ekrctb/pool-catcher-trail
...
Pool catcher trail sprite
2020-12-07 18:48:08 +09:00
ekrctb
12c6b3c1fb
Pool catcher trail sprite
2020-12-07 18:12:55 +09:00
ekrctb
c1d39b6401
Don't inherit Fruit from Banana
2020-12-07 14:10:17 +09:00
ekrctb
7f1ad1040d
Don't inherit DrawableFruit from DrawableBanana
...
- A banana cannot be hyper
2020-12-07 14:08:50 +09:00
ekrctb
c0f39514b9
Fix legacy droplet scale
2020-12-07 14:00:22 +09:00
ekrctb
b8f1c499a4
Allow PulpFormation to update formation dynamically
...
Pulps are lazily allocated but never deallocated for a DrawableFruit
2020-12-07 13:56:22 +09:00
ekrctb
0d73bf8488
Refactor catch default piece to allow reuse
...
But Fruit in-place update is still incomplete,
as child drawables are recreated when reused.
2020-12-07 13:14:00 +09:00
ekrctb
d51d2c5331
Don't recreate pieces when catch DHO is reused
2020-12-07 12:59:03 +09:00
ekrctb
87189452d1
Refactor legacy skin piece to allow texture update
2020-12-07 12:57:24 +09:00
ekrctb
d18397acad
Adjust namespace
2020-12-07 12:35:24 +09:00
ekrctb
b4b9312e0f
Move piece files of Catch ruleset
2020-12-07 12:34:38 +09:00
Dean Herbert
d3a17b65d5
Move public methods upwards
2020-12-04 14:36:40 +09:00
Dean Herbert
8988023407
Tidy up code formatting and remove unnecessarily publicly exposed methods
2020-12-04 14:35:56 +09:00
Dean Herbert
aa24890aff
Merge branch 'master' into caught-object-refactor
2020-12-04 14:12:33 +09:00
Dean Herbert
0134ac94a7
Merge pull request #11055 from ekrctb/catch-stateless-rng
2020-12-04 13:08:30 +09:00
ekrctb
23af70dd32
Invert if
2020-12-04 10:24:25 +09:00
ekrctb
e82ca66d3e
Fix depth of dropped objects
2020-12-04 10:21:54 +09:00
ekrctb
7e66714c2f
Use ApplyCustomUpdateState for dropping transformation
...
We cannot just apply the transforms because DHO clears transforms when state is updated
2020-12-03 18:46:58 +09:00
ekrctb
be456f9c6b
Make DroppedObjectAnimation private
2020-12-03 18:46:58 +09:00
ekrctb
5a5c956ced
Move more logic to Catcher from CatcherArea
2020-12-03 16:44:36 +09:00
ekrctb
2eb2c934cc
Refactor fruit dropping code
...
- The repeated `Remove` call was quadratic complexity.
Now it is linear time.
2020-12-03 16:44:36 +09:00
ekrctb
873f2363c1
Simplify the fruit stacking code
...
It is now more clear that
the expression of distance checking is probably unintended (a bug)
2020-12-03 16:44:36 +09:00
ekrctb
8d32cca5d6
Use more specific type for caught object
2020-12-03 16:44:36 +09:00
ekrctb
a231a4aa6d
Remove unused method
2020-12-03 16:44:36 +09:00
ekrctb
af45e8d97b
Don't delay caught fruit loading
...
It is not needed anymore because
some code in DCHO is moved from `load` to constructor.
2020-12-03 16:44:36 +09:00
ekrctb
e5c8e06c4b
Create children in the constructor
2020-12-03 16:44:36 +09:00
ekrctb
2e8195e059
Use transformation to set fruit rotation
2020-12-03 12:13:14 +09:00
ekrctb
fdcfa81e46
Make RandomSeed a property, not a bindable
2020-12-02 20:53:47 +09:00
ekrctb
08848e49de
Set banana combo colour using random seed
2020-12-02 17:12:30 +09:00
ekrctb
8b6161a51c
Use deterministic randomness in catch hit object
2020-12-02 16:54:18 +09:00
ekrctb
e7c0e9834f
Introduce RandomSeed in catch DHO
2020-12-02 16:53:01 +09:00
smoogipoo
946613e803
Fix bananas not playing sounds
2020-12-02 15:22:54 +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
Dan Balasescu
2e0fdf9bca
Merge pull request #11011 from ekrctb/catch-pooling-initial
...
Initial implementation of hit object pooling in osu!catch ruleset
2020-12-02 13:02:22 +09:00
smoogipoo
6b4a6c12c8
Fix bad equality comparer implementations
2020-12-01 18:13:53 +09:00
smoogipoo
199710b941
Implement equality comparers for HitSampleInfo
2020-12-01 16:04:08 +09:00
smoogipoo
5760e1c1fc
Make HitSampleInfo immutable
2020-12-01 15:37:51 +09:00
ekrctb
e8842eed81
Use bigger initial capacity for catch hit object pool
2020-12-01 14:50:42 +09:00
ekrctb
a16b265090
Apply suggested styling changes
2020-12-01 14:46:04 +09:00
smoogipoo
5945c088cb
A few code standard cleanups
2020-12-01 12:57:37 +09:00
ekrctb
08cb84b325
Pool osu!catch hit explosion
2020-12-01 11:32:20 +09:00
ekrctb
d1076778fd
Convert switch expression to switch statement
2020-12-01 09:50:52 +09:00
ekrctb
4cd234ea05
Fix null reference of LegacyFruitPiece
2020-11-30 19:56:12 +09:00
ekrctb
70628235e3
Use hit object pooling for BananaShower
.
2020-11-30 19:22:40 +09:00
ekrctb
9611aaf09e
Use hit object pooling for JuiceStream
.
...
- Use `Clear(false)` to not dispose pooled children.
- Don't set nested DHO `Origin`.
- Simplify the layout (remove custom `Origin`).
2020-11-30 19:19:14 +09:00
ekrctb
b76ae525b2
Use hit object pooling for Fruit
and Banana
.
2020-11-30 19:07:50 +09:00
ekrctb
94fd607a7c
Use hit object pooling for Droplet
and TinyDroplet
.
2020-11-30 19:04:09 +09:00
ekrctb
05aaa377e7
Don't use CreateDrawableRepresentation in CatcherArea
2020-11-30 19:02:49 +09:00
Dan Balasescu
11d1450c76
Merge branch 'master' into fruit-bindables
2020-11-30 16:48:22 +09:00
Dean Herbert
9fbfb1aa9f
Add comment explaining requirement
2020-11-30 15:22:55 +09:00
Dean Herbert
73990a6674
Fix osu!catch combo counter not showing after 1 combo
2020-11-30 15:20:52 +09:00
ekrctb
8528b2687f
Fix possible null reference.
2020-11-30 14:24:50 +09:00
ekrctb
4228977c86
Store a DHO in FruitPiece
to animate itself.
2020-11-30 13:46:02 +09:00
ekrctb
5e0e4e9db7
Use private access modifier for Border
field.
2020-11-30 13:07:55 +09:00
ekrctb
09b7ba41d6
Consistently use readonly field for bindables.
2020-11-30 13:00:01 +09:00
ekrctb
5d3a5081a0
Remove use of HitObject in DHO constructors.
2020-11-30 12:52:58 +09:00
ekrctb
35cd6674f6
Fix tiny droplet scale factor
2020-11-27 11:56:57 +09:00
ekrctb
e36bb7631d
Fix colour not updated when index changes
2020-11-27 11:41:39 +09:00
ekrctb
dbf67f82c0
Use bindable for DrawableDroplet HyperDash state
2020-11-27 11:40:38 +09:00
ekrctb
23109f5bbc
Add bindable to drawable catch hit obejcts
2020-11-27 11:08:32 +09:00
ekrctb
5e36fb322a
Move fruit visual logic from CHO to DrawableFruit
2020-11-27 11:08:32 +09:00
ekrctb
c272fda416
Add bindables to catch hit objects
2020-11-27 11:02:23 +09:00
smoogipoo
e53f849aa0
Completely separate combo colours from DHOs
2020-11-26 18:14:25 +09:00
ekrctb
cafe8cf7fa
Refactor border of fruits to classes
2020-11-26 15:24:32 +09:00
ekrctb
8a73b335f3
Move catch piece files
2020-11-26 15:24:32 +09:00
ekrctb
c99d34d140
Merge branch 'master' into palpable-catch-hit-object
2020-11-26 12:24:57 +09:00
ekrctb
323533d945
Add hiding Palpable HitObject property
2020-11-25 08:07:59 +09:00
ekrctb
6e55eb2090
Fix and add comments
2020-11-25 08:00:11 +09:00
ekrctb
3c3229ac4b
Remove redundant StaysOnPlate
2020-11-25 07:59:45 +09:00
ekrctb
ab7251d742
Move members to PalpableCatchHitObject
2020-11-24 19:57:37 +09:00
ekrctb
4f7aa7e541
Move Palpable* to separate files
2020-11-24 19:48:13 +09:00
ekrctb
916a313f19
Rename PalpableDrawable -> DrawablePalpable
2020-11-24 19:48:13 +09:00
Dan Balasescu
4311526c0a
Merge branch 'master' into on-drawable-hitobject-added
2020-11-24 19:23:54 +09:00
ekrctb
b9c1f782fa
Remove type parameter from DrawableCatchHitObject
2020-11-24 17:03:26 +09:00
Dan Balasescu
87ce8a53ff
Merge branch 'master' into on-drawable-hitobject-added
2020-11-24 16:09:57 +09:00
ekrctb
c506b438bf
Remove more code and make some methods private
2020-11-22 18:51: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
ekrctb
468b2a97cb
Use events instead of overriding Add (catch)
2020-11-20 17:56:47 +09:00
Bartłomiej Dach
8da40ce2dc
Reduce duplication by extracting ModEasyWithExtraLives
2020-11-16 19:54:00 +01:00
PercyDan54
99ee5e3ad7
Correct inheritance
2020-11-16 18:28:50 +08:00
PercyDan54
017a6b7153
Fix checks
2020-11-16 18:22:17 +08:00
PercyDan54
d7acfd5413
Remove retires from ModEasy
2020-11-16 18:15:15 +08:00
Dan Balasescu
71a1165209
Merge branch 'master' into drawable-hit-object-hit-state-fix
2020-11-06 13:19:25 +09:00
smoogipoo
628b8be15d
Implement ModWithVisibilityAdjustment
2020-11-05 15:40:25 +09:00
Dean Herbert
a3dc1d5730
Update existing implementations
2020-11-04 17:14:23 +09:00
Bartłomiej Dach
4e80f1955c
Merge branch 'master' into catcher-moonwalking-in-replays-fix
2020-11-03 23:42:51 +01:00
Dean Herbert
9f8ea93068
Fix osu!catch banana animation not playing due to incorrect lifetimes
...
Closes #10117 .
2020-11-03 18:45:21 +09:00
Dean Herbert
71c04472fa
Fix osu!catch replay conversion applying left movements to wrong frame
2020-11-03 14:21:19 +09:00
Dean Herbert
4024b44a53
Fix unsafe manipulation of parent's children from child
2020-10-19 17:41:21 +09:00
Dean Herbert
8a3bce3cc3
Fix osu!catch showing two combo counters for legacy skins
2020-10-16 18:20:17 +09:00
Dean Herbert
899bac6ca5
Rename catch combo counter for clarity
2020-10-14 19:16:34 +09:00
smoogipoo
696e3d53af
Fix slider samples being overwritten by the last node
2020-10-09 20:50:09 +09:00
Dean Herbert
07558b5bc0
Merge branch 'master' into ruleset-result-types
2020-10-09 13:17:05 +09:00
Dean Herbert
f70252d07b
Match plurality
2020-10-08 12:52:58 +09:00
Dean Herbert
f1a3b6d0ba
Merge branch 'master' into perf-calculator-remove-working-beatmap
2020-10-07 17:43:17 +09:00
Dean Herbert
6020ec9ca3
Add valid result types for all rulesets
2020-10-07 15:43:52 +09:00
Lucas A
d7747ebb2d
Remove unused WorkingBeatmap argument.
2020-10-03 16:51:22 +02:00
Bartłomiej Dach
2b1ef16f89
Replace comparison references to HitResult.Miss with IsHit
2020-10-02 23:31:24 +02:00
Lucas A
abd395a030
Remove unecessary using references.
2020-10-02 19:41:24 +02:00
Lucas A
0163688a17
Remove IBeatmap from PerformanceCalculator.
2020-10-02 19:24:30 +02:00
smoogipoo
f439c1afbc
Make osu/taiko/catch use Ok+Great
2020-09-29 17:16:55 +09:00
smoogipoo
903bcd747e
Revert unintended changes
2020-09-29 16:39:29 +09:00
smoogipoo
bad48d6d44
Merge branch 'master' into scoring-standardisation
2020-09-29 16:33:38 +09:00
smoogipoo
31fae045fa
Update judgement processors with new hit results
2020-09-29 16:33:38 +09:00
smoogipoo
4ca9a69de2
Use new hit results in catch
2020-09-29 16:33:38 +09:00
Dean Herbert
6095446f10
Fix autoplay generators failing on empty hitobjects lists
2020-09-28 15:38:54 +09:00
Dean Herbert
1b261f177f
Disable rewind handling
2020-09-22 13:17:53 +09:00
Dean Herbert
1c58f568d6
Simplify and reformat rewind/transform logic
2020-09-22 12:54:21 +09:00
Dean Herbert
ffd4874ac0
Remove unnecessary double suffixes
2020-09-22 12:37:18 +09:00
Dean Herbert
08d8975566
Remove DisplayInitialCombo method for simplicity
2020-09-22 12:35:18 +09:00
Dean Herbert
92cda6bccb
Adjust xmldoc slightly
2020-09-22 12:27:47 +09:00
Dean Herbert
a27a65bf03
Don't recreate explosion counter each increment
2020-09-22 12:25:40 +09:00
Dean Herbert
f629c33dc0
Make explosion additive to match stable
2020-09-22 12:14:31 +09:00
Salman Ahmed
bfe332909c
Remove "hide combo counter on break time" feature for being too complex
...
The combo counter will be hidden at most one second after the break has started anyways, so why not just remove this feature if the way of implementing it is complicated to be merged within the legacy counter implementation.
2020-09-21 14:32:14 +03:00
Dean Herbert
1e09d8fd1a
Merge branch 'master' into catch-combo-counter
2020-09-21 17:53:00 +09:00
smoogipoo
c7d24203ce
Make beatmap conversion support cancellation tokens
2020-09-17 17:40:05 +09:00
Dan Balasescu
0761aab42f
Merge branch 'master' into catch-combo-counter
2020-09-15 17:20:31 +09:00
Bartłomiej Dach
fcf3a1d13c
Encapsulate combo display better
2020-09-12 22:40:34 +02:00
Bartłomiej Dach
3db0e7cd75
Generalise LegacyRollingCounter
2020-09-12 22:40:32 +02:00
smoogipoo
117c7ec6b2
Merge branch 'master' into score-recalc
2020-09-09 14:38:36 +09:00
Dean Herbert
4680728b9c
Merge branch 'master' into update-dcc-exclusions
2020-09-07 18:01:44 +09:00
smoogipoo
1143d5d992
Update class exclusion for dynamic compilation
2020-09-04 20:41:08 +09:00
Dean Herbert
25e142965d
Strongly type and expose default beatmap information icon implementations for other rulesets
2020-09-04 15:01:32 +09:00
Dean Herbert
72cb65c22f
Update and add missing beatmap statistic icons to info wedge
2020-09-03 17:52:22 +09:00
Salman Ahmed
99a68e880a
Merge remote-tracking branch 'upstream/master' into catch-combo-counter
2020-09-01 20:46:38 +03:00
Salman Ahmed
a0a4501008
Merge remote-tracking branch 'upstream/master' into catch-combo-counter
2020-09-01 20:17:25 +03:00
Salman Ahmed
ba8a4eb6f0
Move osu!catch combo counter display to inside CatcherArea
2020-09-01 20:17:21 +03:00
smoogipoo
1c1afa1c96
Move MaxCombo to base DifficultyAttributes
2020-08-28 19:16:20 +09:00
smoogipoo
8dde512657
Merge branch 'master' into skin-colour-fix-2
2020-08-25 19:39:01 +09:00
smoogipoo
ab8d9be095
Move out into a separate method
2020-08-25 15:16:41 +09:00
Bartłomiej Dach
60695bee8c
Remove fades when changing trail colour across skins
2020-08-24 15:57:41 +02:00
Dean Herbert
db45d9aa8a
Fix catch hyper dash colour defaults not being set correctly
...
As the defaults were not set, if a skin happened to specify 0,0,0,0 it
would be ignored due to the early returns in property setters.
2020-08-24 22:11:10 +09:00
Dean Herbert
997ea2f27e
Merge pull request #9932 from smoogipoo/hyperdash-full-catch-width
...
Use full catcher width for hyperdash calculation
2020-08-24 16:44:35 +09:00
Orosfai I. Zsolt
12ca870b74
Fix osu!catch relax mod
2020-08-23 17:34:57 +02:00
Salman Ahmed
0e9242ee9a
Move combo font retrieval inside the legacy component
2020-08-23 10:29:01 +03:00
Dean Herbert
b98d4d9cff
Merge branch 'master' into hyperdash-full-catch-width
2020-08-22 19:55:45 +09:00
Salman Ahmed
cf6b34db1e
Merge remote-tracking branch 'upstream/master' into catch-combo-counter
2020-08-22 13:07:28 +03:00
Salman Ahmed
7ae45b29db
Finish internal counter transformation regardless of the combo
2020-08-22 12:20:50 +03:00
smoogipoo
eaba323353
Update catch with legacy colour setters
2020-08-22 00:17:35 +09:00
smoogipoo
62d833d63d
Fix comment
2020-08-21 13:14:50 +09:00
smoogipoo
6ad7a3686b
Simplify condition
2020-08-21 13:13:08 +09:00
smoogipoo
855b5ba4ed
Merge branch 'master' into add-droplet-hypers
2020-08-21 13:09:16 +09:00
Dean Herbert
f0ba587515
Merge branch 'master' into fix-catch-double-sample
2020-08-21 12:38:29 +09:00
smoogipoo
f00bc67aaa
Fix pulp and use relative sizse
2020-08-21 12:29:28 +09:00
smoogipoo
738ff7ba21
Use full catcher width for hyperdash calculation
2020-08-21 02:21:16 +09:00
Bartłomiej Dach
9546fbb64b
Prevent catcher from performing invalid catches
2020-08-20 19:06:29 +02:00
Bartłomiej Dach
28534c1599
Reintroduce PalpableCatchHitObject at data level
2020-08-20 19:06:26 +02:00
smoogipoo
f956c9fe37
Clobber in a gameplay test
2020-08-21 02:01:29 +09:00
Bartłomiej Dach
45e2ea71b4
Rename Palpable{-> Drawable}CatchHitObject
2020-08-20 18:41:08 +02:00
Dean Herbert
75db762553
Merge pull request #9926 from peppy/catch-playfield-width-adjust
...
Fix osu!catch playfield bounds not matching expectations
2020-08-20 23:42:17 +09:00
smoogipoo
40a456170b
Add default skin display for hyperdash droplets
2020-08-20 23:34:40 +09:00
smoogipoo
c89509aca0
Fix right bound not being applied correctly
2020-08-20 20:25:40 +09:00
Dean Herbert
a94a86178b
Align osu!catch playfield with stable 1:1
2020-08-20 19:12:37 +09:00
Dean Herbert
1f14d9b690
Use correct width adjust for osu!catch playfield
2020-08-20 18:15:06 +09:00
Salman Ahmed
af52b73b06
Fill out missing documentation
2020-08-19 08:39:40 +03:00
Salman Ahmed
d4bde0afe5
Do not pass accent value on a reverted miss judgement
2020-08-19 08:18:30 +03:00
Salman Ahmed
885f8104f5
Always use public accessors even on legacy classes
...
Because of https://github.com/ppy/osu-framework/issues/3727
2020-08-19 08:00:57 +03:00
Salman Ahmed
422100192c
Move HasFont to legacy skin extensions class instead
2020-08-19 07:58:23 +03:00
Salman Ahmed
4dbf695bca
Fix wrong ordering
2020-08-04 00:04:00 +03:00
Salman Ahmed
65c269e473
Hide combo counter on gameplay break
...
Intentionally inside LegacyComboCounter and not in CatchComboDisplay, to avoid conflicting with how the legacy combo counter fades away after 1 second of no combo update, can move to parent once a DefaultComboCounter design is decided and code is shareable between.
2020-08-03 22:17:11 +03:00
Salman Ahmed
f37ba49f7f
Add catch-specific combo counter with its legacy design
2020-08-03 22:13:02 +03:00
Salman Ahmed
29053048ff
Add support to use legacy combo fonts for the counter on legacy skins
2020-08-03 21:40:20 +03:00
Dean Herbert
6b9102b2a4
Add osu!catch banana catching sounds
2020-07-30 17:58:49 +09:00
bastoo0
2b068298cc
Fix inconsistency between this and osu-performance
...
The bonus value for HD is given twice here (probably a merge issue). The correct bonus is currently used on stable: 736515a034/src/performance/catch/CatchScore.cpp (L68)
2020-07-24 12:01:23 +02:00
Dan Balasescu
2997fb3f4e
Merge pull request #9635 from peppy/perfect-mod-combo-objects-only
...
Make perfect mod ignore all non-combo-affecting hitobjects
2020-07-23 20:54:39 +09:00
Dean Herbert
2c62b23d85
Update naming
2020-07-22 19:53:45 +09:00
Dean Herbert
c1442568b9
Make perfect mod ignore all non-combo-affecting hitobjects
2020-07-21 17:04:45 +09:00
Dean Herbert
648e414c14
Update InputHandlers in line with framework changes
2020-07-19 11:39:11 +09:00
Dean Herbert
02678c04d5
Merge pull request #9556 from gagahpangeran/toggle-hit-lighting-catch
2020-07-17 17:06:40 +09:00
Dan Balasescu
ab477c3be4
Remove returns xmldoc
2020-07-16 15:55:35 +09:00
Dean Herbert
c42b315abb
Expose via CreateProxiedContent method
2020-07-16 15:35:19 +09:00
Dean Herbert
3666599053
Remove space
2020-07-15 22:00:48 +09:00
Dean Herbert
72789dc0aa
Remove redundant array spec
2020-07-15 21:52:37 +09:00
Dean Herbert
2624862e32
Fix osu!catch dropping fruit appearing above the plate instead of behind
2020-07-15 20:58:09 +09:00
Gagah Pangeran
3e2d184a91
change hitlighting bool to bindable
2020-07-14 10:52:34 +07:00
Gagah Pangeran
a25f4880d6
disable hit explotion when hit lighting off
2020-07-14 10:35:01 +07:00
smoogipoo
ede4235884
Increase HP gain of bananas
2020-07-11 20:35:58 +09:00
Dean Herbert
bd5957bc0a
Add dynamic compilation exclusion rules for ruleset types
2020-07-10 14:49:44 +09:00
ekrctb
3278a1d7d8
Standardize osu!catch coordinate system
...
There were two coordinate systems used:
- 0..512 (used in osu!stable)
- 0..1 (relative coordinate)
This commit replaces the usage of
the relative coordinate system to
the coordinate system of 0..512.
2020-07-02 00:21:45 +09:00
Bartłomiej Dach
ad85c5f538
Add base legacy skin transformer
2020-06-21 23:06:55 +02:00
smoogipoo
f3b5149648
Move some suggestions to warnings, resolve issues
2020-06-03 16:48:44 +09:00
Dan Balasescu
64d1b4b11b
Merge branch 'master' into move-setter-to-duration
2020-06-01 15:55:48 +09:00
Dean Herbert
cbd563e80b
Rename to IHasDuration
2020-05-27 12:38:39 +09:00
Dean Herbert
b8e0a6f127
Move sett from EndTime to Duration
2020-05-27 12:37:44 +09:00
Dean Herbert
6b5b215299
Split out IHasPath from IHasCurve to better define hitobjects
2020-05-26 17:44:47 +09:00
smoogipoo
bc35bc5efb
Merge branch 'master' into applydefaults-cancellation
2020-05-25 16:45:30 +09:00
smoogipoo
6d29ff0928
Fix banana showers not using cancellation token
2020-05-21 12:13:02 +09:00
Huo Yaoyuan
b43e978156
Unify to use double in CatchPerformanceCalculator.
2020-05-18 17:44:56 +08:00
smoogipoo
1865cd0762
Fix possible exceptions in performance calculators
2020-05-18 15:10:59 +09:00
smoogipoo
4719fcc291
Actually use the cancellation token
2020-05-15 18:17:39 +09:00
smoogipoo
98125102a7
Add cancellation token support to CreateNestedHitObjects()
2020-05-15 18:07:41 +09:00
Salman Ahmed
b161aa72b7
Merge remote-tracking branch 'upstream/master' into catch-legacy-skin-decoding
2020-05-14 07:22:01 +03:00
Bartłomiej Dach
5bab53b04c
Centralise trail visibility state management
2020-05-10 17:05:30 +02:00
Bartłomiej Dach
77e5e131c9
Merge branch 'master' into catch-hyperdash-catcher-colouring
2020-05-10 16:49:44 +02:00
Salman Ahmed
b44a70ef9a
Let the catcher be responsible for stopping the trails
2020-05-07 01:46:37 +03:00
Bartłomiej Dach
25f73c0b9f
Add [NotNull] annotation
2020-05-06 23:40:36 +02:00
Bartłomiej Dach
52d1e2b5f8
Improve xmldoc
2020-05-06 23:28:54 +02:00
Bartłomiej Dach
ed83ac188e
Remove special case for moving catcher sprite
2020-05-06 23:25:25 +02:00
Dean Herbert
c8134162b5
Merge pull request #8934 from smoogipoo/sorcerer-catch-changes
...
Implement Sorcerer's osu!catch difficulty calculation adjustments
2020-05-06 18:10:33 +09:00
alex
0e2ccac33b
Add spaces to comments
2020-05-04 18:36:24 -07:00
smoogipoo
46b0526db7
Remove hack limiting max number of ticks
2020-05-04 15:27:04 +09:00
smoogipoo
f42be7a6d7
Merge branch 'master' into sorcerer-catch-changes
2020-05-04 15:25:09 +09:00
Salman Ahmed
6376128bde
Remove unnecessary using directive
2020-04-23 05:33:28 +03:00
Salman Ahmed
278c3795e4
Merge remote-tracking branch 'upstream/master' into catch-hyperdash-catcher-colouring
2020-04-23 05:21:56 +03:00
Salman Ahmed
883788dd5a
Privatize externally-unused methods
2020-04-22 07:37:49 +03:00
Salman Ahmed
fccb30e031
Adjust documents
...
*whoops*
2020-04-22 07:36:59 +03:00
Salman Ahmed
f841eb7e06
Replace constructing a whole Catcher with static calculation methods
2020-04-22 07:27:15 +03:00
Salman Ahmed
2d4077e713
Reword special default hyper-dash colour constant a bit
2020-04-22 05:25:40 +03:00
Salman Ahmed
9ab0f6d8bc
Separate trail-related logic to its own container
2020-04-22 05:12:29 +03:00
Salman Ahmed
95de2c6f7f
Mark Catcher.additiveTarget to never be null
...
And provide empty containers instead.
2020-04-22 05:04:07 +03:00
Salman Ahmed
c8c2b51108
Remove redundant property set
...
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2020-04-21 11:44:39 +03:00
Salman Ahmed
ee62739b08
Simplify process of adding catcher trails
2020-04-21 11:44:39 +03:00
Salman Ahmed
a82efa626e
Add XMLDoc for default hyper-dash colour constant
2020-04-21 11:44:39 +03:00
Dean Herbert
5e3fad86cf
Fix relax replays playing back incorrectly
2020-04-21 15:28:25 +09:00
Salman Ahmed
282d100109
Fix XMLDoc references
2020-04-21 06:09:57 +03:00
Salman Ahmed
9373520bca
Add constant for special colour of catcher on default skin
2020-04-21 05:59:37 +03:00
Salman Ahmed
e17a44c99b
Merge branch 'master' of github.com:ppy/osu into catch-hyperdash-catcher-colouring
2020-04-21 05:58:56 +03:00
smoogipoo
d7ea5432a8
Fix incorrect combo calculation
2020-04-16 18:15:52 +09:00
smoogipoo
c6aa6acc1b
Apply performance calculator changes
2020-04-16 17:28:06 +09:00
smoogipoo
841d6cfcf9
Merge branch 'master' into sorcerer-catch-changes
2020-04-16 17:25:57 +09:00
Salman Ahmed
5f13dc81be
Remove no longer necessary extensions
2020-04-14 04:38:18 +03:00
Dean Herbert
081a02f748
Merge branch 'master' into catch-hyperdash-fruit-colouring
2020-04-14 10:01:15 +09:00
Dean Herbert
65b96079a0
Move dampening to base implementation and change range to 0..1
2020-04-13 13:01:02 +09:00
Fire937
f274ec297c
Add positional sound support for all rulesets
...
The SamplePlaybackBalance is calculated in a way that the balance
remains between -0.4 and 0.4.
Positional sound is not supported in osu!taiko.
2020-04-12 01:33:25 +02:00
Salman Ahmed
d27d8671ab
Convert all static getter-only properties to static readonly fields
2020-04-08 14:23:29 +03:00
smoogipoo
fd51bbb9ec
Apply latest changes
2020-04-08 12:20:46 +09:00
smoogipoo
c5aae9b757
Fix post-merge errors
2020-04-08 12:19:09 +09:00
smoogipoo
4e55212638
Merge branch 'master' into sorcerer-catch-changes
2020-04-08 12:15:24 +09:00
Salman Ahmed
7f3ad6d5be
Move default colour fallback to the extension methods itself
2020-04-05 22:15:11 +03:00
Salman Ahmed
42ac0c72ea
Fix grammer issue and more rewording
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-04-05 00:46:52 +03:00
Salman Ahmed
b8327ed877
Add test for osu!catch skin colour decoding
...
Tests the skin configuration CatchTheBeat section's colours decoding part
2020-04-05 00:30:10 +03:00
Salman Ahmed
42ccee5e6c
Fix CI issue
2020-04-05 00:15:42 +03:00
Salman Ahmed
55d076d6f3
Transform CatchSkinColour lookup to skin configuration custom colours lookup
2020-04-05 00:10:25 +03:00
Salman Ahmed
c4f7b45768
Revert "Add support for custom hyper-dash fruit colouring"
...
This reverts commit 6f2cc5471a
and also its testing cases.
This became dead code after actual correct osu!catch skin colouring, we don't support modern skinning (non-legacy skinning) at the moment, so for what it's worth this can be reverted to default red-coloured
2020-04-05 00:07:25 +03:00
Salman Ahmed
0014a8404e
GetHyperDashEndGlowColour() -> GetHyperDashCatcherAfterImageColour()
2020-04-04 23:12:42 +03:00
Salman Ahmed
19f39fe632
Change AdditiveTarget into a set method
2020-04-04 19:33:52 +03:00
Salman Ahmed
fbe95a52e3
Remove unnecessary restating comment
2020-04-04 19:29:41 +03:00
Salman Ahmed
50604dc7b2
Update catcher hyper-dashing colours on changing hyper-dash state only
2020-04-04 19:29:06 +03:00
Salman Ahmed
f3bcb0628c
Add helper methods for retrieving other skin hyper-dash colours
2020-04-04 19:09:52 +03:00
Salman Ahmed
ee247e58c8
Merge branch 'catch-hyperdash-fruit-colouring' into catch-hyperdash-catcher-colouring
2020-04-04 18:07:29 +03:00
Salman Ahmed
f67a62699b
Merge remote-tracking branch 'upstream/master' into catch-hyperdash-fruit-colouring
2020-04-03 19:57:52 +03:00
Salman Ahmed
7e82f5740b
Add a skin extension for simplifying falling back on hyper-dash colours
2020-04-03 19:35:50 +03:00
Dean Herbert
53c99d137a
Merge branch 'master' into mania-config-lookup-refactor
2020-04-03 22:22:59 +09:00
Dean Herbert
51db361c32
Update usages of Animation and Video in line with framework changes
2020-04-03 16:00:06 +09:00
smoogipoo
1f797207f7
Rework lookups to not require total playfield columns
2020-04-03 12:31:05 +09:00
Dean Herbert
f653d37058
Merge pull request #8521 from peppy/remove-scale-down-to-fit
...
Remove ScaleDownToFit as it was implemented without enough safety
2020-03-31 23:22:04 +09:00
Dean Herbert
03b90fe2db
Remove local application of same margin in CatchDifficultyCalculator
2020-03-31 19:01:49 +09:00
Dean Herbert
b7d73f96ea
Fix osu!catch catcher hit area being too large
2020-03-31 18:33:09 +09:00
Dean Herbert
1fce7cce01
Remove ScaleDownToFit as it was not implemented without enough safety
2020-03-31 13:50:04 +09:00
Salman Ahmed
16a4525a9c
CatchSkinConfiguration -> CatchSkinColour
2020-03-30 09:33:47 +03:00
Dean Herbert
2abb8a37df
Merge branch 'master' into show-mod-settings-tooltip
2020-03-29 14:35:04 +09:00
Salman Ahmed
c2e31f53f1
Merge remote-tracking branch 'upstream/master' into catch-hyperdash-fruit-colouring
2020-03-28 07:44:11 +03:00
Dean Herbert
2949e8dc27
Reduce spread of stacked fruit
2020-03-26 16:58:23 +09:00
Salman Ahmed
fecafc2e48
Fix additive target accidentally clears all of the added containers
...
It sets the AdditiveTarget on the object initializer but then the catcher is set to Child which wipes up all of the existing children (containers added by Catcher through AdditiveTarget setter)
2020-03-26 09:14:44 +03:00
Salman Ahmed
302fdd834a
Add support for custom hyper-dash catcher colouring
2020-03-26 09:11:59 +03:00
Salman Ahmed
e3a7c8a124
Make catcher trails colouring per container
2020-03-26 09:11:31 +03:00
Salman Ahmed
d995f3e1cc
Add support for custom hyper-dash legacy fruit colouring
2020-03-26 05:42:13 +03:00
Salman Ahmed
6f2cc5471a
Add support for custom hyper-dash fruit colouring
2020-03-26 05:42:12 +03:00
Salman Ahmed
0a368f13d9
Add default hyper-dash colour constant on Catcher
2020-03-26 05:42:11 +03:00
Salman Ahmed
e6b2e3b0ed
Add osu!catch skin configurations
2020-03-26 05:42:11 +03:00
Dean Herbert
8a2aac5f83
Rename conversion methods for clarity
2020-03-25 20:21:34 +09:00
Dean Herbert
388cf5c83a
Fix catch positional data being incorrectly recorded
2020-03-24 15:38:54 +09:00
Dean Herbert
96a849f897
Add remaining replay recorders
2020-03-24 14:55:49 +09:00
Dean Herbert
022465f546
Add encoding and import support
2020-03-24 14:51:52 +09:00
Dean Herbert
546772192c
Add helper method to convert to legacy mods enums
2020-03-24 13:07:51 +09:00
Liam DeVoe
1da590c63f
use N1 format instead of 0.#
2020-03-22 22:54:21 -04:00
Liam DeVoe
afe7397d89
remove unnecessary using statements
2020-03-22 22:50:52 -04:00
Liam DeVoe
67667b3d22
enforce precision for ModDifficultyAdjust and derived classes
2020-03-22 21:22:46 -04:00
Liam DeVoe
63e9b2a299
use string.Empty, use base SettingDescription for [Osu/Catch]ModDifficultyAdjust
2020-03-22 18:50:09 -04:00
Liam DeVoe
a440d15620
simplify array initializationstatement
2020-03-20 16:58:02 -04:00
Liam DeVoe
e84b40f8ed
remove unnecessary ToString calls
2020-03-20 16:53:40 -04:00
Liam DeVoe
cda1efef0b
move overridability to SettingDescription method
2020-03-20 16:34:36 -04:00
Liam DeVoe
7bdbdd25f8
Revert "use SettingSource to define IconTooltip format"
...
This reverts commit 5a6d8f1932
.
2020-03-20 16:05:12 -04:00
Liam DeVoe
5a6d8f1932
use SettingSource to define IconTooltip format
2020-03-20 12:47:17 -04:00
Liam DeVoe
7a0a633ef9
don't use ToString, proper indent level
2020-03-19 00:06:55 -04:00
Liam DeVoe
18bf7c913b
show mod settings in ModIcon tooltip
2020-03-18 23:43:26 -04:00
Bartłomiej Dach
f904859943
Remove leftover unused private methods
2020-03-15 15:45:13 +01:00
Dean Herbert
d3f23b766e
Move across to new file in line with master
2020-03-14 17:06:23 +09:00
Dean Herbert
9ea0e83f3d
Merge branch 'master' into correct-trail-animation-frame
2020-03-14 16:57:35 +09:00
Dean Herbert
45dfb22bd5
Centralise additive texture creation
2020-03-14 16:39:44 +09:00
Dean Herbert
63b4fa0d56
Merge branch 'master' into correct-trail-animation-frame
2020-03-14 16:12:52 +09:00
Dean Herbert
1523c4c63f
Merge branch 'master' into catcher-area-file-cleanup
2020-03-14 15:41:26 +09:00
Dean Herbert
202c8cdad8
Add braces to satisfy codefactor
2020-03-14 15:35:59 +09:00
Dean Herbert
1733519c3a
Split out CatcherArea nested classes and reorder methods
2020-03-13 12:59:30 +09:00
smoogipoo
c8cdc5fda5
Expose half catcher width to movement skill
2020-03-13 12:43:01 +09:00
Dean Herbert
c30bfa79e7
Merge branch 'master' into correct-trail-animation-frame
2020-03-13 09:55:41 +09:00
Dean Herbert
cc8a413f6b
Merge pull request #8230 from EVAST9919/catcher-fix
...
Fix catcher showing miss sprite upon missing bananas
2020-03-12 20:10:36 +09:00
Andrei Zavatski
bc2a1cdb62
Apply suggestions
2020-03-12 12:04:36 +03:00
Andrei Zavatski
e46c070d95
Add test scene
2020-03-11 23:09:29 +03:00
Andrei Zavatski
09b9983286
Fix CatcherAnimationState is Fail if missing banana shower
2020-03-11 21:14:07 +03:00
smoogipoo
5c051027e7
Fix different offset being applied from stable
2020-03-11 18:43:08 +09:00
smoogipoo
919410c627
Remove always-false condition
2020-03-11 18:39:50 +09:00
smoogipoo
f8e7579f45
Fix juice stream position reset not ever being applied
2020-03-11 18:38:05 +09:00
smoogipoo
5b03b3e363
Fix hyperdashes not recalculated with HR application
2020-03-11 18:36:37 +09:00
Dan Balasescu
42bc8bc50d
Merge pull request #8199 from peppy/add-banana-scale-rotate
...
Add random rotation and scale factors to osu!catch bananas
2020-03-11 16:31:18 +09:00
Dean Herbert
966e5bbc8a
User helper function to reduce copy paste
2020-03-11 15:54:21 +09:00
Dan Balasescu
03c8140d3c
Merge branch 'master' into add-catcher-animation-states
2020-03-11 14:53:14 +09:00
Dean Herbert
73b225ad62
Make catcher's trail reflect the current animation frame rather than play the full animation
2020-03-11 14:28:13 +09:00
Dan Balasescu
affb227b38
Merge pull request #8200 from peppy/add-hyperdash-afterimage
...
Add afterimage glow when entering hyperdash
2020-03-11 13:56:19 +09:00
Dan Balasescu
cd5f0d6e96
Merge pull request #8201 from peppy/fix-hyperdash-test
...
Fix hyperdash test having a zero-length juice stream
2020-03-11 13:46:59 +09:00
Dean Herbert
1bad2ff879
Load all catcher states ahead-of-time to avoid blocking loads
2020-03-11 13:45:55 +09:00
Dan Balasescu
460f564b2b
Merge branch 'master' into add-hyperdash-afterimage
2020-03-11 12:58:24 +09:00
Dan Balasescu
ba98155832
Merge branch 'master' into fix-hyperdash-test
2020-03-11 12:56:40 +09:00
Dan Balasescu
df52b58543
Merge branch 'master' into remove-tiny-droplet-samples
2020-03-11 12:46:16 +09:00
Dan Balasescu
27c31969fd
Merge branch 'master' into fix-catch-hitobject-fadein
2020-03-11 11:49:11 +09:00
Dean Herbert
66a0f3334d
Merge branch 'master' into fix-perfect-judgements
2020-03-10 23:50:57 +09:00
Dean Herbert
8ec2c35c4f
Change origin of nested objects inside JuiceStream to fix visibility issues
2020-03-10 19:35:10 +09:00
Dean Herbert
9ad519e5a5
Remove fade and custom InitialLifetimeOffset
2020-03-10 19:35:10 +09:00
Dean Herbert
4daba48a1d
Stop rotating DrawableCatchHitObjects at the top level
2020-03-10 19:30:31 +09:00
Dean Herbert
14192c069f
Don't play samples on catching a tiny droplet
2020-03-10 18:05:44 +09:00
Dean Herbert
5329b222f6
Fix hyperdash test having a zero-length juice stream
2020-03-10 17:49:51 +09:00
Dean Herbert
eab544b49f
Add afterimage glow when entering hyperdash
2020-03-10 16:41:08 +09:00
Dean Herbert
2b33594400
Add random rotation and scale factors to osu!catch bananas
2020-03-10 15:59:13 +09:00
Dean Herbert
7069cef9ce
Add catcher kiai/fail animation states
2020-03-10 15:28:37 +09:00
Dan Balasescu
a6cf6207aa
Merge pull request #8192 from peppy/fix-hyperdash
...
Fix hyperdash not initiating correctly when juice streams are present
2020-03-10 14:00:44 +09:00
Dean Herbert
0d18ea1d29
Add animation and fallback catcher support
2020-03-10 12:36:25 +09:00
Dean Herbert
e7f1f0f38b
Fix hyperdash not initiating correctly when juice streams are present
2020-03-10 10:21:32 +09:00
smoogipoo
6d051d9e42
Fix perfect mod failure cases
2020-03-02 13:25:56 +09:00
Dean Herbert
b5306d16cf
Merge pull request #8005 from peppy/fix-catcher-dropping-streams
...
Fix catcher dropping juice streams due to it considering ignored judgements
2020-02-26 20:58:22 +09:00
Dean Herbert
2aa649e073
Fix catcher dropping juice streams due to it considering ignored judgements
2020-02-26 19:31:49 +09:00
Dean Herbert
e5927447fc
Fix hyperdash fruit not visible on custom skins
2020-02-26 19:22:46 +09:00
Dean Herbert
015a39abc7
Fix hyperdash fruit not visible on default skin
2020-02-26 19:22:31 +09:00
Bartłomiej Dach
bf36dc10a5
Fix invalid cast
...
Since introduction of IgnoreJudgement and its usage in JuiceStream
and BananaShower the hard cast in CatcherArea that was used to check
if the drawable hit object should cause the fruits on the plate explode
at the end of combo caused a hard crash instead, since IgnoreJudgement
was no longer deriving from CatchJudgement.
Replace the hard cast with a soft pattern-matched cast.
2020-02-25 23:21:54 +01:00
Dean Herbert
ffc7eaa3f2
Fix hitobjects with unknown lifetimes by enforcing non-null judgement
...
We've seen multiple cases where DrawableHitObject are stuck in the lifetime management container
due to not implementing a judgement (meaning they are never "hit" or "missed"). To avoid this going forward
CreateJudgement() must be implemented and return a non-null judgement.
This fixes BananaShower and JuiceStreams in osu!catch.
This also makes HitObject abstract and cleans up convert HitObject implementations.
2020-02-23 13:49:06 +09:00
Dean Herbert
a55b2b8918
Add explosion effect when catching fruit
2020-02-21 18:09:50 +09:00
Dan Balasescu
8d48008dd5
Merge branch 'master' into split-out-pulp-formations
2020-02-21 11:45:06 +09:00
Dean Herbert
9344f62cf0
Merge branch 'master' into catch-droplet-rotation
2020-02-21 11:09:02 +09:00
Dean Herbert
a7e3e8ace9
Merge branch 'master' into catch-drawable-namespace
2020-02-21 10:31:31 +09:00
Dean Herbert
8a6a424893
Merge branch 'master' into catch-droplet-rotation
2020-02-21 10:31:02 +09:00
smoogipoo
6468bfa543
Apply adjustments
2020-02-21 10:01:38 +09:00
Dean Herbert
049975b5a4
Use kebaberize shorthand
2020-02-20 15:45:54 +09:00
Dean Herbert
8f5d3896f6
Remove unnecessary cast by changing method siganture
2020-02-20 15:45:47 +09:00
Dean Herbert
5551343cf3
Throw instead of null return
2020-02-20 15:45:25 +09:00
Dean Herbert
2869128e11
Update in line with combo colour API changes
2020-02-20 15:41:57 +09:00
Dean Herbert
13873ff1b6
Split out pulp formations into own piece classes
2020-02-19 23:32:56 +09:00
Dean Herbert
ea0bbd2926
Rename drawable namespace to avoid clashes with framework class
2020-02-19 18:01:59 +09:00
Dean Herbert
7b27f6b378
Add droplet rotation animation
2020-02-19 17:55:40 +09:00
Dean Herbert
e1140d7c91
Fix caught fruit radius being incorrect due to moved scale
2020-02-19 17:28:40 +09:00
Dean Herbert
4c4140ae54
Adjust droplets to match stable
2020-02-19 15:55:22 +09:00
Dean Herbert
5261579531
Fix indices in beatmap not being transferred to children (and being off by one)
2020-02-19 15:37:12 +09:00
Dean Herbert
69b5d5606a
Fix nested catch objects not having a correct IndexInBeatmap
2020-02-19 15:32:24 +09:00
Dean Herbert
3f99d25e37
Use new UpdateComboColour method to simplify colouring
2020-02-19 15:28:29 +09:00
Dean Herbert
26fe15b038
Fix fruit representation not cycling as often as it should
2020-02-19 14:41:25 +09:00
Dean Herbert
aeb45c8442
Fix ordering of fruits to match stable
2020-02-19 14:31:43 +09:00
Dean Herbert
24e33abcbf
Fix banana colouring for skins
2020-02-19 14:31:32 +09:00
Dean Herbert
3eeb60f60f
Centralise and fix scaling
2020-02-19 14:31:14 +09:00
Dean Herbert
ce1a57550f
Add droplet skinning support
2020-02-19 13:29:05 +09:00
Dean Herbert
0f85e81240
Fix handling of bindable changes in accent colour
2020-02-19 12:10:09 +09:00
Dean Herbert
f245fe5934
Fix catch combo colouring
2020-02-19 10:28:20 +09:00
Dean Herbert
ab863cdfd9
Fix incorrect scaling factor being applied
2020-02-19 09:52:29 +09:00
Dean Herbert
73e5018696
Move radius adjust local to fruit piece
2020-02-19 09:39:56 +09:00
Dean Herbert
ded7f5ff1b
Merge branch 'master' into catch-fruit-skinning
2020-02-19 09:38:03 +09:00
Dean Herbert
65320ace47
Merge branch 'master' into fix-catch-skin-change
2020-02-18 13:41:00 +09:00
Dean Herbert
79f3249d37
Fix typo in method
2020-02-18 13:40:50 +09:00
Dean Herbert
b4887f9120
Fix dropping fruit as well (with tidying along the way)
2020-02-18 12:24:22 +09:00
Dean Herbert
c51e5a8c1d
Fix osu!catch fruit exploding multiple timed is skin is changed during explode animation
2020-02-18 12:11:30 +09:00
Dean Herbert
89bff32274
Fix metrics not matching between skins and lazer
2020-02-17 19:16:40 +09:00
Dean Herbert
2133ba38e5
Add overlay layer
2020-02-17 19:07:43 +09:00
Dean Herbert
7ce00bebf0
Add basic structure for skinning fruits
2020-02-17 18:47:22 +09:00
Dean Herbert
a3e0f84fcc
Update catcher test to use SkinnableTestScene
2020-02-17 17:19:46 +09:00
Dean Herbert
bb541f5ae4
Update inspectcode version and fix new issues
2020-02-15 11:54:29 +09:00
smoogipoo
cf12ffd27e
Merge remote-tracking branch 'origin/master' into sorcerer-catch-changes
...
# Conflicts:
# osu.Game.Rulesets.Catch/Difficulty/CatchPerformanceCalculator.cs
2020-02-13 17:18:32 +09:00
Dean Herbert
53b62816f8
Add index constants for cross-class safety
2020-02-13 14:07:37 +09:00
voidedWarranties
ca237fd987
Simplify ordering by using only numbers, add xmldoc
2020-02-10 16:21:49 -08:00
voidedWarranties
ea521b466f
Switch numerical consts to an enum
2020-02-09 21:37:40 -08:00