From ba147e956b5b08788aedc84bacda6d0a28639668 Mon Sep 17 00:00:00 2001 From: Siket Melinda Tekla Date: Mon, 16 May 2016 19:14:21 +0200 Subject: [PATCH] Comments added to Player.java --- cicaprojekt/Player.java | 55 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/cicaprojekt/Player.java b/cicaprojekt/Player.java index e0ff2f9..d5d5f13 100644 --- a/cicaprojekt/Player.java +++ b/cicaprojekt/Player.java @@ -3,10 +3,24 @@ package cicaprojekt; import java.util.ArrayList; import java.util.List; +/** + * A játékban megjelenő játékosokat reprezentáló osztály. A két játékos + * Jaffa és O'Neill ezredes lehet. + */ public class Player extends PlayerBase { + /** + * A már begyűjtött ZPM-eket tároló lista. + */ private List zpmContainer; + /** + * Az éppen aktuálisan felemelt dobozt tárolja. + */ private Box boxLifted; + /** + * A játékos elpusztításáért felelős függvény. Amennyiben a játékosnál van + * egy doboz, az is elpusztuls. Ilyenkor a játékos ZPM-tárolója is kiürül. + */ @Override public void destroy() { destroyed = true; @@ -16,20 +30,43 @@ public class Player extends PlayerBase { zpmContainer.clear(); } + /** + * Az osztály konstruktora. A játékos kezdőcsempéjét tulajdonságait állítja be. + * + * @param name a játékos neve + * @param startTile a kezdőcsempe + * @param startDirection a játékos kezdőiránya + */ public Player(String name, Tile startTile, Direction startDirection) { super(name, startTile, startDirection); zpmContainer = new ArrayList<>(); } + /** + * Megmondja, hogy a játékosnál van-e éppen doboz. + * + * @return true, ha van nála doboz + * false, egyébként + */ public boolean hasBox() { return (boxLifted != null); } + /** + * Egy doboz felemelését implementáló függvény. A játékos előtt lévő doboz + * emeli fel. + */ public void boxLift() { if(!isDestroyed()) boxLifted = currentTile.getAdjacentTile(facingDirection).getABox(); } + /** + * Egy doboz lerakását implementáló függvény. A játékos előtt lévő csempére + * teszi le a dobozt, ha a csempére lehet dobozokat rakni. + * + * @see Tile#boxPermission() + */ public void boxDrop() { if(!isDestroyed()) { Tile target = currentTile.getAdjacentTile(facingDirection); @@ -40,17 +77,35 @@ public class Player extends PlayerBase { } } + /** + * Egy ZPM felvevését implementáló függvény adott csempéről. + * A felvett ZPM bekerül a tárolóba, majd új ZPM generálódik. + * + * @param tile a kapott csempe + * @see Game#generateZPM() + */ @Override public void pickZPM(Tile tile) { zpmContainer.add(tile.getZPMFromTile()); Game.instance.generateZPM(); } + /** + * Egy csillagkapu kilövését megvalósító függvény. A játékos aktuális + * irányába lövi ki a kapott csillagkaput. + * + * @param stargate kapott csillagkapu + */ public void shootStargate(Stargate stargate) { if(!isDestroyed()) this.currentTile.getAdjacentTile(facingDirection).spawnStargate(stargate, facingDirection); } + /** + * Visszatér a játékos tárolójában lévő ZPM-ek számával. + * + * @return ZPM-ek száma + */ public int getZPMCount(){ return zpmContainer.size(); }