private void FillSpellsForSchool(ESkillID p_school) { Character selectedCharacter = m_party.SelectedCharacter; List <CharacterSpell> spellsBySchool = selectedCharacter.SpellHandler.GetSpellsBySchool(p_school); if (m_checkBox.isChecked) { foreach (CharacterSpell p_spell in spellsBySchool) { InitSpellView(p_spell); } } else { Skill skill = selectedCharacter.SkillHandler.FindSkill((Int32)p_school); foreach (KeyValuePair <ECharacterSpell, CharacterSpell> keyValuePair in m_spells) { CharacterSpellStaticData staticData = keyValuePair.Value.StaticData; if (staticData != null) { if (staticData.SkillID == p_school && skill != null && staticData.Tier <= skill.MaxTier && (staticData.ClassOnly == EClass.NONE || staticData.ClassOnly == selectedCharacter.Class.Class)) { InitSpellView(keyValuePair.Value); } } } } }
private void UpdateButton(SkillSelectButton p_btn, ESkillID p_skill) { DummyCharacter selectedDummyCharacter = m_partyCreator.GetSelectedDummyCharacter(); CharacterClassStaticData staticData = StaticDataHandler.GetStaticData <CharacterClassStaticData>(EDataType.CHARACTER_CLASS, (Int32)selectedDummyCharacter.Class); ETier etier = ETier.NONE; for (Int32 i = 0; i < staticData.GrandMasterSkills.Length; i++) { if (staticData.GrandMasterSkills[i] == (Int32)p_skill) { etier = ETier.GRAND_MASTER; } } for (Int32 j = 0; j < staticData.MasterSkills.Length; j++) { if (staticData.MasterSkills[j] == (Int32)p_skill) { etier = ETier.MASTER; } } for (Int32 k = 0; k < staticData.ExpertSkills.Length; k++) { if (staticData.ExpertSkills[k] == (Int32)p_skill) { etier = ETier.EXPERT; } } SkillStaticData staticData2 = StaticDataHandler.GetStaticData <SkillStaticData>(EDataType.SKILL, (Int32)p_skill); p_btn.Init(staticData2, isDefaultSkill(staticData, staticData2), !isStartSkill(staticData, staticData2) && etier != ETier.NONE, selectedDummyCharacter.IsSkillPicked(staticData2.StaticID) || isStartSkill(staticData, staticData2), etier); }
public static EDamageType ESkillIDToEDamageType(ESkillID p_skillID) { switch (p_skillID) { case ESkillID.SKILL_FIRE_MAGIC: return(EDamageType.FIRE); case ESkillID.SKILL_WATER_MAGIC: return(EDamageType.WATER); case ESkillID.SKILL_AIR_MAGIC: return(EDamageType.AIR); case ESkillID.SKILL_EARTH_MAGIC: return(EDamageType.EARTH); case ESkillID.SKILL_LIGHT_MAGIC: return(EDamageType.LIGHT); case ESkillID.SKILL_DARK_MAGIC: return(EDamageType.DARK); case ESkillID.SKILL_PRIMORDIAL_MAGIC: return(EDamageType.PRIMORDIAL); default: return(EDamageType.PHYSICAL); } }
public void IncreaseVirtualSkillLevel(ESkillID p_skillID, Int32 p_value) { Skill skill = FindSkill((Int32)p_skillID); if (skill != null) { skill.VirtualSkillLevel += p_value; } }
public List <CharacterSpell> GetSpellsBySchool(ESkillID p_skill_id) { List <CharacterSpell> list = new List <CharacterSpell>(); foreach (CharacterSpell characterSpell in m_spells) { if (characterSpell.StaticData.SkillID == p_skill_id) { list.Add(characterSpell); } } return(list); }
public Int32 GetResistanceIgnoreValue(ESkillID p_magicSchool) { Int32 num = 0; Skill skill = FindSkill((Int32)p_magicSchool); if (skill != null) { List <SkillEffectStaticData> currentlyAvailableEffects = skill.CurrentlyAvailableEffects; foreach (SkillEffectStaticData skillEffectStaticData in currentlyAvailableEffects) { if (skillEffectStaticData.Type == ESkillEffectType.IGNORE_RESISTANCE) { num = (Int32)ResolveValue(num, skillEffectStaticData, skill); } } } return(num); }