...
Konsollbasert IO er greit for å teste spillet, men det er kanskje artigere å lage en ordentlig app, med grafisk visning av rutenettet og bruk av musa for å klikke på ruter du vil skyte. Vi har laget en JavaFX-basert app, som du kan laste ned og koble til din Battleship-klasse. App-koden forutsetter at spill-logikken er implementert i en klasse Battleship som implementerer IBattleship-grensesnittet (i pakken games.battleship). Med bruk av grensesnitt, så gjøres det klart hvilke metoder appen trenger og som du må implementere.
Last først ned ISudokuIBattleship-grensesnittet fra /games/sudokubattleship/sudoku1/ISudokuIBattleship.java, og programmer din spill-klasse slik at den implementerer dette grensesnittet. Så laster du ned app-klassene (og filene), så du kan prøve om det virker. Husk at du må endre en linje i BattleshipFX.fxml slik at den peker på klassen din som implementerer IBattleship-grensesnittet.
...
Code Block | ||
---|---|---|
| ||
emfs /games/ #java #package FxmlApp.java @ git@github.com:hallvard/javafx/games/src/games/FxmlApp.java; FxmlBuilderFactory.java @ git@github.com:hallvard/javafx/games/src/games/FxmlBuilderFactory.java; FxmlGame.java @ git@github.com:hallvard/javafx/games/src/games/FxmlGame.java; imagegrid/ #java #package ImageGrid.java @ git@github.com:hallvard/javafx/games/src/games/imagegrid/ImageGrid.java; ImageGridGame.java @ git@github.com:hallvard/javafx/games/src/games/imagegrid/ImageGridGame.java; ; battleship/ #java # IBattleship.java @ git@github.com:hallvard/javafx/games/src/games/battleship/IBattleship. BattleshipFX.java @ git@github.com:hallvard/javafx/games/src/games/battleship/BattleshipFX. BattleshipFX.fxml @ git@github.com:hallvard/javafx/games/src/games/battleship/BattleshipFX. ; battleship/res hit64x64.png @ git@github.com:hallvard/javafx/games/src/games/battleship/res/hit64x64. miss64x64.png @ git@github.com:hallvard/javafx/games/src/games/battleship/res/miss64x64.png ocean64x64.png @ git@github.com:hallvard/javafx/games/src/games/battleship/res/ocean64x64.png |
...
Merk at du godt kan la være bruke å ISudokuå IBattleship-grensesnittet, men da må du omprogrammere appen, så den bruker andre metoder enn vi har forutsatt. Det er nok mer arbeid, men kanskje enda mer lærerikt?
...