package personnages; import java.awt.Color; import java.awt.Graphics; import java.awt.Component; import java.awt.Rectangle; /** Modelise une balle pour une application graphique */ public class Balle extends Personnage { /** appelle le constructeur sans parametre de sa super-classe.*/ public Balle() { super(); } /** constructeur de la classe @param zone : composant graphique dans lequel le personnage devra s'afficher. @param x abscisse d'un point central du personnage. @param y ordonnee d'un point central du personnage. @param taille la hauteur du personnage en pourcentage de la hauteur du composant. Cette taille est limitee a 100. @param couleur la couleur du personnage. */ public Balle(Component zone, int x, int y, int taille, Color couleur, boolean cyclique) { super(zone, x, y, taille, couleur, cyclique); } /** dessine la balle selon les parametres indiques. Le parametre silhouette ne joue aucune role. Il garde toujours la valeur REPOS */ public void dessinerP(Graphics g) { int baseTaille = (zone.getBounds().height*getTaille())/1600; g.setColor(getCouleur()); g.fillOval(x - 4 * baseTaille , y - 4 * baseTaille, 8 * baseTaille, 8 * baseTaille); } /** retourne la valeur REPOS. */ public int silhouetteSuivante(){return REPOS;} /** retourne le rectangle circonscrit a la balle. */ public Rectangle getRectangle() { int x = getX(); int y = getY(); int baseTaille = (zone.getBounds().height * getTaille()) / 1600; return new Rectangle(x - 4 * baseTaille, y - 4 * baseTaille, 8 * baseTaille, 8 * baseTaille); } }