A ver, las flags pueden estar encendidas o apagadas(activadas o desactivadas, o como lo quieras decir). Las flags se pueden usar en ese caso, por ejemplo, para hacer que si está apagada el script se ejecuta(y en el mismo script la enciendes) y si está encendida, que no se ejecute. Sin embargo, hay menos flags que variables por lo que no te recomiendo usar flags para esto(pues sirven para hacer desaparecer un mini, cosa que no se puede hacer con variables). Las variables pueden tener un valor del 0x0000 al 0xFFFF(del 0 al 65535). Las variables se usan, por ejemplo, para almacenar la cantidad de dinero que tienes, los stats de tus Pokémon etc. Pero también se pueden usar para lo que quieres hacer. Puedes hacer que cuando la variable tenga un valor de 0, el script se ejecute(y en el mismo script ponerle a la variable un valor de 1); y que cuando tenga un valor de uno, no se ejecute.