Raimond: Verzögerung über mehrere Stunden

Ich baue gerade an einem online-Browsergame.
Ich hoffe, jemand weiß bescheid. meine großen vorbilder sind galaxywars und ogame.

Eigentlich bin ich auch fast fertig, nur die bauzeit bekomme ich nicht hin.

Wie muss ich es machen, dass wenn jemand auf den link zum bauen klickt ein timer über mehrere Stunden anläuft. Der darf auch nicht einfach anhalten, siondern muss auch weiterlaufen, wenn der benutzer die seiten schließt.

  1. Hallo!

    Wie muss ich es machen, dass wenn jemand auf den link zum bauen klickt ein timer über mehrere Stunden anläuft. Der darf auch nicht einfach anhalten, siondern muss auch weiterlaufen, wenn der benutzer die seiten schließt.

    Indem Du die Startzeit userabhängig abspeicherst. Wenn der User wieder auf die Seite kommt, berechnest Du dir Differenz und kennst somit die verbleibene Zeit.

    MfG, André Laugks
    L-Andre @ gmx.de

    1. das ist ne gute idee, aber:
      1. Wie mache ich das, und
      2. Wäre es besser, wenn das ga´nze per cronjob erledigt wuird, denn es soll auch fertig werden, wenn der user nicht da ist...

      Indem Du die Startzeit userabhängig abspeicherst. Wenn der User wieder auf die Seite kommt, berechnest Du dir Differenz und kennst somit die verbleibene Zeit.

      MfG, André Laugks
      L-Andre @ gmx.de

      1. hi!

        also es war glaube ich folgendermaßen gemeint:

        wenn der user anfängt zu bauen, schreibst du einen unix-timestamp per time() in irgendeine tabelle (wie auch immer).

        ein unix-timestamp ist die anzahl von sekunden seit dem 1.1.1970 (keine ahnung woher das kommt...).

        dann überprüfst du eben, wie viele sekunden seit dem ersten timestamp vergangen sind, also die differenz zwischen dem gespeicherten timestamp und dem aktuellen. (time() - $timestamp).

        wenn diese differenz gößer als deine "bauzeit" ist (bei einer stunde z.b. 3600 sekunden), ist das gebäude oder was auch immer fertiggebaut.

        Kapiert?

        Viele grüße,
        benni