--IMPORTANT: I AM A BEGINER IN HAXE SO THE METHODS OF IMPLIMENTATION MAY NOT BE POSSIBLE OR INCORRECT AND JUST THINK THIS WILL BE A NEAT ADDITION--
Class Based "Scripting" System
Knowing this is a hardcoded based a way to remove bloat from PlayState and having it be for something to interfacing to add into with instead of editing to add into, is a really neat way of thinking about it
and we can do this with something already with what is done in engine
an example of this is already seen in the stage system, all we need to do is have this on a expandable scale
so lets say we have a new folder in source called scripts and inside it we have songs & global
base level
These are scripts that can be added onto songs via the chart editor, similar to characters these are in a dropdown list and when selected adds to a list that you can remove from, this allows for specific use of songs throughout weeks and other shenanigans
songs
Songs in this folder just need the name of there respective song to be loaded
so if the song was dadbattle and there was a class called scripts.songs.dadbattle, the class will load
global
These are classes that are loaded in every song, and is self explainable
how?
Now that we are in a sort of fnf engine scripting golden age you have many examples from many engines to do this original take on scripting
but in summery you start off with a handler to work and call from the mass amount of script classes
and most likely have a base script class that all scripts extend
a nice engine with a simple enough scripting manager to take inspiration from is Maru-Funkin
and in all seriousness this may be alot easier to do then actual hscript implementation and keeps your hardcoded quality
but all of this keeps PlayState easy to understand and allows for more direct paths for editing songs and provides a much cleaner user experience, especially in a source sense
and this can be expanded into things like ui's so you don't need to have a bunch of switches for the current ui you're using and so much more uses
--IMPORTANT: I AM A BEGINER IN HAXE SO THE METHODS OF IMPLIMENTATION MAY NOT BE POSSIBLE OR INCORRECT AND JUST THINK THIS WILL BE A NEAT ADDITION--
Class Based "Scripting" System
Knowing this is a hardcoded based a way to remove bloat from
PlayState
and having it be for something to interfacing to add into with instead of editing to add into, is a really neat way of thinking about it and we can do this with something already with what is done in enginean example of this is already seen in the stage system, all we need to do is have this on a expandable scale
so lets say we have a new folder in source called
scripts
and inside it we havesongs
&global
base level
These are scripts that can be added onto songs via the chart editor, similar to characters these are in a dropdown list and when selected adds to a list that you can remove from, this allows for specific use of songs throughout weeks and other shenanigans
songs
Songs in this folder just need the name of there respective song to be loaded so if the song was
dadbattle
and there was a class calledscripts.songs.dadbattle
, the class will loadglobal
These are classes that are loaded in every song, and is self explainable
how?
Now that we are in a sort of fnf engine scripting golden age you have many examples from many engines to do this original take on scripting but in summery you start off with a handler to work and call from the mass amount of script classes and most likely have a base script class that all scripts extend a nice engine with a simple enough scripting manager to take inspiration from is Maru-Funkin and in all seriousness this may be alot easier to do then actual hscript implementation and keeps your hardcoded quality
but all of this keeps
PlayState
easy to understand and allows for more direct paths for editing songs and provides a much cleaner user experience, especially in a source sense and this can be expanded into things like ui's so you don't need to have a bunch of switches for the current ui you're using and so much more uses