apoSkunkman.entity
Class ApoSkunkmanPlayer

java.lang.Object
  extended by org.apogames.entity.ApoEntity
      extended by org.apogames.entity.ApoAnimation
          extended by apoSkunkman.entity.ApoSkunkmanEntity
              extended by apoSkunkman.entity.ApoSkunkmanPlayer

public class ApoSkunkmanPlayer
extends ApoSkunkmanEntity

Klasse, die den Spieler repräsentiert

Author:
Dirk Aporius

Constructor Summary
ApoSkunkmanPlayer(java.awt.image.BufferedImage pic, float x, float y, float width, float height, int player)
           
 
Method Summary
 void addDrawElement(ApoSkunkmanPlayerDraw element)
          fügt eine Nachricht dem Debugfenster hinzu
 void addGoodie(int goodie)
          Methode, die aufgerufen wird, wenn dieser Spieler ein Goodie aufgesammelt hat
und verpasst dem Spieler dann gleich seine neuen Werte
 void addMessage(java.lang.String message)
          fügt eine Nachricht dem Debugfenster hinzu
 boolean canLaySkunkman()
          gibt zurück, ob der Spieler überhaupt ein Stinktier derzeit legen kann
 ApoSkunkmanAI getAi()
          gibt die eigentliche KI des Spielers zurück
 java.lang.String getAuthorName()
          gibt den Namen des Authors zurück
 int getCurSkunkman()
          gibt zurück, wieviele Stinktiere der Spieler derzeit gelegt hat
 int getCurWidth()
          gibt zurück, wie weit der Radius der Stinktiere des Spielers derzeit ist
 java.awt.image.BufferedImage getIHead()
          gibt das Kopfbild des Spielers zurück
 int getMaxSkunkman()
          gibt zurück, wieviele Stinktiere der Spieler maximal legen kann
 int getNextDirection()
          gibt zurück, welche neue Richtung eingeschlagen werden soll
Möglichkeiten wären
ApoSkunkmanConstants.PLAYER_DIRECTION_DOWN für runter
ApoSkunkmanConstants.PLAYER_DIRECTION_UP für hoch
ApoSkunkmanConstants.PLAYER_DIRECTION_LEFT für links
ApoSkunkmanConstants.PLAYER_DIRECTION_RIGHT für rechts
 int getPlayer()
          gibt zurück, um welchen Spieler es sich handelt
 java.lang.String getPlayerName()
          gibt den Spielernamen zurück
 int getPoints()
          gibt zurück, wieviel Punkte der Spieler derzeit hat
 float getSpeed()
          gibt zurück, wie schnell der Spieler gerade pro Millisekunde beim Laufen ist
 void init()
          setzt die Werte auf ihre ursprünglichen Values
 boolean isLaySkunkman()
          gibt zurück, ob ein Spieler in der nächsten Runde eine Bombe legen will
 boolean isMoving()
          gibt zurück, ob der Spieler sich gerade bewegt oder nicht
 void loadPlayer()
          wird vor dem Start des Spiels aufgerufen und sagt der KI das ein neues Level beginnt
 void render(java.awt.Graphics2D g, int x, int y)
          malt das Objekt
 void saveAI()
          Methode, die aufgerufen wird, wenn ein Level beendet wird und jemand gewonnen hat
 void setAi(ApoSkunkmanAI ai, java.lang.String path, ApoSkunkmanPanel panel)
          setzt die eigentliche KI des Spielers auf den übergebenen Wert
 void setCurSkunkman(int curSkunkman)
          setzt den Wert, wieviele Stinktiere der Spieler derzeit gelegt hat, auf den Übergebenen
 void setCurWidth(int curWidth)
          setzt den Wert, wie weit der Radius der Stinktiere des Spielers derzeit ist, auf den Übergebenen
 void setLaySkunkman(boolean laySkunkman)
          setzt den Wert, ob ein Spieler in der nächsten Runde eine Bombe legen will, auf den übergebenen
 void setMaxSkunkman(int maxSkunkman)
          setzt den Wert, wieviele Stinktiere der Spieler maximal legen kann, auf den Übergebenen
 void setMoving(boolean isMoving)
          setzt die Variable, ob sich ein Spieler gerade bewegt auf die Übergebene
 void setNextDirection(int nextDirection)
          setzt den Wert, welche neue Richtung eingeschlagen werden soll, auf den Übergebenen
Möglichkeiten wären
ApoSkunkmanConstants.PLAYER_DIRECTION_DOWN für runter
ApoSkunkmanConstants.PLAYER_DIRECTION_UP für hoch
ApoSkunkmanConstants.PLAYER_DIRECTION_LEFT für links
ApoSkunkmanConstants.PLAYER_DIRECTION_RIGHT für rechts
 void setPoints(int points)
          setzt die Punkte, die der Spieler derzeit hat, auf den übergebenen Wert
 void setSpeed(float speed)
          setzt den Speed, wie schnell der Spieler gerade pro Millisekunde beim Laufen ist, auf den übergebenen Wert
 void think(int delta)
          wird jeden Zyklus einmal aufgerufen, und schaut, ob genügend Zeit vergangen ist, um ein neues Frame anzuzeigen
 void thinkAI(ApoSkunkmanLevel level, int delta)
          veranlasst die KI, falls vorhanden und der Spieler gerade nicht in Bewegung ist, nachzudenken
 
Methods inherited from class org.apogames.entity.ApoAnimation
getCurTime, getDirection, getFrame, getImages, getTiles, getTime, isBAnimation, isBLoop, render, setBAnimation, setBLoop, setCurTime, setDirection, setFrame, setTiles, setTime
 
Methods inherited from class org.apogames.entity.ApoEntity
checkOpaqueColorCollisions, contains, contains, getHeight, getIBackground, getRec, getStartX, getStartY, getVelocityX, getVelocityY, getWidth, getX, getXMiddle, getY, intersects, intersects, intersects, isBClose, isBOpaque, isBSelect, isBUse, isBVisible, render, setBClose, setBOpaque, setBSelect, setBUse, setBVisible, setHeight, setIBackground, setStartX, setStartY, setVelocityX, setVelocityY, setWidth, setX, setY
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ApoSkunkmanPlayer

public ApoSkunkmanPlayer(java.awt.image.BufferedImage pic,
                         float x,
                         float y,
                         float width,
                         float height,
                         int player)
Method Detail

init

public void init()
Description copied from class: ApoEntity
setzt die Werte auf ihre ursprünglichen Values

Overrides:
init in class ApoAnimation

loadPlayer

public void loadPlayer()
wird vor dem Start des Spiels aufgerufen und sagt der KI das ein neues Level beginnt


isLaySkunkman

public boolean isLaySkunkman()
gibt zurück, ob ein Spieler in der nächsten Runde eine Bombe legen will

Returns:
TRUE, Spieler will in der nächsten Runde eine Bombe legen, ansonsten FALSE

setLaySkunkman

public void setLaySkunkman(boolean laySkunkman)
setzt den Wert, ob ein Spieler in der nächsten Runde eine Bombe legen will, auf den übergebenen

Parameters:
laySkunkman - : TRUE, Spieler will in der nächsten Runde eine Bombe legen, ansonsten FALSE

getPlayer

public final int getPlayer()
gibt zurück, um welchen Spieler es sich handelt

Returns:
gibt zurück, um welchen Spieler es sich handelt

isMoving

public final boolean isMoving()
gibt zurück, ob der Spieler sich gerade bewegt oder nicht

Returns:
TRUE, Spieler bewegt sich, FALSE Spieler steht

setMoving

public void setMoving(boolean isMoving)
setzt die Variable, ob sich ein Spieler gerade bewegt auf die Übergebene

Parameters:
isMoving - : TRUE, Spieler bewegt sich, FALSE Spieler steht

getPoints

public final int getPoints()
gibt zurück, wieviel Punkte der Spieler derzeit hat

Returns:
gibt zurück, wieviel Punkte der Spieler derzeit hat

setPoints

public void setPoints(int points)
setzt die Punkte, die der Spieler derzeit hat, auf den übergebenen Wert

Parameters:
points - : Neue Punkteanzahl

getIHead

public final java.awt.image.BufferedImage getIHead()
gibt das Kopfbild des Spielers zurück

Returns:
gibt das Kopfbild des Spielers zurück

getSpeed

public final float getSpeed()
gibt zurück, wie schnell der Spieler gerade pro Millisekunde beim Laufen ist

Returns:
gibt zurück, wie schnell der Spieler gerade ist

setSpeed

public final void setSpeed(float speed)
setzt den Speed, wie schnell der Spieler gerade pro Millisekunde beim Laufen ist, auf den übergebenen Wert

Parameters:
speed - : Neuer Speed des Spielers pro Millisekunde beim Laufen

getCurWidth

public int getCurWidth()
gibt zurück, wie weit der Radius der Stinktiere des Spielers derzeit ist

Returns:
gibt zurück, wie weit der Radius der Stinktiere des Spielers derzeit ist

setCurWidth

public void setCurWidth(int curWidth)
setzt den Wert, wie weit der Radius der Stinktiere des Spielers derzeit ist, auf den Übergebenen

Parameters:
curWidth - : neuer Wert, wie weit der Radius der Stinktiere des Spielers derzeit ist

getMaxSkunkman

public final int getMaxSkunkman()
gibt zurück, wieviele Stinktiere der Spieler maximal legen kann

Returns:
gibt zurück, wieviele Stinktiere der Spieler maximal legen kann

setMaxSkunkman

public final void setMaxSkunkman(int maxSkunkman)
setzt den Wert, wieviele Stinktiere der Spieler maximal legen kann, auf den Übergebenen

Parameters:
maxSkunkman - : neuer Wert für die maximale Anzahl der Stinktiere der Spieler maximal legen kann

getCurSkunkman

public final int getCurSkunkman()
gibt zurück, wieviele Stinktiere der Spieler derzeit gelegt hat

Returns:
gibt zurück, wieviele Stinktiere der Spieler derzeit gelegt hat

setCurSkunkman

public final void setCurSkunkman(int curSkunkman)
setzt den Wert, wieviele Stinktiere der Spieler derzeit gelegt hat, auf den Übergebenen

Parameters:
curSkunkman - : neuer Wert für die derzeitige Anzahl an gelegten Stinktieren

canLaySkunkman

public final boolean canLaySkunkman()
gibt zurück, ob der Spieler überhaupt ein Stinktier derzeit legen kann

Returns:
TRUE, Spieler darf ein Stinktier legen, else FALSE

getAi

public final ApoSkunkmanAI getAi()
gibt die eigentliche KI des Spielers zurück

Returns:
gibt die eigentliche KI des Spielers zurück

setAi

public final void setAi(ApoSkunkmanAI ai,
                        java.lang.String path,
                        ApoSkunkmanPanel panel)
setzt die eigentliche KI des Spielers auf den übergebenen Wert

Parameters:
ai - : neue KI
path - : Pfad in welcher die KI liegt

saveAI

public final void saveAI()
Methode, die aufgerufen wird, wenn ein Level beendet wird und jemand gewonnen hat


getPlayerName

public final java.lang.String getPlayerName()
gibt den Spielernamen zurück

Returns:
gibt den Spielernamen zurück

getAuthorName

public final java.lang.String getAuthorName()
gibt den Namen des Authors zurück

Returns:
gibt den Namen des Authors zurück

getNextDirection

public final int getNextDirection()
gibt zurück, welche neue Richtung eingeschlagen werden soll
Möglichkeiten wären
ApoSkunkmanConstants.PLAYER_DIRECTION_DOWN für runter
ApoSkunkmanConstants.PLAYER_DIRECTION_UP für hoch
ApoSkunkmanConstants.PLAYER_DIRECTION_LEFT für links
ApoSkunkmanConstants.PLAYER_DIRECTION_RIGHT für rechts

Returns:
gibt zurück, welche neue Richtung eingeschlagen werden soll

setNextDirection

public void setNextDirection(int nextDirection)
setzt den Wert, welche neue Richtung eingeschlagen werden soll, auf den Übergebenen
Möglichkeiten wären
ApoSkunkmanConstants.PLAYER_DIRECTION_DOWN für runter
ApoSkunkmanConstants.PLAYER_DIRECTION_UP für hoch
ApoSkunkmanConstants.PLAYER_DIRECTION_LEFT für links
ApoSkunkmanConstants.PLAYER_DIRECTION_RIGHT für rechts

Parameters:
nextDirection - : neue Richtung

addGoodie

public void addGoodie(int goodie)
Methode, die aufgerufen wird, wenn dieser Spieler ein Goodie aufgesammelt hat
und verpasst dem Spieler dann gleich seine neuen Werte

Parameters:
goodie - : Welches Goodie wurde eingesammelt

addMessage

public void addMessage(java.lang.String message)
fügt eine Nachricht dem Debugfenster hinzu

Parameters:
message - : neue Nachricht

addDrawElement

public void addDrawElement(ApoSkunkmanPlayerDraw element)
fügt eine Nachricht dem Debugfenster hinzu

Parameters:
message - : neue Nachricht

think

public void think(int delta)
Description copied from class: ApoAnimation
wird jeden Zyklus einmal aufgerufen, und schaut, ob genügend Zeit vergangen ist, um ein neues Frame anzuzeigen

Overrides:
think in class ApoAnimation

thinkAI

public void thinkAI(ApoSkunkmanLevel level,
                    int delta)
veranlasst die KI, falls vorhanden und der Spieler gerade nicht in Bewegung ist, nachzudenken

Parameters:
delta - : Zeit, die seit dem letzten Aufruf vergangen ist

render

public final void render(java.awt.Graphics2D g,
                         int x,
                         int y)
Description copied from class: ApoEntity
malt das Objekt

Overrides:
render in class ApoAnimation