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

359 Commits

Author SHA1 Message Date
Dean Herbert
a3dc1d5730 Update existing implementations 2020-11-04 17:14:23 +09:00
Bartłomiej Dach
1f0620ffd4 Replace assignment references to HitResult.Miss with Judgement.MinResult 2020-10-02 23:31:24 +02:00
Bartłomiej Dach
2b1ef16f89 Replace comparison references to HitResult.Miss with IsHit 2020-10-02 23:31:24 +02:00
smoogipoo
e789e06c86 Don't display hold note tick judgements 2020-09-29 16:33:38 +09:00
smoogipoo
b1877b649b Use new hit results in mania 2020-09-29 16:33:38 +09:00
Bartłomiej Dach
d419fe4dbf Remove note shaking mention that doesn't apply in mania 2020-08-31 12:03:05 +02:00
smoogipoo
acbeb5406f Add/improve xmldoc 2020-08-31 13:33:41 +09:00
smoogipoo
aa151e4cd7 Merge branch 'master' into mania-notelock 2020-08-31 13:31:41 +09:00
smoogipoo
deb172bb6c Implement basic mania hit order policy 2020-08-27 20:24:21 +09:00
smoogipoo
1db836e9e0 Merge branch 'master' into hold-note-lighting 2020-08-26 20:22:07 +09:00
smoogipoo
9372c6eef6 Implement hold note lighting 2020-08-26 20:21:56 +09:00
smoogipoo
b3338347b7 Remove fade on successful hits 2020-08-21 23:56:27 +09:00
smoogipoo
8632c3adf0 Fix hold notes bouncing with SV changes 2020-08-21 23:11:15 +09:00
Dan Balasescu
42ee9b75df
Apply suggestions from code review
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2020-08-21 19:38:59 +09:00
smoogipoo
aead13628b Rework freezing to use masking 2020-08-21 17:52:42 +09:00
smoogipoo
37cf7999b1 Merge branch 'master' into hold-note-freeze 2020-08-21 14:39:25 +09:00
Dean Herbert
74f8e61381
Merge branch 'master' into mania-body-recycling 2020-08-19 20:40:15 +09:00
smoogipoo
1d9d885d27 Mask the tail as the body gets shorter 2020-08-19 01:40:26 +09:00
smoogipoo
4d4d9b7356 Add rewinding support 2020-08-19 01:37:31 +09:00
smoogipoo
99315a4aa7 Fix incorrect anchors for up-scroll 2020-08-19 00:05:36 +09:00
smoogipoo
988ad378a7 Fix body size + freeze head piece 2020-08-19 00:05:05 +09:00
smoogipoo
385f7cf85d Implement mania hold note body recycling 2020-08-18 17:56:48 +09:00
smoogipoo
583760100a Implement mania invert mod 2020-08-18 01:40:55 +09:00
smoogipoo
548ccc1a50 Initial implementation of hold note freezing 2020-08-18 00:29:00 +09:00
smoogipoo
f044c06d08 Fix hold notes accepting presses during release lenience 2020-07-20 22:26:58 +09:00
Dean Herbert
cbd563e80b Rename to IHasDuration 2020-05-27 12:38:39 +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
smoogipoo
330521a2ae Fix lifetime override not working 2020-04-28 15:34:10 +09:00
Dean Herbert
59bd2b3035
Merge pull request #8823 from smoogipoo/all-ruleset-encoders
Implement legacy beatmap encoding for all rulesets
2020-04-24 17:49:34 +09:00
smoogipoo
4f0b5a34d3 Fix hold note placement body sized incorrectly 2020-04-23 12:53:23 +09:00
smoogipoo
6da0872ae5 Use the last node sample for the tail note 2020-04-22 09:06:04 +09:00
smoogipoo
1f962f5c56 Reword comment 2020-04-22 09:06:04 +09:00
smoogipoo
cc0c82aaeb Implement IHasXPosition on ManiaHitObject 2020-04-22 09:06:04 +09:00
smoogipoo
d957614fc9 Cleanup handling of mania samples 2020-04-22 09:06:04 +09:00
Dean Herbert
c51bad0e35 Cache ManiaPlayfield instead 2020-04-13 13:42:21 +09:00
Dean Herbert
cdff6060d3 Remove recursive hierarchy traversal for mania sample balance 2020-04-13 13:01:27 +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
smoogipoo
1f797207f7 Rework lookups to not require total playfield columns 2020-04-03 12:31:05 +09:00
smoogipoo
3cd353d387 Fix possible nullrefs 2020-03-31 16:57:58 +09:00
smoogipoo
1952fcc0ce Implement mania hold note skinning 2020-03-31 16:42:35 +09:00
smoogipoo
11430d616e Allow null hitobject 2020-03-31 16:00:08 +09:00
smoogipoo
9a37a328b6 Add component overrides for hold note head/tail 2020-03-31 15:39:00 +09:00
smoogipoo
c4f76ffdaf Implement mania note skinning 2020-03-31 15:29:25 +09:00
smoogipoo
da89798765 Merge remote-tracking branch 'origin/master' into layout-rework 2020-02-26 15:06:40 +09:00
smoogipoo
6c28fd21c7 osu-side changes 2020-02-24 20:52:15 +09:00
Dean Herbert
0e29d3c4a2 Correctly expire bar lines in osu!taiko and osu!mania 2020-02-23 13:50:05 +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
Dean Herbert
cd6902a312 Make EndTime and RepeatCount settable 2020-02-05 17:52:51 +09:00
smoogipoo
7b2f58eb30 Apply OnRelease method signature refactorings 2020-01-22 13:22:34 +09:00
mcendu
a897f497a2
remove LaneGlowPiece and GlowPiece 2020-01-04 18:35:37 +08:00
smoogipoo
63c96d5a83 Fix tail note not properly capping result 2019-12-23 18:49:08 +09:00
smoogipoo
d6fd1007c4 internal -> public 2019-12-23 18:48:14 +09:00
smoogipoo
7ac6f68de8 Rewrite hold note input handling 2019-12-23 17:48:57 +09:00
smoogipoo
42853b5af6 Separate head/tail notes from hold note class 2019-12-23 17:48:57 +09:00
smoogipoo
bc41eb176e Clean up head/tail setting in various DHOs 2019-10-17 14:02:23 +09:00
smoogipoo
f429a8f7c2 Add back/obsolete old AddNested() method 2019-10-17 14:02:08 +09:00
smoogipoo
d8f3678c3c Rename parameter 2019-10-17 12:53:54 +09:00
smoogipoo
8a284bacba Make mania use the new nested hitobject structure 2019-10-17 12:37:20 +09:00
Dean Herbert
51bf600ea7 Use empty hitwindows instead of null 2019-10-09 19:08:31 +09:00
Bartłomiej Dach
9323df26a1 Decouple bar line hitobjects from generator
Introduce an IBarLine interface, which together with generic constraints
helps decouple BarLineGenerator from the actual hitobject types it
creates. Thanks to this, all rulesets that want bar lines can provide
an implementation of IBarLine that also derives from the base hitobject
class.

This allows DrawableBarLines in taiko and mania to be migrated back to
DrawableTaikoHitObject and DrawableManiaHitObject base classes
respectively. This in turn resolves #6215 without code duplication,
since the missing anchoring application is now done in mania's
DrawableBarLine through deriving from DrawableManiaHitObject.
2019-09-25 00:36:27 +02:00
Vperus
2d99d41a6d Remove unused CORNER_RADIUS 2019-09-20 18:17:35 +03:00
Dean Herbert
9fc60aeefc Merge branch 'master' into reset-dho-lifetimes 2019-09-12 19:29:14 +09:00
Dean Herbert
f21e47d6d2 Move expire to DrawableHitObject 2019-09-12 19:29:08 +09:00
Dan Balasescu
f9b64446e9
Merge branch 'master' into mania-note-sizing 2019-09-12 14:20:28 +09:00
Dean Herbert
06618b6d02 Fix osu!mania minor barline alpha not being respected 2019-09-11 18:45:47 +09:00
Dean Herbert
44d90a4e86 Increase note height 2019-09-11 18:16:14 +09:00
Dean Herbert
da6ba20fc8 Reduce glow on notes 2019-09-11 18:15:03 +09:00
Dean Herbert
af3bb5a2cd Centralise and share bar line generation code between rulesets 2019-09-10 13:30:54 +09:00
Dean Herbert
f925e781a9 Refactor HitWindows for legibility 2019-09-06 15:24:14 +09:00
smoogipoo
8302658186 Fix other potential nullref cases that rider missed 2019-09-02 18:31:33 +09:00
smoogipoo
f3656475de Return null hitwindows for non-time-based objects 2019-09-02 16:10:30 +09:00
Dean Herbert
9a98f39f06 Share logic with other rulesets (and make default) 2019-08-28 18:12:47 +09:00
smoogipoo
fff2da7289 Fix hold notes disappearing instantaneously 2019-08-27 12:59:57 +09:00
smoogipoo
6014a66804 Add initial fade transform to fix rewind 2019-08-27 12:22:31 +09:00
iiSaLMaN
c11f508400 Use transform management for mania hit objects 2019-08-26 22:06:30 +03:00
Dean Herbert
48716f8f2b Update framework 2019-08-21 13:29:50 +09:00
Dean Herbert
90b1fe81f3 Update cached usage in line with framework changes 2019-08-09 19:12:29 +09:00
Dean Herbert
c3b81bef4a Flip default to the preferred method going forward 2019-07-22 15:55:38 +09:00
Dean Herbert
8327452fe1 Make AccentColour a bindable 2019-07-22 14:48:59 +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
a56e29347f Adjust namespaces 2019-04-02 14:51:28 +09:00
Dean Herbert
c39c37a18d Apply more missed cases 2019-04-01 12:44:46 +09:00
Dean Herbert
612db31c38 Apply newline additions 2019-04-01 12:16:32 +09:00
Dean Herbert
39df8cce19 Fix incorrect usage of InternalChildren
Could cause overwriting of components added by base DrawableHitObjcet class (such as samples)
2019-03-25 13:48:55 +09:00
Dean Herbert
0788a7e9f1
Merge branch 'master' into more-inspections 2019-02-28 14:32:57 +09:00
Dean Herbert
42be7857d1 Use expression body for property get/set where possible 2019-02-28 13:58:19 +09:00
Dean Herbert
26d53d06a9 Fix remaining issues 2019-02-28 13:31:40 +09:00
Dean Herbert
367bc53a06 Revert some more instances of 'e' variable names 2019-02-22 20:15:25 +09:00
Dean Herbert
452caabd40
Apply suggestions from code review
Co-Authored-By: smoogipoo <1329837+smoogipoo@users.noreply.github.com>
2019-02-22 17:06:49 +09:00
smoogipoo
d8c55bc729 Adjust namespaces 2019-02-21 19:05:52 +09:00
smoogipoo
bca347427f Update with framework bindable changes 2019-02-21 18:56:34 +09:00
smoogipoo
68725dc005 Implement new difficulty calculator for Rulesets.Mania 2019-02-18 15:00:20 +09:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Unknown
6eff79913b remove blank lines 2019-01-11 10:34:56 +01:00
Ivan Pavluk
cb2444e01c Remove Meh from TaikoHitWindows 2018-12-06 19:04:54 +07:00
Dean Herbert
5254b07680 Merge remote-tracking branch 'upstream/master' into inter-column-movements 2018-11-30 11:57:53 +09:00
Dean Herbert
ab0ce46362 Make hold note placement blueprints look a bit more blueprint-y 2018-11-29 18:13:15 +09:00
Dean Herbert
132d334e15 Merge branch 'master' into hold-note-placement 2018-11-29 17:02:55 +09:00
smoogipoo
56032a4522 Merge branch 'mania-selection-movement' into inter-column-movements
# Conflicts:
#	osu.Game.Rulesets.Mania/Edit/Blueprints/ManiaSelectionBlueprint.cs
#	osu.Game/Screens/Edit/Compose/Components/SelectionHandler.cs
2018-11-26 11:45:48 +09:00
smoogipoo
5d6a438f98 Make selected mania hitobjects always alive 2018-11-26 11:34:25 +09:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
smoogipoo
2ee56e4a78 Add a body piece 2018-11-19 18:59:05 +09:00
smoogipoo
f7fc2ca569 Basic inter-column selection movement 2018-11-15 21:37:22 +09:00
smoogipoo
9fde7f7f44 Move scrolling info to osu.Game 2018-11-12 17:34:35 +09:00
Dean Herbert
ced6e5efd0 Synchronise animation; reduce flashiness 2018-09-07 17:17:03 +09:00
Dean Herbert
1e39b84089 Increase visibility of osu!mania long notes 2018-09-06 23:49:54 +09:00
smoogipoo
74a79bfcfa Fix hold note head/tails not being nested hitobjects 2018-08-16 10:45:06 +09:00
Dan Balasescu
c1517e1521
Merge branch 'master' into judgement-rework 2018-08-06 12:30:46 +09:00
smoogipoo
3a7488767c Make HitObject not store the judgement 2018-08-06 11:50:18 +09:00
smoogipoo
741ec0021e Rename more judgement-related methods to "result" 2018-08-06 11:31:46 +09:00
smoogipoo
2a4994e5ce Make hitobjects only have one judgement + result 2018-08-03 15:38:48 +09:00
smoogipoo
807794d512 Make Rulesets.Mania use the new judgement result structure 2018-08-02 20:36:54 +09:00
smoogipoo
cd70e5e30b Migrate Rulesets.Mania to the new judgement system 2018-08-02 16:44:01 +09:00
smoogipoo
b7721edc80 Remove more unnecessary changes 2018-07-19 18:25:28 +09:00
smoogipoo
577ff4cc7f Merge remote-tracking branch 'origin/master' into mania-mask-container
# Conflicts:
#	osu.Game.Rulesets.Mania/Objects/Drawables/DrawableHoldNote.cs
#	osu.Game.Rulesets.Mania/UI/ManiaPlayfield.cs
#	osu.Game.Rulesets.Mania/UI/ManiaRulesetContainer.cs
#	osu.Game.Rulesets.Mania/UI/ManiaStage.cs
2018-07-17 13:13:57 +09:00
smoogipoo
f007e71c87 Retrieve the mania key action through DI 2018-07-02 12:31:41 +09:00
smoogipoo
10d1dfa7cd A bit of cleanup 2018-06-11 16:10:27 +09:00
smoogipoo
baaf431b9e Make IScrollingInfo and store direction as bindable 2018-06-11 13:42:13 +09:00
smoogipoo
ca5103615d DI the scrolling info rather than pass by ctor 2018-06-11 13:42:13 +09:00
smoogipoo
0fb4e6b41b Fix hold note body not following the scroll direction 2018-06-08 18:16:55 +09:00
smoogipoo
5c8bea82f8 Fix scroll direction not applying to nested hitobjects 2018-06-08 15:29:08 +09:00
smoogipoo
d73c2a1654 Fix various note elements not following the scroll direction 2018-06-08 15:24:19 +09:00
smoogipoo
80a577f182 Fix notes not scrolling correctly 2018-06-08 15:16:45 +09:00
smoogipoo
55475d129f Merge remote-tracking branch 'origin/master' into mania-mask-container
# Conflicts:
#	osu.Game.Rulesets.Mania/Objects/Drawables/DrawableHoldNote.cs
2018-06-07 19:19:20 +09:00
smoogipoo
485026da6f Merge remote-tracking branch 'origin/master' into mania-mask-container
# Conflicts:
#	osu.Game.Rulesets.Mania/Objects/Drawables/DrawableHoldNote.cs
2018-06-07 15:32:31 +09:00
Dan Balasescu
8d0161c2fc Refactoring 2018-06-07 15:11:48 +09:00
Dean Herbert
f9449e841a Improve overall visual clarity and explosion effects 2018-06-07 14:30:27 +09:00
Dean Herbert
dff4b360b7 Fix ticks not getting accent colour 2018-06-07 14:30:27 +09:00
Dean Herbert
56ea1c1d63 Adjust hold note visibility and glow composition 2018-06-07 14:30:27 +09:00
Dean Herbert
dc10277d50 Thicker bar lines and new design colour 2018-06-07 11:16:26 +09:00
smoogipoo
31cbec99a1 Fix mania hold notes displaying judgements 2018-05-28 18:12:49 +09:00
AlFasGD
c7dfe88ad2 Complete PR's independence 2018-05-22 09:18:02 +03:00
AlFasGD
61a18b952f Remove useless things 2018-05-21 23:24:10 +03:00
AlFasGD
d504a44dfb Implement mask layering (incomplete) 2018-05-21 23:08:04 +03:00
Dean Herbert
8e784d9104
Merge branch 'master' into fix-conversion-hitwindows 2018-05-18 11:59:16 +09:00
smoogipoo
43cdbec0a3 Fix hold note hitwindow lenience 2018-05-17 13:59:04 +09:00
smoogipoo
f67d263596 Move ruleset-specific hitwindows to post-converted hitobjects 2018-05-17 13:35:15 +09:00
smoogipoo
2fc1939d65 Fix hold notes never dying 2018-05-16 19:43:01 +09:00
smoogipoo
0cdd39b8b8 Add todo because TailNote shouldn't hardcore lenience 2018-05-11 15:32:13 +09:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
Dean Herbert
cb3d0db555 Move combo colours completely out of HitObjects 2018-03-20 15:50:12 +09:00
Dean Herbert
a42035f494 Make DrawableHitObject a CompositeDrawable
No reason for it to be a container.
2018-03-15 13:41:06 +09:00
Poyo
e187c6453d Added mania-difficulty mod support 2018-03-05 18:19:06 -08:00
Poyo
96f416fef3 Update code style
Sorry, bot overlords.
2018-02-26 00:18:54 -08:00
Poyo
31cf00e3b8 Implement mania star difficulty calculation 2018-02-25 23:52:38 -08:00
smoogipoo
46284c61ae Return HitResult.None instead of null 2018-02-08 14:25:59 +09:00
smoogipoo
802aaefe35 Give rulesets a way to disable/enable perfect/ok hit results 2018-02-08 13:54:08 +09:00
smoogipoo
15fe1a7966 Remove mania's custom storage of HitWindows 2018-02-02 18:53:18 +09:00