예제 #1
0
    }     //MettreAJourStats

    /// <summary>
    /// Execute l'attaque d'un combattant
    /// </summary>
    /// <param name="victime">Instance de la victime cible.</param>
    /// <returns>La chaine decrivant le deroulement de cette action.</returns>
    public string Attaquer(Etre victime)
    {
        string messAction = "";
        int    attaque = 0, defense = 0, dommages = 0; //valeurs par defaut

        if (action == TypeAction.ATTAQUE)
        {
            attaque  = EtablirAttRonde();
            defense  = victime.EtablirDefRonde();
            dommages = Combat.CalculerDommages(attaque, defense);
            victime.Blesser(dommages);
            messAction = FormerPhraseAtt(dommages, victime);
            JouerAnimAttaque();
        }
        else                 //c'est donc la magie
        {
            ConsommerPM(10); //reduction des points de magie
            attaque = EtablirAttMagRonde();
            defense = victime.EtablirDefMagRonde();
            if (nom != "Lucem") //ce n'est pas Lucem
            {
                dommages = Combat.CalculerDommages(attaque, defense);
                victime.Blesser(dommages);
            }
            else     //c'est Lucem, sa magie est difference:
            {
                dommages = attaque;
                Jeu.Soigner(dommages, false); //applique la guerison a tous les persos
            } //if+else Lucem?
            messAction = FormerPhraseAttMag(dommages, victime);
            JouerAnimAttaque(); //a changer pour montrer une anim de magie
        } //if+else TypeAction
        return(messAction);
    } //Attaquer