Package game.view.fight

Source Code of game.view.fight.FightView

package game.view.fight;

import beans.core.GeneralConstant;
import beans.enumeration.Target;
import game.model.fight.FightModel;
import game.model.fight.ListActionModel;
import game.model.fight.ListPersoModel;
import java.awt.Color;
import java.awt.Graphics;
import java.util.Observable;
import java.util.Observer;
import javax.swing.JPanel;

/**
* Vue du modèle de combat.
*
* Ici sera visualisé un combat.
*
* @author Alexandre
* @version FightView 1.0
* @since Game 1.0
*/
public class FightView extends JPanel implements Observer {

    /**
     * Modèle observé.
     *
     * @since FightView 1.0
     */
    private FightModel model;
    /**
     * Vue des statistiques des combattants.
     *
     * @since FightView 1.0
     */
    private ListPerso statsPerso;
    /**
     * Vue des actions des combattants.
     *
     * @since FightView 1.0
     */
    private ListAction actionList;

    /**
     * Créer la vue.
     *
     * @param model Le modèle de combat à observer.
     * @since FightView 1.0
     */
    public FightView(final FightModel model) {
        // Enregistrer le modèle observé
        this.model = model;
        model.addObserver(this);
        final ListPersoModel listPersoModel = model.getListPersoModel();
        // Initialiser la vue des stats des combattants
        statsPerso = new ListPerso(listPersoModel);
       
        final ListActionModel listActionModel = new ListActionModel(listPersoModel);
        actionList = new ListAction(listActionModel);
    }

    /**
     * Dessiner la fenêtre correspondant à la vue du combat.
     *
     * @param g Le pinceau de dessin.
     * @since FightView 1.0
     */
    @Override
    public void paintComponent(Graphics g) {
        // Vider la fenêtre
        g.clearRect(0, 0, GeneralConstant.TAILLE_ECRAN_X, GeneralConstant.TAILLE_ECRAN_Y);
       
        // Mettre un fong bleu
        g.setColor(Color.BLUE);
        g.fillRect(0, 0, GeneralConstant.TAILLE_ECRAN_X, GeneralConstant.TAILLE_ECRAN_Y);
        //Dessiner la vue des stats des combattants
        g.drawImage(statsPerso.getImage(), 0 , GeneralConstant.TAILLE_ECRAN_Y - statsPerso.SIZE_Y - 10, null);
        //g.drawImage(actionList.getImage(), GeneralConstant.TAILLE_ECRAN_X/2 , GeneralConstant.TAILLE_ECRAN_Y - statsPerso.SIZE_Y - 10, null);
    }

    /**
     * Mettre à jour le modèle.
     *
     * @param o L'objet modifié.
     * @param arg Les arguments de modification.
     * @since FightView 1.0
     */
    @Override
    public void update(Observable o, Object arg) {
        repaint();
    }
}
TOP

Related Classes of game.view.fight.FightView

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.