Also was ich will ist einfach erklärt:
Ich habe in einem Raum einen Timer der abläuft und dann soll was passieren. Klappt auch!
Aber ich hätte gerne die Sekunden angezeigt, das man auch merkt das da ein Timer läuft.
Habe aber trotz Suche nicht wirklich was gefunden was mir helfen kann.
Irgendwelche einfachen Idee der Umsetzung?
Timer als Countdown anzeigen
Re: Timer als Countdown anzeigen
ja....
Du kannst das als eine der definierten Variablen ausesen.
Steht in der Editorreferenz ( Fragezeichen anklicken )
Da steht dann Folgendes :
Neben der Systemzeit möchte man vielleicht eine interne Zeit messen. Zum Beispiel wie lange das Spiel bereits läuft. Dazu muss man eine Funktion erstellen die die Zeit mitzählt. Erstmal müssen im Startskript ein paar Zahlen auf Null gestellt werden.
setnum (spielstunden ; 0)
setnum (spielminuten ; 0)
setnum (spielsekunden ; 0)
setnum (frames ; 0)
Nun muss eine Funktion gestartet werden damit die Zeitmessung beginnt mit dem Befehl function (zeitmesser ; infinit). Das Skript zeitmesser sieht dann so aus :
setnum (frames ; +1)
if_num (frames ; 50)
{
setnum (frames ; 0)
setnum (spielsekunden ; +1)
}
if_num (spielsekunden ; 60)
{
setnum (spielsekunden ; 0)
setnum (spielminuten ; +1)
}
if_num (spielminuten ; 60)
{
setnum (spielminuten ; 0)
setnum (spielstunden ;+1)
}
Ein Skript wird sofern es nicht unterbrochen wird 50 mal pro Sekunde ausgeführt. Jedes mal wenn der Wert frames 50 erreicht wird eine Sekunde hinzugefügt. Sind die Sekunden bei 60 kommt eine Minute hinzu usw.
Soweit der Text. Sofern sich an der ZAhl 50 Nix geändert hat, müsste das passen. Dann liest Du die Variable "Spielsekunden" aus und zeigst sie in der (infinit) Funktion an über textout ()
Gruß
Manni
Du kannst das als eine der definierten Variablen ausesen.
Steht in der Editorreferenz ( Fragezeichen anklicken )
Da steht dann Folgendes :
Neben der Systemzeit möchte man vielleicht eine interne Zeit messen. Zum Beispiel wie lange das Spiel bereits läuft. Dazu muss man eine Funktion erstellen die die Zeit mitzählt. Erstmal müssen im Startskript ein paar Zahlen auf Null gestellt werden.
setnum (spielstunden ; 0)
setnum (spielminuten ; 0)
setnum (spielsekunden ; 0)
setnum (frames ; 0)
Nun muss eine Funktion gestartet werden damit die Zeitmessung beginnt mit dem Befehl function (zeitmesser ; infinit). Das Skript zeitmesser sieht dann so aus :
setnum (frames ; +1)
if_num (frames ; 50)
{
setnum (frames ; 0)
setnum (spielsekunden ; +1)
}
if_num (spielsekunden ; 60)
{
setnum (spielsekunden ; 0)
setnum (spielminuten ; +1)
}
if_num (spielminuten ; 60)
{
setnum (spielminuten ; 0)
setnum (spielstunden ;+1)
}
Ein Skript wird sofern es nicht unterbrochen wird 50 mal pro Sekunde ausgeführt. Jedes mal wenn der Wert frames 50 erreicht wird eine Sekunde hinzugefügt. Sind die Sekunden bei 60 kommt eine Minute hinzu usw.
Soweit der Text. Sofern sich an der ZAhl 50 Nix geändert hat, müsste das passen. Dann liest Du die Variable "Spielsekunden" aus und zeigst sie in der (infinit) Funktion an über textout ()
Gruß
Manni
Es gibt 10 Arten von Usern :
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
die, die Binärcode verstehen und die, die es nicht tun....
----------------------------------------------------------
STAR TREK FYNE :
http://www.fynegames.homepage.t-online.de
Re: Timer als Countdown anzeigen
Jup, danke Manni. Hatte ich auch wohl mal irgendwann gelesen, jetzt wo du es sagst...
Und es funzt ganz einfach. Ich poste mal meine Lösung, dann hab ich es wenn ich es wieder vergessen sollte
Im Raumskript:
-----------------
Funktions Skript:
-------------------
Das ist schon alles und es klappt.
Und es funzt ganz einfach. Ich poste mal meine Lösung, dann hab ich es wenn ich es wieder vergessen sollte
Im Raumskript:
-----------------
Code: Select all
on (enter)
{
setnum (Timer A; 10)
function (Timer A; infinit)
timer (10)
loadroom (City)
textout (CW1-1; [Timer A] Sek.; 292; 100; 4; 255; 200; 0)
textalign (CW1-1; center)
bindtext (CW1-1; Room)
}
on (exit)
{
stopfunction (Timer A)
}
-------------------
Code: Select all
setnum (Frames; +1)
if_num (Frames; 50)
{
setnum (Timer A; -1)
setnum (Frames; 0)
}