Bartłomiej Dach
193e41f878
Add origin adjustment for hitobject lifetime
...
Visual inspection of taiko gameplay has shown that hitobjects appeared
on screen only when the origin of the hitobject came into the bounds
of the screen, instead of appearing when any visible part of the
hitobject came into the screen bounds.
This behaviour was due to lifetime calculation being based on the origin
of the hitobject and not taking into account the actual object
dimensions. Adjust the lifetime start of the hitobject by subtracting
the time needed to show the part of the hitobject that should already
be visible on screen when the origin comes into frame.
2019-12-26 20:37:29 +01:00
smoogipoo
5861eca80d
Make DrawableRuleset take a converted beatmap
2019-12-12 15:58:11 +09:00
Huo Yaoyuan
c0fe91a84c
Merge branch 'master' into sharpen
2019-11-26 18:21:50 +08:00
Dean Herbert
709ec1404f
Centralise End/StartTime retrieval to extension method
2019-11-25 19:09:14 +09:00
Huo Yaoyuan
818553027b
Merge branch 'master' into sharpen
2019-11-21 23:42:46 +08:00
Berkan Diler
6cab517b2d
.NET Standard 2.1 implements Math.Clamp , use it instead of MathHelper.Clamp from osuTK.
2019-11-20 13:37:47 +01:00
Huo Yaoyuan
374ef6ff83
Merge branch 'master' into sharpen
2019-11-20 17:30:58 +08:00
Huo Yaoyuan
b1b234c6fb
Use paramref.
2019-11-17 20:49:36 +08:00
Huo Yaoyuan
e5e8e70704
Use pattern matching.
2019-11-12 19:55:19 +08:00
smoogipoo
0171b2ae7c
Fix scrolling hitobjects expiring too soon
2019-11-01 12:10:03 +09: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
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
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
0422c19c2f
Group lifetime setters together
2019-08-26 19:06:23 +09:00
smoogipoo
fb1cd9e5e7
Add a sane default lifetime end for scrolling hitobjects
2019-08-26 16:47:23 +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
90b1fe81f3
Update cached usage in line with framework changes
2019-08-09 19:12:29 +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
smoogipoo
0222424aef
Make mods IReadOnlyList<Mod> gamewide
...
Prevents potential multiple evaluations of enumerable.
2019-04-10 17:20:36 +09:00
smoogipoo
c584967eb1
Remove mods from workingbeatmap
2019-04-09 12:59:32 +09:00
Dean Herbert
c39c37a18d
Apply more missed cases
2019-04-01 12:44:46 +09:00
Dean Herbert
936c3e1ed9
Add safety type check to DrawableScrollingRuleset
2019-03-20 11:34:06 +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
26d53d06a9
Fix remaining issues
2019-02-28 13:31:40 +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
Dean Herbert
8617aaa2a7
Update licence header (and remove year)
2019-01-24 17:43:03 +09:00
smoogipoo
f27bd3ef3e
OpenTK -> osuTK
2018-11-20 17:14:59 +09:00
Dean Herbert
2ae139d260
Merge branch 'master' into more-global-scrollalgo
2018-11-14 13:54:53 +09:00
smoogipoo
b9b20607af
Add IScrollAlgorithm.TimeAt()
2018-11-12 17:43:22 +09:00
smoogipoo
d8e7ad8241
Fix post-rebase issues
2018-11-12 17:36:19 +09:00
smoogipoo
10543cf1b6
Move rest of ScrollingPlayfield into ScrollingRulesetContainer
2018-11-12 17:34:35 +09:00
smoogipoo
e7969ecec7
Move ScrollAlgorithm inside IScrollingInfo
2018-11-12 17:34:35 +09:00
smoogipoo
54668a0dec
Simplify construction of ScrollingInfo
2018-11-12 17:34:35 +09:00
smoogipoo
ad45bc7666
Move scroll direction to scrollinginfo
2018-11-12 17:34:35 +09:00
smoogipoo
48486895ba
Remove unused code
2018-11-12 17:34:35 +09:00
smoogipoo
9fde7f7f44
Move scrolling info to osu.Game
2018-11-12 17:34:35 +09:00
smoogipoo
7f0f143a1b
Move IScrollAlgorithm to ScrollingRulesetContainer + use DI
2018-11-12 17:34:35 +09:00
smoogipoo
aee7a80e71
ScrollAlgorithm -> ScrollVisualisationMethod
2018-11-12 17:26:37 +09:00
smoogipoo
33056b8098
Adjust namespaces
2018-11-08 14:04:21 +09:00
smoogipoo
f66a9f4f1e
Rename IScrollChangeVisualiser -> IScrollAlgorithm
2018-11-08 14:04:21 +09:00
smoogipoo
2f87f267a3
Fix height being set instead of width
2018-11-08 14:04:20 +09:00
smoogipoo
195f82fa96
Give visualiser methods range+length params again
2018-11-08 14:04:20 +09:00
smoogipoo
f41bfd14ca
Add some xmldocs
2018-11-08 14:04:20 +09:00
smoogipoo
76ea314c27
Reorder params
2018-11-08 14:04:20 +09:00
smoogipoo
589c3a47e2
Remove state computation + updates from ISpeedChangeVisualiser
2018-11-08 14:04:20 +09:00
smoogipoo
0bdeebbce2
Expose basic values from ISpeedChangeVisualiser
2018-11-08 14:04:20 +09:00
Dean Herbert
468f7fd1ea
Merge remote-tracking branch 'upstream/master' into playfield-scaling-rework
2018-10-12 19:25:08 +09:00
Dean Herbert
1de770e093
Merge branch 'master' into fix-sv
2018-10-12 18:13:50 +09:00
Dean Herbert
841b2e8692
Merge branch 'master' into consistent-terminology-format
2018-10-10 19:19:36 +09:00
Dean Herbert
06ea174f34
Merge branch 'master' into fix-sv
2018-10-09 18:00:34 +09:00
smoogipoo
ff559a3a1b
Merge remote-tracking branch 'origin/master' into playfield-scaling-rework
...
# Conflicts:
# osu.Game.Rulesets.Catch/UI/CatchPlayfield.cs
# osu.Game/Rulesets/UI/Scrolling/ScrollingPlayfield.cs
2018-10-05 10:40:16 +09:00
smoogipoo
b68eeae777
Fix scrolling rulesets not accounting for slider multiplier
2018-10-01 18:12:30 +09:00
smoogipoo
826dc6ceb7
Make Playfield not a ScalableContainer
2018-09-21 14:02:32 +09:00
Dan Balasescu
4b907336c5
Move readonly field above ctor
2018-09-20 13:17:17 +09:00
Hanamuke
309d8c8cb4
CI
2018-09-19 18:43:39 +02:00
Hanamuke
e7d78b94ae
Remove ScrollingVisualisation from settings
2018-09-19 18:30:25 +02:00
Hanamuke
6d229716e7
Remove unused using directives
2018-09-18 20:42:55 +02:00
Hanamuke
2afcdb1451
Add the file
2018-09-18 20:23:25 +02:00
Hanamuke
e3cc25a96a
Implement ConstantScrollingSpeedVisualiser
2018-09-18 20:21:10 +02:00
Joehu
f99eff1192
Use consistent terminology format
2018-09-15 07:30:11 -07:00
Dean Herbert
68a79f895a
Fix mania throwing an exception on start of map
2018-08-30 14:58:00 +09:00
smoogipoo
827c5c4939
Remove scroll direction from ScrolingPlayfield constructor
2018-07-17 15:14:03 +09:00
Dean Herbert
1e1ff8339e
Merge branch 'master' into non-null-nestedobjects
2018-07-03 19:43:46 +09:00
smoogipoo
f0ec117bcb
Merge remote-tracking branch 'origin/master' into add-scroll-speed-keybinds
...
# Conflicts:
# osu.Game/Rulesets/UI/Scrolling/ScrollingPlayfield.cs
2018-07-02 17:21:18 +09:00
smoogipoo
45a4187923
Tidy up lookups to NestedHitObjects
2018-07-02 16:10:56 +09:00
Dean Herbert
57011ff13b
Merge branch 'master' into mania-playfield-inversions
2018-06-15 18:33:40 +09:00
Dean Herbert
bcfb092e53
Change step to 200
2018-06-12 18:03:45 +09:00
smoogipoo
f49b7d6e16
Add mania direction to settings
2018-06-11 14:36:19 +09:00
smoogipoo
2a48e0e44a
Fix sequential speed change visualiser not working with 0 control points
2018-06-08 15:11:43 +09:00
Dean Herbert
5e9a1961cb
Greatly increase the playfield scroll speed adjust step
...
It was so small previously that I believe many people didn't even realise it was working.
2018-06-07 14:35:33 +09:00
Dean Herbert
7f0cb0bbf6
Add key bindings for scroll speed
...
Closes #2689 .
- [ ] Depends on ppy/osu-framework#1569 being fixed.
2018-05-31 12:10:53 +09:00
smoogipoo
397d93660a
Don't deep-clone beatmapinfo/control points
2018-05-17 13:17:33 +09:00
Dean Herbert
8a6ef0dabb
Merge branch 'master' into beatmap-conversion-rework
2018-05-10 19:10:07 +08:00
smoogipoo
4ecdea8b2e
Remove now-unnecessary IsForCurrentRuleset property of RulesetContainer
2018-05-07 10:17:54 +09:00
smoogipoo
2d6b2d10f7
Use bindable transforms
2018-05-02 18:26:23 +09:00
smoogipoo
11b943c820
ComputePositions -> UpdatePositions
2018-04-20 14:22:48 +09:00
smoogipoo
52e3ffff30
Add some more commenting to lifetime calculation
2018-04-20 14:20:16 +09:00
smoogipoo
f3fddcc82c
Reorder parameter for consistency
2018-04-20 14:20:04 +09:00
smoogipoo
48b421b4b4
Add comments to SequentialSpeedChangeVisualiser
2018-04-20 14:16:30 +09:00
smoogipoo
1bab601cbc
Comments + xmldocs
2018-04-20 13:51:36 +09:00
smoogipoo
ea0683adb2
Fix hitobject lengths not being calculated for overlapping speed changes
...
Fixes #2359
2018-04-16 20:34:59 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
smoogipoo
2a9fb2c2c6
Make NestedHitObjects lazily-constructed
2018-03-05 21:40:26 +09:00
smoogipoo
7fd7dc1538
Extract playfield scaling into a separate class
...
And make it more general.
2018-02-21 11:07:42 +09:00
smoogipoo
4699b5ad7c
Fix a few code styling issues
...
These are present in the netstandard branch (the rules aren't working there - probably using the wrong configuration).
2018-02-08 23:47:03 +09:00
smoogipoo
c32ff9c43b
Move nested playfields to the base Playfield
2018-01-15 20:39:57 +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
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
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
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
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