Posted on

Start Pause Resume Stop

If you have a large amount of code you need to place several check points.

on load("Bot Loaded") {
    set(#Running,$false,"Global")
}
ui button("Start") {
    if($not(#Running)) {
        then {
            Run()
        }
        else {
        }
    }
}
ui button("Pause") {
    set(#LoopPause,$true,"Global")
}
ui button("Resume") {
    set(#LoopPause,"false","Global")
}
set(#LoopPause,"true","Global")
ui button("Stop") {
    set(#Stop,$true,"Global")
    set(#Running,"false","Global")
}
ui stat monitor("Number: ",#Num)
define Run {
    set(#Running,"true","Global")
    set(#LoopPause,$false,"Global")
    set(#Num,0,"Global")
    set(#Stop,"false","Global")
    loop(10) {
        PauseCheckPoint()
        wait(1)
        increment(#Num)
        PauseCheckPoint()
    }
    set(#Running,"false","Global")
}
define PauseCheckPoint {
    if(#Stop) {
        then {
            stop script
        }
    }
    loop while(#LoopPause) {
        wait(1)
    }
}