Crash when hold note is moved between columns in mania editor
See original GitHub issueProbably known to @smoogipoo but I post here anyway. Regressed in #12784.
System.InvalidOperationException: Cannot call InternalChild unless there's exactly one Drawable in Children (currently 0)!
at osu.Framework.Graphics.Containers.Container`1.get_Child()
at osu.Game.Rulesets.Mania.Objects.Drawables.DrawableHoldNote.get_Head() in /data/Projects/Osu/osu/osu.Game.Rulesets.Mania/Objects/Drawables/DrawableHoldNote.cs:line 31
at osu.Game.Rulesets.Mania.Edit.Blueprints.HoldNoteSelectionBlueprint.get_ScreenSpaceSelectionPoint() in /data/Projects/Osu/osu/osu.Game.Rulesets.Mania/Edit/Blueprints/HoldNoteSelectionBlueprint.cs:line 76
at osu.Game.Screens.Edit.Compose.Components.BlueprintContainer`1.ApplySnapResult(SelectionBlueprint`1[] blueprints, SnapResult result) in /data/Projects/Osu/osu/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs:line 502
at osu.Game.Screens.Edit.Compose.Components.EditorBlueprintContainer.ApplySnapResult(SelectionBlueprint`1[] blueprints, SnapResult result) in /data/Projects/Osu/osu/osu.Game/Screens/Edit/Compose/Components/EditorBlueprintContainer.cs:line 71
at osu.Game.Screens.Edit.Compose.Components.BlueprintContainer`1.moveCurrentSelection(DragEvent e) in /data/Projects/Osu/osu/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs:line 498
at osu.Game.Screens.Edit.Compose.Components.BlueprintContainer`1.OnDrag(DragEvent e) in /data/Projects/Osu/osu/osu.Game/Screens/Edit/Compose/Components/BlueprintContainer.cs:line 189
at osu.Framework.Graphics.Drawable.TriggerEvent(UIEvent e)
Issue Analytics
- State:
- Created 2 years ago
- Comments:9 (4 by maintainers)
Top Results From Across the Web
[resolved] [Mania] Long Note Bug · forum - Osu! - ppy
The current solution to fixing yourself is to double tap on the long note to re-register the hold, but in heavy long note...
Read more >Hard crash when switching from the timing panel to ...
Switching from the timing to compose tab when a timing section is selected when editing an osu!mania map hard crashes the game.
Read more >Osu mania online unblocked. osu! is a rhythm game based on ...
As a note reaches the bottom row of some column, the player is Osu! Taiko was inspired by a very famous game in...
Read more >osu!academy Episode - 16 Mania Editor Basics - YouTube
In this episode we will go over the barebone basics of the mania editor. The editor is still new and is subject to...
Read more >RPT-COLUMN-Volatility and flash events in the oil market
Sudden and unexplained flash crashes have been observed in other markets including the U.S. stock market (May 6, 2010) and crude oil (May...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
I still think that is a good direction - the osu! blueprints were changed to refer to the
HitObject
in theirUpdate()
but unfortunately still use the DHO for these properties too… I would eventually like to seeDrawableObject
removed from the blueprints.My concern here is around the overhead for something that’s required for every ruleset with multiple playfields. Maybe it’s the rest of the code related to moving hitobjects around that needs greater unification instead.
Yeah I don’t know about doing that just for tests, may be worth just changing the tests. Long shot as I don’t have all the context available but maybe
IPositionSnapProvider
can be leveraged somehow? Even if by implementing a mock or something.