Package game.model.inventory

Source Code of game.model.inventory.InventoryExitModel

package game.model.inventory;

import beans.core.GeneralConstant;
import beans.enumeration.InventoryMode;
import game.model.ListModel;
import java.util.ArrayList;
import java.util.Collections;

/**
* Model qui controle la partie exit de l'inventaire
* @author Elragos
* @version InventoryExitModel 1.0
* @since Game 1.0
*/
public class InventoryExitModel extends InventoryModelPatern {
    /**
     * Index sélectionné de la liste
     * @since InventoryExitModel 1.0
     */
    private int currentIndex = 0;
   
    /**
     * Constructeur par défaut. Créé un menu demandant confirmation de quitter le jeu, sans sauvegarder au préalable.
     * @since InventoryExitModel 1.0
     */
    public InventoryExitModel(){
        ArrayList<String> choiceList = new ArrayList<String>(2);
        Collections.addAll(choiceList, new String[]{GeneralConstant.BUNDLE.getString("NO"),GeneralConstant.BUNDLE.getString("YES")});
       
        listModel = new ListModel(choiceList, choiceList.size()+1);
    }
   
    /**
     * Gère l'appui sur la touche entrée
     * @return Le menu sur lequel on doit retourner
     * @since InventoryExitModel 1.0
     * @see InventoryModelPattern
     */
    @Override
    public InventoryMode EnterRequest() {
        //Vérifier l'index courant
        switch (listModel.getCurrentPosition()){
            //Cas "Oui" sélectionné
            case 1:
                //Quitter le jeu
                return null;
            //Par défaut
            default:
                //Retour au menu principal de l'inventaire
                return InventoryMode.MENU;
        }
    }
    /**
     * Bouger le curseur, délégé à la classe ListModel
     * @param x mouvement du curseur sur l'axe x
     * @param y mouvement du curseur sur l'axe y
     * @since InventoryExitModel 1.0
     * @see ListModel
     */
    @Override
    public void moveCursor(final int x, final int y) {
        listModel.updateCursorPosition(x, y);
        setChanged();
        notifyObservers();
    }
   
    /**
     * Retourne sur le menu principal
     * @return <code>InventoryMode.MENU</code>
     * @since InventoryExitModel 1.0
     * @see InventoryModelPatern
     */
    @Override
    public InventoryMode back() {
        return InventoryMode.MENU;
    }
   
    /**
     * Remet le curseur sur "Non"
     * @since InventoryExitModel 1.0
     */
    @Override
    public void resetCursor() {
        //Mettre le curseur sur "Non"
        currentIndex = 0;
    }

}
TOP

Related Classes of game.model.inventory.InventoryExitModel

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.