public SkillSupport(ENABLE_EQUIP_TYPE e, BuffParam.BUFFTYPE t, int v, SP_ATTACK_TYPE spAttackType) { targetEquip = e; type = t; value = v; targetSpAttackType = spAttackType; }
public bool IsEnableSupportEquipType(ENABLE_EQUIP_TYPE type, int support_index) { if (supportPassiveEqType[support_index] == ENABLE_EQUIP_TYPE.ALL) { return(true); } return(supportPassiveEqType[support_index] == type); }
public void Clone(AbilityData baseData) { id = baseData.id; needAP = baseData.needAP; minNeedAP = baseData.minNeedAP; name = baseData.name; description = baseData.description; descriptionPreGrant = baseData.descriptionPreGrant; enableEquipType = baseData.enableEquipType; key2 = baseData.key2; m_info = new AbilityInfo[baseData.m_info.Length]; for (int i = 0; i < baseData.m_info.Length; i++) { m_info[i] = baseData.m_info[i].Clone(); } m_cashedInfo = null; m_cashedAbility = null; }
public bool IsMatchSupportEquipType(EQUIPMENT_TYPE type) { if (supportPassiveEqType == null) { return(false); } if (supportPassiveEqType.Length <= 0) { return(false); } ENABLE_EQUIP_TYPE enableEquipTypeFromEquipmentType = GetEnableEquipTypeFromEquipmentType(type); for (int i = 0; i < supportPassiveEqType.Length; i++) { if (enableEquipTypeFromEquipmentType == supportPassiveEqType[i]) { return(true); } } return(false); }
private bool HasFixAbilityWithWeaponType(EquipItemInfo item, int wepIndex, bool checkOnlyFixAbility) { if (item.ability == null || item.ability.Length == 0) { return(false); } for (int i = 0; i < item.ability.Length; i++) { if (!checkOnlyFixAbility || item.IsFixedAbility(i)) { AbilityDataTable.AbilityData abilityData = Singleton <AbilityDataTable> .I.GetAbilityData(item.ability[i].id, item.ability[i].ap); if (abilityData != null) { ENABLE_EQUIP_TYPE enableEquipType = abilityData.enableEquipType; switch (enableEquipType) { case ENABLE_EQUIP_TYPE.ONE_HAND_SWORD: if (wepIndex == 1) { return(true); } goto default; default: if (enableEquipType == ENABLE_EQUIP_TYPE.TWO_HAND_SWORD && wepIndex == 2) { return(true); } if (enableEquipType == ENABLE_EQUIP_TYPE.SPEAR && wepIndex == 3) { return(true); } if (enableEquipType == ENABLE_EQUIP_TYPE.PAIR_SWORDS && wepIndex == 4) { return(true); } if (enableEquipType == ENABLE_EQUIP_TYPE.ARROW && wepIndex == 5) { return(true); } break; case ENABLE_EQUIP_TYPE.ALL: break; } AbilityDataTable.AbilityData.AbilityInfo[] info = abilityData.info; for (int j = 0; j < info.Length; j++) { if (!string.IsNullOrEmpty(info[j].target)) { string target = info[j].target; if (target == "ONE_HAND_SWORD" && wepIndex == 1) { return(true); } if (target == "TWO_HAND_SWORD" && wepIndex == 2) { return(true); } if (target == "SPEAR" && wepIndex == 3) { return(true); } if (target == "PAIR_SWORDS" && wepIndex == 4) { return(true); } if (target == "ARROW" && wepIndex == 5) { return(true); } } } } } } return(false); }