public void Fill(TooltipType p_type, EPotionTarget p_attribute, Int32 p_currentIncrease, Character p_character, DummyCharacter p_dummy) { Init(); m_atrribute = p_attribute; Single num = m_outerPadding + m_innerPadding; m_currentIncrease = p_currentIncrease; m_currentHeader.UpdatePositionY(-num); m_currentHeader.UpdateText(LocaManager.GetText("ATTRIBUTE_CURRENT")); num += m_currentHeader.Size.y + m_innerPadding; m_currentText.UpdatePositionY(-num); FillDescription(m_currentText, m_currentIncrease, p_character, p_dummy, false); num += m_currentText.Size.y + m_innerPadding; m_changeHeader.UpdatePositionY(-num); if (p_type == TooltipType.CURRENT_EFFECT_NEXT) { m_changeHeader.UpdateText(LocaManager.GetText("ATTRIBUTE_NEXT")); } else { m_changeHeader.UpdateText(LocaManager.GetText("ATTRIBUTE_PREV")); } num += m_changeHeader.Size.y + m_innerPadding; m_changeText.UpdatePositionY(-num); if (p_type == TooltipType.CURRENT_EFFECT_NEXT) { FillDescription(m_changeText, m_currentIncrease + 1, p_character, p_dummy, true); } else { FillDescription(m_changeText, m_currentIncrease - 1, p_character, p_dummy, true); } num += m_changeText.Size.y + m_innerPadding; m_background.Scale(m_currentHeader.Size.x + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }
private void FillSkillDescription(Skill p_skill, TooltipType p_type, Boolean p_isDefault) { if (p_type == TooltipType.BASE || p_type == TooltipType.PARTY_CREATION) { String text = LocaManager.GetText(p_skill.Description); if (p_type == TooltipType.PARTY_CREATION) { if (p_skill.MaxTier == ETier.GRAND_MASTER) { text = text + "\n\n[00ff00]" + LocaManager.GetText("TOOLTIP_SKILL_MAX_GRANDMASTER") + "[-]"; } else if (p_skill.MaxTier == ETier.MASTER) { text = text + "\n\n[00ff00]" + LocaManager.GetText("TOOLTIP_SKILL_MAX_MASTER") + "[-]"; } else if (p_skill.MaxTier == ETier.EXPERT) { text = text + "\n\n[00ff00]" + LocaManager.GetText("TOOLTIP_SKILL_MAX_EXPERT") + "[-]"; } if (p_isDefault) { text = text + "\n\n[ff0000]" + LocaManager.GetText("TOOLTIP_SKILL_IS_DEFAULT") + "[-]"; } } m_description.UpdateText(text); } else { String increaseDescription = GetIncreaseDescription(p_skill, p_skill.Level, true); m_description.UpdateText(increaseDescription); } }
private void FillSkillName(Skill p_skill, TooltipType p_type) { if (p_type == TooltipType.CURRENT_EFFECT_NEXT || p_type == TooltipType.CURRENT_EFFECT_PREV) { m_name.Label.color = m_normalColor; m_name.UpdateText(LocaManager.GetText("SKILL_CURRENT_INCREASE")); } if (p_type == TooltipType.BASE || p_type == TooltipType.PARTY_CREATION) { m_name.Label.color = m_normalColor; m_name.UpdateText(LocaManager.GetText(p_skill.Name)); } else if (p_type == TooltipType.EXPERT) { m_name.Label.color = ((p_skill.Tier < ETier.EXPERT) ? m_unlearnedColor : m_normalColor); m_name.UpdateText(LocaManager.GetText("SKILL_TIER_BONUS_2")); } else if (p_type == TooltipType.MASTER) { m_name.Label.color = ((p_skill.Tier < ETier.MASTER) ? m_unlearnedColor : m_normalColor); m_name.UpdateText(LocaManager.GetText("SKILL_TIER_BONUS_3")); } else if (p_type == TooltipType.GRAND_MASTER) { m_name.Label.color = ((p_skill.Tier < ETier.GRAND_MASTER) ? m_unlearnedColor : m_normalColor); m_name.UpdateText(LocaManager.GetText("SKILL_TIER_BONUS_4")); } }
public void Fill(CharacterSpell p_spell) { m_name.UpdateText(LocaManager.GetText(p_spell.NameKey)); Single num = m_outerPadding + m_name.Size.y + m_innerPadding; m_itemSlot.SetSpell(p_spell.StaticData.Icon); m_itemSlot.HideItem(); m_itemSlot.UpdatePosition(new Vector3(-m_name.Size.x / 2f, -num, 0f)); m_description.MinHeight = m_itemSlot.Size.y; m_description.VerticalAlign = TooltipGroup.Align.CENTER; if (p_spell.StaticData.ManaCost > 0) { m_description.UpdateText(LocaManager.GetText("SPELLBOOK_SPELL_MANA", p_spell.StaticData.ManaCost)); } else { m_description.UpdateText(LocaManager.GetText("SPELL_DESCRIPTION_MANA_ALL")); } m_description.UpdatePositionY(-num); num += m_description.Size.y + m_innerPadding; Character selectedCharacter = LegacyLogic.Instance.WorldManager.Party.SelectedCharacter; Single magicFactor = p_spell.GetMagicFactor(selectedCharacter, false, 0); m_details.UpdateText(p_spell.GetDescription(magicFactor)); m_details.UpdatePositionY(-num); num += m_details.Size.y + m_innerPadding; m_requirements.SetVisible(true); SkillStaticData staticData = StaticDataHandler.GetStaticData <SkillStaticData>(EDataType.SKILL, (Int32)p_spell.StaticData.SkillID); String text = LocaManager.GetText(staticData.Name); String text2 = LocaManager.GetText("SKILL_TIER_" + (Int32)p_spell.StaticData.Tier); Boolean flag; if (p_spell.StaticData.ClassOnly == EClass.NONE) { flag = IsSkillRequirementFulfilled((Int32)p_spell.StaticData.SkillID, p_spell.StaticData.Tier); m_requirements.UpdateText(LocaManager.GetText("SKILL_TIER_REQUIREMENT_TT", text, text2)); } else { flag = selectedCharacter.Class.IsAdvanced; String str = (selectedCharacter.Gender != EGender.MALE) ? "_F" : "_M"; if (p_spell.StaticData.SkillID == ESkillID.SKILL_WARFARE) { m_requirements.UpdateText(LocaManager.GetText("ABILITY_REQUIREMENT_ADVANCED_CLASS" + str, selectedCharacter.Name, LocaManager.GetText(selectedCharacter.Class.AdvancedNameKey + str))); } else { m_requirements.UpdateText(LocaManager.GetText("SPELL_REQUIREMENT_ADVANCED_CLASS" + str, selectedCharacter.Name, LocaManager.GetText(selectedCharacter.Class.AdvancedNameKey + str))); } } m_requirements.UpdatePositionY(-num); m_requirements.Label.color = ((!flag) ? Color.red : Color.white); num += m_requirements.Size.y + m_innerPadding; m_background.Scale(m_name.Size.x + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }
public void Fill(String objectNote, String userNote) { Single num = m_outerPadding + m_innerPadding; Single num2 = 0f; Boolean flag = !String.IsNullOrEmpty(objectNote); m_objectNote.SetVisible(flag); if (flag) { m_objectNote.UpdatePositionY(-num); m_objectNote.UpdateText(objectNote); num += m_objectNote.Size.y + m_innerPadding; num2 = m_objectNote.Size.x; } Boolean flag2 = !String.IsNullOrEmpty(userNote); m_userNote.SetVisible(flag2); if (flag2) { m_userNote.UpdatePositionY(-num); m_userNote.UpdateText(userNote); num += m_userNote.Size.y + m_innerPadding; num2 = m_userNote.Size.x; } m_background.Scale(num2 + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }
private void FillSkillEffect(Skill p_skill, TooltipType p_type) { if (p_type == TooltipType.CURRENT_EFFECT_NEXT) { String increaseDescription = GetIncreaseDescription(p_skill, p_skill.Level + 1, false); m_effect.UpdateText(increaseDescription); m_effect.Label.color = m_unlearnedColor; } else if (p_type == TooltipType.CURRENT_EFFECT_PREV) { String increaseDescription2 = GetIncreaseDescription(p_skill, p_skill.Level - 1, false); m_effect.UpdateText(increaseDescription2); m_effect.Label.color = m_unlearnedColor; } else if (p_type == TooltipType.BASE) { String tierBoni = GetTierBoni(p_skill.Tier1Effects, p_skill.Tier >= ETier.NOVICE); m_effect.UpdateText(tierBoni); m_effect.Label.color = m_normalColor; } else if (p_type == TooltipType.EXPERT) { Boolean flag = p_skill.Tier >= ETier.EXPERT; String tierBoni2 = GetTierBoni(p_skill.Tier2Effects, flag); m_effect.UpdateText(tierBoni2); m_effect.Label.color = ((!flag) ? m_unlearnedColor : m_normalColor); } else if (p_type == TooltipType.MASTER) { Boolean flag2 = p_skill.Tier >= ETier.MASTER; String tierBoni3 = GetTierBoni(p_skill.Tier3Effects, flag2); m_effect.UpdateText(tierBoni3); m_effect.Label.color = ((!flag2) ? m_unlearnedColor : m_normalColor); } else if (p_type == TooltipType.GRAND_MASTER) { Boolean flag3 = p_skill.Tier >= ETier.GRAND_MASTER; String tierBoni4 = GetTierBoni(p_skill.Tier4Effects, flag3); m_effect.UpdateText(tierBoni4); m_effect.Label.color = ((!flag3) ? m_unlearnedColor : m_normalColor); } else { if (IsMagicSchoolSkill(p_skill)) { if (p_skill.StaticID == 11) { m_effect.UpdateText(LocaManager.GetText("TOOLTIP_SKILL_START_WARFARE")); } else { m_effect.UpdateText(LocaManager.GetText("TOOLTIP_SKILL_START_SPELL")); } } m_effect.Label.color = m_normalColor; } }
private void FillSkillLevel(Skill p_skill, TooltipType p_type, Boolean p_isDefault) { if (p_type == TooltipType.PARTY_CREATION) { if (p_skill.MaxTier == ETier.NONE) { m_level.UpdateText(LocaManager.GetText("TOOLTIP_SKILL_CANNOT_LEARN")); } else { String p_text; if (p_skill.Tier == ETier.NONE) { p_text = LocaManager.GetText("TOOLTIP_SKILL_UNSELECTED"); } else { p_text = "[00ff00]" + LocaManager.GetText("TOOLTIP_SKILL_SELECTED") + "[-]"; } m_level.UpdateText(p_text); } } else if (p_skill.Tier == ETier.NONE) { m_level.UpdateText(LocaManager.GetText("GUI_SKILLS_LEVEL_DESCRIPTION_UNLEARNED")); } else { String arg; if (p_skill.VirtualSkillLevel > 0) { arg = m_effectColorHex + (p_skill.Level + p_skill.VirtualSkillLevel) + "[-]"; } else { arg = p_skill.Level.ToString(); } m_level.UpdateText(LocaManager.GetText("TT_SKILL_LEVEL", SkillView.GetTierText(p_skill.Tier), arg)); } }
public void Fill(String p_caption, String p_description, ESize p_size) { Single num = m_outerPadding + m_innerPadding; Single num2 = 0f; Single horizontalScaleFactor; if (p_size == ESize.SMALL) { horizontalScaleFactor = 0.5f; } else if (p_size == ESize.MEDIUM) { horizontalScaleFactor = 0.75f; } else { horizontalScaleFactor = 1f; } Boolean flag = p_caption != String.Empty; m_caption.SetVisible(flag); if (flag) { m_caption.UpdatePositionY(-num); m_caption.HorizontalScaleFactor = horizontalScaleFactor; m_caption.UpdateText(p_caption); num += m_caption.Size.y + m_innerPadding; num2 = m_caption.Size.x; } Boolean flag2 = p_description != String.Empty; m_description.SetVisible(flag2); if (flag2) { m_description.UpdatePositionY(-num); m_description.HorizontalScaleFactor = horizontalScaleFactor; m_description.UpdateText(p_description); num += m_description.Size.y + m_innerPadding; num2 = m_description.Size.x; } m_background.Scale(num2 + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }
public void Fill(Skill p_skill, TooltipType p_type, Boolean p_isDefault) { Init(); Single num = m_outerPadding + m_innerPadding; Boolean flag = p_type != TooltipType.CURRENT_EFFECT_NEXT || p_skill.Tier >= ETier.NOVICE; m_name.SetVisible(flag); if (flag) { m_name.UpdatePositionY(-num); FillSkillName(p_skill, p_type); num += m_name.Size.y + m_innerPadding; } Boolean flag2 = p_type == TooltipType.BASE || p_type == TooltipType.PARTY_CREATION; m_itemSlot.SetVisible(flag2); m_level.SetVisible(flag2); if (flag2) { m_itemSlot.UpdatePosition(new Vector3(-m_name.Size.x / 2f, -num, 0f)); m_itemSlot.SetItem(p_skill.Icon); m_level.VerticalAlign = TooltipGroup.Align.CENTER; m_level.MinHeight = m_itemSlot.Size.y; m_level.UpdatePositionY(-num); FillSkillLevel(p_skill, p_type, p_isDefault); num += m_level.Size.y + m_innerPadding; } Boolean flag3 = p_type == TooltipType.BASE || p_type == TooltipType.PARTY_CREATION || p_type == TooltipType.CURRENT_EFFECT_PREV || (p_type == TooltipType.CURRENT_EFFECT_NEXT && p_skill.Tier >= ETier.NOVICE); m_description.SetVisible(flag3); if (flag3) { m_description.UpdatePositionY(-num); FillSkillDescription(p_skill, p_type, p_isDefault); num += m_description.Size.y + m_innerPadding; } Boolean flag4 = p_type == TooltipType.CURRENT_EFFECT_NEXT || (p_type == TooltipType.CURRENT_EFFECT_PREV && p_skill.Level > 1); m_subHeadLine.SetVisible(flag4); if (flag4) { m_subHeadLine.UpdatePositionY(-num); if (p_type == TooltipType.CURRENT_EFFECT_NEXT) { m_subHeadLine.UpdateText(LocaManager.GetText("SKILL_NEXT_INCREASE")); } else { m_subHeadLine.UpdateText(LocaManager.GetText("SKILL_PREV_INCREASE")); } num += m_subHeadLine.Size.y + m_innerPadding; } Boolean flag5 = (p_type != TooltipType.CURRENT_EFFECT_PREV || p_skill.Level > 1) && (p_type != TooltipType.PARTY_CREATION || IsMagicSchoolSkill(p_skill)); m_effect.SetVisible(flag5); if (flag5) { m_effect.UpdatePositionY(-num); FillSkillEffect(p_skill, p_type); num += m_effect.Size.y + m_innerPadding; } Boolean flag6 = p_type == TooltipType.PARTY_CREATION && IsMagicSchoolSkill(p_skill); Int32 num2 = 0; for (Int32 i = 0; i < m_spellSlot.Length; i++) { m_spellSlot[i].SetVisible(false); m_spellName[i].SetVisible(false); } if (flag6) { foreach (SkillEffectStaticData skillEffectStaticData in p_skill.Tier1Effects) { if (skillEffectStaticData.Type == ESkillEffectType.LEARN_SPELL) { Int32 p_spellType = (Int32)skillEffectStaticData.Value; CharacterSpell characterSpell = SpellFactory.CreateCharacterSpell((ECharacterSpell)p_spellType); m_spellSlot[num2].SetVisible(true); m_spellSlot[num2].UpdatePosition(new Vector3(-m_name.Size.x / 2f, -num, 0f)); m_spellSlot[num2].SetItem(characterSpell.StaticData.Icon); m_spellName[num2].SetVisible(true); m_spellName[num2].VerticalAlign = TooltipGroup.Align.CENTER; m_spellName[num2].MinHeight = m_spellSlot[num2].Size.y; m_spellName[num2].UpdatePositionY(-num); m_spellName[num2].UpdateText(LocaManager.GetText(characterSpell.NameKey)); num += m_spellName[num2].Size.y + m_innerPadding; num2++; } } } m_background.Scale(m_name.Size.x + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }
private void FillDescription(TooltipGroup p_target, Int32 p_currentIncrease, Character p_character, DummyCharacter p_dummy, Boolean p_nextOrPrevious) { GameConfig game = ConfigManager.Instance.Game; String arg; if (p_nextOrPrevious) { arg = m_nextLevelAttributeColorHex; } else { arg = m_attributetColorHex; } Single hpperVitality; if (p_character != null) { hpperVitality = p_character.Class.GetHPPerVitality(); } else { hpperVitality = p_dummy.GetHPPerVitality(); } if (m_atrribute == EPotionTarget.MIGHT) { String str = String.Empty; if (game.HealthPerMight > 0f) { str = LocaManager.GetText("ATRRIBUTE_EFFECT_MIGHT_HEALTH", game.HealthPerMight * p_currentIncrease, arg, "[-]") + "\n\n"; } String text = LocaManager.GetText("ATRRIBUTE_EFFECT_MIGHT_DAMAGE", Mathf.RoundToInt(ConfigManager.Instance.Game.MainHandDamage * p_currentIncrease * 100f), arg, "[-]"); p_target.UpdateText(str + text); } else if (m_atrribute == EPotionTarget.MAGIC) { String str2 = String.Empty; if (game.ManaPerMagic > 0f) { str2 = LocaManager.GetText("ATRRIBUTE_EFFECT_MAGIC_MANA", game.ManaPerMagic * p_currentIncrease, arg, "[-]") + "\n\n"; } String text2 = LocaManager.GetText("ATRRIBUTE_EFFECT_MAGIC_POWER", Mathf.RoundToInt(ConfigManager.Instance.Game.MagicDamage * p_currentIncrease * 100f), arg, "[-]"); p_target.UpdateText(str2 + text2); } else if (m_atrribute == EPotionTarget.PERCEPTION) { String text3 = LocaManager.GetText("ATRRIBUTE_EFFECT_PERCEPTION_DAMAGE", Mathf.RoundToInt(ConfigManager.Instance.Game.RangedDamage * p_currentIncrease * 100f), arg, "[-]"); String text4 = LocaManager.GetText("ATRRIBUTE_EFFECT_PERCEPTION_ATTACK", p_currentIncrease, arg, "[-]"); p_target.UpdateText(text3 + "\n\n" + text4); } else if (m_atrribute == EPotionTarget.DESTINY) { String text5 = LocaManager.GetText("ATRRIBUTE_EFFECT_DESTINY_CRIT", game.MainHandCritChanceDestinyMod * p_currentIncrease, arg, "[-]"); String text6 = LocaManager.GetText("ATRRIBUTE_EFFECT_DESTINY_EVADE", p_currentIncrease, arg, "[-]"); p_target.UpdateText(text5 + "\n\n" + text6); } else if (m_atrribute == EPotionTarget.VITALITY) { String text7 = LocaManager.GetText("ATRRIBUTE_EFFECT_VITALITY_HEALTH", hpperVitality * p_currentIncrease, arg, "[-]"); p_target.UpdateText(text7); } else if (m_atrribute == EPotionTarget.SPIRIT) { String text8 = LocaManager.GetText("ATRRIBUTE_EFFECT_SPIRIT_MANA", game.ManaPerSpirit * p_currentIncrease, arg, "[-]"); p_target.UpdateText(text8); } }
public void Fill(EQuickActionType p_action) { if (m_descriptionValues == null) { m_descriptionValues = new String[9]; m_descriptionValues[0] = "[00FF00]"; m_descriptionValues[1] = "[80FF80]"; m_descriptionValues[2] = "[FF0000]"; m_descriptionValues[3] = "[FFC080]"; m_descriptionValues[4] = "[FFFF80]"; m_descriptionValues[5] = "[80FFFF]"; m_descriptionValues[6] = "[-]"; } m_name.UpdateText(LocaManager.GetText("STANDARD_ACTION_" + p_action)); Single num = m_outerPadding + m_name.Size.y + m_innerPadding; switch (p_action) { case EQuickActionType.ATTACK: m_itemSlot.SetSpell("SPL_action_melee"); m_itemSlot.HideItem(); break; case EQuickActionType.ATTACKRANGED: m_itemSlot.SetSpell("SPL_action_ranged"); m_itemSlot.HideItem(); break; case EQuickActionType.USE_BEST_MANAPOTION: { m_itemSlot.SetSpell("SPL_action_bestpotion"); Potion bestPotion = LegacyLogic.Instance.WorldManager.Party.GetBestPotion(EPotionType.MANA_POTION, null); if (bestPotion != null) { m_itemSlot.SetItem(bestPotion.Icon); } else { m_itemSlot.SetItem("ITM_consumable_potion_mana_1"); } break; } case EQuickActionType.USE_BEST_HEALTHPOTION: { m_itemSlot.SetSpell("SPL_action_bestpotion"); Potion bestPotion2 = LegacyLogic.Instance.WorldManager.Party.GetBestPotion(EPotionType.HEALTH_POTION, null); if (bestPotion2 != null) { m_itemSlot.SetItem(bestPotion2.Icon); } else { m_itemSlot.SetItem("ITM_consumable_potion_health_1"); } break; } case EQuickActionType.DEFEND: m_itemSlot.SetSpell("SPL_action_defend"); m_itemSlot.HideItem(); break; } m_itemSlot.UpdatePosition(new Vector3(-m_name.Size.x / 2f, -num, 0f)); m_description.MinHeight = m_itemSlot.Size.y; m_description.VerticalAlign = TooltipGroup.Align.CENTER; m_description.UpdateText("-"); m_description.UpdatePositionY(-num); num += m_description.Size.y + m_innerPadding; if (p_action == EQuickActionType.ATTACKRANGED) { m_descriptionValues[7] = LegacyLogic.Instance.WorldManager.Party.SelectedCharacter.FightValues.RangedAttackRange.ToString(); m_descriptionValues[8] = (ConfigManager.Instance.Game.RangedAttackMeleeMalus * 100f).ToString(); } else if (p_action == EQuickActionType.DEFEND) { m_descriptionValues[7] = (ConfigManager.Instance.Game.DefendEvadeBonus * 100f).ToString(); m_descriptionValues[8] = (ConfigManager.Instance.Game.DefendBlockBonus * 100f).ToString(); } else { m_descriptionValues[7] = String.Empty; } m_details.UpdateText(LocaManager.GetText("STANDARD_ACTION_" + p_action + "_TT", m_descriptionValues)); m_details.UpdatePositionY(-num); num += m_details.Size.y + m_innerPadding; m_requirements.SetVisible(false); m_background.Scale(m_name.Size.x + m_outerPadding * 2f, num - m_innerPadding + m_outerPadding); }