smoogipoo
a491fb42df
Set slider start time when head is placed
2018-10-29 15:26:07 +09:00
smoogipoo
9540e53e32
Initial controlpoint implementation
2018-10-29 15:26:07 +09:00
smoogipoo
2c4616dbb1
Adjust visual display of the placement curve
2018-10-29 15:26:07 +09:00
smoogipoo
402950b132
Implement path drawing
2018-10-29 15:26:07 +09:00
smoogipoo
bd915e8dca
Implement initial slider placement (linear)
2018-10-29 15:26:06 +09:00
smoogipoo
38ce8f8af1
Refactor SliderSelectionMask
2018-10-29 15:26:06 +09:00
smoogipoo
9b19050faf
Update with slider body changes
2018-10-29 15:25:20 +09:00
smoogipoo
22c545ea8c
Make circle piece respond to hitobject scale
2018-10-26 15:26:19 +09:00
smoogipoo
4a507c66ee
Cleanup
2018-10-26 15:26:08 +09:00
smoogipoo
f674fcf2c8
Merge branch 'mask-separation' into editor-mask-placement
...
# Conflicts:
# osu.Game.Rulesets.Mania/Edit/ManiaHitObjectComposer.cs
# osu.Game.Rulesets.Osu/Edit/OsuHitObjectComposer.cs
# osu.Game.Tests/Visual/TestCaseHitObjectComposer.cs
2018-10-26 14:05:30 +09:00
smoogipoo
ea3c960b5b
Mask -> Piece for components
2018-10-26 13:51:03 +09:00
smoogipoo
9656186b64
Make the hitobject masks move within their placement/selection
...
# Conflicts:
# osu.Game.Rulesets.Osu/Edit/Masks/HitCircleMasks/Components/HitCircleMask.cs
# osu.Game.Rulesets.Osu/Edit/Masks/HitCircleMasks/HitCircleSelectionMask.cs
# osu.Game.Rulesets.Osu/Edit/Masks/HitCirclePlacementMask.cs
# osu.Game/Rulesets/Edit/PlacementMask.cs
2018-10-26 13:45:31 +09:00
smoogipoo
4051864bb4
Re-namespace
2018-10-26 13:39:19 +09:00
smoogipoo
e1db2bbc25
Split visuals of HitCircleSelectionMask into HitCircleMask
2018-10-26 13:31:44 +09:00
smoogipoo
677d0d4a19
Renamespace ruleset masks
2018-10-26 13:31:38 +09:00
smoogipoo
8703db5cc1
Rename HitObjectMask -> SelectionMask
2018-10-26 13:31:23 +09:00
smoogipoo
e14719e440
Mask -> Piece for non-mask components
2018-10-25 18:28:10 +09:00
smoogipoo
d19f80835b
Adjust namespaces
2018-10-25 18:26:28 +09:00
smoogipoo
ea6db8b793
Make the hitobject masks move within their placement/selection
2018-10-25 18:16:25 +09:00
smoogipoo
f42f9cffe3
Make HitCirclePlacementMask directly modify hitcircle position
2018-10-17 18:16:34 +09:00
smoogipoo
d36ac59ca2
Reduce complexity of creating edit ruleset containers
2018-10-17 18:06:00 +09:00
smoogipoo
08e3fe1def
Add PlacementStarted event, rename placement methods
2018-10-17 14:37:45 +09:00
smoogipoo
f384c7228e
Fix post-merge issues
2018-10-16 17:28:23 +09:00
smoogipoo
70f1d17b7e
Merge remote-tracking branch 'origin/master' into editor-mask-placement
...
# Conflicts:
# osu.Game.Rulesets.Catch/UI/CatchRulesetContainer.cs
# osu.Game.Rulesets.Mania/Edit/ManiaEditRulesetContainer.cs
# osu.Game.Rulesets.Osu/Edit/OsuEditRulesetContainer.cs
# osu.Game/Rulesets/UI/RulesetContainer.cs
2018-10-16 17:28:16 +09:00
smoogipoo
b56d09c83b
Set hitobject placement time manually
2018-10-10 15:32:59 +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
d0007c047a
PlayfieldLayer -> PlayfieldAdjustmentContainer
2018-10-05 10:39:18 +09:00
smoogipoo
e931aa3d9e
Move positional modifications to HitCirclePlacementMask
2018-10-04 13:43:50 +09:00
smoogipoo
6a65802528
Fix hitcircle selections not responding to stacking changes
2018-10-04 12:19:11 +09:00
smoogipoo
3420e0c7eb
Re-implement composition tools + implement placement masks
2018-10-03 16:27:26 +09:00
smoogipoo
540a010fbb
Implement an intermediary EditRulesetContainer
2018-10-03 15:36:24 +09:00
smoogipoo
28b0ab6123
Split visuals of HitCircleSelectionMask into HitCircleMask
2018-10-03 14:35:26 +09:00
smoogipoo
1164108a95
Renamespace ruleset masks
2018-10-03 13:45:41 +09:00
smoogipoo
4cdb6dcea5
Rename HitObjectMask -> SelectionMask
2018-10-03 13:28:00 +09:00
smoogipoo
a8f156584b
Update framework with positional/non-positional changes
2018-09-26 14:01:15 +09:00
smoogipoo
0bc2bcaf14
Remove GetAspectAdjustedSize() and PlayfieldArea
2018-09-21 15:14:49 +09:00
smoogipoo
a166d03ede
Remove duplicate implementation of the Osu playfield layer
2018-09-21 14:43:38 +09:00
smoogipoo
826dc6ceb7
Make Playfield not a ScalableContainer
2018-09-21 14:02:32 +09:00
smoogipoo
1139f0dbf2
Centralise method of disabling playfield judgements
2018-07-20 17:04:33 +09:00
smoogipoo
268c14813b
Fix resharper warnings
2018-05-07 11:38:41 +09:00
smoogipoo
4ecdea8b2e
Remove now-unnecessary IsForCurrentRuleset property of RulesetContainer
2018-05-07 10:17:54 +09:00
smoogipoo
c9e4a07e12
Merge remote-tracking branch 'origin/master' into remove-approachcircle-hax
...
# Conflicts:
# osu.Game.Rulesets.Osu/Edit/OsuEditPlayfield.cs
# osu.Game.Rulesets.Osu/UI/OsuPlayfield.cs
2018-04-20 18:04:43 +09:00
Dean Herbert
32a74f95a5
Normalize all the line endings
2018-04-13 18:26:38 +09:00
smoogipoo
cea3e1c7f5
Remove now unnecessary approachcircle proxy disables
...
Prereqs:
- [ ] ppy/osu-framework#1505
2018-04-09 18:44:50 +09:00
Dean Herbert
6c125683d4
Merge branch 'master' into selectionlayer-rewrite
2018-04-04 20:47:36 +09:00
Dean Herbert
b7325d73e8
Don't inherit VisbilityContainer
2018-04-04 20:44:11 +09:00
smoogipoo
d4cb00e08f
Don't display judgements in OsuEditPlayfield
2018-04-04 17:12:41 +09:00
smoogipoo
4ad776bfde
Make slider circle masks not handle mouse input at all
2018-03-30 14:15:46 +09:00
smoogipoo
3129c2cc75
Fix slider circle masks blocking input for now
2018-03-29 22:41:49 +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