12.01.2014 Aufrufe

Dokumentation zum Massive Multiplayer Online Game - Universität ...

Dokumentation zum Massive Multiplayer Online Game - Universität ...

Dokumentation zum Massive Multiplayer Online Game - Universität ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4. Schiffe und Missionen<br />

39<br />

Vorüberlegungen<br />

Meine Idee zur Gestaltung der Missions-View war es, eine dynamische Seite zu schreiben, welche auf die<br />

verschiedenen Eingaben und den individuellen Status des Users abgestimmt sein soll. Dieses Prinzip soll,<br />

neben der erhöhten Verständlichkeit, dafür sorgen fehlerhafte Eingaben des Users zu verhindern.<br />

Zusätzlich sollten alle speziellen Anfragen des Users ausschließlich per AJAX-Requests ablaufen, sodass ein<br />

Neuladen der Seite nicht nötig ist. Auf die AJAX-Requests soll mit einem JSON geantwortet werden der Form<br />

{"ok" : 1} oder {"ok" : 0}, sodass die nächste Aktion nur ausgeführt wird, wenn die Antwort "ok" ist. Zusätzlich<br />

werden je nach Anfragen noch weitere {Schlüssel:Wert} Paare in die Antwort gegeben.<br />

Der generelle Ablauf soll so gestaltet werden, dass der Benutzer durch mehrere Menüs geleitet wird. Die<br />

einzelnen Menüs sollen sich nacheinander öffnen und auch nur dann, wenn im vorigen Menü eine Eingabe<br />

gemacht wurde. Dabei wird bei jeder Eingabe, ein verstecktes Input-Feld dynamisch in eine html-form eingefügt,<br />

sodass am Ende, sollte alles korrekt sein, die Form durch einen Submit-Button abgeschickt werden kann.<br />

Zusätzlich sei zu erwähnen, dass die Seite auch mit Fehlentscheidungen umgehen kann. Sollten Änderungen<br />

vorgenommen werden an der derzeitigen Eingabe, werden entsprechende Änderungen ebenfalls intern<br />

nachvollzogen.<br />

Umsetzung<br />

Gelangt der User auf die Seite, so ergeben sich für ihn nur die 5 Missionstypen<br />

als Buttons zur Auswahl, welche zusätzlich durch ein Popover erklärt werden,<br />

sobald sich die Maus über die Schaltfläche bewegt.<br />

Klickt der User auf einen dieser Buttons, so wird ein weiteres Menü geöffnet,<br />

welches alle Flotten, des Users auflistet. Die Buttons der anderen Missionstypen<br />

sind nun disabled. Dort ist es möglich durch Klicken eines Pfeils die<br />

Zusammensetzung der Flotte anzeigen zu lassen (Man beachte die Bilder die beim<br />

Bewegen des Mauszeigers über die Tabellenzeilen erscheinen). Zusätzlich kann<br />

man sich die Fracht anzeigen lassen, was für Transport oder Kolonialisierung eine<br />

Rolle spielt.<br />

Durch einen Klick auf den Haken, wird diese Flotte ausgewählt und es öffnet sich<br />

ein Menü zur Auswahl des Ziels. Hier muss zunächst die Galaxie ausgewählt<br />

werden, woraufhin die dort befindlichen Sonnensysteme in das nächste<br />

Dropdown-Menü geladen werden. Bei der Wahl des Sonnensystems, werden<br />

ebenfalls ausschließlich die Planeten in das nächste Dropdown-Menü geladen,<br />

welche in dem Sonnensystem enthalten sind. Zusätzlich steht bei befreundeten<br />

oder eigenen Planeten eine kleine Info, sodass dem User ein wenig Übersicht<br />

geboten werden kann. Dieses Verfahren verhindert ungültige Angaben, da dem<br />

User lediglich erreichbare/bekannte Galaxien/Sonnensysteme/Planeten angezeigt<br />

werden. Zusätzlich gibt es, wenn der User zu Beginn auf Spionage geklickt hat,<br />

| Ablauf des Missionsmenüs<br />

die Möglichkeit, durch Drücken eines Buttons einen zufälligen neuen Planeten in die Liste einzufügen. So ist<br />

es dem User möglich neue Sonnensysteme/Galaxien zu erkunden und somit sein Sichtspektrum zu erweitern.<br />

Wurde ein Planet gewählt, wird im Hintergrund ein AJAX-Request gesendet, welcher der Distanz der gewählten<br />

Flotte <strong>zum</strong> soeben ausgesuchten Planeten abfragt und anzeigt.<br />

GET /json/distance?planet1=&planet2=<br />

So kann der Spieler ungefähr abschätzen, wie weit beziehungsweise lange seine Schiffe fliegen werden.<br />

Zeitgleich zu der Anzeige der Entfernung öffnet sich eine Tabelle, wo die Anzahlen der einzelnen Schiffe<br />

eingegeben werden kann, welche die Mission ausführen sollen. Diese Tabelle enthält die Informationen über<br />

die zuvor ausgewählte Flotte. Bei Eingabe der Anzahlwerte einzelner Schiffstypen werden automatisch die<br />

summierten Werte der Flotte für Angriff, Verteidigung und Lagerkapazität angezeigt. Außerdem werden von<br />

dem Eingabefeld lediglich Zahlen angenommen, welche im Intervall zwischen 0 und der maximalen Anzahl<br />

der Schiffe stehen.<br />

Sollte Transport oder Kolonialisierung gewählt worden sein, ist zusätzlich ein Auswahlmenü für Fracht geöffnet<br />

worden. Die Funktionialität ist ähnlich der für die Schiffsauswahl.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!