Class FenetreJeu

java.lang.Object
  |
  +--java.awt.Component
        |
        +--java.awt.Canvas
              |
              +--FenetreJeu

public class FenetreJeu
extends java.awt.Canvas
implements java.lang.Runnable, java.awt.event.KeyListener

Fenetre qui affiche le jeu, le hero et les monstres et les evenements claviers.

See Also:
Serialized Form

Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Constructor Summary
FenetreJeu(FenetrePrincipale fp)
          Construit la zone de jeu.
 
Method Summary
 void chargeToi(java.lang.String fichierACharger)
          Elle charge le fichier courant.
 void finDuJeu()
          Elle est appellee quand on a fini tous les niveaux.
 void gameOver()
          Elle est appellee quand on a perdu.
 Heros getHeros()
          Pour acceder au heros courant.
 Level getLevel()
          Pour acceder au level courant.
 java.awt.Dimension getMinimunDimension()
          La taille minimale de la fenetre de visualisation.
 java.awt.Dimension getPreferredSize()
          Pour que la fenetre dessinee fasse au moins une taille minimale.
 void initialiseToi()
          Elle est lancee au demarrage.
 boolean isFocusTraversable()
          Elle est definie pour que les actions des touches fonctionnent sous Windows.
 void keyPressed(java.awt.event.KeyEvent keyevent)
          Gestion des evenements sur le clavier
 void keyReleased(java.awt.event.KeyEvent keyevent)
          Gestion des evenements sur le clavier
 void keyTyped(java.awt.event.KeyEvent keyevent)
          Gestion des evenements sur le clavier
 void niveauSuivant()
          Elle est appellee lorsque le heros a fini le tableau.
 void paint(java.awt.Graphics g)
          Elle se charge de dessiner le decors, le heros et les monstres en utilisant le double buffer.
 void pause()
          Elle est appelle quand on veut arreter momentanement le jeu.
 void run()
          Elle gere le thread qui dessine le Canvas.
 void sauvegardeToi(java.lang.String fichierDeSauvegarde)
          Elle sauve le fichier courant pour le recharger ulterieurement.
 void update(java.awt.Graphics g)
          Pour gerer le reaffichage de la fenetre.
 
Methods inherited from class java.awt.Canvas
addNotify
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addPropertyChangeListener, addPropertyChangeListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, deliverEvent, disable, disableEvents, dispatchEvent, doLayout, enable, enable, enableEvents, enableInputMethods, firePropertyChange, getAlignmentX, getAlignmentY, getBackground, getBounds, getBounds, getColorModel, getComponentAt, getComponentAt, getComponentOrientation, getCursor, getDropTarget, getFont, getFontMetrics, getForeground, getGraphics, getHeight, getInputContext, getInputMethodRequests, getLocale, getLocation, getLocation, getLocationOnScreen, getMaximumSize, getMinimumSize, getName, getParent, getPeer, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, invalidate, isDisplayable, isDoubleBuffered, isEnabled, isLightweight, isOpaque, isShowing, isValid, isVisible, keyDown, keyUp, layout, list, list, list, list, list, locate, location, lostFocus, minimumSize, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, paramString, postEvent, preferredSize, prepareImage, prepareImage, print, printAll, processComponentEvent, processEvent, processFocusEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, remove, removeComponentListener, removeFocusListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, reshape, resize, resize, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFont, setForeground, setLocale, setLocation, setLocation, setName, setSize, setSize, setVisible, show, show, size, toString, transferFocus, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FenetreJeu

public FenetreJeu(FenetrePrincipale fp)
Construit la zone de jeu.
Parameters:
fp - La fenetre dans laquelle se deroule le jeu.
Method Detail

initialiseToi

public void initialiseToi()
Elle est lancee au demarrage. Elle charge les dalles, les echelles, les cadeaux et cree le heros et les monstres. On affecte l'observer FenetrePrincipale a l'observable qui est notre hero.

niveauSuivant

public void niveauSuivant()
Elle est appellee lorsque le heros a fini le tableau.

finDuJeu

public void finDuJeu()
Elle est appellee quand on a fini tous les niveaux.

gameOver

public void gameOver()
Elle est appellee quand on a perdu.

pause

public void pause()
Elle est appelle quand on veut arreter momentanement le jeu. Si l'on veut repartir on doit l'appeler une deuxieme fois.

isFocusTraversable

public boolean isFocusTraversable()
Elle est definie pour que les actions des touches fonctionnent sous Windows.
Returns:
true Necessaire pour que les touches fonctionnent sous Windows.
Overrides:
isFocusTraversable in class java.awt.Component

sauvegardeToi

public void sauvegardeToi(java.lang.String fichierDeSauvegarde)
Elle sauve le fichier courant pour le recharger ulterieurement.
Parameters:
fichierDeSauvegarde - Le nom du fichier sauvegardee.

chargeToi

public void chargeToi(java.lang.String fichierACharger)
Elle charge le fichier courant.
Parameters:
fichierACharger - c'est le nom du fichier charge.

paint

public final void paint(java.awt.Graphics g)
Elle se charge de dessiner le decors, le heros et les monstres en utilisant le double buffer.
Parameters:
g - C'est le graphics que l'on va dessiner.
Overrides:
paint in class java.awt.Canvas

update

public final void update(java.awt.Graphics g)
Pour gerer le reaffichage de la fenetre.
Parameters:
g - C'est le graphics que l'on va dessiner.
Overrides:
update in class java.awt.Component

run

public void run()
Elle gere le thread qui dessine le Canvas.
Specified by:
run in interface java.lang.Runnable

getMinimunDimension

public java.awt.Dimension getMinimunDimension()
La taille minimale de la fenetre de visualisation.
Returns:
une fenetre (largeur * hauteur).

getPreferredSize

public java.awt.Dimension getPreferredSize()
Pour que la fenetre dessinee fasse au moins une taille minimale.
Returns:
Dimension La taille de la fenetre.
Overrides:
getPreferredSize in class java.awt.Component

getHeros

public Heros getHeros()
Pour acceder au heros courant.
Returns:
heros retourne le heros courant.

getLevel

public Level getLevel()
Pour acceder au level courant.
Returns:
level retourne le level courant.

keyTyped

public void keyTyped(java.awt.event.KeyEvent keyevent)
Gestion des evenements sur le clavier
Specified by:
keyTyped in interface java.awt.event.KeyListener
Parameters:
keyEvent - touche clavier utilisee

keyReleased

public void keyReleased(java.awt.event.KeyEvent keyevent)
Gestion des evenements sur le clavier
Specified by:
keyReleased in interface java.awt.event.KeyListener
Parameters:
keyEvent - touche clavier utilisee

keyPressed

public void keyPressed(java.awt.event.KeyEvent keyevent)
Gestion des evenements sur le clavier
Specified by:
keyPressed in interface java.awt.event.KeyListener
Parameters:
keyEvent - touche clavier utilisee