Class Sprite

java.lang.Object
  |
  +--Sprite
Direct Known Subclasses:
ScoreSprite, TestMissile, TestMonster, TestSortie, TestSprite

public class Sprite
extends java.lang.Object
implements java.io.Serializable

Implemente un sprite

See Also:
Serialized Form

Field Summary
protected  int currentDx
           
protected  int currentDy
           
static int DEFAULT_SPRITE_HEIGHT
           
static int DEFAULT_SPRITE_WIDTH
           
protected  int height
           
protected  ImageDisplayer imageDisplayer
           
protected  Map map
           
protected  java.awt.Rectangle rectangle
           
protected  int width
           
 
Constructor Summary
Sprite()
          Constructeur
 
Method Summary
 void addEnemi(Sprite monster)
          Ajoute un enemie au sprite
 void addEnemi(SpriteGroup group)
          Ajoute un ensemble d'enemie au sprite
 void addLineOfImage(java.lang.String imagePath, int numberOfImage, int startBoucle)
           
 void destroy()
          Méthode appelée quand le sprite doit mourir Cette méthode peut etre redéfinie dans les classes dérivées
 void draw(java.awt.Graphics g)
           
 int getGravityX()
          Renvoi l'abscisse du vecteur gravité
 int getGravityY()
          Renvoi l'ordonnée du vecteur gravité
 java.awt.Point getPosUnderScreen()
          Renvois la position du sprite dans le référentiel écran
 java.util.Vector getVectorMonster()
          Permet de récupérer le vecteur des monstres Cette méthode peut être utiliser quand on creer un nouveau missile.
 int getX()
          Renvoi l'abscisse du sprite dans le référentiel Map
 int getY()
          Renvoi l'ordonnée du sprite dans le référentiel Map
 void init()
           
 boolean isFalling()
          Test si le sprite est en train de tomber
 void life()
          Donne un caractère "autonome" aux objets.
 void mapCollision()
          Méthode appelée lors d'une collision avec le décor (cf code de Sprite.life())
 void move(int dx, int dy)
          Déplace le sprite Une excepetion CollisionException est lancée s'il y a une collision avec le décor Doit-elle être finale ?
 void moveListener(CollisionEvent event)
          Méthode appelée quand il y a une collision avec un autre sprite C'est à l'utilisateur de redéfinir cette méthode pour gérer correctement ce qu'il doit faire s'il se fait bouffer
 void performePath(Path path)
          Permet de faire suivre un chemin au sprite
 void removeMonster(Sprite spr)
          Enlève un monstre du vecteur
 void setGravity(boolean flag)
          Actionne ou pas la gravité pour ce sprite
 void setGravity(int dx, int dy)
          Permet de fixer la gravité pour le sprite
 void setMap(Map map)
          Indiquer au sprite dans quel décor il évolue
 void setPos(int x, int y)
          Place le sprite a une position Cette méthode pourra être appellée lors de l'initialisation du sprite
 void setSize(int newWidth, int newHight)
          Retaille un sprite
 void setVectorMonster(java.util.Vector newVector)
          Permet de fixer un nouveau vecteur de monstre Cette méthode peut être utiliser quand on creer un nouveau missile.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

imageDisplayer

protected transient ImageDisplayer imageDisplayer

currentDx

protected int currentDx

currentDy

protected int currentDy

width

protected int width

height

protected int height

rectangle

protected java.awt.Rectangle rectangle

DEFAULT_SPRITE_WIDTH

public static final int DEFAULT_SPRITE_WIDTH

DEFAULT_SPRITE_HEIGHT

public static final int DEFAULT_SPRITE_HEIGHT

map

protected Map map
Constructor Detail

Sprite

public Sprite()
Constructeur
Method Detail

draw

public void draw(java.awt.Graphics g)

setPos

public final void setPos(int x,
                         int y)
Place le sprite a une position Cette méthode pourra être appellée lors de l'initialisation du sprite

move

public void move(int dx,
                 int dy)
          throws CollisionException
Déplace le sprite Une excepetion CollisionException est lancée s'il y a une collision avec le décor Doit-elle être finale ?

setMap

public final void setMap(Map map)
Indiquer au sprite dans quel décor il évolue

getPosUnderScreen

public final java.awt.Point getPosUnderScreen()
Renvois la position du sprite dans le référentiel écran

setGravity

public final void setGravity(int dx,
                             int dy)
Permet de fixer la gravité pour le sprite
Parameters:
int - dx abscisse du vecteur gravité
int - dy ordonée du vecteur gravité

setGravity

public final void setGravity(boolean flag)
Actionne ou pas la gravité pour ce sprite

isFalling

public final boolean isFalling()
Test si le sprite est en train de tomber

performePath

public final void performePath(Path path)
Permet de faire suivre un chemin au sprite
Parameters:
Path - path instance d'un objet implémentant l'interface Path

life

public void life()
Donne un caractère "autonome" aux objets. Appelee tout les rafraichissements à partir de Game

getX

public final int getX()
Renvoi l'abscisse du sprite dans le référentiel Map

getY

public final int getY()
Renvoi l'ordonnée du sprite dans le référentiel Map

addEnemi

public final void addEnemi(Sprite monster)
Ajoute un enemie au sprite

addEnemi

public final void addEnemi(SpriteGroup group)
Ajoute un ensemble d'enemie au sprite

moveListener

public void moveListener(CollisionEvent event)
Méthode appelée quand il y a une collision avec un autre sprite C'est à l'utilisateur de redéfinir cette méthode pour gérer correctement ce qu'il doit faire s'il se fait bouffer

destroy

public void destroy()
Méthode appelée quand le sprite doit mourir Cette méthode peut etre redéfinie dans les classes dérivées

removeMonster

public final void removeMonster(Sprite spr)
Enlève un monstre du vecteur

getGravityX

public final int getGravityX()
Renvoi l'abscisse du vecteur gravité

getGravityY

public final int getGravityY()
Renvoi l'ordonnée du vecteur gravité

setVectorMonster

public final void setVectorMonster(java.util.Vector newVector)
Permet de fixer un nouveau vecteur de monstre Cette méthode peut être utiliser quand on creer un nouveau missile. Ce missile doit récupérer le vecteur du "héro" pour connaître les enemis.

getVectorMonster

public final java.util.Vector getVectorMonster()
Permet de récupérer le vecteur des monstres Cette méthode peut être utiliser quand on creer un nouveau missile. Ce missile doit récupérer le vecteur du "héro" pour connaître les enemis. ATTENTION: de l'extérieur on peut alors modifier ce vecteur pour palier ceci pour pourrait renvoyer un clone du vecteur mais ca ne serait pas performant.

mapCollision

public void mapCollision()
Méthode appelée lors d'une collision avec le décor (cf code de Sprite.life())

setSize

public final void setSize(int newWidth,
                          int newHight)
Retaille un sprite

addLineOfImage

public void addLineOfImage(java.lang.String imagePath,
                           int numberOfImage,
                           int startBoucle)

init

public void init()