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
Dean Herbert
e75f438c29
Add difficulty application mods
...
Also fixes circular references when using IJsonSerializable.
2017-08-07 08:54:54 +09:00
Dean Herbert
3416925233
Fix alignment of icons on mod buttons
2017-08-07 08:54:53 +09:00
smoogipooo
b1d25ed388
Implement ScrollingPlayfield, now containing ScrollingHitObjectContainer (prev. SpeedAdjustmentCollection).
...
Also removing a lot of mania code relating to gravity mod for now.
2017-08-04 23:07:08 +09:00
smoogipooo
0f901c99a0
Implement SpeedAdjustedPlayfield and a new HitRenderer derivation.
2017-08-04 20:11:18 +09:30
Dean Herbert
0d9ea97828
Allow Rulesets to create a non-FontAwesome icon
...
This also
- Renames TextAwesome to SpriteIcon.
- Removes the default size of "20" from SpriteIcon (now defaults to the underlying texture size).
2017-08-03 14:36:21 +09:00
Thomas Müller
22a987f6cc
Update test cases to new framework and fix old crashes
2017-07-07 15:05:55 +03:00
Thomas Müller
f5829860a2
Get rid of AlwaysReceiveInput
2017-06-23 18:02:24 +02:00
Dan Balasescu
6bfb716cc6
CI fixes.
...
Update SpeedAdjustmentCollection.cs
2017-06-16 11:48:14 +09:00
smoogipooo
5d7336b235
A bit more cleanup.
2017-06-16 10:06:47 +09:00
smoogipooo
ff84a11c37
We don't need this to be protected anymore.
2017-06-16 09:54:16 +09:00
smoogipooo
03b2b254ba
Make SpeedAdjustmentCollection support unordered adds of speed adjustments and hit objects.
2017-06-16 09:38:06 +09:00
smoogipooo
fda220acbc
Move speed adjustment code from ManiaHitRenderer to SpeedAdjustedHitRenderer.
2017-06-15 19:34:28 +09:00
smoogipooo
ba8014bbd9
Cleanups + xmldoc rewordings/improvements.
2017-06-12 15:20:34 +09:00
smoogipooo
1f56848442
Rewrite the way speed adjustments are applied.
2017-06-09 19:57:03 +09:00
smoogipooo
6f191193a1
Rename timing changes, simplify + improve columns/dictionary usage.
2017-06-07 19:15:51 +09:00
smoogipooo
3cdfd2eef5
Split ControlPoint into different types.
...
# Conflicts:
# osu.Game.Rulesets.Mania/UI/Column.cs
2017-05-23 14:03:40 +09:00
smoogipooo
67cf64062a
Add flag to determine whether the beatmap requested for conversion is for the current ruleset.
2017-05-19 16:02:40 +09:00
smoogipooo
a762f820c6
Fix possible nullrefs.
2017-05-11 14:50:18 +09:00
smoogipooo
2d2d1beddd
More concrete method to determine if all hit objects have been judged.
...
Covers the case where nested hit objects are involved.
2017-05-11 14:48:08 +09:00
smoogipooo
6445bea864
Make Playfield.HitObjects internal to playfields.
...
Because not all playfields will be using this.
2017-05-11 14:44:11 +09:00
Dean Herbert
ab1768ef80
Merge branch 'master' into tidy-up
2017-05-09 10:27:29 +09:00
Dean Herbert
10910cfcef
Make field readonly.
2017-05-08 11:47:06 +09:00
Dean Herbert
2f4fad9d41
Refactor colour selection.
2017-05-08 11:33:22 +09:00
Huo Yaoyuan
4f8549f220
Standardise usages of exceptions.
2017-05-07 00:38:17 +08:00
Dean Herbert
4b385ded26
Tidy up ModIcon.
2017-05-05 13:22:10 +09:00
Dean Herbert
c9ba1ac4f6
Adjust namespaces.
...
Also adds transition, uses IHasCurrentValue, combines Mod TestCases and more.
2017-05-05 13:00:05 +09:00
Dean Herbert
6298b3effd
Refactor ModSection and ModIcon to avoid null mods.
2017-05-05 12:16:41 +09:00
EVAST9919
66c858030a
Merge remote-tracking branch 'refs/remotes/ppy/master' into mods_refactor
2017-05-04 17:35:41 +03:00
EVAST9919
475eb6fe5f
Cleanup
2017-05-04 17:29:52 +03:00
EVAST9919
9e35eb8d97
Fixes
2017-05-03 13:53:45 +03:00
smoogipooo
06e014708a
Defer virtual method to load().
2017-05-03 15:57:15 +09:00
EVAST9919
e7a8619f01
ModIcon refactor
2017-05-03 09:48:10 +03:00
EVAST9919
898d9495ff
line fix
2017-05-03 08:27:47 +03:00
EVAST9919
37c3133981
Fixes
2017-05-02 22:46:18 +03:00
EVAST9919
7e1efcc20b
Added ModsContainer
2017-05-02 22:34:07 +03:00
Dean Herbert
f202aee2a9
Fix input not being propagated to the playfield when outside its bounds.
2017-04-29 16:59:23 +09:00
Dean Herbert
e003d9fc3c
Add basic replay frame accurate "seeking".
...
Previously we were looping over Update, when we should instead have been looping over UpdateSubTree.
2017-04-25 22:59:58 +09:00
Dean Herbert
3f832731c9
Add DoubleTime, HalfTime and Nightcore support.
2017-04-21 17:33:37 +09:00
Dean Herbert
3342a97b20
Remove using.
2017-04-20 19:52:32 +09:00
smoogipooo
7df35e1197
Bind to method instead of exposing ScoreProcessor to HealthDisplay.
2017-04-20 19:45:15 +09:00
smoogipooo
f50e43fc4b
CI fixes.
2017-04-20 18:02:09 +09:00
smoogipooo
6e3018f36d
Add a glow fade based on density of hits.
2017-04-20 17:11:58 +09:00
smoogipooo
e92e08f86d
Make StandardHealthDisplay glow extrude beyond the end of the bar.
2017-04-20 17:11:31 +09:00
Dean Herbert
1707c2458e
Update exception name.
2017-04-20 12:11:03 +09:00
Dean Herbert
a0d9c14526
Add temporary means of getting the user which is responsible for a resulting play.
2017-04-18 22:22:14 +09:00
Dean Herbert
66865c50ad
Remove explicit RelativeSize setting.
2017-04-18 18:10:13 +09:00
Dean Herbert
fbd26a1d5e
Mode -> Ruleset.
2017-04-18 16:05:58 +09:00