1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-06 15:17:28 +08:00
Commit Graph

297 Commits

Author SHA1 Message Date
smoogipoo
57cd50c45e Reorder the way input is handled for replays
Fixes https://github.com/ppy/osu/issues/1625 .
2018-01-25 17:39:50 +09:00
Dean Herbert
5a00ae36d1 Add database-based configuration for rulesets 2018-01-24 17:45:28 +09:00
Dean Herbert
b197cd56af Allow DI'd OnScreenDisplay to be null 2018-01-23 16:42:31 +09:00
Dean Herbert
c01f67b0d8 Merge remote-tracking branch 'upstream/master' into ruleset-configs 2018-01-23 16:23:25 +09:00
smoogipoo
c1331cef1b Disallow DualStages for non-converted beatmaps 2018-01-22 15:52:54 +09:00
smoogipoo
9ac035f3d5 Merge branch 'bdl-cache-changes' into ruleset-configs 2018-01-22 13:11:45 +09:00
為什麼
feb79ff9e7
Merge branch 'master' into mania_stage_fix 2018-01-19 20:08:24 +08:00
smoogipoo
a94ea7025e Register/Unregister -> BeginTracking/StopTracking and add exceptions 2018-01-18 18:45:48 +09:00
smoogipoo
dee298c395 No more statics + better unregistration 2018-01-18 17:40:05 +09:00
smoogipoo
7910b47868 Move ConfigManager registration/dependency injection to RulesetContainer 2018-01-18 17:00:23 +09:00
ANDY840119-PC\andy840119
6c67f96fdb fix ci error 2018-01-18 02:01:01 +09:00
ANDY840119-PC\andy840119
3b291abf60 Merge branch 'master' of https://github.com/ppy/osu into mania_stage_fix
# Conflicts:
#	osu.Game.Rulesets.Mania/UI/ManiaPlayfield.cs
#	osu.Game/Rulesets/UI/Playfield.cs
2018-01-17 22:27:32 +09:00
smoogipoo
2ebb3d6e0e Fix ReplayLoader not being treated as having a replay loaded
Player checks for HasReplayLoaded in Player.load(), but the replay is attached in ReplayPlayer.LoadComplete(), which is too late.
2018-01-17 17:37:14 +09:00
smoogipoo
8c5ef0a330 Remove base OnJudgement from Playfield to properly accomodate nested playfields 2018-01-15 20:48:57 +09:00
smoogipoo
c32ff9c43b Move nested playfields to the base Playfield 2018-01-15 20:39:57 +09:00
smoogipoo
28586317dd Give stages a size again 2018-01-15 19:44:42 +09:00
Dean Herbert
0796d33e66
Merge branch 'master' into fix-skipbutton-ordering 2018-01-15 15:54:18 +09:00
smoogipoo
512e4d2c9f Rewrite the way that cursor overrides are done game-wide 2018-01-12 18:13:17 +09:00
smoogipoo
8a04c954a9 Cleanup 2018-01-12 17:19:59 +09:00
smoogipoo
441e8aced5 Better namings for the speed change "algorithms" 2018-01-12 17:18:34 +09:00
smoogipoo
4b2d971b00 Add some comments 2018-01-12 13:06:17 +09:00
smoogipoo
712d586d41 Revert "Add OSD + config value for scroll speed"
This reverts commit a6d8b28221.
2018-01-12 12:28:43 +09:00
smoogipoo
ab762045d6 Move back to using load(), fix testcase 2018-01-11 16:51:46 +09:00
smoogipoo
d998936e9e Fix testcase errors 2018-01-11 15:50:44 +09:00
smoogipoo
9ae67b519b Optimise nested hitobject position computations 2018-01-11 15:25:15 +09:00
smoogipoo
9d00e5bb7d Make ScrollingHitObjectContainer handle nested hitobjects 2018-01-11 15:08:30 +09:00
smoogipoo
a6d8b28221 Add OSD + config value for scroll speed 2018-01-11 13:40:46 +09:00
smoogipoo
3a869edf36 Add a flag to disable user scroll speed adjustments 2018-01-11 12:44:39 +09:00
smoogipoo
6a5a3b01b2 Fix license headers 2018-01-11 12:39:06 +09:00
smoogipoo
6255aaab68 Per-hitobject lifetime management 2018-01-10 19:17:43 +09:00
smoogipoo
86b5591583 Merge remote-tracking branch 'origin/master' into scrolling-hitobjects-rewrite 2018-01-10 18:02:49 +09:00
Dean Herbert
9d099feadc
Merge branch 'master' into fix-catcher-width 2018-01-10 10:04:10 +09:00
smoogipoo
c4d1922c8b Add scrolling algorithm to global settings 2018-01-08 11:34:37 +09:00
smoogipoo
4ab3b0d76b Implement local scrolling hit object container 2018-01-07 13:24:09 +09:00
smoogipoo
117ab8a26d Split out scrolling algorithm 2018-01-07 13:23:16 +09:00
smoogipoo
98fd4f6ff2 Fix up precision + sizing issues 2018-01-07 11:33:59 +09:00
smoogipoo
7526225282 Use DP for most of the code to avoid unnecessary computations 2018-01-05 20:56:21 +09:00
Dean Herbert
37d393bca0 Update licence headers 2018-01-05 20:21:19 +09:00
smoogipoo
5d12682e83 Initial implementation of the new (old) mania scrolling calculations 2018-01-05 20:18:18 +09:00
smoogipoo
d2b135d2a8 Give hitobjects lifetimes 2018-01-05 15:48:19 +09:00
smoogipoo
1276e2c71a Merge branch 'master' into scrolling-hitobjects-rewrite 2018-01-05 14:58:57 +09:00
smoogipoo
36e9232472 Merge master into netstandard 2018-01-05 00:42:48 +09:00
smoogipoo
add68ff068 Fix swells not stopping at the hit position 2018-01-04 21:45:29 +09:00
smoogipoo
585df22c88 Add a way to calculate length of IHasEndTime objects 2018-01-04 20:56:18 +09:00
smoogipoo
a7aab21a29 Re-namespace files 2018-01-04 19:22:15 +09:00
smoogipoo
e0c921ff5c Split out ScrollingHitObjectContainer into new file 2018-01-04 19:20:43 +09:00
smoogipoo
651e24e3cc Implement proper scrolling directions 2018-01-04 19:17:40 +09:00
smoogipoo
f34131f8f4 Initial game-wide replacement of scrolling playfields 2018-01-04 18:50:17 +09:00
smoogipoo
2b79ad879f Add a way to access alive hitobjects 2018-01-04 16:37:48 +09:00
Dean Herbert
c8ec27c4de Remove redundant prefix 2018-01-04 16:31:41 +09:00
Dean Herbert
152b846cff Fix incorrect scaling of hitobjects in catch 2018-01-04 16:29:53 +09:00
smoogipoo
697efba5e2 Replace .OfType with .Cast 2018-01-04 15:55:35 +09:00
smoogipoo
6d253fd33c Add a way to adjust the conversion process with mods 2018-01-03 19:06:20 +09:00
smoogipoo
714d93dd92 Merge remote-tracking branch 'origin/master' 2017-12-30 16:17:14 +09:00
smoogipoo
7a793eaded Merge master into netstandard 2017-12-27 20:48:53 +09:00
Aergwyn
f5d4ed2a22 add interface to adjust DrawableHitObjects 2017-12-26 11:49:42 +01:00
Ninjaprawn
71e59bc9e7 Removed the IgnoreTooltip property 2017-12-16 20:16:40 +11:00
smoogipoo
b28b86dea9 Use Lazy for threadsafety on playfield 2017-12-14 20:27:51 +09:00
smoogipoo
f41af191ed Merge remote-tracking branch 'origin/master' into editor-selection-tool 2017-12-08 15:13:18 +09:00
Ninjaprawn
9b3e666a07 Added IgnoreTooltip to all classes required 2017-12-08 14:10:23 +11:00
Dean Herbert
a78441bc5a Apply changes in line with framework input adjustments 2017-12-07 13:16:59 +09:00
smoogipoo
cf859a6cf2 Make the dragger attach to objects it surrounds
Plus a lot more implementation.
2017-12-02 00:26:02 +09:00
smoogipoo
e8cbde3ae1 Add overlay/underlay 2017-11-30 21:56:19 +09:00
smoogipoo
b3bf6e7bee Merge master into netstandard 2017-11-21 16:39:21 +09: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
aac41d2de6 Disable resharper inspections on case-by-case basis 2017-11-20 18:55:48 +09:00
smoogipoo
18f2e92a48 Rework mod applications to hitobject/rulesetcontainer for DifficultyCalculator 2017-11-17 12:36:13 +09:00
Dean Herbert
f912744acc Fix sizing of ModIcon 2017-11-16 00:15:27 +09:00
Dean Herbert
ae6d4aa38d Merge remote-tracking branch 'upstream/master' into fix-replay-clock 2017-11-13 20:03:29 +09:00
smoogipoo
495155874c Make sure that the clock is only updated once per time value 2017-11-13 19:30:57 +09:00
smoogipoo
0cec51110a Fix replay clock always running 1 frame behind
* Fixes swells never completing.
* Fixes forward playback missing notes every now and then.
* Probably more stuff.
2017-11-13 17:55:21 +09:00
smoogipoo
ae8407a3f3 Fix nested hitobject judgements not being removed 2017-11-13 14:00:35 +09:00
smoogipoo
fe00ac7e41 Make DrawableHitObject/ScoreProcessor support rewinding 2017-11-02 21:21:07 +09:00
Dean Herbert
5d5ea5fb2e Fix all remaining db structure issues 2017-10-19 14:05:11 +09:00
Dean Herbert
ead88224c5 Move ModIcon tooltip to base implementation 2017-10-13 19:14:43 +09:00
Dean Herbert
6d3d485565 And then everything became one 2017-09-19 16:06:58 +09:00
smoogipooo
f1130eb899 Add default implementation for ScoreProcessor using Exponential scoring 2017-09-13 16:35:13 +09:00
smoogipooo
ba4f81d022 Woops, fix incorrectly deleted line 2017-09-12 23:30:15 +09:00
smoogipooo
4269533bab Remove remaining AllObjectsJudged in RulesetContainer 2017-09-12 22:29:44 +09:00
smoogipooo
2e0218f388 Move AllObjectsJudged into ScoreProcessor as AllJudged
Changes to OsuScoreProcessor were required to make sure that ticks and slider heads weren't ignored.
2017-09-12 22:01:08 +09:00
smoogipooo
112429051e Fix XMLDoc CI errors 2017-09-12 19:05:37 +09:00
Dean Herbert
86de4fa2e2 Apply CI fixes 2017-09-12 18:36:19 +09:00
Dean Herbert
f32d444d68 Remove generics from Playfield (fixes catch) 2017-09-12 18:19:28 +09:00
Dean Herbert
5ce76d8023 Merge remote-tracking branch 'upstream/master' into judgement-revamp 2017-09-11 14:36:51 +09:00
Dean Herbert
512232c1c8 Fix regression causing autoplay to fail 2017-09-11 14:25:01 +09:00
MrTheMake
a7f874e5b6 Merge branch 'master' into leaderboard-scores 2017-09-07 18:25:33 +02:00
Dean Herbert
e834e0e958 Fix incorrect initialisation order causing mania key bindings to not work 2017-09-06 21:07:57 +09:00
smoogipooo
0cc443e618 Remove all generic judgements. 2017-09-06 18:05:51 +09:00
smoogipooo
ac8ec31b61 Make judgements able to be "added" plus make everything compile and run. 2017-09-06 17:02:13 +09:00
Dean Herbert
2b667cf789 Fix typos 2017-08-24 20:32:55 +09:00
Dean Herbert
c9f90efb8a Add more checks and remove direct cast 2017-08-24 20:31:57 +09:00
Dean Herbert
f0635af40d Add documentation and regions to RulesetInputManager 2017-08-24 15:51:31 +09:00
Dean Herbert
a7a7e0323f Update autoplay and replay handling to result in actions, not keys 2017-08-24 15:36:42 +09:00
Dean Herbert
189988236b Move PlayerInputManager logic inside RulesetInputManager 2017-08-24 15:23:17 +09:00
smoogipooo
115e5c95af Make ScrollingPlayfield.Reversed protected; make ManiaPlayfield 'invertible'. 2017-08-23 20:50:03 +09:00
Dean Herbert
1f04995a73 Merge branch 'master' into hardrock-flipping 2017-08-23 17:00:41 +09:00
smoogipooo
8ddc13e394 Fix replays not loading. 2017-08-23 16:48:13 +09:00
smoogipooo
84dd1283de Fix nullref. 2017-08-23 13:39:51 +09:00
smoogipooo
be96fb32b3 Make RulesetContainer load KeyBindingInputManager in load() 2017-08-23 12:47:47 +09:00
Dean Herbert
83bd430f89 Merge branch 'master' into fix-speed-adjustments 2017-08-22 23:07:42 +09:00
smoogipooo
f8576d44b1 Add some more xmldoc. 2017-08-22 21:08:27 +09:00
Dean Herbert
9f52ecbb8a Merge branch 'master' into mania-key-conversion 2017-08-22 20:08:39 +09:00
smoogipooo
ad63cbf455 Fix default comparator being inverted. 2017-08-22 18:54:41 +09:00
smoogipooo
1964bc72e5 Should be FirstOrDefault for hit objects occuriung before the first control point. 2017-08-22 18:39:09 +09:00
smoogipooo
137964b792 Fix hit objects not getting added to the correct speed adjustment container. 2017-08-22 18:37:10 +09:00
smoogipooo
b46a51fd8b Make the speed adjustment containers ordered decreasingly by their control point start time. 2017-08-22 18:36:32 +09:00
smoogipooo
0189f01402 Explicitly store defaultSpeedAdjustment, and make it un-removable 2017-08-22 16:15:50 +09:00
smoogipooo
5a3c0de7ad Fix further incorrect comparison. 2017-08-22 16:10:58 +09:00
smoogipooo
d20ea97e7f Add NUnit test for ScrollingHitObjectContainer
Tests ordering of SpeedAdjustmentContainers and DrawableHitObjects added to the ScrollingHitObjectContainer.
2017-08-22 16:06:19 +09:00
smoogipooo
c3cfad4eb5 Add RemoveSpeedAdjustment 2017-08-22 16:06:14 +09:00
smoogipooo
4fc77be624 Fix incorrect sorting of hit objects into SpeedAdjustmentContainers 2017-08-22 16:06:09 +09:00
smoogipooo
6f662d721c Fix possible CollectionModifiedException while adding new SpeedAdjustmentContainers 2017-08-22 16:06:04 +09:00
smoogipooo
5fcd94880d Fix incorrect inequality with multiple speed adjustments at the same start time. 2017-08-22 16:05:53 +09:00
smoogipooo
68c7226d12 Fix cherry pick issues. 2017-08-22 14:18:17 +09:00
smoogipooo
88151eff3f Fix dofficulty calculators not working and make mania set the correct key count for non-mania specific maps. 2017-08-22 14:07:39 +09:00
smoogipooo
4eec59f669 Only set the number of availableColumns once, at ManiaRulesetContainer level.
# Conflicts:
#	osu.Game.Rulesets.Mania/Beatmaps/ManiaBeatmapConverter.cs
#	osu.Game.Rulesets.Mania/UI/ManiaRulesetContainer.cs
#	osu.Game/Rulesets/UI/RulesetContainer.cs
2017-08-22 14:07:37 +09:00
smoogipooo
964982e2e6 Remove now unneeded ApplyBeatmap. 2017-08-22 14:05:28 +09:00
Dean Herbert
7903f49d27 Merge branch 'master' into action-key-counter 2017-08-21 17:47:19 +09:00
smoogipooo
6e0d2182cb CI. 2017-08-21 16:24:16 +09:00
smoogipooo
5d13efa76d Remove the concept of "queued hit objects", add a default speed adjustment. 2017-08-21 16:17:00 +09:00
Dean Herbert
a63923a497 Remove type check for now 2017-08-21 12:50:48 +09:00
Dean Herbert
16e96888ab Update KeyCounterCollection to support action-based buttons 2017-08-21 12:39:22 +09:00
MrTheMake
6d401b5f21 Merge branch 'master' into leaderboard-scores 2017-08-19 00:00:40 +02:00
Dean Herbert
bc7621607a Merge upstream/master in. 2017-08-18 22:20:45 +09:00
Dean Herbert
7c9d6c9c83 Initial refactoring of key binding logic 2017-08-14 20:19:25 +09:00
MrTheMake
d9c26f98c7 Suggested changes 2017-08-13 19:54:07 +02:00
smoogipooo
d83c218e08 Remove various scrolling container optimisations (removing when not alive). 2017-08-09 16:19:09 +09:00
Dean Herbert
976cff9af6 Merge remote-tracking branch 'upstream/master' into catch
# Conflicts:
#	osu.Desktop.Tests/Visual/TestCaseScrollingPlayfield.cs
2017-08-09 15:08:43 +09:00
smoogipooo
a20753abc6 Applied suggested changes. 2017-08-09 14:24:47 +09:00
smoogipooo
431a9649a4 Remove unused using. 2017-08-09 13:38:12 +09:00
Dean Herbert
723e27353c HitRenderer -> RulesetContainer 2017-08-09 13:28:29 +09:00
Dean Herbert
7c0e7ebcd0 Give HitRenderer a reference to Ruleset
Used to get correct bindings for a mode (ActionMappingInputManager).
2017-08-09 13:05:52 +09:00
smoogipooo
1c5584f068 Make ScrollingPlayfield store a list of SpeedAdjustments instead of a Container.
Because they're removed from the container when they're not alive, and any further adding methods fail.
2017-08-09 12:45:50 +09:00
smoogipooo
dfb47b571a Make HitRenderer's Playfield public so it can be used in testing. 2017-08-09 12:24:38 +09:00
Dean Herbert
b88f37de45 Add custom actions for Catch
Reworks input management for rulesets
2017-08-09 11:50:34 +09:00
smoogipooo
cae21869d0 Use CompositeDrawable for HitObjectContainer. Removes a looooooot of generics 👍. 2017-08-08 17:37:11 +09:00
smoogipooo
e54abe8d0a Fix not removing queued hit objects. 2017-08-08 13:23:46 +09:00
Dean Herbert
a95aa90adc Allow DrawableHitObjects to be removed from a Playfield
(cherry picked from commit 3926238be9)
2017-08-08 13:02:51 +09:00
smoogipooo
c5ce86b9f3 Add reversing capability to ScrollingPlayfield. 2017-08-08 12:59:50 +09:00
smoogipooo
bd2ef4dc6b Line endings + license headers. 2017-08-07 18:03:44 +09:00
smoogipooo
62ee613da3 Merge remote-tracking branch 'origin/master' into timingchange-improvements 2017-08-07 17:35:53 +09:00
smoogipooo
f3c05fe232 CI fixes. 2017-08-07 17:34:57 +09:00
smoogipooo
9c0a0b1e2c Rewrite/add comments. 2017-08-07 17:27:50 +09:00
smoogipooo
933740664c SpeedAdjustedHitRenderer -> ScrollingHitRenderer for consistent naming. 2017-08-07 16:43:54 +09:00
smoogipooo
fc252f8888 Remove exception (this is set in SpeedAdjustmentContainer). 2017-08-07 16:24:51 +09:00
smoogipooo
a3efca9c35 Reduce implementation overhead in actually positioning hitobjects and making them scroll. 2017-08-07 16:02:38 +09:00
smoogipooo
068dfcb19a Default CreateSpeedAdjustmentContainer implementation. 2017-08-07 15:22:31 +09:00
smoogipooo
c6447e40f9 Reduce implementation overhead for nested playfields (e.g. playfield + columns). 2017-08-07 14:56:26 +09:00
smoogipooo
376f99c1e3 Make VisibleTimeRange transform work again. 2017-08-07 14:32:55 +09:00