production init

This commit is contained in:
Athena Funderburg
2026-05-26 16:41:23 +00:00
commit 21f38ee3e1
680 changed files with 47071 additions and 0 deletions
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
<words>
<boat0>Flugzeugträger</boat0>
<boat1>Schlachtschiff</boat1>
<boat2>Kreuzer</boat2>
<boat3>U-Boot</boat3>
<boat4>Zerstörer</boat4>
<cmdDone>Fertig</cmdDone>
<cmdHelp>Hilfe</cmdHelp>
<cmdPlaceRandomly>Schiffe zufällig platzieren</cmdPlaceRandomly>
<cmdRestart>Neustart</cmdRestart>
<confirmRemoteWantsRestart>{0} möchte das Spiel neu starten, geht das in Ordnung?</confirmRemoteWantsRestart>
<connectionDirect>direkt</connectionDirect>
<connectionDisconnected>getrennt</connectionDisconnected>
<connectionIndirect>indirekt</connectionIndirect>
<errorDataSend>Datenfehler; Die Daten können nicht gesendet werden. Spiel gestoppt.</errorDataSend>
<errorDisconnected>Getrennt.</errorDisconnected>
<errorUserLeft>{0} hat das Spiel verlassen. Das Spiel wurde beendet.</errorUserLeft>
<infoHit>Treffer!</infoHit>
<infoMiss>Daneben.</infoMiss>
<infoLostBoat>Ein {0} wurde versenkt.</infoLostBoat>
<infoNoRestart>Kein Neustart.</infoNoRestart>
<infoPlaceShips>Platzieren Sie Ihre Schiffe durch Klicken auf 'Schiffe zufällig platzieren'. Wenn Sie mit der Position Ihrer Flotte nicht einverstanden sind klicken Sie noch einmal. Klicken Sie auf 'Fertig' um mit dem Spiel zu beginnen.</infoPlaceShips>
<infoRequestRestart>Um Neustart ersuchen..</infoRequestRestart>
<infoRemoteTurn>Bitte warten Sie bis Ihr Gegner einen Zug gemacht hat.</infoRemoteTurn>
<infoRestartDenied>{0} möchte das Spiel nicht neu starten.</infoRestartDenied>
<infoSunkBoat>Ein {0} wurde versenkt.</infoSunkBoat>
<infoWaitPlacing>Bitte warten Sie bis Ihr Gegner seine Flotte platziert hat.</infoWaitPlacing>
<infoYourTurn>Sie sind dran. Klicken Sie auf ein freies Feld Ihres Gegners und versuchen Sie seine Schiffe zu treffen.</infoYourTurn>
<lblBroughtToYouBy>Wird Ihnen präsentiert von {0}</lblBroughtToYouBy>
<lblConnectionType>Verbindungsart</lblConnectionType>
<lblEnemyNavy>Gegnerische Flotte</lblEnemyNavy>
<lblVersion>Schiffe Versenken {0}</lblVersion>
<lblYourNavy>Ihre Flotte</lblYourNavy>
<stateGameOverLost>Was für ein Pech! Sie haben verloren.</stateGameOverLost>
<stateGameOverWon>Gratulation, Sie haben gewonnen!</stateGameOverWon>
<stateInitializing>Starte Spiel...</stateInitializing>
<stateMyTurn>Sie sind dran.</stateMyTurn>
<statePlacingShips>Platzieren Sie Ihre Schiffe</statePlacingShips>
<stateRemoteTurn>Bitte warten Sie bis {0} einen Zug gemacht hat.</stateRemoteTurn>
<stateStartMyTurn>Spiel gestartet. Sie sind dran.</stateStartMyTurn>
<stateStartRemoteTurn>Spiel gestartet. Bitte warten Sie bis {0} einen Zug gemacht hat.</stateStartRemoteTurn>
<stateWaitOnJoin>Bitte warten Sie bis die Verbindung mit Ihrem Gegner hergestellt ist.</stateWaitOnJoin>
<stateWaitOnPlacing>Bitte warten Sie auf Ihren Gegner...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<words>
<boat0>Aircraft Carrier</boat0>
<boat1>Battleship</boat1>
<boat2>Cruiser</boat2>
<boat3>Submarine</boat3>
<boat4>Destroyer</boat4>
<cmdDone>Done</cmdDone>
<cmdHelp>Help</cmdHelp>
<cmdPlaceRandomly>Place ships randomly</cmdPlaceRandomly>
<cmdRestart>Restart</cmdRestart>
<confirmRemoteWantsRestart>{0} wants to restart this game, are you ok with that?</confirmRemoteWantsRestart>
<connectionDirect>direct</connectionDirect>
<connectionDisconnected>disconnected</connectionDisconnected>
<connectionIndirect>indirect</connectionIndirect>
<errorDataSend>Data error; unable to send data. Game stopped.</errorDataSend>
<errorDisconnected>Disconnected.</errorDisconnected>
<errorUserLeft>{0} has left the game. The game is over.</errorUserLeft>
<infoHit>A hit!</infoHit>
<infoMiss>A miss.</infoMiss>
<infoLostBoat>You just lost {0}.</infoLostBoat>
<infoNoRestart>No restart.</infoNoRestart>
<infoPlaceShips>Place your ships by clicking on the 'Place ships randomly' button. If you're not satisfied with the position of your fleet click again. Click 'Done' to start playing.</infoPlaceShips>
<infoRequestRestart>Requesting restart..</infoRequestRestart>
<infoRemoteTurn>Waiting for your opponent to make a move.</infoRemoteTurn>
<infoRestartDenied>{0} doesn't want to restart this game.</infoRestartDenied>
<infoSunkBoat>You sank {0}.</infoSunkBoat>
<infoWaitPlacing>Waiting for your opponent to finish placing it's fleet.</infoWaitPlacing>
<infoYourTurn>It's your turn. Click a free square on the opponent's board and try to sink his ships.</infoYourTurn>
<lblBroughtToYouBy>Brought to you by {0}</lblBroughtToYouBy>
<lblConnectionType>Connection type</lblConnectionType>
<lblEnemyNavy>Enemy's navy</lblEnemyNavy>
<lblVersion>Battleships {0}</lblVersion>
<lblYourNavy>Your navy</lblYourNavy>
<stateGameOverLost>Game over, you have lost!</stateGameOverLost>
<stateGameOverWon>Game over, you have won!</stateGameOverWon>
<stateInitializing>Initializing game...</stateInitializing>
<stateMyTurn>It's your turn.</stateMyTurn>
<statePlacingShips>Place your ships</statePlacingShips>
<stateRemoteTurn>Waiting for {0} to make a move.</stateRemoteTurn>
<stateStartMyTurn>Game started, it's your turn.</stateStartMyTurn>
<stateStartRemoteTurn>Game started, waiting for {0} to make a move.</stateStartRemoteTurn>
<stateWaitOnJoin>Waiting for your opponent to join</stateWaitOnJoin>
<stateWaitOnPlacing>Waiting for your opponent...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8" ?>
<words>
<boat0>Portaaviones</boat0>
<boat1>Acorazado</boat1>
<boat2>Crucero</boat2>
<boat3>Submarino</boat3>
<boat4>Destructor</boat4>
<cmdDone>Listo</cmdDone>
<cmdHelp>Ayuda</cmdHelp>
<cmdPlaceRandomly>Situar barcos aleatoriamente</cmdPlaceRandomly>
<cmdRestart>Reiniciar</cmdRestart>
<confirmRemoteWantsRestart>{0} quiere reiniciar el juego, ¿estás de acuerdo?</confirmRemoteWantsRestart>
<connectionDirect>directa</connectionDirect>
<connectionDisconnected>desconectado</connectionDisconnected>
<connectionIndirect>indirecta</connectionIndirect>
<errorDataSend>Se ha producido un error; imposible enviar datos. El juego se ha interrumpido.</errorDataSend>
<errorDisconnected>Desconectado.</errorDisconnected>
<errorUserLeft>{0} ha abandonado el juego. La partida ha finalizado.</errorUserLeft>
<infoHit>Tocado</infoHit>
<infoMiss>Agua</infoMiss>
<infoLostBoat>Has perdido {0}.</infoLostBoat>
<infoNoRestart>No reiniciar.</infoNoRestart>
<infoPlaceShips>Coloca tus barcos haciendo clic en el botón 'Situar barcos aleatoriamente'. Puedes pulsar tantas veces como quieras hasta que estés satisfecho con la colocación de tu flota. Pulsa 'Listo' para comenzar la partida.</infoPlaceShips>
<infoRequestRestart>Solicitando reiniciar...</infoRequestRestart>
<infoRemoteTurn>Esperando a que tu oponente mueva.</infoRemoteTurn>
<infoRestartDenied>{0} no quiere reiniciar la partida.</infoRestartDenied>
<infoSunkBoat>Has hundido un {0}.</infoSunkBoat>
<infoWaitPlacing>Esperando a que tu oponente termine de situar su flota.</infoWaitPlacing>
<infoYourTurn>Es tu turno. Pulsa sobre un espacio libre en el tablero de tu oponente y trata de hundir sus barcos.</infoYourTurn>
<lblBroughtToYouBy>Juego patrocinado por {0}</lblBroughtToYouBy>
<lblConnectionType>Tipo de conexión</lblConnectionType>
<lblEnemyNavy>Flota enemiga</lblEnemyNavy>
<lblVersion>Hundir la flota {0}</lblVersion>
<lblYourNavy>Tu flota</lblYourNavy>
<stateGameOverLost>El juego ha finalizado. Has perdido.</stateGameOverLost>
<stateGameOverWon>El juego ha finalizado. Has ganado.</stateGameOverWon>
<stateInitializing>Iniciando juego...</stateInitializing>
<stateMyTurn>Es tu turno.</stateMyTurn>
<statePlacingShips>Sitúa tus barcos</statePlacingShips>
<stateRemoteTurn>Esperando a que {0} mueva.</stateRemoteTurn>
<stateStartMyTurn>El juego ha comenzado, es tu turno.</stateStartMyTurn>
<stateStartRemoteTurn>El juego ha comenzado, esperando a que {0} mueva.</stateStartRemoteTurn>
<stateWaitOnJoin>Esperando a que se una tu oponente</stateWaitOnJoin>
<stateWaitOnPlacing>Esperando a tu oponente...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
<words>
<boat0>Porte-avions</boat0>
<boat1>Cuirassé</boat1>
<boat2>Croiseur</boat2>
<boat3>Sous-marin</boat3>
<boat4>Destroyer</boat4>
<cmdDone>Terminé</cmdDone>
<cmdHelp>Aide</cmdHelp>
<cmdPlaceRandomly>Placer les bateaux de façon aléatoire</cmdPlaceRandomly>
<cmdRestart>Redémarrer</cmdRestart>
<confirmRemoteWantsRestart>{0} veut relancer la partie, êtes-vous d'accord ?</confirmRemoteWantsRestart>
<connectionDirect>direct</connectionDirect>
<connectionDisconnected>déconnecté</connectionDisconnected>
<connectionIndirect>indirect</connectionIndirect>
<errorDataSend>Erreur de données; impossible d'envoyer les données. Arrêt du jeu.</errorDataSend>
<errorDisconnected>Déconnecté.</errorDisconnected>
<errorUserLeft>{0} a quitté la partie. Fin du jeu.</errorUserLeft>
<infoHit>Touché !</infoHit>
<infoMiss>Raté.</infoMiss>
<infoLostBoat>Vous venez de perdre {0}.</infoLostBoat>
<infoNoRestart>Pas de redémarrage.</infoNoRestart>
<infoPlaceShips>Placez vos bateaux en cliquant sur le bouton 'Placer les bateaux de façon aléatoire'. Si ces positions ne vous conviennent pas, recliquez. Cliquez sur 'Terminé' pour commencer à jouer.</infoPlaceShips>
<infoRequestRestart>Demande d'un redémarrage...</infoRequestRestart>
<infoRemoteTurn>Attente d'un mouvement de votre adversaire.</infoRemoteTurn>
<infoRestartDenied>{0} ne veut pas relancer cette partie.</infoRestartDenied>
<infoSunkBoat>Vous avez coulé {0}.</infoSunkBoat>
<infoWaitPlacing>Attente du placement de la flotte de votre adversaire.</infoWaitPlacing>
<infoYourTurn>A vous de jouer. Cliquez sur un carré libre sur l'écran de votre adversaire et tentez de couler ses bateaux.</infoYourTurn>
<lblBroughtToYouBy>Offert par {0}</lblBroughtToYouBy>
<lblConnectionType>Type de connexion</lblConnectionType>
<lblEnemyNavy>Marine de l'ennemi</lblEnemyNavy>
<lblVersion>Bataille navale {0}</lblVersion>
<lblYourNavy>Votre marine</lblYourNavy>
<stateGameOverLost>Partie terminée, vous avez perdu !</stateGameOverLost>
<stateGameOverWon>Partie terminée, vous avez gagné !</stateGameOverWon>
<stateInitializing>Initialisation du jeu...</stateInitializing>
<stateMyTurn>A vous de jouer.</stateMyTurn>
<statePlacingShips>Placez vos bateaux</statePlacingShips>
<stateRemoteTurn>Attente d'un mouvement de {0}</stateRemoteTurn>
<stateStartMyTurn>Début du jeu, à vous de jouer.</stateStartMyTurn>
<stateStartRemoteTurn>Début du jeu, attente d'un mouvement de {0}</stateStartRemoteTurn>
<stateWaitOnJoin>Attente de votre adversaire</stateWaitOnJoin>
<stateWaitOnPlacing>Attente des placements de votre adversaire...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
<words>
<boat0>Repülõgép-anyahajó</boat0>
<boat1>Csatahajó</boat1>
<boat2>Cirkáló</boat2>
<boat3>Tengeralattjáró</boat3>
<boat4>Romboló</boat4>
<cmdDone>Rendben</cmdDone>
<cmdHelp>Súgó</cmdHelp>
<cmdPlaceRandomly>Helyezd el a hajóidat</cmdPlaceRandomly>
<cmdRestart>Újrakezdés</cmdRestart>
<confirmRemoteWantsRestart>{0} újra szeretné kezdeni a játékot, egyet ért ezzel?</confirmRemoteWantsRestart>
<connectionDirect>közvetett</connectionDirect>
<connectionDisconnected>megszakadt</connectionDisconnected>
<connectionIndirect>közvetlen</connectionIndirect>
<errorDataSend>Adat hiba; nem lehet adatot küldeni. A játék leállt.</errorDataSend>
<errorDisconnected>Megszakadt.</errorDisconnected>
<errorUserLeft>{0} elhagyta a játékot. A játék véget ért.</errorUserLeft>
<infoHit>Találat!</infoHit>
<infoMiss>Elhibázás.</infoMiss>
<infoLostBoat>Vesztettél, {0}.</infoLostBoat>
<infoNoRestart>Nincs újrakezdés.</infoNoRestart>
<infoPlaceShips>Helyezd el a hajóidat a 'Helyezd el a hajóidat' gombra kattintva. Ha nem vagy megelégedve a hajók elrendezésével, akkor kattints újra a hajóra, és tedd máshová. Kattints a 'Kész' gombra a játékhoz.</infoPlaceShips>
<infoRequestRestart>Újrakezdés kérése..</infoRequestRestart>
<infoRemoteTurn>Várakozás az ellenfél lépésére.</infoRemoteTurn>
<infoRestartDenied>{0} nem szeretné újrakezdeni a játékot.</infoRestartDenied>
<infoSunkBoat>Elsülyedtél, {0}.</infoSunkBoat>
<infoWaitPlacing>Várakozás az ellenfélre, hogy elhelyezze a flottáját.</infoWaitPlacing>
<infoYourTurn>Te jössz. Kattints a szabad részre az ellenfél tábláján, és próbálj elsülyeszteni egy hajót.</infoYourTurn>
<lblBroughtToYouBy>Kihívó: {0}</lblBroughtToYouBy>
<lblConnectionType>Kapcsolat típusa</lblConnectionType>
<lblEnemyNavy>Ellenfél flottája</lblEnemyNavy>
<lblVersion>Csatahajók {0}</lblVersion>
<lblYourNavy>Flottád</lblYourNavy>
<stateGameOverLost>Vége, vesztettél!</stateGameOverLost>
<stateGameOverWon>Vége, nyertél!</stateGameOverWon>
<stateInitializing>Játék betöltése...</stateInitializing>
<stateMyTurn>Te jössz.</stateMyTurn>
<statePlacingShips>Helyezd ela hajókat</statePlacingShips>
<stateRemoteTurn>Várakozás {0} lépésére.</stateRemoteTurn>
<stateStartMyTurn>A játék elindult, te jössz.</stateStartMyTurn>
<stateStartRemoteTurn>A játék elindult, várakozás {0} lépésére.</stateStartRemoteTurn>
<stateWaitOnJoin>Várakozás az ellenfélre</stateWaitOnJoin>
<stateWaitOnPlacing>Várakozás az ellenfélre...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,45 @@
<?xml version="1.0" encoding="utf-8" ?>
<words>
<boat0>het vliegdekschip</boat0>
<boat1>de kruiser</boat1>
<boat2>de torpedojager</boat2>
<boat3>de onderzeeboot</boat3>
<boat4>de mijnenveger</boat4>
<cmdDone>Klaar</cmdDone>
<cmdHelp>Help</cmdHelp>
<cmdPlaceRandomly>Plaats de vloot</cmdPlaceRandomly>
<cmdRestart>Herstart</cmdRestart>
<confirmRemoteWantsRestart>{0} wil het spel opnieuw beginnen. Vind je dat goed?</confirmRemoteWantsRestart>
<connectionDirect>direkt</connectionDirect>
<connectionDisconnected>verbroken</connectionDisconnected>
<connectionIndirect>indirekt</connectionIndirect>
<errorDataSend>Data fout; kan geen gegevens versturen. Het spel is gestopt.</errorDataSend>
<errorDisconnected>Verbroken.</errorDisconnected>
<errorUserLeft>{0} heeft het spel verlaten. Het spel is gestopt.</errorUserLeft>
<infoHit>Raak!</infoHit>
<infoMiss>Mis.</infoMiss>
<infoLostBoat>O, o, {0} is gezonken.</infoLostBoat>
<infoNoRestart>Geen herstart.</infoNoRestart>
<infoPlaceShips>Plaats jouw vloot door te klikken op 'Plaats de vloot'. Als je niet tevreden bent over de positie van je schepen, klik opnieuw. Klik 'Klaar' om te beginnen met spelen.</infoPlaceShips>
<infoRequestRestart>Herstart aanvragen..</infoRequestRestart>
<infoRemoteTurn>Wacht op de beurt van je tegenstander.</infoRemoteTurn>
<infoRestartDenied>{0} wil dit spel niet opnieuw beginnen.</infoRestartDenied>
<infoSunkBoat>Je hebt {0} van je tegenstander laten zinken.</infoSunkBoat>
<infoWaitPlacing>Wacht tot je tegenstander zijn vloot heeft geplaatst.</infoWaitPlacing>
<infoYourTurn>Het is jouw beurt. Klik op een leeg vak van je tegenstander en probeer de schepen te laten zinken.</infoYourTurn>
<lblBroughtToYouBy>Aangeboden door {0}</lblBroughtToYouBy>
<lblConnectionType>Connectie type</lblConnectionType>
<lblEnemyNavy>Vloot van de tegenstander</lblEnemyNavy>
<lblVersion>Zeeslag {0}</lblVersion>
<lblYourNavy>Jouw vloot</lblYourNavy>
<stateGameOverLost>Spel over, je hebt verloren!</stateGameOverLost>
<stateGameOverWon>Spel over, je hebt gewonnen!</stateGameOverWon>
<stateInitializing>Spel wordt geïnitialiseerd...</stateInitializing>
<stateMyTurn>Het is jouw beurt.</stateMyTurn>
<statePlacingShips>Plaats je vloot</statePlacingShips>
<stateRemoteTurn>Wacht op de beurt van {0}.</stateRemoteTurn>
<stateStartMyTurn>Spel gestart, het is jouw beurt.</stateStartMyTurn>
<stateStartRemoteTurn>Spel gestart, wacht op de beurt van {0}.</stateStartRemoteTurn>
<stateWaitOnJoin>Wacht op de tegenstander om mee te doen</stateWaitOnJoin>
<stateWaitOnPlacing>Wacht op de tegenstander...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
<words>
<boat0>Porta-aviões</boat0>
<boat1>Navio de Guerra</boat1>
<boat2>Cruzeiro</boat2>
<boat3>Submarino</boat3>
<boat4>Barco</boat4>
<cmdDone>Feito</cmdDone>
<cmdHelp>Ajuda</cmdHelp>
<cmdPlaceRandomly>Dispôr os navios aleatóriamente</cmdPlaceRandomly>
<cmdRestart>Recomeçar</cmdRestart>
<confirmRemoteWantsRestart>{0} quer recomeçar o jogo, está de acordo?</confirmRemoteWantsRestart>
<connectionDirect>directo</connectionDirect>
<connectionDisconnected>desconectar</connectionDisconnected>
<connectionIndirect>indirecto</connectionIndirect>
<errorDataSend>Erro de comunicação. Jogo parado.</errorDataSend>
<errorDisconnected>Desconectado.</errorDisconnected>
<errorUserLeft>{0} saiu. O jogo acabou.</errorUserLeft>
<infoHit>Acertou!</infoHit>
<infoMiss>Falhou.</infoMiss>
<infoLostBoat>Acabou de perder {0}.</infoLostBoat>
<infoNoRestart>Sem recomeçar.</infoNoRestart>
<infoPlaceShips>Posicione os seus navios clicando no botão 'Dispôr os navios aleatóriamente'. Se não ficar satisfeito com as posições clique de novo. Por fim, clique em 'Feito' para começar a jogar.</infoPlaceShips>
<infoRequestRestart>A pedir o recomeço..</infoRequestRestart>
<infoRemoteTurn>À espera que o adversário jogue.</infoRemoteTurn>
<infoRestartDenied>{0} não quer recomeçar o jogo.</infoRestartDenied>
<infoSunkBoat>Você afundou {0}.</infoSunkBoat>
<infoWaitPlacing>À espera que o adversário posicione a sua frota.</infoWaitPlacing>
<infoYourTurn>É a sua vez. Clique num quadrado livre no tabuleiro do adversário e tente afundar os navios dele.</infoYourTurn>
<lblBroughtToYouBy>Produzido por {0}</lblBroughtToYouBy>
<lblConnectionType>Tipo de ligação</lblConnectionType>
<lblEnemyNavy>Marinha do Adversário</lblEnemyNavy>
<lblVersion>Batalha Naval {0}</lblVersion>
<lblYourNavy>Sua Marinha</lblYourNavy>
<stateGameOverLost>Jogo terminado, você perceu!</stateGameOverLost>
<stateGameOverWon>Jogo terminado, você ganhou!</stateGameOverWon>
<stateInitializing>A iniciar o jogo...</stateInitializing>
<stateMyTurn>É a sua vez.</stateMyTurn>
<statePlacingShips>Posicione os seus navios.</statePlacingShips>
<stateRemoteTurn>À espera que {0} jogue.</stateRemoteTurn>
<stateStartMyTurn>Jogo começado, é a sua vez.</stateStartMyTurn>
<stateStartRemoteTurn>Jogo começado, à espera que {0} jogue.</stateStartRemoteTurn>
<stateWaitOnJoin>À espera que o seu adversário chegue.</stateWaitOnJoin>
<stateWaitOnPlacing>Á espera do seu adversario...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,46 @@
<?xml version="1.0" encoding="utf-8" ?>
<words>
<boat0>Letalonosilko</boat0>
<boat1>Bojno ladjo</boat1>
<boat2>Križarko</boat2>
<boat3>Podmornico</boat3>
<boat4>Uničevalca</boat4>
<cmdDone>Postavljeno</cmdDone>
<cmdHelp>Pomoč</cmdHelp>
<cmdPlaceRandomly>Postavi ladjice</cmdPlaceRandomly>
<cmdRestart>Reset</cmdRestart>
<confirmRemoteWantsRestart>{0} želi resetirati to igro, se strinjaš?</confirmRemoteWantsRestart>
<connectionDirect>posredno</connectionDirect>
<connectionDisconnected>prekinjeno</connectionDisconnected>
<connectionIndirect>neposredno</connectionIndirect>
<errorDataSend>Podatkovna napaka; pošiljanje podatkov ni možno. Igra ustavljena.</errorDataSend>
<errorDisconnected>Prekinjeno.</errorDisconnected>
<errorUserLeft>{0} je zapustil igro. Igra je končana.</errorUserLeft>
<infoHit>Zadetek!</infoHit>
<infoMiss>Zgrešeno.</infoMiss>
<infoLostBoat>Pravkar si izgubil {0}.</infoLostBoat>
<infoNoRestart>Brez reseta.</infoNoRestart>
<infoPlaceShips>Postavi svoje ladjice s klikom na 'Postavi ladjice'. Če nisi zadovoljen s pozicijo svojih ladjic klikni ponovno. Klikni 'Postavljeno' za začetek igre.</infoPlaceShips>
<infoRequestRestart>Zahtevam reset..</infoRequestRestart>
<infoRemoteTurn>Čakaš na nasprotnika da napravi potezo.</infoRemoteTurn>
<infoRestartDenied>{0} ne želi resetirati te igre.</infoRestartDenied>
<infoSunkBoat>Potopil si {0}.</infoSunkBoat>
<infoWaitPlacing>Čakaš da nasprotnik postavi svoje ladjice.</infoWaitPlacing>
<infoYourTurn>Ti si na vrsti. Klikni na prost kvadratek na nasprotnikovi tabli in poskusi potopiti njegove ladje.</infoYourTurn>
<lblBroughtToYouBy>Vam na uslugo: {0}</lblBroughtToYouBy>
<lblConnectionType>Vrsta povezave</lblConnectionType>
<lblEnemyNavy>Sovražnikova mornarica</lblEnemyNavy>
<lblVersion>Potaplanje ladjic {0}</lblVersion>
<lblYourNavy>Tvoja mornarica</lblYourNavy>
<stateGameOverLost>Konec igre, izgubil si!</stateGameOverLost>
<stateGameOverWon>Konec igre, zmagal si!</stateGameOverWon>
<stateInitializing>Nalagam igro...</stateInitializing>
<stateMyTurn>Ti si na vrsti.</stateMyTurn>
<statePlacingShips>Postavi ladjice</statePlacingShips>
<stateRemoteTurn>Čakaš, da {0} naredi potezo.</stateRemoteTurn>
<stateStartMyTurn>Igra se je začela, ti si na potezi.</stateStartMyTurn>
<stateStartRemoteTurn>Igra se je začela, čakaš da {0} naredi potezo.</stateStartRemoteTurn>
<stateWaitOnJoin>Čakaš na nasprotnika, da se pridruži.</stateWaitOnJoin>
<stateWaitOnPlacing>Čakaš na nasprotnika...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,47 @@
<?xml version="1.0" encoding="iso-8859-1" ?>
<words>
<boat0>Flygplans bärare</boat0>
<boat1>Stridsskepp</boat1>
<boat2>Stridsbåt</boat2>
<boat3>Ubåt</boat3>
<boat4>Förstörare</boat4>
<cmdDone>Klart</cmdDone>
<cmdHelp>Hjälp</cmdHelp>
<cmdPlaceRandomly>Placera skeppen slumpmässigt</cmdPlaceRandomly>
<cmdRestart>Starta om</cmdRestart>
<confirmRemoteWantsRestart>{0} vill starta om den här omgången, är det ok?</confirmRemoteWantsRestart>
<connectionDirect>direkt</connectionDirect>
<connectionDisconnected>anslutning bruten</connectionDisconnected>
<connectionIndirect>indirekt</connectionIndirect>
<errorDataSend>Data fel; omöjligt att skicka data. Spelet har stoppats.</errorDataSend>
<errorDisconnected>Anslutning bruten.</errorDisconnected>
<errorUserLeft>{0} har lämnat spelet. Spelet är slut.</errorUserLeft>
<infoHit>En träff!</infoHit>
<infoMiss>En miss.</infoMiss>
<infoLostBoat>Du förlorade {0}.</infoLostBoat>
<infoNoRestart>Ingen omstart.</infoNoRestart>
<infoPlaceShips>Placera skeppen genom att klicka på knappen "Placera skeppen slumpmässigt". Om du inte är nöjd med positionerna på din flotta klicka igen. Klicka på 'Klart' för att börja spela.</infoPlaceShips>
<infoRequestRestart>Begär omstart..</infoRequestRestart>
<infoRemoteTurn>Väntar på att motståndaren ska göra sitt drag.</infoRemoteTurn>
<infoRestartDenied>{0} vill inte starta om omgången.</infoRestartDenied>
<infoSunkBoat>Du sänkte {0}.</infoSunkBoat>
<infoWaitPlacing>Väntar på att motståndaren ska bli klar med att placera ut sin flotta.</infoWaitPlacing>
<infoYourTurn>Det är din tur. Klicka på en ledig ruta på moståndarens bräda för att försöka sänka hans skepp.</infoYourTurn>
<lblBroughtToYouBy>Framtaget till dig av {0}</lblBroughtToYouBy>
<lblConnectionType>Anslutnings typ</lblConnectionType>
<lblEnemyNavy>Fiendens flotta</lblEnemyNavy>
<lblVersion>Stridsskepp {0}</lblVersion>
<lblYourNavy>Din flotta</lblYourNavy>
<stateGameOverLost>Spelet slut, du har förlorat!</stateGameOverLost>
<stateGameOverWon>Spelet slut, du har vunnit!</stateGameOverWon>
<stateInitializing>Påbörjar spelet...</stateInitializing>
<stateMyTurn>Det är din tur.</stateMyTurn>
<statePlacingShips>Placera dina skepp</statePlacingShips>
<stateRemoteTurn>Väntar på att {0} ska göra sitt drag.</stateRemoteTurn>
<stateStartMyTurn>Spelet har startat, det är din tur.</stateStartMyTurn>
<stateStartRemoteTurn>Spelet har startat, väntar på att {0} ska göra sitt drag.</stateStartRemoteTurn>
<stateWaitOnJoin>Väntar på att din motståndare ska ansluta</stateWaitOnJoin>
<stateWaitOnPlacing>Väntar på din motståndare...</stateWaitOnPlacing>
</words>
@@ -0,0 +1,693 @@
<html>
<!--
Copyright by Koen, 2003,2004,2005
http://games.mess.be
-->
<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7">
<title>Battleships</title>
<style type="text/css">
.btn{font-family:Tahoma;font-size:8pt;border-style:none;background-image:url(images/playerbg.gif);height:17px}
.header{font-weight:bold;color:white}
table{font-family:Tahoma;font-size:8pt}
</style>
<script language="javascript" src="../common/common.js"></script>
<script language="javascript">
var VERSION = "v2.0";
/// Data commands
var CMD_RESTART = "res";
var CMD_NORESTART = "nor";
var CMD_RESTARTOK = "rok";
var CMD_DONE = "done";
/// GAME_STATE
var GS_INITIALIZING = 0;
var GS_WAITFORJOIN = 1;
var GS_WAITFORPLACING = 2;
var GS_PLACINGSHIPS = 3;
var GS_MYTURN = 4;
var GS_REMOTETURN = 5;
var GS_GAMEOVER = 6;
var GS_ERROR = 7;
var BOAT_CARRIER = 0;
var BOAT_BATTLESHIP = 1;
var BOAT_CRUISER = 2;
var BOAT_SUB = 3;
var BOAT_DESTROYER = 4;
var BOAT_NONE = 10;
var BOAT_HIT = 11;
var BOAT_MISS = 12;
var m_remoteUserName;
var m_gameState = GS_INITIALIZING;
var m_isInitialized = false;
var m_requestRestart = false;
var m_iStart;
var m_remoteDonePlacing = false;
var m_myBoard = new Array(10);
var m_remoteBoard = new Array(10);
var m_myBoats = new Array(5);
var m_remoteBoats = new Array(5);
m_myBoats[BOAT_CARRIER] = new Array(5);
m_myBoats[BOAT_BATTLESHIP] = new Array(4);
m_myBoats[BOAT_CRUISER] = new Array(3);
m_myBoats[BOAT_SUB] = new Array(3);
m_myBoats[BOAT_DESTROYER] = new Array(2);
var m_preloadDone = false;
var m_remoteLoaded = false;
///
/// Global event handlers
///
function OnLoad(){
// load language
loadLanguage("battleships");
applyLanguage();
m_remoteUserName = getRemoteUserName();
m_iStart = iAmInviter();
initBoard(true);
initBoard(false);
updateGameState(GS_INITIALIZING, getWord("stateInitializing"));
updateConnectionType();
m_isInitialized = true;
window.external.Channel.Initialize();
preloadImages(new Array("bigbg.gif", "boat-bottom.gif", "boat-left.gif", "boat-middle-h.gif",
"boat-middle-v.gif", "boat-right.gif", "boat-top.gif", "ct_direct.gif", "ct_disconnected.gif",
"ct_indirect.gif", "empty.gif", "help.gif", "hit.gif", "miss.gif", "playerbg.gif"),
OnPreloadProgress, OnPreloadComplete);
}
function OnUnload(){
}
///
/// Preloading stuff
///
function OnPreloadProgress(progress){
divProgress.style.width = progress + "%";
}
function OnPreloadComplete(){
m_preloadDone = true;
initialize();
}
function initialize(){
if (m_preloadDone && m_remoteLoaded){
tblPreload.style.display = "none";
tblGame.style.display = "";
startGame();
}
}
function applyLanguage(){
lblBy.innerHTML = getWord("lblBroughtToYouBy", "<b>games.mess.be</b>");
lblVersion.innerText = getWord("lblVersion", VERSION);
lblYourNavy.innerText = getWord("lblYourNavy");
lblEnemyNavy.innerText = getWord("lblEnemyNavy");
btnHelp.title = getWord("cmdHelp");
btnRestart.innerText = getWord("cmdRestart");
btnPlaceRnd.innerText = getWord("cmdPlaceRandomly");
btnDone.innerText = getWord("cmdDone");
}
///
/// Channel event handlers
///
///
/// Occurs when the remote user closes the application, the conversation window or signs out of Messenger.
///
function Channel_OnAppClose(){
m_remoteLoaded = false;
updateGameState(GS_ERROR, getWord("errorUserLeft", getDisplayName(m_remoteUserName)));
}
///
/// Occurs when a data send has failed, inspect Channel.Error for details.
///
function Channel_OnDataError(){
updateGameState(GS_ERROR, getWord("errorDataSend"));
}
///
/// Occurs when new data has been received. The data is available in window.external.Channel.Data.
///
function Channel_OnDataReceived(){
var data = window.external.Channel.Data;
if (data == CMD_RESTART){
if (m_gameState == GS_MYTURN || m_gameState == GS_REMOTETURN){
var restart = confirm(getWord("confirmRemoteWantsRestart", getDisplayName(m_remoteUserName)));
var cmd = restart ? CMD_RESTARTOK : CMD_NORESTART;
window.external.Channel.SendData(cmd);
if (restart)
startGame();
}
else if (m_gameState == GS_WAITFORJOIN){
window.external.Channel.SendData(CMD_RESTARTOK); //confirm
startGame();
}
}
else if (data == CMD_RESTARTOK){
m_requestRestart = false;
startGame();
}
else if (data == CMD_NORESTART){
m_requestRestart = false;
var msg = getWord("infoNoRestart") + " ";
if (m_gameState == GS_MYTURN)
msg += getWord("stateMyTurn");
else if (m_gameState == GS_REMOTETURN)
msg += getWord("stateRemoteTurn", getDisplayName(m_remoteUserName));
statusText.innerText = msg;
alert(getWord("infoRestartDenied", getDisplayName(m_remoteUserName)));
}
else if (data.substr(0, CMD_DONE.length) == CMD_DONE){
handleFleetInfo(data);
if (m_gameState == GS_WAITFORPLACING)
startGamePlay();
}
else{
if (m_gameState == GS_REMOTETURN)
doMove(new point(data), false);
}
}
///
/// Occurs when the remote user closes the window that contains the app.
///
function Channel_OnRemoteAppClosed(){
m_remoteLoaded = false;
updateGameState(GS_ERROR, getWord("errorUserLeft", getDisplayName(m_remoteUserName)));
}
///
/// Occurs when the remote app has been initialized. Both apps are now initialized.
///
function Channel_OnRemoteAppLoaded(){
m_remoteLoaded = true;
initialize();
}
///
/// Occurs when the connection between conversants changes from direct to indirect or disconnected.
/// The type is available in window.external.Channel.Type
///
function Channel_OnTypeChanged(){
updateConnectionType();
}
///
/// Helpers functions
///
function updateConnectionType(){
var icon, descr;
switch(window.external.Channel.Type){
case CT_DIRECT:
icon = "ct_direct.gif"
descr = getWord("connectionDirect");
break;
case CT_DISCONNECTED:
icon = "ct_disconnected.gif"
descr = getWord("connectionDisconnected");
if (m_isInitialized)
updateGameState(GS_ERROR, getWord("errorDisconnected"));
else
updateGameState(GS_INITIALIZING, getWord("stateInitializing"));
break;
case CT_INDIRECT:
icon = "ct_indirect.gif"
descr = getWord("connectionIndirect");
break;
}
statusIcon.src = "images/" + icon;
statusIcon.title = getWord("lblConnectionType") + ": " + descr;
}
///
/// Game specific objects
///
function point(){
if (arguments.length == 1){
var args = arguments[0].split(",");
this.x = parseInt(args[0]);
this.y = parseInt(args[1]);
}
else{
this.x = arguments[0];
this.y = arguments[1];
}
}
point.prototype.toString = function(){
return this.x + "," + this.y;
}
///
/// Game specific functions
///
function startGame(){
document.body.disabled = false;
initBoard(true);
initBoard(false);
m_remoteDonePlacing = false;
updateGameState(GS_PLACINGSHIPS, getWord("statePlacingShips"));
}
function startGamePlay(){
btnRestart.disabled = false;
if (m_iStart)
updateGameState(GS_MYTURN, getWord("stateStartMyTurn"));
else
updateGameState(GS_REMOTETURN, getWord("stateStartRemoteTurn", getDisplayName(m_remoteUserName)));
}
function initBoard(me){
var board = myBoard;
var boardArr = m_myBoard;
var fleet = m_myBoats;
if (!me){
board = remoteBoard;
boardArr = m_remoteBoard;
fleet = m_remoteBoats;
}
if (board.rows.length != 0){
for(var i = 0; i < 10; i++){
board.deleteRow(0);
}
}
for(var i = 0; i < 10; i++){
boardArr[i] = new Array(10);
var row = board.insertRow();
row.height = "21";
for(var j = 0; j < 10; j++){
var cell = row.insertCell();
cell.innerHTML = "<img src='images/empty.gif'>"
cell.width = "21";
boardArr[i][j] = BOAT_NONE;
}
}
for(var i = 0; i < fleet.length; i++){
var boatInfo = fleet[i];
if (boatInfo){
for(var j = 0; j < boatInfo.length; j++){
boatInfo[j] = null;
}
}
}
}
function drawBoat(boatInfo, myBoat){
var board = (myBoat) ? myBoard : remoteBoard;
var horizontal = (boatInfo[0].y == boatInfo[1].y);
for(var i = 0; i < boatInfo.length; i++){
var p = boatInfo[i];
var img;
if (i == 0){
if (horizontal)
img = "boat-left.gif";
else
img = "boat-top.gif";
}
else if (i == boatInfo.length - 1){
if (horizontal)
img = "boat-right.gif";
else
img = "boat-bottom.gif";
}
else{
if (horizontal)
img = "boat-middle-h.gif";
else
img = "boat-middle-v.gif";
}
board.rows[p.y].cells[p.x].style.backgroundImage = "url(images/" + img + ")";
}
}
function placeBoat(boat, startPoint, horizontal){
var oldBoatInfo = m_myBoats[boat];
var newBoatInfo = new Array(oldBoatInfo.length);
var p = startPoint;
for(var i = 0; i < newBoatInfo.length; i++){
if (p.x > 9 || p.y > 9 || m_myBoard[p.x][p.y] != BOAT_NONE)
return false;
else{
newBoatInfo[i] = p;
if (horizontal)
p = new point(p.x + 1, p.y);
else
p = new point(p.x, p.y + 1);
}
}
for(var i = 0; i < newBoatInfo.length; i++){
// clear old position
if (oldBoatInfo[i]){
var oldX = oldBoatInfo[i].x;
var oldY = oldBoatInfo[i].y;
m_myBoard[oldX][oldY] = BOAT_NONE;
myBoard.rows[oldY].cells[oldX].style.backgroundImage = "url(images/empty.gif)";
oldBoatInfo[i] = null;
}
var x = newBoatInfo[i].x;
var y = newBoatInfo[i].y;
m_myBoard[x][y] = boat;
oldBoatInfo[i] = newBoatInfo[i];
}
drawBoat(newBoatInfo, true);
return true;
}
function placeBoatsRnd(){
for(var i = 0; i < 5; i++){
var placed = false;
while(!placed){
placed = placeBoat(i, new point(Math.floor(Math.random() * 10), Math.floor(Math.random() * 10)), (Math.random() < .5))
}
}
}
function updateGameState(gameState, msg){
var infoMsg = "";
if (gameState == GS_ERROR){
document.body.disabled = true;
}
else if (gameState == GS_PLACINGSHIPS){
infoMsg = getWord("infoPlaceShips");
btnDone.disabled = true;
btnRestart.disabled = true;
placePnl.style.display = "";
}
else if (gameState == GS_WAITFORPLACING){
btnRestart.disabled = true;
infoMsg = getWord("infoWaitPlacing");
}
else if (gameState == GS_MYTURN){
infoMsg = getWord("infoYourTurn");
}
else if (gameState == GS_REMOTETURN){
infoMsg = getWord("infoRemoteTurn");
}
pnlInfo.innerText = infoMsg;
m_gameState = gameState;
statusText.innerText = msg;
}
function pointFromElement(element){
var td;
if (element.tagName == "TD")
td = event.srcElement;
else if (element.tagName == "IMG")
td = event.srcElement.parentElement;
else
return null;
var x = td.cellIndex;
var y = td.parentElement.rowIndex;
return new point(x, y);
}
function handleFleetInfo(data){
data = data.substr(4);
var boatInfo = data.split("$");
m_remoteBoats = new Array(boatInfo.length);
for(var i = 0; i < boatInfo.length; i++){
var boatPos = boatInfo[i].split("|");
m_remoteBoats[i] = new Array(boatPos.length);
for(var j = 0; j < boatPos.length; j++){
var p = new point(boatPos[j]);
m_remoteBoard[p.x][p.y] = i;
m_remoteBoats[i][j] = p;
}
}
m_remoteDonePlacing = true;
}
function sendFleetInfo(){
var data = CMD_DONE;
for(var i = 0; i < 5; i++){
if (i > 0)
data += "$";
var boatInfo = m_myBoats[i];
for (var j = 0; j < boatInfo.length; j++){
if (j > 0)
data += "|";
data += boatInfo[j].toString();
}
}
window.external.Channel.SendData(data);
}
function doMove(p, isMyMove){
var board = (isMyMove) ? remoteBoard : myBoard;
var boardArr = (isMyMove) ? m_remoteBoard : m_myBoard;
var msg;
if (boardArr[p.x][p.y] == BOAT_NONE){
boardArr[p.x][p.y] = BOAT_MISS;
board.rows[p.y].cells[p.x].firstChild.src = "images/miss.gif";
msg = getWord("infoMiss");
}
else{
boardArr[p.x][p.y] = BOAT_HIT;
board.rows[p.y].cells[p.x].firstChild.src = "images/hit.gif"
msg = getWord("infoHit");
var boatID = boatSunk(p, isMyMove)
if (boatID != -1){
var boat = getWord("boat" + boatID);
msg = ((isMyMove) ? getWord("infoSunkBoat", boat) : getWord("infoLostBoat", boat)) +"!";
drawBoat((isMyMove) ? m_remoteBoats[boatID] : m_myBoats[boatID], !isMyMove);
}
}
if (isGameOver()){
if (isFleetGone(true)){
msg = getWord("stateGameOverLost");
m_iStart = false;
// reveal enemy fleet
for(var i = 0; i < m_remoteBoats.length; i++)
drawBoat(m_remoteBoats[i], false);
}
else{
msg = getWord("stateGameOverWon");
m_iStart = true;
}
updateGameState(GS_GAMEOVER, msg);
}
else{
if (m_gameState == GS_MYTURN){
msg += " " + getWord("stateRemoteTurn", getDisplayName(m_remoteUserName));
updateGameState(GS_REMOTETURN, getWord("stateRemoteTurn", getDisplayName(m_remoteUserName)));
}
else{
msg += " " + getWord("stateMyTurn");
updateGameState(GS_MYTURN, getWord("stateMyTurn"));
}
}
pnlInfo.innerText = msg;
}
function isFleetGone(me){
var fleet = (me) ? m_myBoats : m_remoteBoats;
var boardArr = (me) ? m_myBoard : m_remoteBoard;
for(var i = 0; i < fleet.length; i++){
var boatInfo = fleet[i];
for(var j = 0; j < boatInfo.length; j++){
var p = boatInfo[j];
if (boardArr[p.x][p.y] != BOAT_HIT)
return false;
}
}
return true;
}
function boatSunk(p, isMyMove){
var fleet = (isMyMove) ? m_remoteBoats : m_myBoats;
var boardArr = (isMyMove) ? m_remoteBoard : m_myBoard;
for(var i = 0; i < fleet.length; i++){
var boatInfo = fleet[i];
for(var j = 0; j < boatInfo.length; j++){
var boatPos = boatInfo[j];
if (boatPos.x == p.x && boatPos.y == p.y){
// Find out if entire boat sunk
for(var k = 0; k < boatInfo.length; k++){
var boatPos2 = boatInfo[k];
if (boardArr[boatPos2.x][boatPos2.y] != BOAT_HIT)
return -1;
}
return i;
}
}
}
return -1;
}
function isGameOver(){
return isFleetGone(true) || isFleetGone(false);
}
///
/// GUI event handlers
///
function btnPlaceRnd_onclick(){
placeBoatsRnd();
btnDone.disabled = false;
}
function btnDone_onclick(){
placePnl.style.display = "none";
sendFleetInfo();
if (m_remoteDonePlacing)
startGamePlay();
else
updateGameState(GS_WAITFORPLACING, getWord("stateWaitOnPlacing"));
}
function myBoard_onmouseover(){
//NYI
}
function myBoard_onclick(){
//NYI
}
function remoteBoard_onmouseover(){
}
function remoteBoard_onclick(){
if (m_gameState == GS_MYTURN){
var p = pointFromElement(event.srcElement);
if (p){
if (m_remoteBoard[p.x][p.y] == BOAT_HIT || m_remoteBoard[p.x][p.y] == BOAT_MISS){
// ignore
return;
}
doMove(p, true);
window.external.Channel.SendData(p.toString());
}
}
}
function btnRestart_onclick(){
if (m_gameState == GS_GAMEOVER){
updateGameState(GS_WAITFORJOIN, getWord("stateWaitOnJoin"));
window.external.Channel.SendData(CMD_RESTART);
}
else if ((m_gameState == GS_MYTURN || m_gameState == GS_REMOTETURN) && !m_requestRestart){
m_requestRestart = true;
statusText.innerText = getWord("infoRequestRestart");
window.external.Channel.SendData(CMD_RESTART);
}
}
function help_onclick(){
showHelpFile("help/battleships-help.htm");
}
</script>
</head>
<body onload="OnLoad();" onunload="OnUnload();" style="margin:0" scroll="no" style="background-color:#516CA1">
<xml id="words"></xml>
<table id="tblPreload" width="100%" height="100%">
<tr height="20%">
<td>&nbsp;</td>
</tr>
<tr height="40%">
<td align="center"><img src="images/battleships-logo.jpg"><div id="lblBy" style="color:#D4DEF4"></div>
</td>
</tr>
<tr valign="top" height="30%">
<td align="center"><div align="left" style="width:100px;height:16px;color:#D4DEF4;border-style:solid;border-width:1px"><div id="divProgress" style="background-color:#D4DEF4;width:0%;height:100%"></div>
</div>
</td>
</tr>
</table>
<table id="tblGame" width="100%" height="100%" style="display:none">
<tr class="header">
<td id="lblYourNavy" align="center"></td>
<td id="lblEnemyNavy" align="center"></td>
</tr>
<tr>
<td align="center">
<table id="myBoard" onmouseover="myBoard_onmouseover();" onclick="myBoard_onclick();" border="0" borderColorDark="black" borderColorLight="black" cellpadding="0" cellspacing="0" style="background-image:url(images/blanksquare.gif);table-layout:fixed;border-collapse:collapse">
</table>
</td>
<td align="center">
<table id="remoteBoard" onmouseover="remoteBoard_onmouseover();" onclick="remoteBoard_onclick();" border="0" borderColorDark="black" borderColorLight="black" cellpadding="0" cellspacing="0" style="background-image:url(images/blanksquare.gif);table-layout:fixed;border-collapse:collapse">
</table>
</td>
</tr>
<tr id="placePnl" height="30" valign="bottom" style="display:none">
<td colspan="2" align="center">
<button id="btnPlaceRnd" class="btn" onclick="btnPlaceRnd_onclick();" style="width:150"></button>
&nbsp;
<button id="btnDone" class="btn" onclick="btnDone_onclick();" style="width:150"></button>
</td>
</tr>
<tr>
<td colspan="2">
<div id="pnlInfo" style="margin:10px;padding:5px;height:50px;background-image:url(images/bigbg.gif);border-style:solid;border-width:1px;border-color:black;padding:2px">
</div>
</td>
</tr>
<tr height="100%">
<td colspan="2">&nbsp;</td>
</tr>
<tr>
<td colspan="2" align="center">
<button id="btnRestart" onclick="btnRestart_onclick();" class="btn"></button>
</td>
</tr>
<tr>
<td colspan="2" align="right" style="font-size:7pt"><a id="lblVersion" href="http://games.mess.be" target="_blank" style="color:white"></a> <a href="javascript:help_onclick();"><img id="btnHelp" align="absmiddle" border="0" src="images/help.gif"></a></td>
</tr>
<tr valign="bottom" height="17px">
<td colspan="2">
<div id="statusBar" style="border-style:solid;border-width:0px;border-color:buttonface;height:17px;background-image:url(images/playerbg.gif)">
<img id="statusIcon" width="16" height="16" align="absmiddle" style="unselectable;margin:0px 5px" src="images/empty.gif">
<span id="statusText" unselectable style="cursor:default"></span>
</div>
</td>
</tr>
</table>
</body>
</html>
@@ -0,0 +1,62 @@
<html>
<head>
<title>Sea Battle</title>
<style type="text/css">
body{font-family:Tahoma;font-size:8pt}
table{font-family:Tahoma;font-size:8pt;border-style:solid;border-width:1px;border-color:buttonface;border-collapse:collapse}
.btn{font-family:Tahoma;font-size:8pt;border-style:solid;border-width:1px;border-color:buttonface;background-color:white}
</style>
</head>
<body>
<b><font size="5">The Rules of Sea Battle</font></b>
<br>
<i>Written by bno
<p>
Before I start this guide, I just thought I would say that this game also goes under the name of <b>Battle Ships</b>.
<p>
Well, let us start with giving the general idea of the game.</i>
<p>
The idea is to (well, win obviously) blow up all of your enemy's ships before they blow up all of yours.
<p><br>
<b>The start</b>
<p>
<img src="seabattle1.png">
<br>
Above is a picture of something similar to what you will get at the beginning. Press the 'Place ships Randomly' to randomly place your ships on your board. Keep pressing this button until you are happy with where your ships are located.
<p>
<img src="seabattle2.png">
<br>
Next up, is to try and attempt to blow up your opponent's ships before they bow up yours!
<br>
Click squares to guess where you think they could be. A whirlpool, as shown in the above picture, shows as a miss. The explosion, shows as a hit. Once you fully sink their ship, it will appear as what ship it was with the explosions. You will not be able to see where there other ships are located until you have fully bombed the ship (unless of course you are either playing yourself, or someone RIGHT next to you... lol)
<p>
You are allowed one guess each turn, taking it in turn to guess where the ships are located. Once you get a hit, guess around that square (not diagonal) to try and blow up the whole ship.
<p>
Below is a guide to what each ship is named and how many of each ship there are, the smallest being two, and the largest being five.<P></P>
<br>
<table border="1" ID="Table1">
<tr bgcolor="buttonface"><td width="100"><b>Name</b></td><td><b>Number of squares</b></td><td><b>Amount of ships</b></td></tr>
<tr><td>Destroyer</td><td>2</td><td>1</td></tr>
<tr><td>Submarine</td><td>3</td><td>2</td></tr>
<tr><td>Battleship</td><td>4</td><td>1</td></tr>
<tr><td>Aircraft Carrier</td><td>5</td><td>1</td></tr>
</table>
<p>
<br>
When the game has finished it will read 'Game over! Congratulations, you have won!' if you won, or 'Game over! Too bad, you have lost.' if you lost.
<p><br><BR>
<b>I hope this guide has made it easier for you to understand the game. Of course, another thing to help you get good at any game is to PRACTISE.
<p>
This guide has been brought to you by: bno
<p>
I would also like to thank everyone who has made this game possible with MSN. <font color="green">THANKYOU</font></b>
<p>
<br>
<BR>
<hr>
This guide was written for 'Sea Battle v0.1'
</body>
</html>
Binary file not shown.

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 273 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 681 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 689 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 643 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 645 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 685 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 689 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 900 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 807 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 163 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 146 B