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

205 Commits

Author SHA1 Message Date
Bartłomiej Dach
434c0d92e4 Use Bindable{Float,Double}s everywhere
To avoid further floating-point comparison bugs, remove all usages of
Bindable<{float,double}>, replacing them with their
Bindable<Float,Double> counterparts.
2020-02-01 22:50:29 +01:00
smoogipoo
35276c3739 Prevent test scene failures through casting softly 2019-12-17 21:26:23 +09:00
smoogipoo
7c2884700e Fix various display issues by abstracting further 2019-12-17 19:29:27 +09:00
smoogipoo
9caed9e98a Add legacy slider body support 2019-12-17 18:16:25 +09:00
smoogipoo
1e798a8dbe Add abstract implementation of slider path 2019-12-17 17:54:05 +09:00
smoogipoo
3ebbf62b2a Initial game-wide update with the new SliderPath 2019-12-05 19:53:36 +09: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
Dean Herbert
02efd0e943
Merge pull request #6556 from smoogipoo/fix-slider-stack-change
Fix sliders not moving with stacking changes
2019-10-23 17:48:06 +09:00
smoogipoo
5f8d46f666 Fix sliders not moving with stacking change 2019-10-21 16:24:06 +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
3a1acf7b0a Fix slider approach circle proxies 2019-10-17 12:50:26 +09:00
smoogipoo
8d7453c251 Rework construction of nested hitobjects 2019-10-16 22:10:50 +09:00
smoogipoo
4ac2e1c58e Move load() to below ctor() 2019-10-16 21:41:18 +09:00
iiSaLMaN
57310c86c7 Remove unnecessary fields 2019-09-20 15:09:51 +03:00
iiSaLMaN
093ed8421e Remove "allow slider ball tinting" ruleset setting 2019-09-20 15:08:00 +03:00
iiSaLMaN
1b45014ff6 Use logical-OR 2019-09-20 00:25:16 +03:00
iiSaLMaN
f6291170b1 Implement tinting slider ball with combo colour 2019-09-20 00:11:37 +03:00
Dean Herbert
5901a915e7 Always update drawable hitobject state on skin change 2019-09-18 20:19:57 +09:00
smoogipoo
5c2c055614 Set lifetime on initial state update 2019-09-13 18:49:21 +09:00
Dean Herbert
f21e47d6d2 Move expire to DrawableHitObject 2019-09-12 19:29:08 +09:00
Dean Herbert
bebc3309ce Refactor skin configuration to be infinitely extensible 2019-09-03 17:57:34 +09:00
Dean Herbert
9752dbf950 Fix osu! approach circles fading in too late 2019-08-28 18:10:58 +09:00
Dean Herbert
6cc6aff66e Fix slider ball sizing when legacy skin falls back to default 2019-07-25 16:30:50 +09:00
Dean Herbert
5e8867066c Correctly handling bindable scale changes 2019-07-25 14:43:44 +09:00
Dean Herbert
46e17646ac Align slider path size with legacy skins 2019-07-25 14:22:26 +09:00
Dan Balasescu
9b526ef61e
Merge branch 'master' into move-state-logic 2019-07-23 20:37:57 +09:00
Dean Herbert
91e21688d8
Make AccentColour a bindable (#5420)
Make AccentColour a bindable

Co-authored-by: Dan Balasescu <smoogipoo@smgi.me>
2019-07-23 20:37:47 +09:00
Dean Herbert
be170b4124 Naming and documentation improvements 2019-07-22 15:50:02 +09:00
Dean Herbert
8327452fe1 Make AccentColour a bindable 2019-07-22 14:48:59 +09:00
Dean Herbert
e50b70d615 Centralise osu! circle radius specification 2019-07-22 14:40:02 +09:00
smoogipoo
a9286fee07 Recycle slider paths when the parenting slider dies 2019-07-17 16:20:27 +09:00
Dean Herbert
daa2786dbd Use a constant for the default value 2019-05-12 23:08:42 +09:00
Dean Herbert
ce0e4c506e
Merge branch 'master' into dev 2019-05-12 21:45:52 +09:00
Dean Herbert
b8446fb67f Fix fallbacks for SliderTrackOverride and SliderBall too 2019-05-12 18:51:31 +09:00
Dean Herbert
cbf126db25
Merge branch 'master' into fix-slider-border-color 2019-05-12 17:25:49 +09:00
Joehu
8ef6a745f7 Fix slider border not reverting to default color 2019-05-05 22:43:03 -07:00
David Zhao
664a4ba540 Implement flashlight dimming on slider slide 2019-04-12 10:47:22 +09:00
Santeri Nogelainen
cbb7498a42 Border size to float, add min and max size, other small changes 2019-03-16 12:41:03 +02:00
Santeri Nogelainen
92595e43f6 slider border thickness 2019-03-14 21:57:39 +02:00
Dean Herbert
340997f505 Rename remaining usage of PathWidth naming convention 2019-03-07 20:21:59 +09:00
smoogipoo
0322bd8812 Make config nullable, removing testcase code 2019-03-05 14:40:27 +09:00
smoogipoo
78596dfe80 Merge remote-tracking branch 'origin/master' into move-osu-settings
# Conflicts:
#	osu.Game.Rulesets.Mania/UI/ManiaRulesetContainer.cs
#	osu.Game.Rulesets.Osu.Tests/TestCaseSlider.cs
2019-03-05 13:25:03 +09:00
Dean Herbert
42be7857d1 Use expression body for property get/set where possible 2019-02-28 13:58:19 +09:00
Dean Herbert
7566fcf536 Slider press fix 2019-02-23 14:14:34 +09:00
Dean Herbert
367bc53a06 Revert some more instances of 'e' variable names 2019-02-22 20:15:25 +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
5b1f111922 Rollback other fallthrough regressions 2019-02-05 18:14:43 +09:00
Unknown
77763fde8b revert accidentally renamed variables 2019-01-25 11:22:05 +01:00
Unknown
8ddff673b7 revert previous rename and rename ruleset specific classes instead 2019-01-25 11:14:37 +01:00
Unknown
5446c99f22 Merge branch 'master' into move-osu-settings 2019-01-25 10:57:04 +01:00
Dean Herbert
8617aaa2a7 Update licence header (and remove year) 2019-01-24 17:43:03 +09:00
Unknown
cf147083cd move osu! settings into its ruleset 2019-01-23 13:17:29 +01:00
Unknown
4a9bcf4937 rename OsuConfigManager to GameConfigManager
also OsuSetting to GameSetting
2019-01-23 13:17:29 +01:00
Dean Herbert
4cee21f356 Make skinning better 2019-01-07 20:12:39 +09:00
Dragicafit
ec3c87dbea Make Slider's CustumColors skinnable 2018-12-07 22:24:24 +01:00
smoogipoo
f27bd3ef3e OpenTK -> osuTK 2018-11-20 17:14:59 +09:00
smoogipoo
050af88be9 Fix post-merge issues 2018-11-14 14:29:22 +09:00
smoogipoo
cc8531790a Use bindables for hitobject events 2018-11-09 13:58:46 +09:00
Dean Herbert
c1304eca1b Merge remote-tracking branch 'upstream/master' into slider-placement 2018-11-01 17:59:37 +09:00
Dean Herbert
bb2f8deb18 ControlPoint -> PathControlPoint
Also Curve -> Path.
2018-11-01 03:56:51 +09:00
smoogipoo
08b16be3b8 Merge branch 'slider-controlpoint-masks' into slider-placement
# Conflicts:
#	osu.Game.Rulesets.Osu/Edit/Masks/SliderMasks/Components/SliderBodyPiece.cs
#	osu.Game.Rulesets.Osu/Objects/Drawables/DrawableSlider.cs
2018-10-29 15:55:38 +09:00
smoogipoo
acd703c27b Make sliders respond to control point changes 2018-10-29 15:36:43 +09:00
smoogipoo
660cd24750 Make sliders respond to scale changes 2018-10-29 15:26:28 +09:00
smoogipoo
86e09a68f7 Separate slider body to bypass snaking logic
The snaking logic contains a lot of caching/optimisations and offsetting of the path which is tedious to re-compute when the path changes.
2018-10-29 15:15:29 +09:00
smoogipoo
a8f156584b Update framework with positional/non-positional changes 2018-09-26 14:01:15 +09:00
Dean Herbert
ffcad6e0f1 Merge remote-tracking branch 'upstream/master' into tgi74-hit-shake
# Conflicts:
#	osu.Game.Rulesets.Osu.Tests/TestCaseHitCircle.cs
#	osu.Game.Rulesets.Osu/Objects/Drawables/DrawableOsuHitObject.cs
#	osu.Game.Rulesets.Osu/Objects/Drawables/Pieces/SliderBall.cs
2018-08-24 15:26:36 +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
4548d2c87f Make Rulesets.Osu use the new judgement result structure 2018-08-02 20:36:38 +09:00
smoogipoo
462f1033c0 Migrate Rulesets.Osu to the new judgement system 2018-08-02 15:21:23 +09:00
Dean Herbert
aa96d91762 Merge remote-tracking branch 'upstream/master' into tgi74-hit-shake 2018-07-06 11:57:32 +09:00
Dean Herbert
d453414070 Forward shakes from slider head objects to sliders 2018-07-06 11:52:58 +09:00
tgi74000
558b2622a7 Move the Shake logic to a new ShakeContainer 2018-07-05 15:48:54 +02:00
smoogipoo
45a4187923 Tidy up lookups to NestedHitObjects 2018-07-02 16:10:56 +09:00
Dean Herbert
0a945e4709 Check whether initialised first 2018-06-28 22:44:40 +09:00
Dean Herbert
e197ebe4c5 Fix slider heads displaying in incorrect colour 2018-06-28 01:55:09 +09:00
Dean Herbert
32a74f95a5 Normalize all the line endings 2018-04-13 18:26:38 +09:00
smoogipoo
6d4f94756e Rewrite the way drag + click selections happen
The general idea here is that we need the masks to handle mouse down events, as they need to handle the drag (mousedown -> drag immediately).

I've rewritten the editor selections to use events, as there are some 3 different components that handle/trigger selections in different ways.

1. All selections/deselections now propagate through `HitObjectMask.Select()`/`HitObjectMask.Deselect()`.
2. Components that react to changes in the selection bind to the masks' `Selected`/`Deselected` events, and track them/change their states locally.
3. Masks provide a `SingleSelectionRequested` event which is invoked on the mouse-down event. Various components bind to this event to perform state changes locally in this scenario.
4. `DragBox` now handles all drag input locally. It triggers `Select`/`Deselect` on the masks it needs to.
5. `SelectionBox` handles the display of itself locally.
6. `SelectionBox` handles movement of groups of masks locally.
7. `HitObjectMasks` handles movement of itself locally.
2018-03-29 22:07:23 +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
smoogipoo
24501c37dd Merge branch 'drawableslider-cleanup' into editor-hitobject-movement 2018-03-10 01:15:24 +09:00
smoogipoo
8ed5fce43a Split out the slider head into a separate drawable hitobject 2018-03-10 01:13:59 +09:00
smoogipoo
4a48136e4f Make hitobject positions adjustable 2018-03-09 23:12:34 +09:00
Dean Herbert
0704d823a9 Fix slider selection point not being set to new origin 2018-03-01 22:03:00 +09:00
Dean Herbert
bdd88303b3
Merge branch 'master' into editor-hitobject-overlays 2018-02-26 17:53:50 +09:00
Dean Herbert
1218a75b7f Improve vector conditional 2018-02-26 16:11:26 +09:00
Dean Herbert
9cbed461c4
Merge branch 'master' into sliderbody-rework 2018-02-26 15:00:18 +09:00
Dean Herbert
f1ddfa0581 Fix sliders never getting a correct lifetime set 2018-02-25 16:25:56 +09:00
smoogipoo
50d1183ec2 Division-by-zero safety + reference our own size 2018-02-24 02:53:02 +09:00
smoogipoo
066abfbdbc Rename PositionAt -> CurvePositionAt to represent its new meaning 2018-02-24 02:43:36 +09:00
smoogipoo
8c90abe0dc Make slider control points relative to start position 2018-02-23 20:59:27 +09:00
smoogipoo
08bb25347c Make DrawableSlider contain the slider body 2018-02-23 20:27:05 +09:00
smoogipoo
604b0fa20a Fix post-merge issues 2018-02-22 14:11:06 +09:00
smoogipoo
ded2644df8 Merge branch 'master' into editor-hitobject-overlays 2018-02-22 14:08:36 +09:00
Dean Herbert
3b4e4bd110 Merge remote-tracking branch 'upstream/master' into general-slider-improvements 2018-02-22 12:28:33 +09:00
smoogipoo
f903e6d241 Fix stacking not working with sliders
Fixes #2093.
2018-02-21 17:46:45 +09:00
smoogipoo
f877b642da Clean up and document better what "progress" means 2018-02-21 17:10:18 +09:00