1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-16 19:07:25 +08:00
Commit Graph

169 Commits

Author SHA1 Message Date
smoogipoo
8293b06c0a Remove obsolete code 2021-04-09 13:56:58 +09:00
smoogipoo
3acc612a67 Adjust scoring values to better fit osu!mania 2021-04-05 13:28:46 +09:00
Bartłomiej Dach
06e42b4b4c Fix taiko leaving behind empty judgements on legacy skins 2021-03-06 16:02:20 +01:00
smoogipoo
d5878db615 Fix default judgement text mispositioned for one frame 2021-01-14 12:33:33 +09:00
Dean Herbert
c46d655832 Uncomment incorrectly commented lines 2020-11-25 12:11:44 +09:00
Dean Herbert
1682260677 Remove left over logging line 2020-11-24 15:28:03 +09:00
Dean Herbert
ee33f62809 Fix DrawableJudgement not always animating correctly on skin change
If the skin is changed before gameplay has started (at the loading
screen) it is possible for a sequence of events to occur which results
in the animation not being played:

- `SkinReloadableDrawable` runs its BDL load (and calls `OnSkinChanged`
  once)
- User changes skin, triggering `DrawableJudgement`'s skin change
  handling (binding directly on the `SkinSource` locally)
- This will call `PrepareDrawables` and reinitialise the
  `SkinnableDrawable` child hierarchy, then immediately apply the
animations to it.
- The new `SkinnableDrawable` will then get the `SkinChanged` event and
  schedule a handler for it, which will run on its first Update call.
- Any added animations will be lost as a result.

Fixed by binding directly to the `SkinnableDrawable`'s `OnSkinChanged`.
This has the added bonus of not needing to reinitialise the child
hierarchy on skin change (which felt a bit weird in the first place).
2020-11-24 15:23:53 +09:00
Dean Herbert
19faa2b9bb Add comment covering intentional call to ClearTransformsAfter 2020-11-23 15:20:59 +09:00
Bartłomiej Dach
9f997db958 Rewind judgement transforms before clearing 2020-11-21 17:56:49 +01:00
Dean Herbert
53b6d90ab4 Don't show default judgements in front of objects for now 2020-11-20 16:30:58 +09:00
Dean Herbert
a00e0d7279 Move CanBeNull specification to the interface 2020-11-20 16:30:48 +09:00
Dean Herbert
7fe0923fcf Show main judgement content above hitobjects 2020-11-20 16:25:48 +09:00
Dean Herbert
ba735584fa Add null check for disposal safety 2020-11-19 14:04:43 +09:00
Dean Herbert
b3bec81b79 Update xmldoc to match new behaviour 2020-11-18 19:38:38 +09:00
Dean Herbert
8522ddc61e Reduce nesting of skinned component to reduce exposed surface 2020-11-18 19:34:27 +09:00
Dean Herbert
ee8804b50b Fix animation playback not running on skin change 2020-11-18 19:03:34 +09:00
Dean Herbert
c47e70da9b Update animations for new/old miss style and add fades 2020-11-18 19:03:34 +09:00
Dean Herbert
9d3de5bca0 Fix hit lighting dictating lifetime even when not present in skin 2020-11-18 19:03:34 +09:00
Dean Herbert
72a15ef2dc Handle DrawableJudgement lifetime more flexibly 2020-11-18 19:03:34 +09:00
Dean Herbert
94886a09b2 Remove fades from DrawableJudgement itself 2020-11-18 19:03:34 +09:00
Bartłomiej Dach
875d7dec79 Remove redundant this. qualifier 2020-11-17 20:11:13 +01:00
Dean Herbert
8247e6ce91 Move result type to ctor 2020-11-17 15:43:54 +09:00
Dean Herbert
e4f1e52422 Add xmldoc coverage of Apply() 2020-11-17 15:03:26 +09:00
Dean Herbert
f465dd5a5e Move all extended animation logic out of DrawableJudgement 2020-11-17 14:59:34 +09:00
Dean Herbert
9dfa4249e0 Make Apply non-virtual 2020-11-17 14:05:13 +09:00
Dean Herbert
7f30140b7e Add new method handling hit state specifically
Until now UpdateStateTransforms was applying results offsets to
StartTime. This didn't cover the case of a HitObject with duration,
where the call would be made with `StartTime + hitOffset` rather than
`EndTime + hitOffset`.

To resolve this, a new method has been added which should be used to
handle hit-specific state transforms.
2020-11-04 16:13:14 +09:00
Bartłomiej Dach
601675db07 Adjust health increase values to match old ones better 2020-10-03 12:16:22 +02:00
Bartłomiej Dach
309714081f Make new health increase values mania-specific 2020-10-03 12:16:22 +02:00
Dean Herbert
1ec96e1bb1
Merge branch 'master' into adjust-hp-increases 2020-10-01 16:58:29 +09:00
smoogipoo
3a26bd8d9b Adjust obsoletion + xmldoc of NumericResultFor() 2020-10-01 12:14:16 +09:00
smoogipoo
806d8b4b1d Make scoring int-based again 2020-10-01 12:13:24 +09:00
smoogipoo
cc9fa4675c Adjust HP increases 2020-09-29 17:59:42 +09:00
smoogipoo
a1394c1830 Fix a few missed judgements 2020-09-29 16:33:38 +09:00
smoogipoo
519f376e7b Standardise Judgement across all rulesets 2020-09-29 16:33:38 +09:00
Dean Herbert
a210deee9a Remove unnecessary depth setter 2020-07-28 12:16:01 +09:00
Bartłomiej Dach
5fc7039bf2 Prevent DrawableJudgement from removing other children 2020-07-27 19:07:21 +02:00
smoogipoo
8a3cadc111 Fix judgement animations not resetting on use 2020-07-13 21:21:59 +09:00
Dean Herbert
f872343bab Make Apply virtual to further simplify application process 2020-07-10 18:35:20 +09:00
Dean Herbert
8aff828dfe Move application of judgements to Apply method 2020-07-10 18:34:31 +09:00
Dean Herbert
51050ec4ef Add per-result type pooling 2020-07-06 12:54:39 +09:00
Dean Herbert
ffec4298a7 Use DrawablePool for DrawableJudgements 2020-07-04 16:45:50 +09:00
smoogipoo
5f09c70f75 Move judgement colours to OsuColour 2020-03-18 17:21:36 +09:00
smoogipoo
fab49fb1ba Slightly increase HP awarded for 100s 2020-02-26 12:18:46 +09: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
recapitalverb
c753cb46c5 Use [Resolved] wherever possible 2020-02-14 20:14:00 +07:00
smoogipoo
3b07c3913d Add perfect and ok values, move to base Judgement 2019-12-26 15:00:59 +09:00
Dean Herbert
0640b2eb35
Fix judgement sizes not matching legacy skins (#6145)
Fix judgement sizes not matching legacy skins
2019-09-19 18:49:35 +09:00
Dean Herbert
e6c36a8bc7 Fix scaling mode being applied to judgements 2019-09-19 17:36:32 +09:00
Dean Herbert
26eca5b1f4 Fix judgement sizes not matching skins stable 2019-09-18 02:56:03 +09:00
Dean Herbert
ba76f09c99 Add initial implementation of hit lighting
Requires a supporting skin, like osu!classic for now.
2019-09-18 02:49:54 +09:00
Dean Herbert
6ce36bd39e
Merge branch 'master' into stop-counting-to-score-after-fail 2019-09-06 16:12:53 +09:00
Dean Herbert
05ed9d3802 Merge remote-tracking branch 'upstream/master' into non-timeoffset-judgements 2019-09-03 13:07:58 +09:00
smoogipoo
0c73c5acf3 Expose full hitobject rather than hit windows 2019-09-02 17:14:40 +09:00
smoogipoo
f2bdf94a1d Add HitWindows to JudgementResult to indicate timing errors 2019-09-02 16:28:14 +09:00
Dean Herbert
70e417533f Update naming 2019-08-30 15:13:29 +09:00
Dean Herbert
a15828ab25 Introduce the concept of SkinComponents
Removes reliance on string lookups and better defines elements for introduction into database
2019-08-30 14:55:52 +09:00
smoogipoo
88fa06efba Refactor as proposed 2019-08-09 13:38:04 +09:00
Dean Herbert
74c961bcff Add more flexible skin element confine modes 2019-07-22 14:42:56 +09:00
smoogipoo
d7c09e7dbd Merge remote-tracking branch 'origin/master' into fix-new-inspections
# Conflicts:
#	osu.Game.Rulesets.Catch/Judgements/CatchDropletJudgement.cs
#	osu.Game.Rulesets.Catch/Judgements/CatchJudgement.cs
#	osu.Game.Rulesets.Mania/Scoring/ManiaScoreProcessor.cs
#	osu.Game.Rulesets.Osu/Replays/OsuAutoGenerator.cs
#	osu.Game.Rulesets.Osu/UI/Cursor/CursorTrail.cs
#	osu.Game.Tests/Visual/SongSelect/TestCaseBeatmapScoresContainer.cs
#	osu.Game/Graphics/OsuFont.cs
#	osu.Game/Online/API/Requests/Responses/APILegacyScoreInfo.cs
#	osu.Game/Overlays/Profile/Header/BadgeContainer.cs
#	osu.Game/Overlays/Profile/ProfileHeader.cs
#	osu.Game/Screens/Select/PlaySongSelect.cs
#	osu.Game/Skinning/LegacySkinDecoder.cs
2019-05-07 13:20:17 +09:00
smoogipoo
4edb17a88a Make hp work + cleanup 2019-04-22 18:02:49 +09:00
smoogipoo
fbb4e9df04 Implement hp at base ScoreProcessor 2019-04-22 16:51:38 +09:00
Dean Herbert
c39c37a18d Apply more missed cases 2019-04-01 12:44:46 +09:00
Dean Herbert
3d4a80957f Improve comment 2019-03-13 18:27:54 +09:00
David Zhao
7eb253b687 Fix incorrect scale duration 2019-03-12 19:44:53 +09:00
David Zhao
3b3b1e51ee Move hit animation logic into virtual method 2019-03-12 19:41:33 +09:00
David Zhao
9850122245 Fix incorrect delay 2019-03-12 19:24:46 +09:00
David Zhao
12f334035f Create properties for use in DrawableManiaJudgement 2019-03-12 19:23:24 +09:00
smoogipoo
d61dfe888e Fix venera fonts not being correctly specified 2019-02-22 19:42:09 +09:00
Dean Herbert
3015d40f8f
Merge branch 'master' into osu-fontusage 2019-02-22 18:09:23 +09:00
Dean Herbert
f919f2252f Add ToString for Judgements to ease debugging 2019-02-22 12:02:54 +09:00
smoogipoo
a2aa3ec5cb Adjust sprite texts in-line with framework changes 2019-02-20 15:03:20 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Ivan Pavluk
1b6658f4ee Move HealthIncreaseFor to Judgement 2018-12-06 15:09:42 +07:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
Dan Balasescu
87d8945af9
Give the body a size 2018-10-02 09:33:31 +09:00
Kyle Chang
88b0c234cc Move judgement text to internal container 2018-09-30 04:01:33 -04:00
Kyle Chang
7a43677849 Make judgements scale with cs 2018-09-22 22:54:38 -04:00
smoogipoo
b35817c877 More xmldocs to hitobject/drawablehitobject 2018-08-06 10:55:38 +09:00
smoogipoo
3619290c34 Split out judgement definition from judgement result 2018-08-02 20:35:54 +09:00
smoogipoo
d51d0e8547 Initial structure for new hitobject judgement system 2018-08-01 21:45:59 +09:00
Dean Herbert
5364a6148a Use ToUpperInvariant 2018-07-24 14:42:06 +02:00
Dean Herbert
ab9340f4be Fix usage of culture local ToUpper causing incorrect display on Turkish machines
Closes #3098.
2018-07-24 11:37:43 +02:00
Dean Herbert
e12ce3c2a8 Adjust xmldoc 2018-06-29 17:21:55 +09:00
Dean Herbert
c0b65a6a73 Change default IsBonus definition and remove unnecessary overrides 2018-06-29 17:07:08 +09:00
Crusensis
fbc0cd6f5f Split AffectsCombo into IsBonus 2018-06-09 18:14:33 -07:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
Dan Balasescu
bed46b1f7e
Split local variable assignment from construction of children 2018-04-04 15:13:42 +09:00
Dan Balasescu
9df525a38d
Remove extra whitespace
In general we don't really do this elsewhere in the codebase.
2018-04-04 15:11:16 +09:00
Ali Rizvi
7fed8d64de Implement Judgement Colours 2018-03-31 04:59:08 +09:00
Dean Herbert
0e669c9a3f Fix many warnings 2018-03-24 18:23:22 +09:00
Dean Herbert
eb643b690a
Merge branch 'master' into more-skinning 2018-03-12 11:55:50 +09:00
Dean Herbert
c70be29eda Move legacy conversion to LegacySkin 2018-03-12 11:30:13 +09:00
Dean Herbert
b62ed004f2 Remove judgements when deciding a new judgement for a HitObject
Generally happens when rewinding.
2018-03-07 19:14:42 +09:00
Dean Herbert
05eb678654 Add skin support for judgements 2018-03-07 18:21:05 +09:00
Dean Herbert
053a29f9a7 Make judgements visually smaller
This is a temporary change based on people's feedback. Makes judgements feel a lot better.

nb: This is one of my changes that I've had deployed sinfce the end-of-year 2017 build.
2018-01-15 17:41:17 +09:00
Dean Herbert
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
Aergwyn
ccb69d16d9 move HitResult in Scoring namespace to replace HitCount 2017-12-30 21:23:18 +01:00
Dean Herbert
2610cadd3c CI fixes 2017-11-21 12:11:29 +09:00
Dean Herbert
4f6263ef86 Make many internal classes and methods public
This is important when using dynamic compiling to rapidly iterate. Until we actually split projects out into pieces (like the abstract ruleset project we have talked about) there is no advantage to using internal in the osu! game code.
2017-11-21 12:06:16 +09:00
smoogipoo
326891f51c Add "Final" to better determine when to stop processing the hitobject 2017-11-02 21:54:28 +09:00