From 42674bf29d3ea228237eb6a53e1cb2a4f5e32589 Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Tue, 20 Aug 2024 08:04:21 +0800 Subject: [PATCH 1/8] One --- source/states/PlayState.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/states/PlayState.hx b/source/states/PlayState.hx index 8a64b7b1291..a61ff99379a 100644 --- a/source/states/PlayState.hx +++ b/source/states/PlayState.hx @@ -785,7 +785,7 @@ class PlayState extends MusicBeatState #end } - public function getLuaObject(tag:String, text:Bool=true):FlxSprite + public function getLuaObject(tag:String, text:Bool=true):Dynamic return variables.get(tag); function startCharacterPos(char:Character, ?gfCheck:Bool = false) { From a78d4cc07c2a5355b70411a4097c8114789e78fd Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Tue, 20 Aug 2024 08:06:31 +0800 Subject: [PATCH 2/8] Update T --- source/states/stages/Template.hx | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/source/states/stages/Template.hx b/source/states/stages/Template.hx index 20837e08e99..8d3cb3193de 100644 --- a/source/states/stages/Template.hx +++ b/source/states/stages/Template.hx @@ -24,6 +24,11 @@ class Template extends BaseStage // Code here } + override function destroy() + { + // Code here + } + override function countdownTick(count:BaseStage.Countdown, num:Int) { @@ -37,6 +42,11 @@ class Template extends BaseStage } } + override function startSong() + { + // Code here + } + // Steps, Beats and Sections: // curStep, curDecStep // curBeat, curDecBeat @@ -120,4 +130,25 @@ class Template extends BaseStage } } } + + // Note Hit/Miss + override function goodNoteHit(note:Note) + { + // Code here + } + + override function opponentNoteHit(note:Note) + { + // Code here + } + + override function noteMiss(note:Note) + { + // Code here + } + + override function noteMissPress(direction:Int) + { + // Code here + } } \ No newline at end of file From 8ce954bb78a2bef6566cfcd293fba762e8a7fb36 Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Tue, 20 Aug 2024 08:10:53 +0800 Subject: [PATCH 3/8] Lua :pensive: --- source/psychlua/FunkinLua.hx | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/source/psychlua/FunkinLua.hx b/source/psychlua/FunkinLua.hx index c6d2e5a201c..7691650cd5a 100644 --- a/source/psychlua/FunkinLua.hx +++ b/source/psychlua/FunkinLua.hx @@ -535,7 +535,8 @@ class FunkinLua { if(tag != null) { var variables = MusicBeatState.getVariables(); - tag = 'tween_' + LuaUtils.formatVariable(tag); + var originalTag = tag; + tag = LuaUtils.formatVariable('tween_$tag'); variables.set(tag, FlxTween.tween(penisExam, values, duration, { type: myOptions.type, ease: myOptions.ease, @@ -543,14 +544,14 @@ class FunkinLua { loopDelay: myOptions.loopDelay, onUpdate: function(twn:FlxTween) { - if(myOptions.onUpdate != null) game.callOnLuas(myOptions.onUpdate, [tag, vars]); + if(myOptions.onUpdate != null) game.callOnLuas(myOptions.onUpdate, [originalTag, vars]); }, onStart: function(twn:FlxTween) { - if(myOptions.onStart != null) game.callOnLuas(myOptions.onStart, [tag, vars]); + if(myOptions.onStart != null) game.callOnLuas(myOptions.onStart, [originalTag, vars]); }, onComplete: function(twn:FlxTween) { if(twn.type == FlxTweenType.ONESHOT || twn.type == FlxTweenType.BACKWARD) variables.remove(tag); - if(myOptions.onComplete != null) game.callOnLuas(myOptions.onComplete, [tag, vars]); + if(myOptions.onComplete != null) game.callOnLuas(myOptions.onComplete, [originalTag, vars]); } })); } @@ -853,7 +854,7 @@ class FunkinLua { Lua_helper.add_callback(lua, "getMidpointX", function(variable:String) { var split:Array = variable.split('.'); - var obj:FlxSprite = LuaUtils.getObjectDirectly(split[0]); + var obj:FlxObject = LuaUtils.getObjectDirectly(split[0]); if(split.length > 1) { obj = LuaUtils.getVarInArray(LuaUtils.getPropertyLoop(split), split[split.length-1]); } @@ -863,7 +864,7 @@ class FunkinLua { }); Lua_helper.add_callback(lua, "getMidpointY", function(variable:String) { var split:Array = variable.split('.'); - var obj:FlxSprite = LuaUtils.getObjectDirectly(split[0]); + var obj:FlxObject = LuaUtils.getObjectDirectly(split[0]); if(split.length > 1) { obj = LuaUtils.getVarInArray(LuaUtils.getPropertyLoop(split), split[split.length-1]); } @@ -893,7 +894,7 @@ class FunkinLua { }); Lua_helper.add_callback(lua, "getScreenPositionX", function(variable:String, ?camera:String = 'game') { var split:Array = variable.split('.'); - var obj:FlxSprite = LuaUtils.getObjectDirectly(split[0]); + var obj:FlxObject = LuaUtils.getObjectDirectly(split[0]); if(split.length > 1) { obj = LuaUtils.getVarInArray(LuaUtils.getPropertyLoop(split), split[split.length-1]); } @@ -903,7 +904,7 @@ class FunkinLua { }); Lua_helper.add_callback(lua, "getScreenPositionY", function(variable:String, ?camera:String = 'game') { var split:Array = variable.split('.'); - var obj:FlxSprite = LuaUtils.getObjectDirectly(split[0]); + var obj:FlxObject = LuaUtils.getObjectDirectly(split[0]); if(split.length > 1) { obj = LuaUtils.getVarInArray(LuaUtils.getPropertyLoop(split), split[split.length-1]); } @@ -1118,11 +1119,12 @@ class FunkinLua { return (obj != null && Std.isOfType(obj, FlxSprite)); }); Lua_helper.add_callback(lua, "luaTextExists", function(tag:String) { - var obj:FlxSprite = MusicBeatState.getVariables().get(tag); + var obj:FlxText = MusicBeatState.getVariables().get(tag); return (obj != null && Std.isOfType(obj, FlxText)); }); Lua_helper.add_callback(lua, "luaSoundExists", function(tag:String) { - var obj:FlxSprite = MusicBeatState.getVariables().get(tag); + tag = LuaUtils.formatVariable('sound_$tag'); + var obj:FlxSound = MusicBeatState.getVariables().get(tag); return (obj != null && Std.isOfType(obj, FlxSound)); }); @@ -1153,7 +1155,7 @@ class FunkinLua { } var split:Array = obj.split('.'); - var object:FlxSprite = LuaUtils.getObjectDirectly(split[0]); + var object:FlxBasic = LuaUtils.getObjectDirectly(split[0]); if(split.length > 1) { object = LuaUtils.getVarInArray(LuaUtils.getPropertyLoop(split), split[split.length-1]); } @@ -1186,7 +1188,7 @@ class FunkinLua { return false; }); Lua_helper.add_callback(lua, "screenCenter", function(obj:String, pos:String = 'xy') { - var spr:FlxSprite = game.getLuaObject(obj); + var spr:FlxObject = game.getLuaObject(obj); if(spr==null){ var split:Array = obj.split('.'); From 21563ff509abb2e82f912f90bedefadd7141dadf Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Tue, 20 Aug 2024 08:12:07 +0800 Subject: [PATCH 4/8] FlixelText.hx --- source/psychlua/TextFunctions.hx | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/source/psychlua/TextFunctions.hx b/source/psychlua/TextFunctions.hx index 9c011be1e67..86db113ef23 100644 --- a/source/psychlua/TextFunctions.hx +++ b/source/psychlua/TextFunctions.hx @@ -18,7 +18,7 @@ class TextFunctions }); Lua_helper.add_callback(lua, "setTextString", function(tag:String, text:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.text = text; @@ -28,7 +28,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextSize", function(tag:String, size:Int) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.size = size; @@ -38,7 +38,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextWidth", function(tag:String, width:Float) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.fieldWidth = width; @@ -48,7 +48,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextHeight", function(tag:String, height:Float) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.fieldHeight = height; @@ -58,7 +58,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextAutoSize", function(tag:String, value:Bool) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.autoSize = value; @@ -68,7 +68,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextBorder", function(tag:String, size:Float, color:String, ?style:String = 'outline') { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { CoolUtil.setTextBorderFromString(obj, (size > 0 ? style : 'none')); @@ -82,7 +82,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextColor", function(tag:String, color:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.color = CoolUtil.colorFromString(color); @@ -92,7 +92,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextFont", function(tag:String, newFont:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.font = Paths.font(newFont); @@ -102,7 +102,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextItalic", function(tag:String, italic:Bool) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.italic = italic; @@ -112,7 +112,7 @@ class TextFunctions return false; }); Lua_helper.add_callback(lua, "setTextAlignment", function(tag:String, alignment:String = 'left') { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { obj.alignment = LEFT; @@ -130,7 +130,7 @@ class TextFunctions }); Lua_helper.add_callback(lua, "getTextString", function(tag:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null && obj.text != null) { return obj.text; @@ -139,7 +139,7 @@ class TextFunctions return null; }); Lua_helper.add_callback(lua, "getTextSize", function(tag:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { return obj.size; @@ -148,7 +148,7 @@ class TextFunctions return -1; }); Lua_helper.add_callback(lua, "getTextFont", function(tag:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { return obj.font; @@ -157,7 +157,7 @@ class TextFunctions return null; }); Lua_helper.add_callback(lua, "getTextWidth", function(tag:String) { - var obj:FlxText = MusicBeatState.getVariables().get(tag); + var obj:FlxText = LuaUtils.getObjectDirectly(tag); if(obj != null) { return obj.fieldWidth; From 2404a3fa034807553a4000b22108e9cc813e53c2 Mon Sep 17 00:00:00 2001 From: LarryFrosty Date: Sat, 31 Aug 2024 20:43:18 +0800 Subject: [PATCH 5/8] Remove text arg from getLuaObject --- source/psychlua/DeprecatedFunctions.hx | 4 ++-- source/psychlua/FunkinLua.hx | 4 ++-- source/states/PlayState.hx | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/source/psychlua/DeprecatedFunctions.hx b/source/psychlua/DeprecatedFunctions.hx index fec57aef297..dc16adb915d 100644 --- a/source/psychlua/DeprecatedFunctions.hx +++ b/source/psychlua/DeprecatedFunctions.hx @@ -18,8 +18,8 @@ class DeprecatedFunctions Lua_helper.add_callback(lua, "objectPlayAnimation", function(obj:String, name:String, forced:Bool = false, ?startFrame:Int = 0) { FunkinLua.luaTrace("objectPlayAnimation is deprecated! Use playAnim instead", false, true); - if(PlayState.instance.getLuaObject(obj,false) != null) { - PlayState.instance.getLuaObject(obj,false).animation.play(name, forced, false, startFrame); + if(PlayState.instance.getLuaObject(obj) != null) { + PlayState.instance.getLuaObject(obj).animation.play(name, forced, false, startFrame); return true; } diff --git a/source/psychlua/FunkinLua.hx b/source/psychlua/FunkinLua.hx index 7691650cd5a..ba53ed88b52 100644 --- a/source/psychlua/FunkinLua.hx +++ b/source/psychlua/FunkinLua.hx @@ -1007,8 +1007,8 @@ class FunkinLua { }); Lua_helper.add_callback(lua, "setScrollFactor", function(obj:String, scrollX:Float, scrollY:Float) { - if(game.getLuaObject(obj,false)!=null) { - game.getLuaObject(obj,false).scrollFactor.set(scrollX, scrollY); + if(game.getLuaObject(obj) != null) { + game.getLuaObject(obj).scrollFactor.set(scrollX, scrollY); return; } diff --git a/source/states/PlayState.hx b/source/states/PlayState.hx index a61ff99379a..95cf6b3dd56 100644 --- a/source/states/PlayState.hx +++ b/source/states/PlayState.hx @@ -785,7 +785,7 @@ class PlayState extends MusicBeatState #end } - public function getLuaObject(tag:String, text:Bool=true):Dynamic + public function getLuaObject(tag:String):Dynamic return variables.get(tag); function startCharacterPos(char:Character, ?gfCheck:Bool = false) { From 57239a3978599b4f3631a02b375ec92c68779b79 Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Sun, 8 Sep 2024 23:28:01 +0800 Subject: [PATCH 6/8] Change BaseStage.Countdown to Countdown in Template.hx --- source/states/stages/Template.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/states/stages/Template.hx b/source/states/stages/Template.hx index 8d3cb3193de..d0c112e6a66 100644 --- a/source/states/stages/Template.hx +++ b/source/states/stages/Template.hx @@ -30,7 +30,7 @@ class Template extends BaseStage } - override function countdownTick(count:BaseStage.Countdown, num:Int) + override function countdownTick(count:Countdown, num:Int) { switch(count) { From f0c24587fee9afca63dcd9f8bea9ff6fa1e42f4c Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Sat, 14 Sep 2024 21:55:29 +0800 Subject: [PATCH 7/8] nvm --- source/backend/BaseStage.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/backend/BaseStage.hx b/source/backend/BaseStage.hx index 6797de0df93..81fe882322c 100644 --- a/source/backend/BaseStage.hx +++ b/source/backend/BaseStage.hx @@ -66,7 +66,7 @@ class BaseStage extends FlxBasic public function create() {} public function createPost() {} //public function update(elapsed:Float) {} - public function countdownTick(count:Countdown, num:Int) {} + public function countdownTick(count:BaseStage.Countdown, num:Int) {} public function startSong() {} // FNF steps, beats and sections From afb94c8d2e2c10a44bbd85a232ea8bd188852942 Mon Sep 17 00:00:00 2001 From: LarryFrosty <80482125+LarryFrosty@users.noreply.github.com> Date: Sat, 14 Sep 2024 21:56:59 +0800 Subject: [PATCH 8/8] BRUH I WAS LOOKING IN THE WRONG PLACE --- source/backend/BaseStage.hx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/backend/BaseStage.hx b/source/backend/BaseStage.hx index 81fe882322c..6797de0df93 100644 --- a/source/backend/BaseStage.hx +++ b/source/backend/BaseStage.hx @@ -66,7 +66,7 @@ class BaseStage extends FlxBasic public function create() {} public function createPost() {} //public function update(elapsed:Float) {} - public function countdownTick(count:BaseStage.Countdown, num:Int) {} + public function countdownTick(count:Countdown, num:Int) {} public function startSong() {} // FNF steps, beats and sections