GetSecondsPassed
Revision as of 18:16, 25 December 2008 by imported>Quetzilla
Link to TES4 Construction Set Wiki: GetSecondsPassed.
In Fallout 3, GameDaysPassed is a float with enough precision to accurately measure the passage of seconds, which can be used as an alternative to GetSecondsPassed. Consider:
float MyTimer begin GameMode if GameDaysPassed < MyTimer return else ; Do stuff. ; Reset the timer to 5 seconds (24 hours of 60 minutes of 60 seconds in a day). set MyTimer to GameDaysPassed + (1.0 / 24.0 / 60.0 / 60.0) * 5.0 endif end
This is the same as this:
float MyTimer begin GameMode ; Keep track of time. set MyTimer to MyTimer - GetSecondsPassed if MyTimer > 0 return else ; Do stuff. ; Reset the timer to 5 seconds. set MyTimer to 5 endif end
It is also slightly more efficient to use GameDaysPassed because you do not need to update a variable every frame, you only have to do the check - saving the script an operation. A minor note, but nonetheless notable.
However, for cases where the timer needs to be accurate to fractions of a second, GetSecondsPassed is the best choice (it returns fractions of seconds, even if the name implies units of seconds).