smoogipoo
54ab256c8e
Instantiate a new path rather than setting properties on it
...
# Conflicts:
# osu.Game.Rulesets.Catch/Beatmaps/CatchBeatmapConverter.cs
# osu.Game.Rulesets.Catch/Objects/JuiceStream.cs
# osu.Game.Rulesets.Osu/Beatmaps/OsuBeatmapConverter.cs
# osu.Game/Rulesets/Objects/Legacy/Catch/ConvertHitObjectParser.cs
# osu.Game/Rulesets/Objects/Legacy/Mania/ConvertHitObjectParser.cs
# osu.Game/Rulesets/Objects/Legacy/Osu/ConvertHitObjectParser.cs
# osu.Game/Rulesets/Objects/Legacy/Taiko/ConvertHitObjectParser.cs
# osu.Game/Rulesets/Objects/SliderPath.cs
2018-11-12 13:50:19 +09:00
smoogipoo
13279f707b
Cleanups
2018-11-09 14:19:50 +09:00
smoogipoo
cc8531790a
Use bindables for hitobject events
2018-11-09 13:58:46 +09:00
smoogipoo
5d51719572
Make selection blueprints handle position adjustments
2018-11-07 16:21:32 +09:00
smoogipoo
2612fd3099
Adjust ruleset-specific namespaces
2018-11-07 16:10:21 +09:00
smoogipoo
85f96ad62f
Fix a few missed renames
2018-11-06 18:07:53 +09:00
smoogipoo
bd775af274
PlacementMask -> PlacementBlueprint
2018-11-06 18:04:03 +09:00
smoogipoo
11be820efe
CreateMaskFor -> CreateBlueprintFor
2018-11-06 18:03:21 +09:00
smoogipoo
f2a5f28ea2
SelectionMask -> SelectionBlueprint
2018-11-06 17:56:04 +09:00
Dean Herbert
63cbc8e0e8
Merge branch 'master' into slider-placement
2018-11-02 19:45:34 +09:00
Dean Herbert
e6ee3dc73e
Use framework helper functions for path approximation
2018-11-02 19:26:29 +09:00
smoogipoo
2ac4f2b6af
Lock spinners to centre of screen
2018-11-01 19:24:58 +09:00
smoogipoo
d78348f178
Reduce duplicate code
2018-11-01 19:23:37 +09:00
smoogipoo
1aae123ff5
Make approximators share an interface
2018-11-01 19:16:44 +09:00
Dean Herbert
1265d5ac0b
Merge branch 'master' into spinner-placement-2
2018-11-01 18:05:44 +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
ffec532079
Fix segment control points not changing in unison
2018-10-31 19:02:47 +09:00
smoogipoo
d2fbf05137
Reduce size of control point
2018-10-31 18:01:53 +09:00
smoogipoo
aec1d95f04
Implement spinner placement
2018-10-29 18:37:28 +09:00
smoogipoo
e04ad8357d
Make spinner piece respond to scale changes
2018-10-29 18:37:12 +09:00
smoogipoo
af1de01ed6
Add a spinner selection mask
2018-10-29 18:23:23 +09:00
smoogipoo
2ae7b42244
Fix control points disappearing if moved offscreen
2018-10-29 16:15:15 +09:00
smoogipoo
5998d6454b
Use ControlPointVisualiser instead of custom implementation
2018-10-29 15:56:17 +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
c1fffde10d
Fix broken conditional
2018-10-29 15:52:28 +09:00
smoogipoo
acd703c27b
Make sliders respond to control point changes
2018-10-29 15:36:43 +09:00
smoogipoo
b0f5ace0e8
Implement slider control point visualisation
2018-10-29 15:29:34 +09:00
smoogipoo
660cd24750
Make sliders respond to scale changes
2018-10-29 15:26:28 +09:00
smoogipoo
a9f1484e8b
Fix some post-rebase issues
2018-10-29 15:26:28 +09:00
smoogipoo
4fa511043e
Use common body piece
2018-10-29 15:26:28 +09:00
smoogipoo
b28f44087d
Bring up to date with further placement changes
2018-10-29 15:26:28 +09:00
smoogipoo
6310c183fa
Modify slider position directly
2018-10-29 15:26:07 +09:00
smoogipoo
8fa783b4c5
Use begin/end placement methods
2018-10-29 15:26:07 +09:00
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
Dean Herbert
a0691168cb
Merge remote-tracking branch 'upstream/master' into editor-hitobject-movement
2018-03-14 15:35:24 +09:00
Dean Herbert
81f82d98a1
Rework a lot of naming and structure
2018-03-14 15:18:21 +09:00
smoogipoo
8c4bcb4a04
Only accept drag movement on the overlays
2018-03-12 17:33:10 +09:00
smoogipoo
2d9fcdcbd0
Fix slider circle overlays moving with the endpoints
2018-03-12 17:18:50 +09:00
smoogipoo
4a48136e4f
Make hitobject positions adjustable
2018-03-09 23:12:34 +09:00
smoogipoo
e62fab6cc2
Fix overlay positions/sizes due to sliders now being fixed
2018-03-01 14:34:31 +09:00
Dan Balasescu
6cc54a464c
Merge branch 'master' into editor-hitobject-overlays
2018-02-22 14:25:27 +09:00
smoogipoo
844e87aafe
Use the true head position rather than capturing current position
2018-02-22 14:25:10 +09:00
Dean Herbert
a3336f2577
Merge branch 'master' into fix-editor-osu-scale
2018-02-22 14:14:41 +09:00
smoogipoo
604b0fa20a
Fix post-merge issues
2018-02-22 14:11:06 +09:00
smoogipoo
5faec5c2f1
Add a separate property to control playfield area
2018-02-21 20:54:33 +09:00
smoogipoo
9a9f53ddfd
Remove 0.75 scale from osu! playfield in the editor
2018-02-21 11:10:43 +09:00
smoogipoo
4934ef7429
Add playfield aspect ratio + scaling modifications to composer layers
2018-02-21 11:07:42 +09:00
smoogipoo
ad2f556133
Add hitobject overlays to selected hitobjects
2018-02-20 18:01:45 +09:00
smoogipoo
8f25a5da66
Add playfield aspect ratio + scaling modifications to composer layers
2018-02-20 14:01:33 +09:00
smoogipoo
512e4d2c9f
Rewrite the way that cursor overrides are done game-wide
2018-01-12 18:13:17 +09:00