1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-30 12:42:56 +08:00
Commit Graph

1426 Commits

Author SHA1 Message Date
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