summaryrefslogtreecommitdiff
path: root/src/code
diff options
context:
space:
mode:
authorAnghelo Carvajal <angheloalf95@gmail.com>2024-02-01 09:50:32 -0300
committerGitHub <noreply@github.com>2024-02-01 09:50:32 -0300
commit5db52cfd395479fb5aa7a0e236478781904e0c52 (patch)
treead1833e5968feca4d4a14c65d72f141709b435db /src/code
parent2c600ddd3d06d91fb8208d0502fbfd4dfd8f0512 (diff)
A higher level language for schedule scripts (#1462)
* schedule script * start something * tokenize * make a tree * start to emit macros * start to handle args * handle branch targets * cleanup a bit * script to convert the current schedule scripts to the new language * Add schedule compilation to Makefile * Fix bug on compiler if the script doesn't have an extra empty line * Allow to have `else`s without braces * convert a lot of schedules * door * en_tk * fix some checks being the wrong way around * borkens * door borken schedules * kafei schedule * postman schedule * Implement `if_since_time_*` command * Allow `if`s to not have an `else` * Implement some debugging options * fix another one from door * D_808675D0 * door D_8086775C * don't print else if there isn't one * start supporting labels * rewrite comment handling * add branch support * emit debugging information * postman and one door * the remaining scripts * add tokens for the non _s/_l versions * meh * Add built schedules * Remove _s/_l suffixes from almost every command * TokenProperties * Move macros and length into TokenProperties * move short and long to TokenType * rename member * some cleanups * fatalError * Write various notes on the compiler * more errors and comments * debug flags * Move the built schedules to the build folder * manually cleanup control flow of many schedule scripts * cleanup postman schedule * start write up * write more stuff * write a little more * Start writing about the commands * 2 more commands * more * almost everything, except returns * hopefully finish documenting the commands * cleanup * formal grammar * Table of contents * typo * Rename schc.py * remove todo * Warn if a if_before_time/if_since_time is negated * Add colors to warnings and errors * delete rebuild schedules script * version * Apply suggestions from code review Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> * suggestions on md file * compiler review * invented is invented * ScheduleScript typedef * fix * Convert Anju's schedule to the new format * simplify anju's schedule * forgot to remove `_s`/`_l` * bss * Rework schc to allow multiple scripts per file * Migrate all the schedules to the new format * update language specification * Update docs/schedule_scripting_language.md Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> * Update docs/schedule_scripting_language.md Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com> --------- Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com> Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
Diffstat (limited to 'src/code')
-rw-r--r--src/code/z_schedule.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/code/z_schedule.c b/src/code/z_schedule.c
index 38bcb58c3..716111ff1 100644
--- a/src/code/z_schedule.c
+++ b/src/code/z_schedule.c
@@ -285,7 +285,7 @@ static u8 sScheduleCmdSizes[] = {
sizeof(ScheduleCmdBranchL), // SCHEDULE_CMD_ID_BRANCH_L
};
-s32 Schedule_RunScript(PlayState* play, u8* script, ScheduleOutput* output) {
+s32 Schedule_RunScript(PlayState* play, ScheduleScript* script, ScheduleOutput* output) {
u8 size;
s32 stop;