mirror of
https://github.com/FunkinCrew/Funkin.git
synced 2024-11-27 01:55:52 -05:00
50 lines
1.6 KiB
Haxe
50 lines
1.6 KiB
Haxe
package funkin.modding;
|
|
|
|
import funkin.modding.events.ScriptEvent;
|
|
|
|
/**
|
|
* Defines a set of callbacks available to all scripted classes.
|
|
*
|
|
* Includes events handling basic life cycle relevant to all scripted classes.
|
|
*/
|
|
interface IScriptedClass
|
|
{
|
|
public function onScriptEvent(event:ScriptEvent):Void;
|
|
|
|
public function onCreate(event:ScriptEvent):Void;
|
|
public function onDestroy(event:ScriptEvent):Void;
|
|
public function onUpdate(event:UpdateScriptEvent):Void;
|
|
}
|
|
|
|
/**
|
|
* Defines a set of callbacks available to scripted classes that involve player input.
|
|
*/
|
|
interface IInputScriptedClass extends IScriptedClass
|
|
{
|
|
public function onKeyDown(event:KeyboardInputScriptEvent):Void;
|
|
public function onKeyUp(event:KeyboardInputScriptEvent):Void;
|
|
}
|
|
|
|
/**
|
|
* Defines a set of callbacks available to scripted classes that involve the lifecycle of the Play State.
|
|
*/
|
|
interface IPlayStateScriptedClass extends IScriptedClass
|
|
{
|
|
public function onPause(event:ScriptEvent):Void;
|
|
public function onResume(event:ScriptEvent):Void;
|
|
|
|
public function onSongStart(event:ScriptEvent):Void;
|
|
public function onSongEnd(event:ScriptEvent):Void;
|
|
public function onSongReset(event:ScriptEvent):Void;
|
|
public function onGameOver(event:ScriptEvent):Void;
|
|
public function onGameRetry(event:ScriptEvent):Void;
|
|
|
|
public function onNoteHit(event:NoteScriptEvent):Void;
|
|
public function onNoteMiss(event:NoteScriptEvent):Void;
|
|
|
|
public function onStepHit(event:SongTimeScriptEvent):Void;
|
|
public function onBeatHit(event:SongTimeScriptEvent):Void;
|
|
|
|
public function onCountdownStart(event:CountdownScriptEvent):Void;
|
|
public function onCountdownStep(event:CountdownScriptEvent):Void;
|
|
}
|