Information Technology Reference
In-Depth Information
else if (msg.result == 'hit') {
game.you.grid[msg.field].setAttribute("class",
msg.result);
}
...
Aus Sicht des Angreifers bedeutet die Antwort hit , dass das angeklickte Feld rot
markiert wird. Ist die Antwort destroyed , werden alle Felder dieses Schiffes als
Treffer von Rot in Grün umgewandelt. Zur gleichen Zeit wird am anderen Ende
der Leitung im Spielfeld des Angegriffenen bei hit dessen getroffene Position
rot markiert und bei destroyed alle bis dahin in Rot markierten Schiffsteile in
water umgewandelt - je mehr Blau also auf dem eigenen Spielfeld erscheint,
desto schlechter ist die Lage, und je mehr Grün im gegnerischen Spielfeld zu
finden ist, desto größer ist die Chance, einen Sieg davonzutragen.
Lautet die Antwort allerdings water , ist der angegriffene Spieler an der Rei-
he und kann seinerseits angreifen (die deactivateField() -Funktion verhindert
weitere Eingaben). Auf diese Weise wechselt das Spiel so lange hin und her, bis
einer der Spieler alle Schiffe des Gegners versenkt hat und zum Sieger erklärt
wird. Das Markieren des Status eigener und feindlicher Schiffe erfolgt, wie be-
reits erwähnt wurde, über CSS-Formate für die jeweiligen button -Elemente.
Der Wechsel zwischen den Spielern wird dadurch ermöglicht, dass das geg-
nerische Spielfeld beim jeweils inaktiven Spieler mit pointer-events:none und
opacity:0.2 deaktiviert wird.
Nach Beendigung des Spieles werden beide Kontrahenten wieder getrennt; ihr
Status wird auf Frei zum Spielen gesetzt, und die nächste Einladung kann erfol-
gen. In der derzeitigen Version von Schiffe versenken! ist noch nicht vorgesehen,
dass mehrere Spiele hintereinander mit dem gleichen Spieler gespielt werden
können - vielleicht versuchen Sie ja, dieses neue Feature zu implementieren?
Auch ein
L OGOUT -Button könnte nicht schaden, und wer ganz mutig ist, kann
sich auch an einen Multiplayer-Modus wagen. Möglichkeiten, diese Applikation
weiterzuentwickeln, gibt es viele - Ihrer Fantasie sind keine Grenzen gesetzt!
Das Beispiel demonstriert eindrucksvoll, welche neuen Möglichkeiten das
Websocket-Protokoll für die Entwicklung von interaktiven Applikationen bietet.
In den hier vorgestellten Beispielen ging es immer um die Interaktion zwischen
Benutzern. Sehr einfach zu implementieren wäre es auch, dass der Web-
socket-Server Informationen aus dem Internet bezieht, diese aufbereitet und
dann an die angeschlossenen Benutzer verteilt. Die schon eingangs erwähn-
te Applikation mit der Verteilung von aktuellen Börsenkursen wäre ein gutes
Search WWH ::




Custom Search