Exemple #1
0
        /// <summary>
        /// Déplace le héros de case en case
        /// </summary>
        /// <param name="dx">déplacement horizontal (-1 / 1)</param>
        /// <param name="dy">déplacement vertical (-1 / 1)</param>
        public void moveHeroes(int dx, int dy)
        {
            int testx = _heros.getXSalle() - dx;
            int testy = _heros.getYSalle() - dy;

            //Test tuile.type =! "mur" ?
            if (_salle.estTraversable(testx, testy))
            {
                //si =! mur : déplacement
                _salle.setY(_salle.getY() + dy * Tuile.HAUTEUR);
                _salle.setX(_salle.getX() + dx * Tuile.LARGEUR);
                _heros.setXSalle(testx);
                _heros.setYSalle(testy);
                miseAJourPositionObjets();
                miseAJourPosition();
            }
            //si coffre, faudra faire des truc
            else if (_salle.coffreFermé(testx, testy))
            {
                _salle.ouvrirCoffre(testx, testy, _canvas);
                //on ajoute un objet dans l'invetaire
                _inventaire.addLoot(Loot.createRandom());
                //on les sauvegardes
                _inventaire.sauvegardeFichierTexte(@"E:\Code\WildlyneDungeon\v4 -WildlyneDungeonAlpha\WildlyneDungeonAlpha\WildlyneDungeonAlpha\Inventaire\sauvegarde_inventaire.txt");
                //on actualise l'inventaire :
                _tbInventaire.Text = "Inventaire : \n" + _inventaire.actualiserInventaire();
            }
        }
 public void mettreAJourPositionGraphique()
 {
     // Calcule la position en pixels par rapport à : la position en pixels de la salle et la position dans la salle
     setX(_salle.getX() + _xSalle * Tuile.LARGEUR);
     setY(_salle.getY() + _ySalle * Tuile.HAUTEUR);
 }