07-23-2011, 03:18 PM
(07-23-2011, 03:03 PM)Duck Wrote:(07-23-2011, 02:48 PM)Jacob_ Wrote:(07-23-2011, 02:24 PM)noob007 Wrote:(07-23-2011, 02:22 PM)Duck Wrote:(07-23-2011, 02:19 PM)noob007 Wrote: Notice "in an event handler".
"How am I meant to put a ten second delay in my function if I can't use sleep?" Happy?
If said function is an event handler (callback), then use something like gamecheduleTask()
The preferred way is by using os.time(). It avoids the requirement of an extra thread.
[lua]
delay = 3 --3 seconds
lastCalled = os.time()
function doSomething()
if os.time() - lastCalled < delay then return end
--do stuff
lastCalled = os.time()
end
[/lua]
But doesn't that mean people could cheat / break a game by messing about with their clock
If they do then I'll just add some code that kicks them out if time goes backwards or unusually fast.