private void UpdateDefense() { Character member = m_party.GetMember(m_party.CurrentCharacter); Int32 num = (Int32)member.FightValues.EvadeValue; Int32 num2 = (Int32)(member.FightValues.GeneralBlockChance * 100f + 0.5f); String text = num.ToString(); if (member.ConditionHandler.HasCondition(ECondition.POISONED)) { text = m_colorRedHex + num + "[-]"; } m_defAC.UpdateLabel(member.FightValues.ArmorValue.ToString(), LocaManager.GetText("CHARACTER_DEFENSE_AC_TT", member.FightValues.ArmorValue)); PartyBuff buff = m_party.Buffs.GetBuff(EPartyBuffs.WIND_SHIELD); if (buff != null) { String text2 = String.Concat(new Object[] { text, "/", m_colorGreenHex, num + buff.GetRangedEvadeBonus(), "[-]" }); m_defEvade.UpdateLabel(text2, LocaManager.GetText("CHARACTER_DEFENSE_EVADE_VALUE_TT", text2)); } else { m_defEvade.UpdateLabel(text, LocaManager.GetText("CHARACTER_DEFENSE_EVADE_VALUE_TT", num)); } m_defBlockChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", num2.ToString()), LocaManager.GetText("CHARACTER_DEFENSE_BLOCK_CHANCE_TT", num2)); m_defBlocksGeneral.UpdateLabel(member.FightHandler.CurrentGeneralBlockAttempts.ToString(), LocaManager.GetText("CHARACTER_DEFENSE_GENERAL_BLOCK_ATTEMPTS_TT", member.FightHandler.CurrentGeneralBlockAttempts)); m_defBlocksMelee.UpdateLabel(member.FightHandler.CurrentMeleeBlockAttempts.ToString(), LocaManager.GetText("CHARACTER_DEFENSE_MELEE_BLOCK_ATTEMPTS_TT", member.FightHandler.CurrentMeleeBlockAttempts)); }
private void UpdateRanged() { Character member = m_party.GetMember(m_party.CurrentCharacter); BaseItem itemAt = member.Equipment.GetItemAt(EEquipSlots.RANGE_WEAPON); if (itemAt != null) { Int32 num = (Int32)(member.FightValues.RangedAttackValue + 0.5f); m_rangedAttack.UpdateLabel(num.ToString(), LocaManager.GetText("CHARACTER_ATTACK_RANGED_TT", num)); Int32 num2 = 0; Int32 num3 = 0; for (EDamageType edamageType = EDamageType.PHYSICAL; edamageType < EDamageType._MAX_; edamageType++) { num2 += member.FightValues.RangeDamage[edamageType].Minimum; num3 += member.FightValues.RangeDamage[edamageType].Maximum; } String text = num2 + "-" + num3; m_rangeDamage.UpdateLabel(text, LocaManager.GetText("CHARACTER_DAMAGE_WEAPON", text)); String text2 = LocaManager.GetText("CHARACTER_RANGED_CRIT_CHANCE_TT", (Int32)(member.FightValues.CriticalRangeHitChance * 100f + 0.5f)); String text3 = LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_TT", (Int32)(member.FightValues.RangeCriticalDamageMod * 100f + 0.5f)); m_rangedCritChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", (Int32)(member.FightValues.CriticalRangeHitChance * 100f + 0.5f)), text2); m_rangedCritDamage.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_INFO", (Int32)(member.FightValues.RangeCriticalDamageMod * 100f + 0.5f)), text3); } else { m_rangedAttack.UpdateLabel("0", String.Empty); m_rangeDamage.UpdateLabel("0", String.Empty); m_rangedCritChance.UpdateLabel("0", String.Empty); m_rangedCritDamage.UpdateLabel("0", String.Empty); } }
private void UpdateResis() { Character member = m_party.GetMember(m_party.CurrentCharacter); GameConfig game = ConfigManager.Instance.Game; Int32 value = member.FightValues.Resistance[EDamageType.FIRE].Value; Int32 value2 = member.BaseResistance[EDamageType.FIRE].Value; m_resiFire.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_FIRE_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.WATER].Value; value2 = member.BaseResistance[EDamageType.WATER].Value; m_resiWater.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_WATER_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.EARTH].Value; value2 = member.BaseResistance[EDamageType.EARTH].Value; m_resiEarth.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_EARTH_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.AIR].Value; value2 = member.BaseResistance[EDamageType.AIR].Value; m_resiAir.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_AIR_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.LIGHT].Value; value2 = member.BaseResistance[EDamageType.LIGHT].Value; m_resiLight.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_LIGHT_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.DARK].Value; value2 = member.BaseResistance[EDamageType.DARK].Value; m_resiDark.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_DARK_TT", value * game.MagicEvadeFactor, value, value)); value = member.FightValues.Resistance[EDamageType.PRIMORDIAL].Value; value2 = member.BaseResistance[EDamageType.PRIMORDIAL].Value; m_resiPrime.UpdateLabel(GetColoredValue(value, value2, true), LocaManager.GetText("CHARACTER_RESISTANCE_PRIMORDIAL_TT", value * game.MagicEvadeFactor, value, value)); }
private void UpdateAttributes() { Character member = m_party.GetMember(m_party.CurrentCharacter); GameConfig game = ConfigManager.Instance.Game; String arg = "[000000]"; if (member.AttributePoints > 0) { arg = "[008000]"; } m_pointsLeft.text = LocaManager.GetText("GUI_POINTS_LEFT", arg, member.AttributePoints); NGUITools.SetActive(m_pointsBtn.gameObject, member.AttributePoints > 0); Int32 p_currentValue = member.CurrentAttributes.Might; Int32 p_baseValue = member.BaseAttributes.Might; m_might.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_MIGHT_TT", game.HealthPerMight, GetColoredValue(p_currentValue, p_baseValue, false))); p_currentValue = member.CurrentAttributes.Magic; p_baseValue = member.BaseAttributes.Magic; m_magic.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_MAGIC_TT", game.ManaPerMagic, GetColoredValue(p_currentValue, p_baseValue, false))); p_currentValue = member.CurrentAttributes.Perception; p_baseValue = member.BaseAttributes.Perception; m_perception.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_PERCEPTION_TT", GetColoredValue(p_currentValue, p_baseValue, false))); p_currentValue = member.CurrentAttributes.Destiny; p_baseValue = member.BaseAttributes.Destiny; m_desiny.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_DESTINY_TT", GetColoredValue(p_currentValue, p_baseValue, false))); p_currentValue = member.CurrentAttributes.Vitality; p_baseValue = member.BaseAttributes.Vitality; m_vitality.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_VITALITY_TT", member.Class.GetHPPerVitality(), GetColoredValue(p_currentValue, p_baseValue, false))); p_currentValue = member.CurrentAttributes.Spirit; p_baseValue = member.BaseAttributes.Spirit; m_spirit.UpdateLabel(GetColoredValue(p_currentValue, p_baseValue, true), LocaManager.GetText("CHARACTER_ATTRIBUTE_SPIRIT_TT", game.ManaPerSpirit, GetColoredValue(p_currentValue, p_baseValue, false))); }
private void UpdateHPMana() { Character member = m_party.GetMember(m_party.CurrentCharacter); GameConfig game = ConfigManager.Instance.Game; Int32 num = member.BaseAttributes.HealthPoints + (Int32)(game.HealthPerMight * member.BaseAttributes.Might + member.Class.GetHPPerVitality() * member.BaseAttributes.Vitality); Int32 num2 = member.BaseAttributes.ManaPoints + (Int32)(game.ManaPerMagic * member.BaseAttributes.Magic + game.ManaPerSpirit * member.BaseAttributes.Spirit); String text = member.CurrentAttributes.HealthPoints.ToString(); if (num < member.CurrentAttributes.HealthPoints) { text = m_colorGreenHex + text + "[-]"; } else if (num > member.CurrentAttributes.HealthPoints) { text = m_colorRedHex + text + "[-]"; } String p_tt = LocaManager.GetText("CHARACTER_ATTRIBUTE_HEALTH_TT") + "\n\n" + LocaManager.GetText("GUI_STATS_X_OF_Y", member.HealthPoints, text); String text2 = member.CurrentAttributes.ManaPoints.ToString(); if (num2 < member.CurrentAttributes.ManaPoints) { text2 = m_colorGreenHex + text2 + "[-]"; } else if (num2 > member.CurrentAttributes.HealthPoints) { text2 = m_colorRedHex + text2 + "[-]"; } String p_tt2 = LocaManager.GetText("CHARACTER_ATTRIBUTE_MANA_TT") + "\n\n" + LocaManager.GetText("GUI_STATS_X_OF_Y", member.ManaPoints, text2); m_hp.UpdateLabel(LocaManager.GetText("GUI_STATS_X_OF_Y", member.HealthPoints, text), p_tt); m_mana.UpdateLabel(LocaManager.GetText("GUI_STATS_X_OF_Y", member.ManaPoints, text2), p_tt2); }
private void UpdateMagic() { Character member = m_party.GetMember(m_party.CurrentCharacter); String p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_FIRE_MAGIC]); m_magicAttackFire.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_FIRE")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_WATER_MAGIC]); m_magicAttackWater.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_WATER")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_AIR_MAGIC]); m_magicAttackAir.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_AIR")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_EARTH_MAGIC]); m_magicAttackEarth.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_EARTH")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_LIGHT_MAGIC]); m_magicAttackLight.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_LIGHT")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_DARK_MAGIC]); m_magicAttackDark.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_DARK")); p_text = String.Format("{0:0.0}", member.FightValues.MagicPowers[ESkillID.SKILL_PRIMORDIAL_MAGIC]); m_magicAttackPrime.UpdateLabel(p_text, LocaManager.GetText("CHARACTER_MAGIC_POWER_PRIME")); String text = LocaManager.GetText("CHARACTER_MAGIC_CRIT_CHANCE_TT", (Int32)(member.FightValues.CriticalMagicHitChance * 100f + 0.5f)); String text2 = LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_TT", (Int32)((member.FightValues.MagicalCriticalDamageMod - 1f) * 100f + 0.5f)); m_magicCritChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", (Int32)(member.FightValues.CriticalMagicHitChance * 100f + 0.5f)), text); m_magicCritDamage.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_INFO", (Int32)((member.FightValues.MagicalCriticalDamageMod - 1f) * 100f + 0.5f)), text2); }
public void SetEntry(MonsterStaticData p_data, Int32 p_amountKilled) { m_stages = p_data.BestiaryThresholds; m_currentAmount = p_amountKilled; if (p_data.Grade == EMonsterGrade.CHAMPION || p_data.Grade == EMonsterGrade.BOSS) { m_currentAmount = p_data.BestiaryThresholds[2]; } m_progressBar.SetCurrentAmount(m_currentAmount, p_data.BestiaryThresholds[2]); Int32 num; if (LegacyLogic.Instance.WorldManager.Difficulty == EDifficulty.HARD) { switch (p_data.Grade) { case EMonsterGrade.CORE: num = (Int32)(p_data.MaxHealthpoints * ConfigManager.Instance.Game.MonsterHealthCoreFactor); break; case EMonsterGrade.ELITE: num = (Int32)(p_data.MaxHealthpoints * ConfigManager.Instance.Game.MonsterHealthEliteFactor); break; case EMonsterGrade.CHAMPION: num = (Int32)(p_data.MaxHealthpoints * ConfigManager.Instance.Game.MonsterHealthChampionFactor); break; default: num = p_data.MaxHealthpoints; break; } } else { num = p_data.MaxHealthpoints; } String p_text = String.Empty; if (p_data.MeleeAttackDamageMin == p_data.MeleeAttackDamageMax) { p_text = p_data.MeleeAttackDamageMin.ToString(); } else { p_text = p_data.MeleeAttackDamageMin + "-" + p_data.MeleeAttackDamageMax; } m_maxHp.UpdateLabel(num.ToString(), LocaManager.GetText("BESTIARY_STAT_ATTRIBUTE_HEALTH_TT")); m_meleeDmg.UpdateLabel(p_text, LocaManager.GetText("BESTIARY_STAT_ATTACK_DAMAGE_TT")); m_meleeStrikes.UpdateLabel(p_data.MeleeAttackStrikesAmount.ToString(), LocaManager.GetText("BESTIARY_STAT_STRIKES_TT")); m_critMelee.UpdateLabel(p_data.CriticalDamageMelee.ToString(), LocaManager.GetText("BESTIARY_STAT_ATTACK_CRIT_DAMAGE_TT", p_data.CriticalDamageMelee * 100f)); m_meleeAttackValue.UpdateLabel(p_data.MeleeAttackValue.ToString(), LocaManager.GetText("BESTIARY_STAT_ATTACK_VALUE_TT")); for (Int32 i = 0; i < m_spells.Count; i++) { m_spells[i].ShowEntry(true); if (p_data.Spells.Length > i) { MonsterSpellStaticData staticData = StaticDataHandler.GetStaticData <MonsterSpellStaticData>(EDataType.MONSTER_SPELLS, p_data.Spells[i].SpellID); MonsterSpell monsterSpell = SpellFactory.CreateMonsterSpell((EMonsterSpell)staticData.StaticID, staticData.EffectKey, p_data.Spells[i].SpellProbability); m_spells[i].ShowEntry(true); m_spells[i].UpdateEntry(staticData.Icon); StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(m_headLineColorHex); stringBuilder.Append(LocaManager.GetText(monsterSpell.NameKey)); stringBuilder.Append("[-]"); stringBuilder.Append(Environment.NewLine); stringBuilder.Append(m_textColorHex); stringBuilder.Append(monsterSpell.GetDescriptionForCaster(p_data)); stringBuilder.Append("[-]"); m_spells[i].SetTooltip(stringBuilder.ToString()); } else { m_spells[i].ShowEntry(false); } } if (p_data.AttackRange > 1 && p_data.Spells.Length == 0) { m_rangeDmg.gameObject.SetActive(true); m_rangeStrikes.gameObject.SetActive(true); m_rangeAttackValue.gameObject.SetActive(true); m_rangeAttackRange.gameObject.SetActive(true); m_critRange.gameObject.SetActive(true); m_critMagic.gameObject.SetActive(false); String p_text2 = String.Empty; if (p_data.RangedAttackDamageMin == p_data.RangedAttackDamageMax) { p_text2 = p_data.RangedAttackDamageMin.ToString(); } else { p_text2 = p_data.RangedAttackDamageMin + "-" + p_data.RangedAttackDamageMax; } m_rangeDmg.UpdateLabel(p_text2, LocaManager.GetText("BESTIARY_STAT_ATTACK_DAMAGE_TT", p_data.RangedAttackDamage.Value.ToString())); m_rangeStrikes.UpdateLabel(p_data.RangedAttackStrikesAmount.ToString(), LocaManager.GetText("BESTIARY_STAT_STRIKES_TT", p_data.RangedAttackStrikesAmount.ToString())); m_rangeAttackValue.UpdateLabel(p_data.RangedAttackValue.ToString(), LocaManager.GetText("BESTIARY_STAT_ATTACK_VALUE_TT", p_data.RangedAttackValue.ToString())); m_rangeAttackRange.UpdateLabel(p_data.AttackRange.ToString(), LocaManager.GetText("MONSTER_ATTACK_RANGE_TT", p_data.AttackRange.ToString())); m_critRange.UpdateLabel(p_data.CriticalDamageRanged.ToString(), LocaManager.GetText("BESTIARY_STAT_ATTACK_CRIT_DAMAGE_TT", p_data.CriticalDamageRanged * 100f)); m_labelRangedMagic.text = LocaManager.GetText("GUI_CHARACTER_STATS_RANGED"); for (Int32 j = 0; j < m_spells.Count; j++) { m_spells[j].ShowEntry(false); } } else if (p_data.Spells.Length > 0) { m_rangeDmg.gameObject.SetActive(false); m_rangeStrikes.gameObject.SetActive(false); m_rangeAttackValue.gameObject.SetActive(false); m_rangeAttackRange.gameObject.SetActive(false); m_critRange.gameObject.SetActive(false); m_critMagic.gameObject.SetActive(true); m_labelRangedMagic.text = LocaManager.GetText("GUI_CHARACTER_STATS_MAGIC"); } else { m_rangeDmg.gameObject.SetActive(true); m_rangeStrikes.gameObject.SetActive(true); m_rangeAttackValue.gameObject.SetActive(true); m_rangeAttackRange.gameObject.SetActive(true); m_critRange.gameObject.SetActive(true); m_critMagic.gameObject.SetActive(false); for (Int32 k = 0; k < m_spells.Count; k++) { m_spells[k].ShowEntry(false); } m_labelRangedMagic.text = LocaManager.GetText("GUI_CHARACTER_STATS_RANGED"); m_rangeDmg.UpdateLabel("-", LocaManager.GetText("BESTIARY_STAT_ATTACK_DAMAGE_TT", "-")); m_rangeStrikes.UpdateLabel("-", LocaManager.GetText("BESTIARY_STAT_STRIKES_TT", "-")); m_rangeAttackValue.UpdateLabel("-", LocaManager.GetText("BESTIARY_STAT_ATTACK_VALUE_TT", "-")); m_rangeAttackRange.UpdateLabel("-", LocaManager.GetText("MONSTER_ATTACK_RANGE_TT", "-")); m_critRange.UpdateLabel("-", LocaManager.GetText("BESTIARY_STAT_ATTACK_CRIT_DAMAGE_TT", "-")); } m_armor.UpdateLabel(p_data.ArmorValue.ToString(), LocaManager.GetText("BESTIARY_STAT_ARMOR_VALUE_TT", p_data.ArmorValue.ToString())); m_blockAttempts.UpdateLabel(p_data.GeneralBlockAttemptsPerTurn.ToString(), LocaManager.GetText("BESTIARY_STAT_BLOCK_ATTEMPTS_TT", p_data.GeneralBlockAttemptsPerTurn.ToString())); m_evade.UpdateLabel(p_data.EvadeValue.ToString(), LocaManager.GetText("BESTIARY_STAT_EVADE_VALUE_TT", p_data.EvadeValue.ToString())); if (p_data.CriticalDamageSpells > 0f) { m_critMagic.UpdateLabel(p_data.CriticalDamageSpells.ToString(), LocaManager.GetText("BESTIARY_STAT_MAGIC_CRIT_CHANCE_TT", p_data.CriticalDamageSpells * 100f)); } else { m_critMagic.UpdateLabel("-", LocaManager.GetText("BESTIARY_STAT_MAGIC_CRIT_CHANCE_TT", "-")); } NGUITools.SetActive(m_abilityFrame, true); if (p_data.Abilities.Length == 0) { NGUITools.SetActive(m_abilityFrame, false); } for (Int32 l = 0; l < m_specials.Count; l++) { if (p_data.Abilities.Length > l) { m_specials[l].ShowEntry(true); MonsterAbilityBase monsterAbilityBase = AbilityFactory.CreateMonsterAbility(p_data.Abilities[l].AbilityType, p_data.MagicPower); monsterAbilityBase.Level = p_data.Abilities[l].Level; m_specials[l].UpdateEntry(monsterAbilityBase.StaticData.Icon); StringBuilder stringBuilder2 = new StringBuilder(); stringBuilder2.Append(m_headLineColorHex); stringBuilder2.Append(LocaManager.GetText(monsterAbilityBase.StaticData.NameKey)); stringBuilder2.Append("[-]"); stringBuilder2.Append(Environment.NewLine); stringBuilder2.Append(m_textColorHex); stringBuilder2.Append(monsterAbilityBase.GetDescription()); stringBuilder2.Append("[-]"); m_specials[l].SetTooltip(stringBuilder2.ToString()); } else { m_specials[l].ShowEntry(false); } } m_resiPrimordial.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_PRIMORDIAL_TT", 0, 0)); m_resiFire.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_FIRE_TT", 0, 0)); m_resiWater.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_WATER_TT", 0, 0)); m_resiEarth.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_EARTH_TT", 0, 0)); m_resiAir.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_AIR_TT", 0, 0)); m_resiLight.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_LIGHT_TT", 0, 0)); m_resiDark.UpdateLabel("0", LocaManager.GetText("BESTIARY_STAT_RESISTANCE_DARK_TT", 0, 0)); foreach (Resistance resistance in p_data.MagicResistances) { switch (resistance.Type) { case EDamageType.AIR: m_resiAir.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_AIR_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.EARTH: m_resiEarth.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_EARTH_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.FIRE: m_resiFire.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_FIRE_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.WATER: m_resiWater.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_WATER_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.DARK: m_resiDark.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_DARK_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.LIGHT: m_resiLight.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_LIGHT_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; case EDamageType.PRIMORDIAL: m_resiPrimordial.UpdateLabel(resistance.Value.ToString(), LocaManager.GetText("BESTIARY_STAT_RESISTANCE_PRIMORDIAL_TT", resistance.Value * (p_data.EvadeValue / 100), resistance.Value)); break; } } HideLockedEntries(); }
private void UpdateMelee() { Character member = m_party.GetMember(m_party.CurrentCharacter); Boolean flag = false; BaseItem itemAt = member.Equipment.GetItemAt(EEquipSlots.MAIN_HAND); if (itemAt is MeleeWeapon && (itemAt as MeleeWeapon).GetSubType() == EEquipmentType.TWOHANDED) { flag = true; } String text = String.Empty; String text2 = String.Empty; String text3 = String.Empty; Armor armor = member.Equipment.GetItemAt(EEquipSlots.BODY) as Armor; Int32 armorPenalty = member.FightHandler.GetArmorPenalty(); Int32 attackValuePenaltyReduction = member.FightValues.AttackValuePenaltyReduction; Int32 num = Math.Max(armorPenalty - attackValuePenaltyReduction, 0); if (armor != null && armor.GetSubType() == EEquipmentType.HEAVY_ARMOR && num > 0) { text3 = LocaManager.GetText("CHARACTER_ATTACK_REDUCED_HEAVY", num); } else if (armor != null && armor.GetSubType() == EEquipmentType.LIGHT_ARMOR && num > 0) { text3 = LocaManager.GetText("CHARACTER_ATTACK_REDUCED_MEDIUM", num); } if (flag) { String text4 = ((Int32)(member.FightValues.MainHandAttackValue + 0.5f)).ToString(); if (itemAt is MagicFocus) { text4 = "-"; } text2 = LocaManager.GetText("CHARACTER_ATTACK_TWONHAND_TT", text4); if (text3 != String.Empty) { text2 = text2 + "\n" + text3; } m_mainHandAttack.UpdateLabel(text4, text2); Int32 num2 = 0; Int32 num3 = 0; for (EDamageType edamageType = EDamageType.PHYSICAL; edamageType < EDamageType._MAX_; edamageType++) { num2 += member.FightValues.MainHandDamage[edamageType].Minimum; num3 += member.FightValues.MainHandDamage[edamageType].Maximum; } text = num2 + "-" + num3; m_mainHandDamage.UpdateLabel(text, LocaManager.GetText("CHARACTER_DAMAGE_WEAPON", text)); String text5 = LocaManager.GetText("CHARACTER_TWOHAND_CRIT_CHANCE_TT", (Int32)(member.FightValues.CriticalMainHandHitChance * 100f + 0.5f)); String text6 = LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_TT", (Int32)(member.FightValues.MainHandCriticalDamageMod * 100f + 0.5f)); m_mainHandCritChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", (Int32)(member.FightValues.CriticalMainHandHitChance * 100f + 0.5f)), text5); m_mainHandCritDamage.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_INFO", (Int32)(member.FightValues.MainHandCriticalDamageMod * 100f + 0.5f)), text6); m_offHandAttack.UpdateLabel("0", String.Empty); m_offHandDamage.UpdateLabel("0", String.Empty); m_offHandCritChance.UpdateLabel("0", String.Empty); m_offHandCritDamage.UpdateLabel("0", String.Empty); } else { String text7 = ((Int32)(member.FightValues.MainHandAttackValue + 0.5f)).ToString(); if (itemAt is MagicFocus) { text7 = "-"; } text2 = LocaManager.GetText("CHARACTER_ATTACK_MAINHAND_TT", text7); if (text3 != String.Empty) { text2 = text2 + "\n" + text3; } m_mainHandAttack.UpdateLabel(text7, text2); Int32 num4 = 0; Int32 num5 = 0; for (EDamageType edamageType2 = EDamageType.PHYSICAL; edamageType2 < EDamageType._MAX_; edamageType2++) { num4 += member.FightValues.MainHandDamage[edamageType2].Minimum; num5 += member.FightValues.MainHandDamage[edamageType2].Maximum; } text = num4 + "-" + num5; m_mainHandDamage.UpdateLabel(text, LocaManager.GetText("CHARACTER_DAMAGE_WEAPON", text)); String text8 = LocaManager.GetText("CHARACTER_MAINHAND_CRIT_CHANCE_TT", (Int32)(member.FightValues.CriticalMainHandHitChance * 100f + 0.5f)); String text9 = LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_TT", (Int32)(member.FightValues.MainHandCriticalDamageMod * 100f + 0.5f)); m_mainHandCritChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", (Int32)(member.FightValues.CriticalMainHandHitChance * 100f + 0.5f)), text8); m_mainHandCritDamage.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_INFO", (Int32)(member.FightValues.MainHandCriticalDamageMod * 100f + 0.5f)), text9); BaseItem itemAt2 = member.Equipment.GetItemAt(EEquipSlots.OFF_HAND); if (itemAt2 != null && !(itemAt2 is Shield)) { text7 = ((Int32)(member.FightValues.OffHandAttackValue + 0.5f)).ToString(); if (itemAt2 is MagicFocus) { text7 = "-"; } text2 = LocaManager.GetText("CHARACTER_ATTACK_OFFHAND_TT", text7); if (text3 != String.Empty) { text2 = text2 + "\n" + text3; } m_offHandAttack.UpdateLabel(text7, text2); num4 = 0; num5 = 0; for (EDamageType edamageType3 = EDamageType.PHYSICAL; edamageType3 < EDamageType._MAX_; edamageType3++) { num4 += member.FightValues.OffHandDamage[edamageType3].Minimum; num5 += member.FightValues.OffHandDamage[edamageType3].Maximum; } text = num4 + "-" + num5; m_offHandDamage.UpdateLabel(text, LocaManager.GetText("CHARACTER_DAMAGE_WEAPON", text)); String text10 = LocaManager.GetText("CHARACTER_OFFHAND_CRIT_CHANCE_TT", (Int32)(member.FightValues.CriticalOffHandHitChance * 100f + 0.5f)); String text11 = LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_TT", (Int32)(member.FightValues.OffHandCriticalDamageMod * 100f + 0.5f)); m_offHandCritChance.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_CHANCE_INFO", (Int32)(member.FightValues.CriticalOffHandHitChance * 100f + 0.5f)), text10); m_offHandCritDamage.UpdateLabel(LocaManager.GetText("CHARACTER_ATTACK_CRIT_DAMAGE_INFO", (Int32)(member.FightValues.OffHandCriticalDamageMod * 100f + 0.5f)), text11); } else { m_offHandAttack.UpdateLabel("0", String.Empty); m_offHandDamage.UpdateLabel("0", String.Empty); m_offHandCritChance.UpdateLabel("0", String.Empty); m_offHandCritDamage.UpdateLabel("0", String.Empty); } } }