I denne oppgaven skal Battleship utvides med muligheten for å la datamaskinen spille som den ene spilleren. For å støtte dette må du implementere IEnemy-grensesnittet, som er definert under:
IEnemy.java
public interface IEnemy { /* * @arg: The board which the enemy fires at. */ public void init(IBattleship board); /** * Fires a shot at a coordinate chosen by the enemy artificial intelligence. * @return An array of length 3. First element is either -1 (Null if no ship at coordinate), 1 (True if the ship was sunk), 2 (false if not). * The second element is the x coordinate. * The third element is the y coordinate. */ public int[] fire(); }
Det er ingen krav til å lage en smart AI, men om du ønsker det, så er det lov. Et tips til enkel implementasjon er å la datamaskinen skyte helt tilfeldige ruter.
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.