I denne oppgaven skal Battleship utvides med muligheten for å la datamaskinen spille som den ene spilleren. For å støtte dette må spillklassen implementere IEnemy-grensesnittet, som er definert under:
public interface IEnemy extends IBattleship { /** * Returns the coordinates targeted for fire by the AI. * @arg: The board which the enemy fires at. * @return An integer array of length 2: * The first element is the x coordinate. * The second element is the y coordinate. */ public int[] target(IBattleship board); }
Tilfeldig
Lag en implementasjon av IEnemy som skyter helt tilfeldige ruter på brettet.
Hunt / Target
Først, skyt tilfeldig (hunt mode) helt til et skip er blitt truffet. Når et skip er truffet går AI-en inn i target mode. Da skytes ruter som er ved sida av den ruta som nettopp ble truffet. Det er mulig å søke opp, ned, høyre og venstre for å leite etter meir av det samme skipet.
Se her for mer informasjon: http://www.datagenetics.com/blog/december32011/
For hvert spill har vi laget en "nedlastningspakke" som gjør det lett å importere de nødvendige filene med Digital Compendium-tillegget. Disse finner du under. Når emfs-pakken er importert så må du
- implementere det nødvendige grensesnittet og
- legge navnet på din spill-klasse inn i fxml-fila for app-en (se instruksjoner i fila).
Så kan du starte app-en ved å høyreklikke på java-fila med samme navn som fxml-fila (<spillnavn>FX.java) og velge Run As->Java Application.
Filtre for nedlasting kommer.