From e76c603110bf206323479d28eea3eca3efffd765 Mon Sep 17 00:00:00 2001 From: welcor <357770+welcor@users.noreply.github.com> Date: Sat, 28 Sep 2024 20:05:40 +0200 Subject: [PATCH] Revert "Added loop counter per while instead of global. fixes #135" This reverts commit 59cf6a1fb217e1fad9e1886eaf4ead076058e347. --- src/dg_scripts.c | 8 ++++---- src/dg_scripts.h | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/dg_scripts.c b/src/dg_scripts.c index 88a4b6d..978cf6d 100644 --- a/src/dg_scripts.c +++ b/src/dg_scripts.c @@ -2486,6 +2486,7 @@ int script_driver(void *go_adress, trig_data *trig, int type, int mode) char cmd[MAX_INPUT_LENGTH], *p; struct script_data *sc = 0; struct cmdlist_element *temp; + unsigned long loops = 0; void *go = NULL; void obj_command_interpreter(obj_data *obj, char *argument); @@ -2577,8 +2578,8 @@ int script_driver(void *go_adress, trig_data *trig, int type, int mode) if (process_if(p + 6, go, sc, trig, type)) { temp->original = cl; } else { - cl->loops = 0; cl = temp; + loops = 0; } } else if (!strn_cmp("switch ", p, 7)) { cl = find_case(trig, cl, go, sc, type, p + 7); @@ -2598,10 +2599,9 @@ int script_driver(void *go_adress, trig_data *trig, int type, int mode) if (cl->original && process_if(orig_cmd + 6, go, sc, trig, type)) { cl = cl->original; - cl->loops++; + loops++; GET_TRIG_LOOPS(trig)++; - if (cl->loops == 30) { - cl->loops = 0; + if (loops == 30) { process_wait(go, trig, type, "wait 1", cl); depth--; return ret_val; diff --git a/src/dg_scripts.h b/src/dg_scripts.h index 34434b1..e860f02 100644 --- a/src/dg_scripts.h +++ b/src/dg_scripts.h @@ -135,7 +135,6 @@ struct cmdlist_element { char *cmd; /* one line of a trigger */ struct cmdlist_element *original; struct cmdlist_element *next; - int loops; /* for counting number of runs in a while loop */ }; struct trig_var_data {