buggy label/skip system for hollywooFlixel

This commit is contained in:
2021-12-14 20:48:53 -07:00
parent 22ad60d07a
commit dd60bddb46
5 changed files with 18 additions and 1 deletions

View File

@@ -18,6 +18,7 @@
(currentState.close))
// TODO on the first appearance, give a super (for some scenes but probably not others... hm....)
(set currentState (cast scene SceneFlxState))
(set currentState.parent FlxG.state)
(FlxG.state.openSubState currentState)
(cc))

View File

@@ -20,4 +20,15 @@
(method newFlxProp [name path]
(let [propSprite (new FlxSprite 0 0)]
(propSprite.loadGraphic path)
(newProp name propSprite)))
(newProp name propSprite)))
(method :Void update [:Float elapsed]
// TODO CCs queued to timers will still be called
(#when debug
(when FlxG.keys.justPressed.N
(doFor [idx label] (enumerate labels)
(when (> label lastInstructionPointer)
(doFor =>labelName labelIdx labelsByName
(when (= labelIdx label) (trace "SKIPPING TO $labelName")))
(runInstruction label)
(break))))))

View File

@@ -1,6 +1,7 @@
package hollywoo_flixel;
import flixel.FlxState;
import kiss.Prelude;
@:build(kiss.Kiss.build())
class MovieFlxState extends FlxState {}

View File

@@ -3,6 +3,7 @@ package hollywoo_flixel;
import kiss.Prelude;
import kiss.List;
import flixel.FlxSubState;
import flixel.FlxState;
import flixel.FlxSprite;
import flixel.FlxG;
import hollywoo.Scene;

View File

@@ -1,5 +1,6 @@
(defNew [&prop :FlxSprite setSprite &prop :SceneTime time &prop :ScenePerspective perspective]
[
&mut :FlxState parent null
:Map<String,Character<FlxStagePosition,FlxStageFacing,ActorFlxSprite>> characters (new Map)
:Map<FlxSprite,FlxScreenPosition> propsOnScreen (new Map)
]
@@ -15,4 +16,6 @@
(setSprite.screenCenter))
(method &override :Void update [:Float elapsed]
(when parent
(parent.update elapsed))
(super.update elapsed))