Dean Herbert
ddef7fa3ba
Repair behavioural change
2019-10-04 13:32:47 +08:00
Dean Herbert
b28689c774
Fix key counters appearing negative on intense beatmaps
...
When `FrameStabilityContainer` decides it needs multiple updates on the same frame, it ends up with an elapsed time of zero. This was interacting badly with the condition used in `RulesetInputManager` to govern playback direction.
I have changed this to use `Rate` as exposed by the frame stable clock.
- Closes #6198 .
2019-10-03 15:01:54 +08:00
smoogipoo
244627ff10
Add comment + test for slider multiplier
2019-09-25 20:12:01 +09:00
smoogipoo
4abe0473b9
Fix relative beat length not considering slider multiplier
2019-09-24 16:49:42 +09:00
smoogipoo
af0c15a93c
Fix initial hitobject states not being recomputed correctly
2019-09-24 16:48:39 +09:00
Andrei Zavatski
e7118a9272
Use System mod type for NoMod
2019-09-20 23:47:21 +03:00
Andrei Zavatski
0d43f4e4f9
Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-mod-selector
2019-09-20 23:39:44 +03:00
Vperus
ac8fe6045f
Fixed typo
...
Changed CreateReourceStore() to CreateResourceStore()
2019-09-20 19:58:39 +03:00
Andrei Zavatski
0cf4db899f
Few cleanups
2019-09-19 17:03:52 +03:00
Andrei Zavatski
529a1c3b91
Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-mod-selector
2019-09-19 16:46:58 +03:00
Dean Herbert
0cdf125c1e
Handle key counter rewinding in a better way
...
Use ElapsedFrameTime rather than storing state data
2019-09-12 15:42:14 +09:00
Dean Herbert
bf6f803e69
Nest temporary class
2019-09-06 12:12:27 +09:00
Dean Herbert
7d1f5310d2
Don't implement anything
2019-09-06 12:03:29 +09:00
Dean Herbert
50985d1b1d
Fix disposal logic
2019-09-06 10:43:19 +09:00
Dean Herbert
60c2d113b8
Fix typo
2019-09-05 23:07:03 +09:00
Dean Herbert
0a6c42972c
Add back missing sample fallback to default skin
2019-09-05 23:01:35 +09:00
Dean Herbert
6197c7fd31
Add automatic resource mapping for rulesets to their own dll
2019-09-04 20:29:28 +09:00
Andrei Zavatski
04111cc3b7
Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-mod-selector
2019-09-04 02:46:23 +03:00
Dean Herbert
4cad55cee6
Move hit windows lookup to DrawableRuleset
2019-09-03 13:05:03 +09:00
Dean Herbert
91e3eeb1c0
Merge branch 'master' into beatmap-mod-selector
2019-09-02 21:35:42 +09:00
smoogipoo
d74e1b9b64
Remove from dictionary on Remove()
2019-09-02 15:06:43 +09:00
smoogipoo
8f8d35bd15
Delay initial hitobject state computation
2019-09-02 15:06:34 +09:00
Dean Herbert
7ca51d3866
Fix resume overlay being drawn below cursor
...
Closes #5905 .
2019-09-02 11:20:55 +09:00
smoogipoo
6ab2b20c70
Add an interface for working beatmaps
2019-08-29 19:38:44 +09:00
Dean Herbert
f6ad95018a
Centralise default beat length specification
2019-08-28 20:22:16 +09:00
Dean Herbert
6aab7168d4
Merge branch 'master' into relative-beat-lengths
2019-08-27 10:59:52 +09:00
Dean Herbert
07380af877
Merge branch 'master' into scrolling-lifetime-safety
2019-08-26 19:07:05 +09:00
Dean Herbert
0422c19c2f
Group lifetime setters together
2019-08-26 19:06:23 +09:00
Dean Herbert
dffb2d6474
Merge branch 'master' into relative-beat-lengths
2019-08-26 18:59:50 +09:00
smoogipoo
fb1cd9e5e7
Add a sane default lifetime end for scrolling hitobjects
2019-08-26 16:47:23 +09:00
smoogipoo
6596d7fc46
Add nullref safety to FrameStablePlayback boolean
2019-08-26 16:33:24 +09:00
smoogipoo
1cfe2b7de8
Fix timing points beyond the end time potentially becoming dominant
2019-08-26 16:31:34 +09:00
smoogipoo
d99c60adc7
Provide a way to scale beat lengths relative to each other
2019-08-26 12:51:13 +09:00
Dean Herbert
acc07c1d65
Remove mod icon offset
2019-08-21 22:18:29 +09:00
Dean Herbert
152df9f3d5
Remove accidental blank line
2019-08-16 20:23:09 +09:00
Dean Herbert
d11b896148
Move FrameStablePlayback handling to early return
2019-08-16 20:21:00 +09:00
Dean Herbert
58d2268b9e
Combine conditionals that provide the same behaviour
2019-08-16 19:52:35 +09:00
smoogipoo
8c67f58e2d
Disable frame-stable playback in the editor
2019-08-15 18:25:31 +09:00
Andrei Zavatski
b71c776e65
Add web-like hover behavior
2019-08-12 16:20:36 +03:00
Andrei Zavatski
62a91e4aaa
Add the ability to override Highlighted action to the ModIcon
2019-08-12 15:20:21 +03:00
Andrei Zavatski
16b6ed846f
Merge remote-tracking branch 'refs/remotes/ppy/master' into beatmap-mod-selector
2019-08-12 14:46:24 +03:00
Dean Herbert
90b1fe81f3
Update cached usage in line with framework changes
2019-08-09 19:12:29 +09:00
Andrei Zavatski
1d42f0959a
ModIcon improvements
2019-08-07 08:46:27 +03:00
Andrei Zavatski
87974850dd
Initial implementation
2019-08-07 08:42:43 +03:00
smoogipoo
bc80fa11bb
Mode IApplicableToBeatmap application to WorkingBeatmap
2019-08-01 12:41:46 +09:00
smoogipoo
8a64ab0384
Remove generics from IApplicableToBeatmap
2019-08-01 12:39:32 +09:00
Dean Herbert
f1423b8cb5
Add more brackets
2019-07-18 00:03:04 +09:00
smoogipoo
a9286fee07
Recycle slider paths when the parenting slider dies
2019-07-17 16:20:27 +09:00
Dean Herbert
609a82bc94
Update VisibilityContainer usage in line with framework
2019-06-11 15:13:58 +09:00
Dean Herbert
9c214c3f0e
Add animation on failing
2019-06-04 16:13:16 +09:00
smoogipoo
3fe61c4a7e
Trim whitespace
2019-05-10 18:48:39 +09:00
Dan Balasescu
425154c264
Merge branch 'master' into progress-bar-show-seek
2019-05-10 18:24:15 +09:00
smoogipoo
ad4b4f3422
Use nullable cancellation tokens
2019-05-10 17:42:45 +09:00
Dean Herbert
a44296a6db
Merge branch 'master' into progress-bar-show-seek
2019-05-10 17:27:49 +09:00
Dean Herbert
21ab628f41
Merge branch 'master' into player-load-cancellations
2019-05-10 16:58:36 +09:00
smoogipoo
d25d39b315
Add cancellation to storyboard/hitobject loading
2019-05-10 16:31:09 +09:00
Dean Herbert
9248e6290c
Use FrameStabilityClock to denote current position on song progress
2019-05-09 18:09:26 +09:00
Dean Herbert
3bcfc86b9c
Allow custom MaxCatchUpFrames to be specified
...
Also adjusts the default to allow for smoother seeking.
2019-05-09 16:39:03 +09:00
Dean Herbert
66594b7a1b
Pass GameplayStartTime to FrameStabilityContainer to allow bypassing prior to start
2019-05-09 16:39:03 +09:00
smoogipoo
13b9b04bb8
Apply more cases/fix some existing ones
2019-05-07 13:23:09 +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
0bd35ab7bb
Turn on warnings, resolve issues
2019-04-25 17:36:17 +09:00
Dean Herbert
60328cf1fb
Ensure FrameStabilityContainer's ElapsedTime is zero on initial seek
2019-04-24 15:25:53 +09:00
Dean Herbert
80e1568e97
Fix FrameStabilityContainer performing frame-stable seeks
2019-04-24 15:25:52 +09:00
smoogipoo
6c568d228f
Add comment
2019-04-23 13:45:51 +09:00
smoogipoo
6add395288
Fix gameplay cursor being hidden in tests/replays
2019-04-23 13:32:44 +09:00
Dean Herbert
908eee9942
Fix pause tests
2019-04-22 18:29:51 +09:00
smoogipoo
ac2eabc9bf
Fix replay rewinding not respecting 60fps playback
2019-04-16 17:47:00 +09:00
smoogipoo
0222424aef
Make mods IReadOnlyList<Mod> gamewide
...
Prevents potential multiple evaluations of enumerable.
2019-04-10 17:20:36 +09:00
smoogipoo
7845d542e3
Cache mods as array in DrawableRuleset
2019-04-10 17:20:36 +09:00
smoogipoo
4310f07a5c
Rename SelectedMods -> Mods
2019-04-10 12:03:57 +09:00
smoogipoo
c584967eb1
Remove mods from workingbeatmap
2019-04-09 12:59:32 +09:00
Dean Herbert
184403c7e1
Merge branch 'master' into resume-cursor-2
2019-04-01 14:24:00 +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
42eaabe24c
Fix editor blueprints being misplaced
...
Regressed with PlayfieldAdjustmentContainer changes.
2019-03-31 01:29:37 +09:00
Dean Herbert
6949c233bf
Merge remote-tracking branch 'upstream/master' into resume-cursor-2
2019-03-29 15:02:12 +09:00
Dean Herbert
14cef94a53
Merge remote-tracking branch 'upstream/master' into hitobject-drawable-representation
2019-03-29 12:59:26 +09:00
Dean Herbert
fed58fba3a
Merge remote-tracking branch 'upstream/master' into resume-cursor-2
2019-03-29 12:14:28 +09:00
Dean Herbert
ed0bf59e73
Merge branch 'master' into universal-playfield-adjust
2019-03-29 11:51:44 +09:00
Dan Balasescu
bab7d78130
Remove redundant cast
...
Co-Authored-By: peppy <pe@ppy.sh>
2019-03-29 11:36:40 +09:00
Dean Herbert
785433bb74
Merge branch 'master' into universal-playfield-adjust
2019-03-29 11:25:54 +09:00
Dan Balasescu
d410054ec8
Merge branch 'master' into key-counter-display
2019-03-29 11:22:59 +09:00
Dean Herbert
7715606188
Merge branch 'master' into sprite-icon-compatibility
2019-03-29 11:15:34 +09:00
Dean Herbert
8642886ffa
Merge branch 'sprite-icon-compatibility' into universal-playfield-adjust
2019-03-29 00:39:51 +09:00
Dean Herbert
de80fc0eac
Update icon usage to match framework changes
2019-03-27 19:29:27 +09:00
Dean Herbert
3fcbc2eab3
Fix key counter getting overridden
2019-03-27 10:31:21 +09:00
Dean Herbert
15821c7511
Fix cursor adding
2019-03-26 17:04:14 +09:00
Dean Herbert
dde7788c44
Merge branch 'universal-playfield-adjust' into resume-cursor-2
2019-03-26 13:58:48 +09:00
Dean Herbert
fb302e7ad8
Remove using
2019-03-26 13:58:07 +09:00
Dean Herbert
8658de5108
Rename KeyCounterCollection -> KeyCounterDisplay
...
Also fix not working
2019-03-26 13:52:48 +09:00
Dean Herbert
27cb4ce0d1
Remove poop
2019-03-26 13:48:35 +09:00
Dean Herbert
fbc97edc55
Add base cursor class to retrieve true visibility state
2019-03-26 13:41:30 +09:00
Dean Herbert
b4d785c76c
Don't update gameplay loop while paused
2019-03-26 13:36:17 +09:00
Dean Herbert
ed3746e166
Make PlayfieldAdjustmentContainer universal
2019-03-26 13:32:44 +09:00
Dean Herbert
b75ea295db
Rename KeyCounterCollection -> KeyCounterDisplay
...
Also fix not working
2019-03-26 11:28:43 +09:00
Dean Herbert
82140c38fc
Apply CI fixes
2019-03-25 22:00:33 +09:00
Dean Herbert
a642f10131
Remove redundant cast
2019-03-25 21:52:01 +09:00
Dean Herbert
245f463e3f
Don't update gameplay loop while paused
2019-03-25 20:31:55 +09:00
Dean Herbert
a23dfb58ad
Add base cursor class to retrieve true visibility state
2019-03-25 20:31:55 +09:00
Dean Herbert
06d4856e17
Remove unnecessary CursorTargetContainer
2019-03-25 20:31:55 +09:00
Dean Herbert
c79d187a89
Add final osu! resume screen implementation
2019-03-25 20:31:55 +09:00
Dean Herbert
38e481686f
Make PlayfieldAdjustmentContainer universal
2019-03-25 20:31:55 +09:00
Dean Herbert
57b3b7b54b
Add back resume overlay
2019-03-25 20:31:55 +09:00
Dean Herbert
a694626cc6
Add proper resume request logic
2019-03-25 20:31:55 +09:00
Dean Herbert
9bf48863b0
Fix DrawableRuleset drawable creation method's name
2019-03-25 00:00:29 +09:00
Dean Herbert
f43e7a880c
Merge remote-tracking branch 'upstream/master' into pause-logic-simplification
2019-03-20 15:27:06 +09:00
Dean Herbert
c186629b8a
Reorder class
2019-03-20 14:55:38 +09:00
Dean Herbert
936c3e1ed9
Add safety type check to DrawableScrollingRuleset
2019-03-20 11:34:06 +09:00
Dean Herbert
45b8bfcfd3
Better protect not-generic DrawableRuleset
2019-03-20 11:31:03 +09:00
Dean Herbert
7b6d882ce6
Remove double-generic type
2019-03-20 11:29:16 +09:00
Dean Herbert
baea7230bc
Rename RulesetContainer to DrawableRuleset
2019-03-19 23:47:31 +09:00
Dean Herbert
68f28326a2
Refactor RulesetContainer for readability
2019-03-19 20:21:31 +09:00
Dean Herbert
9433a97747
Add resume requesting support and fix exit scenarios
2019-03-18 20:33:43 +09:00
Dean Herbert
9ca4d9d4d1
Remove regions
2019-03-18 10:48:44 +09:00
Dean Herbert
771d676ba1
Split RulesetInputManager out to FrameStabilityContainer
2019-03-17 13:30:52 +09:00
Dean Herbert
a73e3d9700
Move cursor construction to BDL
2019-03-08 15:01:45 +09:00
Dean Herbert
2c98ba1c0c
Split out consumption and creation into two separate code paths
2019-03-08 14:59:45 +09:00
Dean Herbert
62716851a1
Revert some unnecessary changes
2019-03-06 17:41:54 +09:00
Dean Herbert
7aa30ca3f6
Change method of cursor creation
2019-03-06 17:41:54 +09:00
Dean Herbert
acf518c208
Move cursor inside playfield
2019-03-06 17:41:54 +09:00
Dean Herbert
5411c63093
Fix menu cursor not displaying outside of gameplay scaling area
2019-03-06 17:14:08 +09:00
Dean Herbert
558dbafb71
Use a safer method of setting the clock
2019-03-05 20:14:04 +09:00
Dean Herbert
d5943330b1
Fix potential infinite loop
2019-03-05 20:06:04 +09:00
Dean Herbert
9a9b4efb8d
Fix excess line
2019-03-05 16:41:11 +09:00
Dean Herbert
ec063a13db
Update RulesetInputManager to support new clock structure more accurately
2019-03-05 16:34:50 +09:00
Dean Herbert
01f1018d02
Tidy up clock logic using DI and a GameplayClock
2019-03-05 13:37:51 +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
c8793911a8
Enable more stringent inspectcode style inspections
2019-02-27 21:25:40 +09:00
smoogipoo
a07d797d75
Merge remote-tracking branch 'Joehuu/master' into use-lifetime-optimization
2019-02-27 12:08:43 +09:00
Dean Herbert
90cae0a69c
Simplify RulesetInputManager further
2019-02-23 15:48:34 +09:00
Dean Herbert
6d3c0e3191
Holy sheet
2019-02-23 14:39:55 +09:00
Dean Herbert
0c218eb0d5
Apply new RulesetInputManager logic
...
Run UpdateSubTree twice to ensure correctness
2019-02-23 14:14:41 +09:00
Dean Herbert
3fe4b8fd1c
Update variable names
...
Also cleans up some weird code
2019-02-22 17:51:39 +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
Dan Balasescu
c9c8cccd68
Merge branch 'master' into use-lifetime-optimization
2019-02-18 15:22:34 +09:00
Dean Herbert
ca5c8d37d1
Use leased bindables
2019-02-01 16:44:06 +09:00
ekrctb
8955d5de04
Update hit object result when lifetime is end
2019-01-29 15:25:27 +09:00
ekrctb
504e79b968
Merge branch 'master' into use-lifetime-optimization
2019-01-29 12:15:02 +09:00
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
Dean Herbert
c18ce2c23a
Formatting fixes
2019-01-23 14:51:25 +09:00
Dean Herbert
49633b3394
Fix key counter receptor getting overwritten by async load drawables
2019-01-23 14:51:25 +09:00
Dean Herbert
b6dc6c4a74
Merge branch 'master' into do_not_use_local_user_for_autoplay_score
2019-01-04 13:11:17 +09:00
Dean Herbert
ef9d93ff6b
Remove mod multipliers
...
We decided that mods shouldn't be interacting with other mods. This can be added once we have the ability to have per-mod settings, as a difficulty setting local to blinds.
2018-12-20 19:46:39 +09:00
Dean Herbert
d3368df94d
Simplify changes to RulesetContainer
2018-12-20 19:35:32 +09:00
ekrctb
6f8a2e6ff2
Use LifetimeManagementContainer
...
This is a significant performance boost for gameplay,
especially for long or stroyboard-heavy maps.
2018-12-13 15:23:06 +09:00
Dean Herbert
7d9cdf6f81
Remove unnecessary private field
2018-12-07 20:13:03 +09:00