Added optional Extra Data support to ModState/ModSubState (#374)
* Added Optional JSON Data to ModStates/ModSubState * Formatting fixes * Wanted changes * small little comment * Enhanced Comments * Duplicated null * Undo delete null setter - sorry * some changes Co-Authored-By: Ne_Eo <NeeEoo@users.noreply.github.com> * merp --------- Co-authored-by: Ne_Eo <NeeEoo@users.noreply.github.com> Co-authored-by: ⍚~Nex <87421482+NexIsDumb@users.noreply.github.com>
This commit is contained in:
@@ -1,10 +1,38 @@
|
||||
package funkin.backend.scripting;
|
||||
|
||||
class ModState extends MusicBeatState {
|
||||
|
||||
/**
|
||||
* Name of HScript file in assets/data/states.
|
||||
*/
|
||||
public static var lastName:String = null;
|
||||
public function new(stateName:String) {
|
||||
if (stateName != null)
|
||||
lastName = stateName;
|
||||
/**
|
||||
* Last Optional extra data.
|
||||
*/
|
||||
public static var lastData:Dynamic = null;
|
||||
|
||||
/**
|
||||
* Optional extra data.
|
||||
*/
|
||||
public var data:Dynamic = null;
|
||||
|
||||
/**
|
||||
* ModState Constructor.
|
||||
* Inherits from MusicBeatState and allows the execution of an HScript from assets/data/states passed via parameters.
|
||||
*
|
||||
* @param _stateName Name or path to a HScript file from assets/data/states.
|
||||
* @param _data Optional extra Dynamic data passed from a previous state (JSON suggested).
|
||||
*/
|
||||
public function new(_stateName:String, ?_data:Dynamic) {
|
||||
if(_stateName != null && _stateName != lastName) {
|
||||
lastName = _stateName;
|
||||
lastData = null;
|
||||
}
|
||||
|
||||
if(_data != null)
|
||||
lastData = _data;
|
||||
|
||||
data = lastData;
|
||||
super(true, lastName);
|
||||
}
|
||||
}
|
||||
@@ -1,10 +1,38 @@
|
||||
package funkin.backend.scripting;
|
||||
|
||||
class ModSubState extends MusicBeatSubstate {
|
||||
|
||||
/**
|
||||
* Name of HScript file in assets/data/states.
|
||||
*/
|
||||
public static var lastName:String = null;
|
||||
public function new(stateName:String) {
|
||||
if (stateName != null)
|
||||
lastName = stateName;
|
||||
/**
|
||||
* Last Optional extra data.
|
||||
*/
|
||||
public static var lastData:Dynamic = null;
|
||||
|
||||
/**
|
||||
* Optional extra data.
|
||||
*/
|
||||
public var data:Dynamic = null;
|
||||
|
||||
/**
|
||||
* ModSubState Constructor.
|
||||
* Inherits from MusicBeatSubstate and allows the execution of an HScript from assets/data/states passed via parameters.
|
||||
*
|
||||
* @param _stateName Name or path to a HScript file from assets/data/states.
|
||||
* @param _data Optional extra Dynamic data passed from a previous state (JSON suggested).
|
||||
*/
|
||||
public function new(_stateName:String, ?_data:Dynamic) {
|
||||
if(_stateName != null && _stateName != lastName) {
|
||||
lastName = _stateName;
|
||||
lastData = null;
|
||||
}
|
||||
|
||||
if(_data != null)
|
||||
lastData = _data;
|
||||
|
||||
data = lastData;
|
||||
super(true, lastName);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user