Mahlzeit.
Folgendes:
Ich tüftel gerade an einem kleinen Spiel.
Die Karte des Spieles besteht aus einfachen Rechtecken, wobei es verschiedene Untergründe gibt.
Z.b. Sumpf, Rasen oder Wald.
Wenn eine Einheit dieses Feld überqueren möchte, benötigt sie eine bestimmte Anzahl an Minuten dafür, je nach Beschaffenheit.
Für Sumpf beispielsweise 6 Minuten
Für Wald 8 Minuten und
Für Rasen 2 Minuten.
Meine Einheiten können sich auch schon Problemlos über das Gebiet bewegen.
In meiner SQL Tabelle existiert für jede Einheit ein Feld, wo sie sich gerade befindet und wo sie hin will.
Diese beiden Felder enthalten jeweils die MapID des Feldes der Karte.
Momentan funktioniert das System so, dass sobald die Zeit abgelaufen ist die Einheit um ein Feld weiter in Richtung Zielfeld springt.
Nun zu meinen Problemen:
1. Wie ist es möglich alle Felder zu selektieren, die die Einheit auf ihrem gesamten Weg zurücklegen wird?
2. Mometan muss man den Browser aktualisieren, damit die Einheit weiterspringt, weil erst mit Reload der Seite geprüft wird, ob die Zeit der Überquerung beendet wurde.
Zusaätzlich weiß ich, dass man einen Cronjob einrichten könnte, ich würde das ganze aber lieber Rekursiv lösen, heißt, wenn sich ein Spieler 50 Minuten nicht eingeloggt hat, soll rekursiv ermittelt werden, wie weit sich die Einheit in dieser Zeit bewegt hat.
Meine Tabelle sehen vereinfacht so aus:
MAP-TABELLE:
map_id (ID eines Feldes)
map_coordx (X Koordinate eines Feldes)
map_coordy (Y Koordinate eines Feldes)
map_move_time (Zeit die zur Überquerung eines Feldes benötigt wird)
map_surface (Beschaffenheit eines Feldes)
UNIT-TABELLE:
unit_id (ID der Einheit)
map_id (ID auf der sich eine Einheit befindet)
target_id (ID eines Zielfeldes)
Hoffe mir kann jemand helfen.
Falls ich etwas nicht ausreichend beschreiben habe, bitte bescheid geben und fragen, ich werde dann Informationen nachreichen.
Thx so far.
/edit: Ich weiß dass Frage 2 besser in den PHP Bereich passt, jedoch ist mir die ANtwort auf Frage 1 wichtiger.
Folgendes:
Ich tüftel gerade an einem kleinen Spiel.
Die Karte des Spieles besteht aus einfachen Rechtecken, wobei es verschiedene Untergründe gibt.
Z.b. Sumpf, Rasen oder Wald.
Wenn eine Einheit dieses Feld überqueren möchte, benötigt sie eine bestimmte Anzahl an Minuten dafür, je nach Beschaffenheit.
Für Sumpf beispielsweise 6 Minuten
Für Wald 8 Minuten und
Für Rasen 2 Minuten.
Meine Einheiten können sich auch schon Problemlos über das Gebiet bewegen.
In meiner SQL Tabelle existiert für jede Einheit ein Feld, wo sie sich gerade befindet und wo sie hin will.
Diese beiden Felder enthalten jeweils die MapID des Feldes der Karte.
Momentan funktioniert das System so, dass sobald die Zeit abgelaufen ist die Einheit um ein Feld weiter in Richtung Zielfeld springt.
Nun zu meinen Problemen:
1. Wie ist es möglich alle Felder zu selektieren, die die Einheit auf ihrem gesamten Weg zurücklegen wird?
2. Mometan muss man den Browser aktualisieren, damit die Einheit weiterspringt, weil erst mit Reload der Seite geprüft wird, ob die Zeit der Überquerung beendet wurde.
Zusaätzlich weiß ich, dass man einen Cronjob einrichten könnte, ich würde das ganze aber lieber Rekursiv lösen, heißt, wenn sich ein Spieler 50 Minuten nicht eingeloggt hat, soll rekursiv ermittelt werden, wie weit sich die Einheit in dieser Zeit bewegt hat.
Meine Tabelle sehen vereinfacht so aus:
MAP-TABELLE:
map_id (ID eines Feldes)
map_coordx (X Koordinate eines Feldes)
map_coordy (Y Koordinate eines Feldes)
map_move_time (Zeit die zur Überquerung eines Feldes benötigt wird)
map_surface (Beschaffenheit eines Feldes)
UNIT-TABELLE:
unit_id (ID der Einheit)
map_id (ID auf der sich eine Einheit befindet)
target_id (ID eines Zielfeldes)
Hoffe mir kann jemand helfen.
Falls ich etwas nicht ausreichend beschreiben habe, bitte bescheid geben und fragen, ich werde dann Informationen nachreichen.
Thx so far.
/edit: Ich weiß dass Frage 2 besser in den PHP Bereich passt, jedoch ist mir die ANtwort auf Frage 1 wichtiger.
Kommentar