Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 14-02-2005, 17:39   #1 (permalink)
Neuer User
 
Registriert seit: Jan 2005
Beiträge: 64
Question Verkehrter Countdown - Spielzeit läuft mit

Abend zusammen!

Habe einen Liveticker für Fussballspiele entworfen.. Funktioniert auf Basis XML ganz gut.

In einem XML wird der genaue Zeitpunkt des Anpfiffs als UNIX-Timestamp gespeichert. Das SWF liest diesen Zeitpunkt aus und soll ihn mit dem aktuellen Timestamp vergleichen, dann den Start auf die jeweilige Spielminute setzen und die Spielzeit raufzählen.

Zum leichteren Verständnis ein Beispiel (die Zahlen sind erfunden):

Spielstart: 18:00 Uhr -> UNIX Timestamp = 2000
Aktuelle Zeit beim öffnen des Tickers: 18:30 -> UNIX Timestamp = 3800

Daher weiß das System, dass bereits 1800 Sekunden (3800-2000) gespielt sind, wir sind also in der 30. Spielminute.
Angezeigt werden sollen jetzt die Minuten und die Sekunden, also:
30:01, 30:02.. etc. etc.


Jetzt die beiden Fragen:
1. Wie kann ich dem SWF beim aufruf die aktuelle Uhrzeit übergeben (ohne URL Query, ich vermute gar nicht, oder?)

2. Wie baue ich den Zähl-Algorithmus im Sekundentakt? Ein Movie, der bei 30FPS einfach 30 Frames lang ist, ist mir eine zu billige Lösung (da hier ja auch Performance-Einbrüche dann zur falschen Zeit führen).

Klingt kompliziert, ist es auch )
Hier der Ticker (noch mit "DUMMY"-Spielzeit:
http://live.sportlive.at/kleinezeitung.php

Danke für die Hilfe vorweg,
LG
Mike
__________________
-------------------------------------------------
"Ein Blitzableiter auf einem Kirchturm ist das denkbar stärkste Mißtrauensvotum gegen den lieben Gott."
Mik3e2 ist offline   Mit Zitat antworten
Alt 14-02-2005, 21:57   #2 (permalink)
Freizeitflasher
 
Benutzerbild von Alphanimal
 
Registriert seit: Jun 2004
Ort: Niederösterreich
Beiträge: 615
Hi!
Also den aktuellen Timestamp kannst du kanz einfach mit dem Date-Objekt rausfinden:

PHP-Code:
= new Date();
timestamp z.getHours()*3600 z.getMinutes()*60 z.getSeconds(); 
(timestamp ist normal Sekunden seit 1970 oder? aber du hast halt nur sekunden seit Heute 0:00, vl. ergeben nich Probleme wenn das spiel über Mitternach läuft?)

Das liest halt nur die Systemzeit, also wenn die von der Serverzeit abweicht kanns auch Probleme geben!

Wäre noch die Möglichkeit dass du die SWF mit "ticker.swf?stamp=..." einbindest. Dann kanst du im Movie auf die Varieble _root.stamp Zugreifen.



Den Sekundentakt bringst du mit setInterval hin!

PHP-Code:
tick = function(p1p2){
    
trace("P1: "+p1+", P2: "+p2);
    
//... Zähl Code
}
ticker setInterval(tick1000"Eins""Zwei"); 
gibt zB jede Sekunde "P1: Eins, P2: Zwei" aus.

kriegst du mit clearInterval(ticker) wieder weg...
aber trotzdem würde ich nicht jeden Tick einfach die Sekunden erhöhen, sondern immer neu die Differenz ausrechnen... dabei kann dir getTimer() behilflich sein (gibt Zeit in Milisek. zurück seit der Film läuft)

mfg!
Alphanimal ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 14:22 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele