key control and ENTER confirmation when defining points
This commit is contained in:
@@ -49,7 +49,7 @@ interface Director<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSourc
|
|||||||
function enterString(prompt:String, submit:String->Void):Void;
|
function enterString(prompt:String, submit:String->Void):Void;
|
||||||
|
|
||||||
function defineStagePosition(camera:Camera, submit:StagePosition->Void, ?oldPosition:StagePosition):Void;
|
function defineStagePosition(camera:Camera, submit:StagePosition->Void, ?oldPosition:StagePosition):Void;
|
||||||
function defineLightSource(submit:LightSource->Void):Void;
|
function defineLightSource(camera:Camera, submit:LightSource->Void):Void;
|
||||||
|
|
||||||
function loadSet(path:String):Set;
|
function loadSet(path:String):Set;
|
||||||
function cloneSet(set:Set):Set;
|
function cloneSet(set:Set):Set;
|
||||||
|
|||||||
@@ -1734,7 +1734,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
} else null;
|
} else null;
|
||||||
doingSomething = true;
|
doingSomething = true;
|
||||||
lastCommand = defineLightSource;
|
lastCommand = defineLightSource;
|
||||||
director.defineLightSource(function(source:LightSource) return {
|
director.defineLightSource(_currentScene().camera, function(source:LightSource) return {
|
||||||
{
|
{
|
||||||
{
|
{
|
||||||
final arr = lightSources.get(sceneKey);
|
final arr = lightSources.get(sceneKey);
|
||||||
@@ -2030,7 +2030,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
default:{
|
default:{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1017:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1018:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -2102,7 +2102,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
delayHandling = switch hollywoo.Movie.playMode {
|
delayHandling = switch hollywoo.Movie.playMode {
|
||||||
case s124___Movie if (Prelude.truthy(Prelude.isNull(s124___Movie))):{
|
case s124___Movie if (Prelude.truthy(Prelude.isNull(s124___Movie))):{
|
||||||
{
|
{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1187:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1188:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
case Read:{
|
case Read:{
|
||||||
@@ -2112,7 +2112,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
AutoWithSkip;
|
AutoWithSkip;
|
||||||
};
|
};
|
||||||
default:{
|
default:{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1187:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1188:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
cc();
|
cc();
|
||||||
@@ -2121,7 +2121,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
delayHandling = switch mode {
|
delayHandling = switch mode {
|
||||||
case s129___Movie if (Prelude.truthy(Prelude.isNull(s129___Movie))):{
|
case s129___Movie if (Prelude.truthy(Prelude.isNull(s129___Movie))):{
|
||||||
{
|
{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1195:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1196:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
case Read:{
|
case Read:{
|
||||||
@@ -2131,7 +2131,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
AutoWithSkip;
|
AutoWithSkip;
|
||||||
};
|
};
|
||||||
default:{
|
default:{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1195:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1196:13: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
cc();
|
cc();
|
||||||
@@ -2330,7 +2330,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
switch _currentScene() {
|
switch _currentScene() {
|
||||||
case s163___Movie if (Prelude.truthy(Prelude.isNull(s163___Movie))):{
|
case s163___Movie if (Prelude.truthy(Prelude.isNull(s163___Movie))):{
|
||||||
{
|
{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1318:9: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1319:9: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
case { characters : characters, props : props, propOrder : propOrder, actorAndPropPositionKeys : actorAndPropPositionKeys }:{
|
case { characters : characters, props : props, propOrder : propOrder, actorAndPropPositionKeys : actorAndPropPositionKeys }:{
|
||||||
@@ -2382,7 +2382,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
default:{
|
default:{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1318:9: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1319:9: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
@@ -2401,7 +2401,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
{
|
{
|
||||||
final s171___Movie = Prelude.lesserEqual(0, volumeMod, 1);
|
final s171___Movie = Prelude.lesserEqual(0, volumeMod, 1);
|
||||||
{
|
{
|
||||||
if (Prelude.truthy(s171___Movie)) s171___Movie else throw kiss.Prelude.runtimeInsertAssertionMessage("", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1322:5: Assertion failed: \nFrom:[(assert (<= 0 volumeMod 1))]", 4);
|
if (Prelude.truthy(s171___Movie)) s171___Movie else throw kiss.Prelude.runtimeInsertAssertionMessage("", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1323:5: Assertion failed: \nFrom:[(assert (<= 0 volumeMod 1))]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
{
|
{
|
||||||
@@ -2625,7 +2625,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
{
|
{
|
||||||
final s204___Movie = Prelude.lesserEqual(0, volumeMod, 1);
|
final s204___Movie = Prelude.lesserEqual(0, volumeMod, 1);
|
||||||
{
|
{
|
||||||
if (Prelude.truthy(s204___Movie)) s204___Movie else throw kiss.Prelude.runtimeInsertAssertionMessage("", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1420:5: Assertion failed: \nFrom:[(assert (<= 0 volumeMod 1))]", 4);
|
if (Prelude.truthy(s204___Movie)) s204___Movie else throw kiss.Prelude.runtimeInsertAssertionMessage("", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1421:5: Assertion failed: \nFrom:[(assert (<= 0 volumeMod 1))]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
currentSong = FuzzyMapTools.bestMatch(songs, name);
|
currentSong = FuzzyMapTools.bestMatch(songs, name);
|
||||||
@@ -3093,7 +3093,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
switch headingLineData {
|
switch headingLineData {
|
||||||
case s361___Movie if (Prelude.truthy(Prelude.isNull(s361___Movie))):{
|
case s361___Movie if (Prelude.truthy(Prelude.isNull(s361___Movie))):{
|
||||||
{
|
{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1724:41: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1725:41: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
case [heading, ""]:{
|
case [heading, ""]:{
|
||||||
@@ -3109,7 +3109,7 @@ class Movie<Set, Actor, Sound, Song, Prop, VoiceTrack, Camera, LightSource:Jsona
|
|||||||
hdPush(new kiss.List(["", credit]));
|
hdPush(new kiss.List(["", credit]));
|
||||||
};
|
};
|
||||||
default:{
|
default:{
|
||||||
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1724:41: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
throw kiss.Prelude.runtimeInsertAssertionMessage("case should never match pattern otherwise", "/Users/nat/repos/hollywoo-flixel/src/hollywoo/Movie.kiss:1725:41: Assertion failed: \nFrom:[(never otherwise)]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -843,6 +843,7 @@
|
|||||||
(set doingSomething true)
|
(set doingSomething true)
|
||||||
(set lastCommand defineLightSource)
|
(set lastCommand defineLightSource)
|
||||||
(director.defineLightSource
|
(director.defineLightSource
|
||||||
|
.camera (_currentScene)
|
||||||
->[:LightSource source] {
|
->[:LightSource source] {
|
||||||
(let [arr (lightSources.get sceneKey)]
|
(let [arr (lightSources.get sceneKey)]
|
||||||
(arr.elements.push source)
|
(arr.elements.push source)
|
||||||
|
|||||||
@@ -206,7 +206,7 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
};
|
};
|
||||||
actionManager.resetOnStateSwitch = NONE;
|
actionManager.resetOnStateSwitch = NONE;
|
||||||
{
|
{
|
||||||
for (i in Prelude.range(0, Prelude.add(1, LAYER_MAX), 1)) {
|
for (i in Prelude.range(Prelude.add(1, LAYER_MAX))) {
|
||||||
{
|
{
|
||||||
final g = new FlxTypedGroup<FlxBasic>();
|
final g = new FlxTypedGroup<FlxBasic>();
|
||||||
{
|
{
|
||||||
@@ -978,13 +978,30 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
};
|
};
|
||||||
}, { wrapPrompt : true });
|
}, { wrapPrompt : true });
|
||||||
}
|
}
|
||||||
public function defineFlxPoint(submit:(flixel.math.FlxPoint)->Void):Void {
|
public var marker:flixel.FlxSprite = null;
|
||||||
|
private var __submit:()->Void = null;
|
||||||
|
public function defineFlxPoint(marker:flixel.FlxSprite, submit:(flixel.math.FlxPoint)->Void):Void {
|
||||||
if (Prelude.truthy(!Prelude.truthy(mm))) {
|
if (Prelude.truthy(!Prelude.truthy(mm))) {
|
||||||
mm = new FlxMouseEventManager();
|
mm = new FlxMouseEventManager();
|
||||||
} else null;
|
} else null;
|
||||||
|
this.marker = marker;
|
||||||
|
final screen = new flixel.FlxSprite();
|
||||||
|
function _submit() return {
|
||||||
|
this.marker = null;
|
||||||
|
mm.remove(screen);
|
||||||
|
flixel.FlxG.state.remove(screen, true);
|
||||||
|
{
|
||||||
|
for (camera in flixel.FlxG.cameras.list) {
|
||||||
|
camera.zoom = 1;
|
||||||
|
};
|
||||||
|
null;
|
||||||
|
};
|
||||||
|
submit(new flixel.math.FlxPoint(marker.x, marker.y));
|
||||||
|
};
|
||||||
|
__submit = _submit;
|
||||||
flixel.FlxG.state.add(mm);
|
flixel.FlxG.state.add(mm);
|
||||||
{
|
{
|
||||||
final screen = new flixel.FlxSprite();
|
final speed = 200;
|
||||||
{
|
{
|
||||||
screen.makeGraphic(flixel.FlxG.width, flixel.FlxG.height, flixel.util.FlxColor.fromRGBFloat(0, 1, 0, 0.2));
|
screen.makeGraphic(flixel.FlxG.width, flixel.FlxG.height, flixel.util.FlxColor.fromRGBFloat(0, 1, 0, 0.2));
|
||||||
screen.cameras = new kiss.List([cast(movie, FlxMovie).uiCamera]);
|
screen.cameras = new kiss.List([cast(movie, FlxMovie).uiCamera]);
|
||||||
@@ -1000,18 +1017,11 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
cast(movie, FlxMovie).spriteChangeDebugCamera.zoom = 1;
|
cast(movie, FlxMovie).spriteChangeDebugCamera.zoom = 1;
|
||||||
mm.add(screen, function(screen) return {
|
mm.add(screen, function(screen) return {
|
||||||
{
|
{
|
||||||
mm.remove(screen);
|
|
||||||
flixel.FlxG.state.remove(screen, true);
|
|
||||||
{
|
{
|
||||||
final pos = flixel.FlxG.mouse.getScreenPosition(flixel.FlxG.camera);
|
final pos = flixel.FlxG.mouse.getScreenPosition(flixel.FlxG.camera);
|
||||||
{
|
{
|
||||||
{
|
marker.x = pos.x;
|
||||||
for (camera in flixel.FlxG.cameras.list) {
|
marker.y = pos.y;
|
||||||
camera.zoom = 1;
|
|
||||||
};
|
|
||||||
null;
|
|
||||||
};
|
|
||||||
submit(pos);
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -1027,11 +1037,12 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
final db = new DebugLayer();
|
final db = new DebugLayer();
|
||||||
{
|
{
|
||||||
db.cameras = new kiss.List([camera]);
|
db.cameras = new kiss.List([camera]);
|
||||||
if (Prelude.truthy(oldPos)) {
|
if (Prelude.truthy(!Prelude.truthy(oldPos))) {
|
||||||
db.drawCircle(oldPos.x, oldPos.y, 4, flixel.util.FlxColor.YELLOW, 2);
|
oldPos = new StagePosition(0, 0, 0);
|
||||||
} else null;
|
} else null;
|
||||||
|
final marker = db.drawCircle(oldPos.x, oldPos.y, 4, flixel.util.FlxColor.YELLOW, 2);
|
||||||
flixel.FlxG.state.add(db);
|
flixel.FlxG.state.add(db);
|
||||||
defineFlxPoint(function(point) return {
|
defineFlxPoint(marker, function(point) return {
|
||||||
{
|
{
|
||||||
flixel.FlxG.state.remove(db, true);
|
flixel.FlxG.state.remove(db, true);
|
||||||
submit(new StagePosition(point.x, point.y, {
|
submit(new StagePosition(point.x, point.y, {
|
||||||
@@ -1050,13 +1061,16 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
public function defineLightSource(submit:(FlxLightSource)->Void):Void {
|
public function defineLightSource(camera:flixel.FlxCamera, submit:(FlxLightSource)->Void):Void {
|
||||||
{
|
{
|
||||||
final points = new kiss.List([]);
|
final points = new kiss.List([]); final db = new DebugLayer();
|
||||||
{
|
{
|
||||||
|
db.cameras = new kiss.List([camera]);
|
||||||
|
flixel.FlxG.state.add(db);
|
||||||
{
|
{
|
||||||
function getNextPoint() return {
|
function getNextPoint() return {
|
||||||
defineFlxPoint(function(point) return {
|
final marker = db.drawCircle(0, 0, 4, flixel.util.FlxColor.YELLOW, 2);
|
||||||
|
defineFlxPoint(marker, function(point) return {
|
||||||
{
|
{
|
||||||
points.push(point);
|
points.push(point);
|
||||||
getNextPoint();
|
getNextPoint();
|
||||||
@@ -1064,7 +1078,7 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
getNextPoint();
|
getNextPoint();
|
||||||
sh.registerItem("{enter} submit light source", {
|
sh.registerItem("{space} submit light source", {
|
||||||
var s55___FlxDirector = false;
|
var s55___FlxDirector = false;
|
||||||
{
|
{
|
||||||
function(cc) return {
|
function(cc) return {
|
||||||
@@ -1079,6 +1093,7 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
if (Prelude.truthy(points)) {
|
if (Prelude.truthy(points)) {
|
||||||
submit(new FlxLightSource(points, flixel.util.FlxColor.TRANSPARENT));
|
submit(new FlxLightSource(points, flixel.util.FlxColor.TRANSPARENT));
|
||||||
} else null;
|
} else null;
|
||||||
|
flixel.FlxG.state.remove(db, true);
|
||||||
cc();
|
cc();
|
||||||
} else null;
|
} else null;
|
||||||
};
|
};
|
||||||
@@ -1398,6 +1413,23 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
inputIcon?.scale.set(currentScale, currentScale);
|
inputIcon?.scale.set(currentScale, currentScale);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
if (Prelude.truthy(marker)) {
|
||||||
|
if (Prelude.truthy(flixel.FlxG.keys.justPressed.ENTER)) {
|
||||||
|
__submit();
|
||||||
|
} else null;
|
||||||
|
if (Prelude.truthy(flixel.FlxG.keys.pressed.LEFT)) {
|
||||||
|
marker.x = Prelude.subtract(marker.x, Prelude.multiply(flixel.FlxG.elapsed, 200));
|
||||||
|
} else null;
|
||||||
|
if (Prelude.truthy(flixel.FlxG.keys.pressed.RIGHT)) {
|
||||||
|
marker.x = Prelude.add(marker.x, Prelude.multiply(flixel.FlxG.elapsed, 200));
|
||||||
|
} else null;
|
||||||
|
if (Prelude.truthy(flixel.FlxG.keys.pressed.UP)) {
|
||||||
|
marker.y = Prelude.subtract(marker.y, Prelude.multiply(flixel.FlxG.elapsed, 200));
|
||||||
|
} else null;
|
||||||
|
if (Prelude.truthy(flixel.FlxG.keys.pressed.DOWN)) {
|
||||||
|
marker.y = Prelude.add(marker.y, Prelude.multiply(flixel.FlxG.elapsed, 200));
|
||||||
|
} else null;
|
||||||
|
} else null;
|
||||||
if (Prelude.truthy(movie.skipTarget)) {
|
if (Prelude.truthy(movie.skipTarget)) {
|
||||||
barProgress = Prelude.add(barProgress, Prelude.subtract(movie.lastInstructionPointer, lastIp));
|
barProgress = Prelude.add(barProgress, Prelude.subtract(movie.lastInstructionPointer, lastIp));
|
||||||
lastIp = movie.lastInstructionPointer;
|
lastIp = movie.lastInstructionPointer;
|
||||||
@@ -1814,7 +1846,7 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
{
|
{
|
||||||
final s89___FlxDirector = !Prelude.truthy(Prelude.areEqual(0, song.length));
|
final s89___FlxDirector = !Prelude.truthy(Prelude.areEqual(0, song.length));
|
||||||
{
|
{
|
||||||
if (Prelude.truthy(s89___FlxDirector)) s89___FlxDirector else throw kiss.Prelude.runtimeInsertAssertionMessage((Prelude.add("song from ", Std.string(path), " has 0 length! avoid mp3s for this reason") : String), "/Users/nat/repos/hollywoo-flixel/src/hollywoo_flixel/FlxDirector.kiss:878:9: Assertion failed: \nFrom:[(assert (not (= 0 song.length)) (the String (+ \"song from \" (Std.string path) \" has 0 length! avoid mp3s for this reason\")))]", 4);
|
if (Prelude.truthy(s89___FlxDirector)) s89___FlxDirector else throw kiss.Prelude.runtimeInsertAssertionMessage((Prelude.add("song from ", Std.string(path), " has 0 length! avoid mp3s for this reason") : String), "/Users/nat/repos/hollywoo-flixel/src/hollywoo_flixel/FlxDirector.kiss:906:9: Assertion failed: \nFrom:[(assert (not (= 0 song.length)) (the String (+ \"song from \" (Std.string path) \" has 0 length! avoid mp3s for this reason\")))]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
song.persist = true;
|
song.persist = true;
|
||||||
@@ -2155,7 +2187,7 @@ class FlxDirector implements Director<FlxSprite, ActorFlxSprite, FlxSound, FlxSo
|
|||||||
{
|
{
|
||||||
final s105___FlxDirector = Prelude.areEqual(s103___FlxDirector, s104___FlxDirector);
|
final s105___FlxDirector = Prelude.areEqual(s103___FlxDirector, s104___FlxDirector);
|
||||||
{
|
{
|
||||||
if (Prelude.truthy(s105___FlxDirector)) s105___FlxDirector else throw kiss.Prelude.runtimeInsertAssertionMessage(Prelude.add("expected ", s103___FlxDirector, " but it was ", s104___FlxDirector), "/Users/nat/repos/hollywoo-flixel/src/hollywoo_flixel/FlxDirector.kiss:1027:13: Assertion failed: \nFrom:[(assert (= s103___FlxDirector s104___FlxDirector) (+ \"expected \" s103___FlxDirector \" but it was \" s104___FlxDirector))]", 4);
|
if (Prelude.truthy(s105___FlxDirector)) s105___FlxDirector else throw kiss.Prelude.runtimeInsertAssertionMessage(Prelude.add("expected ", s103___FlxDirector, " but it was ", s104___FlxDirector), "/Users/nat/repos/hollywoo-flixel/src/hollywoo_flixel/FlxDirector.kiss:1055:13: Assertion failed: \nFrom:[(assert (= s103___FlxDirector s104___FlxDirector) (+ \"expected \" s103___FlxDirector \" but it was \" s104___FlxDirector))]", 4);
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -422,11 +422,23 @@
|
|||||||
->s {(sh.start)(submit s)}
|
->s {(sh.start)(submit s)}
|
||||||
(object wrapPrompt true))))
|
(object wrapPrompt true))))
|
||||||
|
|
||||||
(method :Void defineFlxPoint [:FlxPoint->Void submit]
|
(prop &mut :FlxSprite marker null)
|
||||||
|
(prop &mut :Void->Void __submit null)
|
||||||
|
(method :Void defineFlxPoint [:FlxSprite marker :FlxPoint->Void submit]
|
||||||
(unless mm
|
(unless mm
|
||||||
(set mm (new FlxMouseEventManager)))
|
(set mm (new FlxMouseEventManager)))
|
||||||
|
(set this.marker marker)
|
||||||
|
(localVar screen (new FlxSprite))
|
||||||
|
(localFunction _submit []
|
||||||
|
(set this.marker null)
|
||||||
|
(mm.remove screen)
|
||||||
|
(FlxG.state.remove screen true)
|
||||||
|
(doFor camera FlxG.cameras.list (set camera.zoom 1))
|
||||||
|
(submit (new FlxPoint marker.x marker.y)))
|
||||||
|
(set __submit _submit)
|
||||||
|
|
||||||
(FlxG.state.add mm)
|
(FlxG.state.add mm)
|
||||||
(let [screen (new FlxSprite)]
|
(let [speed 200]
|
||||||
(screen.makeGraphic FlxG.width FlxG.height (FlxColor.fromRGBFloat 0 1 0 0.2))
|
(screen.makeGraphic FlxG.width FlxG.height (FlxColor.fromRGBFloat 0 1 0 0.2))
|
||||||
(set screen.cameras [flxMovie.uiCamera])
|
(set screen.cameras [flxMovie.uiCamera])
|
||||||
|
|
||||||
@@ -436,11 +448,9 @@
|
|||||||
(set flxMovie.spriteChangeDebugCamera.zoom 1)
|
(set flxMovie.spriteChangeDebugCamera.zoom 1)
|
||||||
(mm.add screen
|
(mm.add screen
|
||||||
->screen {
|
->screen {
|
||||||
(mm.remove screen)
|
|
||||||
(FlxG.state.remove screen true)
|
|
||||||
(let [pos (FlxG.mouse.getScreenPosition FlxG.camera)]
|
(let [pos (FlxG.mouse.getScreenPosition FlxG.camera)]
|
||||||
(doFor camera FlxG.cameras.list (set camera.zoom 1))
|
(set marker.x pos.x)
|
||||||
(submit pos))
|
(set marker.y pos.y))
|
||||||
})
|
})
|
||||||
(FlxG.state.add screen)
|
(FlxG.state.add screen)
|
||||||
})))
|
})))
|
||||||
@@ -448,20 +458,24 @@
|
|||||||
(method :Void defineStagePosition [:FlxCamera camera :StagePosition->Void submit &opt :StagePosition oldPos]
|
(method :Void defineStagePosition [:FlxCamera camera :StagePosition->Void submit &opt :StagePosition oldPos]
|
||||||
(let [db (new DebugLayer)]
|
(let [db (new DebugLayer)]
|
||||||
(set db.cameras [camera])
|
(set db.cameras [camera])
|
||||||
(when oldPos
|
(unless oldPos (set oldPos (new StagePosition 0 0 0)))
|
||||||
(db.drawCircle oldPos.x oldPos.y 4 FlxColor.YELLOW 2))
|
(localVar marker (db.drawCircle oldPos.x oldPos.y 4 FlxColor.YELLOW 2))
|
||||||
(FlxG.state.add db)
|
(FlxG.state.add db)
|
||||||
(defineFlxPoint
|
(defineFlxPoint marker
|
||||||
->point
|
->point
|
||||||
{(FlxG.state.remove db true)
|
{(FlxG.state.remove db true)
|
||||||
(submit (new StagePosition point.x point.y (or oldPos?.z 5.0)))})))
|
(submit (new StagePosition point.x point.y (or oldPos?.z 5.0)))})))
|
||||||
|
|
||||||
(method :Void defineLightSource [:FlxLightSource->Void submit]
|
(method :Void defineLightSource [:FlxCamera camera :FlxLightSource->Void submit]
|
||||||
(let [points []]
|
(let [points []
|
||||||
|
db (new DebugLayer)]
|
||||||
|
(set db.cameras [camera])
|
||||||
|
(FlxG.state.add db)
|
||||||
(withFunctions
|
(withFunctions
|
||||||
[
|
[
|
||||||
(getNextPoint []
|
(getNextPoint []
|
||||||
(defineFlxPoint
|
(localVar marker (db.drawCircle 0 0 4 FlxColor.YELLOW 2))
|
||||||
|
(defineFlxPoint marker
|
||||||
->point
|
->point
|
||||||
{
|
{
|
||||||
(points.push point)
|
(points.push point)
|
||||||
@@ -470,12 +484,14 @@
|
|||||||
]
|
]
|
||||||
(getNextPoint)
|
(getNextPoint)
|
||||||
(sh.registerItem
|
(sh.registerItem
|
||||||
"{enter} submit light source"
|
"{space} submit light source"
|
||||||
(onceLambda [cc]
|
(onceLambda [cc]
|
||||||
(doFor camera FlxG.cameras.list (set camera.zoom 1))
|
(doFor camera FlxG.cameras.list (set camera.zoom 1))
|
||||||
(when points
|
(when points
|
||||||
// TODO allow color choice
|
// TODO allow color choice
|
||||||
(submit (new FlxLightSource points FlxColor.TRANSPARENT)))
|
(submit (new FlxLightSource points FlxColor.TRANSPARENT)))
|
||||||
|
|
||||||
|
(FlxG.state.remove db true)
|
||||||
(cc)) true))))
|
(cc)) true))))
|
||||||
|
|
||||||
(method :Void showLighting [:SceneTime sceneTime :Array<FlxLightSource> lightSources :FlxCamera camera]
|
(method :Void showLighting [:SceneTime sceneTime :Array<FlxLightSource> lightSources :FlxCamera camera]
|
||||||
@@ -654,6 +670,18 @@
|
|||||||
(let [currentScale (+ 1.0 (* inputIconFluctuation (Math.sin (* inputIconFluctuationSpeed inputIconElapsed))))]
|
(let [currentScale (+ 1.0 (* inputIconFluctuation (Math.sin (* inputIconFluctuationSpeed inputIconElapsed))))]
|
||||||
(inputIcon?.scale.set currentScale currentScale))
|
(inputIcon?.scale.set currentScale currentScale))
|
||||||
|
|
||||||
|
(when marker
|
||||||
|
(when FlxG.keys.justPressed.ENTER
|
||||||
|
(__submit))
|
||||||
|
(when FlxG.keys.pressed.LEFT
|
||||||
|
(-= marker.x $>d (* FlxG.elapsed 200)))
|
||||||
|
(when FlxG.keys.pressed.RIGHT
|
||||||
|
(+= marker.x $d))
|
||||||
|
(when FlxG.keys.pressed.UP
|
||||||
|
(-= marker.y $d))
|
||||||
|
(when FlxG.keys.pressed.DOWN
|
||||||
|
(+= marker.y $d)))
|
||||||
|
|
||||||
(when movie.skipTarget
|
(when movie.skipTarget
|
||||||
(+= barProgress (- movie.lastInstructionPointer lastIp))
|
(+= barProgress (- movie.lastInstructionPointer lastIp))
|
||||||
(set lastIp movie.lastInstructionPointer)
|
(set lastIp movie.lastInstructionPointer)
|
||||||
|
|||||||
Reference in New Issue
Block a user