Esempio n. 1
0
        public int getSauvegarde(SauvegardeEnum sauvegarde, SortEnergie ecole)
        {
            int save = 0;

            foreach (SauvegardeMod mod in mSauvegardes)
            {
                if (mod.Sauvegarde != sauvegarde)
                {
                    continue;
                }
                if (mod.Ecoles.Length == 0)
                {
                    save += mod.Value;
                }
                else
                {
                    for (int e = 0; e < mod.Ecoles.Length && ecole != SortEnergie.All; e++)
                    {
                        if (mod.Ecoles[e] == ecole)
                        {
                            save += mod.Value;
                            break;
                        }
                    }
                }
            }
            return(save);
        }
Esempio n. 2
0
        public string getModusDescript()
        {
            string des = "<br>";

            if (m_Freeze)
            {
                des += "<br>Paralisant !";
            }
            if (mStr != 0)
            {
                des += "<br><i>Force:</i> " + (mStr > 0 ? "+" : "") + mStr + "";
            }
            if (mDex != 0)
            {
                des += "<br><i>Dexterité:</i> " + (mDex > 0 ? "+" : "") + mDex + "";
            }
            if (mInt != 0)
            {
                des += "<br><i>Intelligence:</i> " + (mInt > 0 ? "+" : "") + mInt + "";
            }
            if (mSag != 0)
            {
                des += "<br><i>Sagesse:</i> " + (mSag > 0 ? "+" : "") + mSag + "";
            }
            if (mCons != 0)
            {
                des += "<br><i>Constitution:</i> " + (mCons > 0 ? "+" : "") + mCons + "";
            }
            if (mCha != 0)
            {
                des += "<br><i>Charisme:</i> " + (mCha > 0 ? "+" : "") + mCha + "";
            }

            if (mDegatBonus != 0)
            {
                des += "<br><i>Bonus de dégat:</i> " + (mDegatBonus > 0 ? "+" : "") + mDegatBonus + "";
            }
            for (int s = 0; s < (int)SauvegardeEnum.Reflexe; s++)
            {
                SauvegardeEnum save       = (SauvegardeEnum)s;
                int            generalVal = -999;
                for (int i = 0; i <= (int)SortEnergie.Mental; i++)
                {
                    SortEnergie ecole = (SortEnergie)i;
                    int         val   = getSauvegarde(save, ecole);
                    if (ecole == SortEnergie.All)
                    {
                        generalVal = val;
                    }
                    if (val != 0 && (val != generalVal || ecole == SortEnergie.All))
                    {
                        des += "<br><i>" + save.ToString() + ":</i> " + (val > 0 ? "+": "") + val;
                        if (ecole != SortEnergie.All)
                        {
                            des += " <i>( " + ecole.ToString() + " )</i>";
                        }
                    }
                }
            }

            int compVal = -999;

            for (int c = -1; c < (int)CompType.Maximum; c++)
            {
                CompType comp = (CompType)c;
                int      val  = getCompetence(comp);
                if (comp == CompType.All)
                {
                    compVal = val;
                }
                if (val != 0 && (val != compVal || comp == CompType.All))
                {
                    string compName = comp.ToString();
                    if (!(m_caster.Competences[comp] is NullCompetence))
                    {
                        compName = m_caster.Competences[comp].Name;
                    }

                    if (comp == CompType.All)
                    {
                        compName = "Compétences";
                    }
                    des += "<br><i>" + compName + ":</i> " + (val > 0 ? "+" : "") + val;
                }
            }
            return(des);
        }
Esempio n. 3
0
 public SauvegardeMod(int value, SauvegardeEnum save, SortEnergie[] ecoles)
 {
     mValue  = value;
     mSave   = save;
     mEcoles = ecoles;
 }
Esempio n. 4
0
        public static ArtefactModus generate(ArtefactQuality qualite)
        {
            ArtefactModus arte = new ArtefactModus();

            while (arte.getArtefactQuality() < qualite)
            {
                int rand = Utility.Random(2);
                if (rand == 0) // STAT
                {
                    arte.mDndStat = (DndStat)Utility.Random(5);
                    arte.mStatValue++;
                }
                else if (rand == 1) //CompetenceMod
                {
                    CompType ctype = (CompType)Utility.Random((int)CompType.Maximum);
                    if (ctype != CompType.All && ctype != CompType.Maximum)
                    {
                        int value = 0;
                        if (qualite >= ArtefactQuality.Superieur)
                        {
                            value = Utility.Random(4) + 1;
                        }
                        else
                        {
                            value = Utility.Random(2) + 1;
                        }
                        bool c*k = false;
                        foreach (CompetenceMod cmod in arte.mCompetenceMod)
                        {
                            if (cmod.Comp == ctype)
                            {
                                c*k = false;
                                break;
                            }
                        }
                        if (c*k)
                        {
                            arte.mCompetenceMod.Add(new CompetenceMod(value, ctype));
                        }
                    }
                }
                else if (rand == 2) //Sauvegarde Mod)
                {
                    SauvegardeEnum save    = (SauvegardeEnum)Utility.Random(3);
                    bool           doEcole = true;
                    int            value   = Utility.Random(4) + 1;

                    if (qualite >= ArtefactQuality.Rare)
                    {
                        doEcole = Utility.RandomBool();
                    }
                    if (doEcole)
                    {
                        int           nbrEcole = Utility.Random(2) + 1;
                        SortEnergie[] ecoles   = new SortEnergie[nbrEcole];
                        for (int e = 0; e < (int)nbrEcole; e++)
                        {
                            SortEnergie ecole = 1 + (SortEnergie)Utility.Random((int)SortEnergie.Air);

                            ecoles[e] = ecole;
                        }
                        arte.mSaugevardMod.Add(new SauvegardeMod(value, save, ecoles));
                    }
                    else
                    {
                        arte.mSaugevardMod.Add(new SauvegardeMod(value, save));
                    }
                }

                /*   else if (rand == 3) // CA MOD
                 * {
                 *     arte.mCAMod += Utility.Random(4) + 1;
                 * }
                 * else if (rand == 4)
                 * {
                 *     arte.mDegatMod += Utility.Random(1) + 1;
                 * }*/
            }
            return(arte);
        }
Esempio n. 5
0
 public SauvegardeMod(int value, SauvegardeEnum save) :
     this(value, save, new SortEnergie[0])
 {
 }