Oblivion:GetSecondsPassed: Unterschied zwischen den Versionen
Keris (Diskussion | Beiträge) K |
|||
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt) | |||
Zeile 16: | Zeile 16: | ||
set timer to timer - GetSecondsPassed | set timer to timer - GetSecondsPassed | ||
else | else | ||
− | ; | + | ; die Zeit ist um! Mache etwas. |
endif | endif | ||
Zeile 31: | Zeile 31: | ||
begin gamemode | begin gamemode | ||
− | set timer1 to getsecondspassed ; | + | set timer1 to getsecondspassed ;dies gibt die Zeit zurück, die seit dem letzten Frame verstrichen ist. |
− | set timer2 to getsecondspassed ; | + | set timer2 to getsecondspassed ;dies gibt den selben Wert zurück |
end</tesscript> | end</tesscript> | ||
Zeile 46: | Zeile 46: | ||
− | [[Category:Funktionen]] | + | [[Category:Funktionen|GetSecondsPassed]][[Category:Zeit-Funktionen]] |
− | [[Category:Zeit-Funktionen]] |
Aktuelle Version vom 16. Juni 2009, 18:06 Uhr
Syntax:
(seconds:float) GetSecondsPassed
Gibt die Anzahl Sekunden zurück, die seit dem letzten Frame vergangen sind (in float). Sehr nützlich, wenn man einen Timer in einem Script ausführt. Jeder Script hat seinen eigenen Zähler für GetSecondsPassed. Alle Abrufe innerhalb desselben Frame werden den gleichen Wert zurückerhalten.
Beispiel:
<tesscript>float timer
begin gamemode
if timer > 0
set timer to timer - GetSecondsPassed
else
; die Zeit ist um! Mache etwas.
endif
end</tesscript>
Wenn timer auf einen beliebigen positiven Wert (steht für Sekunden, die runtergezählt werden), wird er geringfügig mit jedem Frame heruntergezählt werden, bis 0 erreicht ist, an diesem Punkt wird der else-Abschnitt ausgeführt. Der else-Abschnitt sollte vermutlich eine Art "DoOnce" enthalten, es sei denn es wird vorausgesetzt, dass er in jedem Frame ausgeführt wird, sobald der Timer runterzählt.
Beispiel zwei:
<tesscript> float timer1
float timer2 begin gamemode set timer1 to getsecondspassed ;dies gibt die Zeit zurück, die seit dem letzten Frame verstrichen ist. set timer2 to getsecondspassed ;dies gibt den selben Wert zurück
end</tesscript>
Hinweise:
- GetSecondsPassed ist unzuverlässig in einem ScriptEffekt während Schlafen/Warten/Schnellreisen. Stattdessen sollte man ScriptEffectElapsedSeconds nutzen.
Links