imported>Quetzilla |
imported>Haama |
Line 1: |
Line 1: |
| Link to TES4 Construction Set Wiki: [http://cs.elderscrolls.com/constwiki/index.php/GetSecondsPassed GetSecondsPassed]. | | Link to TES4 Construction Set Wiki: [http://cs.elderscrolls.com/constwiki/index.php/GetSecondsPassed GetSecondsPassed]. |
|
| |
| In Fallout 3, [[Special Variables|GameDaysPassed]] is a float with enough precision to effectively measure the passage of seconds over short periods of time. Under those circumstances, this can be used as an alternative to GetSecondsPassed. Consider:
| |
| <pre>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</pre>
| |
| This is the same as this:
| |
| <pre>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</pre>
| |
| 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, as the GameDaysPassed is not precise enough for this purpose.
| |
|
| |
|
| [[Category:Functions]] | | [[Category:Functions]] |
| [[Category:Time Functions]] | | [[Category:Time Functions]] |