Use a `GameFiber` in a loop instead which can be started when the player goes on duty and suspended when the player goes off duty