Autor Thema: Abfrage eines Timers funktioniert nicht richtig  (Gelesen 3666 mal)

Siel

  • Teenie Tentakel
  • ****
  • Beiträge: 389
  • Maybe a miracle will occur...
    • Profil anzeigen
Abfrage eines Timers funktioniert nicht richtig
« am: 16. November 2008, 13:59:30 »
Ich werde für ein Rätsel meiner Episode einen Timer verwenden, um bestimmte Ereignisse Zeitabhängig zu starten.
Ich dachte mir zuerst, dass die Abfrage auf diese Weise funktionieren würde:
Zitat
if(IsTimerExpired(1)==true){
  (auszuführende Aktionen)
}
Ich platzierte diese Funktion im "Repeatedly execute"-Bereich, da das Scrupt ja immer wieder abgefragt werden soll.
Da AGS allerdings diese Bedingung jede Sekunde neu Abrfragte, brach das Script immer nach genau einer Sekunde ab.
Zunächst dachte ich, ich könnte das ganz über folgendes Script umgehen, indem ich das ganze auf eine Globale Variable auslagere:
Zitat
if(IsTimerExpired(1)==true){
  TelefonZurueck=1;
}
if(TelefonZurueck==1){
  (Auszuführende Aktionen)
  TelefonZurueck=0;
}
Allerding fragte AGS auch dies wieder jede Sekunde ab (logisch) aber setzte dadurch auch immer die Variable zurück auf Null, sodass das Script erneut nach einer Sekunde abbrach.

Daher jetzt meine Frage: Wie kann ich diesen Fehler umgehen und AGS dazu bringen, dass es die Variablen nicht zurücksetzt, bzw, das Script abbricht?
Die Vergangenheit ist im Nachhinein meist eine schlechte Idee.

NsMn

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1646
  • Geschlecht: Männlich
  • überzeugter Paint-Nutzer
    • ICQ Messenger - 404385098
    • Profil anzeigen
    • E-Mail
Re: Abfrage eines Timers funktioniert nicht richtig
« Antwort #1 am: 16. November 2008, 14:15:25 »
Versuch doch mal,"true" durch 1 zu ersetzen.Die Funktion fragt nämlich eigentlich nur den Stand des Timers ab.

Siel

  • Teenie Tentakel
  • ****
  • Beiträge: 389
  • Maybe a miracle will occur...
    • Profil anzeigen
Re: Abfrage eines Timers funktioniert nicht richtig
« Antwort #2 am: 16. November 2008, 16:15:51 »
Nein, das hat leider nichts gebracht.  :'(
Die Vergangenheit ist im Nachhinein meist eine schlechte Idee.

Timer

  • volljähriger Tentakel
  • *****
  • Beiträge: 763
  • Geschlecht: Männlich
    • ICQ Messenger - 275798409
    • AOL Instant Messenger - commandertimer
    • Profil anzeigen
    • Meine Seite
    • E-Mail
Re: Abfrage eines Timers funktioniert nicht richtig
« Antwort #3 am: 16. November 2008, 19:10:00 »
Bei mir funktioniert ein... if (IsTimerExpired (1)) {
  (Aktionen)
}
...im repeatedly_execute ohne Probleme. Bist du sicher, dass dein Fehler da liegt, oder könnte er auch von etwas anderem verursacht werden?

NsMn

  • Midlife Crisis Tentakel
  • ******
  • Beiträge: 1646
  • Geschlecht: Männlich
  • überzeugter Paint-Nutzer
    • ICQ Messenger - 404385098
    • Profil anzeigen
    • E-Mail
Re: Abfrage eines Timers funktioniert nicht richtig
« Antwort #4 am: 16. November 2008, 19:18:36 »
Vllt hast du den Timer in rep_execute auf einen wert gesetzt?

Siel

  • Teenie Tentakel
  • ****
  • Beiträge: 389
  • Maybe a miracle will occur...
    • Profil anzeigen
Re: Abfrage eines Timers funktioniert nicht richtig
« Antwort #5 am: 16. November 2008, 21:23:59 »
Zitat von: Timer
Bist du sicher, dass dein Fehler da liegt, oder könnte er auch von etwas anderem verursacht werden?
Ich wüsste zumindest nicht, wo der Fehler sonst liegen könnte...  ???

Zitat von: edna_mausi
Vllt hast du den Timer in rep_execute auf einen wert gesetzt?
Nein, das habe ich bereits überprüft.

Edit: Das Problem hat sich erledigt. Trotzdem Danke. (Ich bin aber auch so was von doof)
« Letzte Änderung: 17. November 2008, 18:13:10 von Siel »
Die Vergangenheit ist im Nachhinein meist eine schlechte Idee.