ozean system und gleich noch eine javascript frage!

Operator_Jon

Erfahrenes Mitglied
HI!
Mal wieder angenommen, es gibt 6000Inseln, in 60 Ozeanen, 100Inseln bilden einen Ozean. Nun tragen sich 3 Inseln ein, einmal die Inselnummer 44, die 3400 und die 5604!
Nun sind die alle in verschiedenen Ozeanen und es gibt natürlich noch VIELE mehr!!
Ich brauche nun eine Ausgabe, die anhand der Inselnummer(mysql) überprüft in welchem Ozean die Insel ist, und die Inseln nach Ozeanen geordnet ausgibt!
Wie geht das?
Und nochetwas, javascript betrffend. Mann kann seine Inseln verwalten, dort stehen einige daten drin, die alle 7Tage geupdated werden sollten. Nun brauche ich einen Timer, der bei jeder Insel noch die Tage,Stunden und Minuten anzeigt, bis das nächste update durchgeführt ist! Ist das update schon vorher durchgeführt worden, soll der timer wieder auf 7Tage gesetzt werden!
Hoffe soetwas ist mir PHP kompatibel!
Danke
cu
OP_Jon
 
Ich brauche nun eine Ausgabe, die anhand der Inselnummer(mysql) überprüft in welchem Ozean die Insel ist, und die Inseln nach Ozeanen geordnet ausgibt!
Du bist seit längerer Zeit in Spiel 1 tätig und hast noch nicht mitbekommen, dass Insel 472 in Ozean 5, Insel 2873 in Ozean 29 oder Insel 4902 bspw. in Ozean 50 liegt? :p

Kompliment trotzdem zur Handelsplattform eures CW. ;)

Zu der Frage mit dem Timer:
Schnapp dir das Javascript, das Uwe derzeit bei den Schifffahrtszeiten verwendet oder das, welches bei den Gebäude- und Einheitenbauten am Werkeln ist und schon hast du ein solches; warum in die Ferne schweifen...? :)

Geist
 
Du bist seit längerer Zeit in Spiel 1 tätig und hast noch nicht mitbekommen, dass Insel 472 in Ozean 5, Insel 2873 in Ozean 29 oder Insel 4902 bspw. in Ozean 50 liegt?
darum geht es ja nicht!
Übrigens ist die Handelsplattform eingestellt, da es das cmw nicht mehr gibt :p !
Es geht darum, das AUTOMATISCH jedem spieler ein Ozean sozusagen zugewiesen wird und das alle spieler in diesem Ozean angezeigt werden.
Die Ozeane sollen sortiert werden!
Ich stelle mir das so vor:

Ozean1:
---
---
---
Ozean20:
---
---
---
Ozean46:
---
---
---

Die dazwischenliegenden werden garnicht angezeigt!
so ungefähr soll das dann aussehen!

//EDIT:
undwoher soll ich bitte uwes scripts kriegen???
habs ja schon mit wbs versucht, jedoch ist der "game" ordner pw geschützt^^
 
Zuletzt bearbeitet:
Übrigens ist die Handelsplattform eingestellt, da es das cmw nicht mehr gibt !
Oops... *pfeif*
Da ist man einen Tag mal nicht dort zu Besuch und schon wird sie eingestellt. ;(
undwoher soll ich bitte uwes scripts kriegen???
Das JavaScript wird ganz einfach mit im Quelltext eines entsprechenden Dokumentes angezeigt. :)

Falls dir da ein wenig zuviel Chaos herrscht, hier der Link zu JavaScript-Code, den ich Uwe zukommen lassen hab und den er nach seiner Rückkehr vielleicht einbauen wird, funktionabel ist er jedenfalls:

http://www.pastebin.org/index.php?page=show&id=1182&key=9ak6s638db

Da muss im Prinzip nur noch in der Aufrufanweisung die 60 durch eine fixe Anzahl von Sekunden über PHP ersetzt werden.

Was dein Insel-Ordnungs-Problem betrifft:
Ich verstehe soweit, dass bei der Anmeldung User in der DB mit ihrer Inselnummer eingetragen werden, was aber meinst du damit, dass "jedem spieler ein Ozean sozusagen zugewiesen wird" - seine Inselnummer gibt doch eben den Ozean schon vor...!?

Anschließend willst du dann ein PHP-Script, dass alle DB-Usereinträge nach deren Inselnummer abklappert und sie ordnet?

n8 erstmal, morgen dazu mehr von mir :)
Geist
 
ja, genauso ist, es natürlich habe die alle einen ozean, nur beim aufrufen der site sollen die Inselnummern in die Ozeane sortiert werden!

quelltextanzeigen ***** net:(
 
so habe nun folgendes funktionierendes gefunden:
Code:
<html>
<head>
<SCRIPT type="text/javascript">
        var TargetTime= new Date();
        var TimeBeginn = TargetTime.getTime();

    function CountDown(myid, seconds) {
	var CurrentDate = new Date();
        var CurrentTime = CurrentDate.getTime();
        var TimeEnd = TimeBeginn + (seconds*1000);
        TargetTime.setTime(TimeEnd);
        var Targetbox=document.getElementById(myid);
        var OpenTime = Math.floor((TargetTime-CurrentTime)/1000);

        var s = OpenTime % 60;
        var m = ((OpenTime-s)/60) % 60;
        var h = ((OpenTime-s-m*60)/(60*60));
        var fh  = ((h < 10) ? "0" : "");
        var fm  = ((m < 10) ? ":0" : ":");
        var fs  = ((s < 10) ? ":0" : ":");

        var Time = fh+h+fm+m+fs+s;
        var OutputString=Time;

        if(OpenTime<=0) { // Event wenn der Countdown abgelaufen ist
            var OutputString="Done.";
          }
          Targetbox.innerHTML=OutputString; // Ausgabe des Strings in der Betreffenden Zelle
	  window.setTimeout("CountDown('" + myid + "', '" + seconds + "')", 1000);
    }
</script>
</head>
<body>
<i id='Countdown'><script type='text/javascript'>CountDown('Countdown', 30);</script></i>
</body>
</html>
nun die frage, wie mache ich es das der timer sozusagen "weiterläuft" auch wenn man das fenster nicht geöffnet hat, ich denke dazu ist php von nöten und da der code vor dem quelltext anzeigen geparsed wird, ist das ja leider nicht möglich ihn zu sehen!
 
Der Timer sollte nicht weiterlaufen, warum auch - interessiert ja keinen wenn er es nicht sieht. :)

In dem Falle müsstest du die Enduhrzeit einfach angeben, irgendwo abspeichern und per PHP die Sekundendiffrenenz der beiden Uhrzeiten bei der Seitengenerierung errechnen und diese dann dynamisch in's JavaScript einfügen.

Übrigens habe ich in meinem letzten Posting oben schon einen Link gepostet, der ein ähnliches, weitaus einfacheres Script enthält, die Suche bei IM hättest du dir sparen können. :)

Was das Raussuchen und Sortieren des Inselnummern betrifft, kann ich dir leider nicht weiterhelfen, da ich komplett unerfahren im PHP-Umgang mit Datenbanken bin...

Grüßle,
Geist
 
wie speichert man denn den letztenwert, also beim verlassen der site oder wie meinste das???
könnte man nicht...
den aktuellen zeitwert speichern...
dann in 2tagen(oder was weis ich) wieder den aktuellen zeitwert nehmrn, die beiden minus rechnen, das von dem alten zeit ding abziehen und damit die differenz berechnen...
versteh ich zwar selber net aber egal:-)
wie hat uwe das denn gemacht???

//EDIT:
das mit dem verlassen der site ging doch irgendwie
<body onLoad="..." onClose="...">
stimmt doch oder?
 
lol, erleb ich da grad deine Paranoia? :-)

Nun, ich weiß nicht wirklich, wie Uwe es gemacht hat; hab ihn zwar in der JavaScript-Sache mal unterstützt, aber deswegen kenn ich ja die PHP-Scripte nicht. ;)

Würde es aber wie folgt machen, dass bei Auslösung eines solchen Timers, wie bspw. eben der Auftragstellung eines Schiffes o.ä. die jeweilige Uhrzeit genommen wird, die Dauer des Baus addiert wird und damit ein Datum samt Uhrzeit feststeht, zu welchem der Bau abgeschlossen ist.
Diese Uhrzeit trägst du irgendwo in eine Textdatei oder auch eine Datenbank ein - gibt also den letztendlichen Stoppunkt des Baus an.

Bei Aufruf der Seite durch den User wir über PHP das Datum aus der DB geholt, mit dem Datum der Abfrage vergleichen, die Sekundendifferenz ermittelt und diese Differenz an das JavaScript übergeben, welche dann clientseitig den Timer laufen lässt. :)

Zu deiner zweiten Frage: onUnload

hth,
Geist
 

Neue Beiträge

Zurück