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); }
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); }
public SauvegardeMod(int value, SauvegardeEnum save, SortEnergie[] ecoles) { mValue = value; mSave = save; mEcoles = ecoles; }
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); }
public SauvegardeMod(int value, SauvegardeEnum save) : this(value, save, new SortEnergie[0]) { }