public List <int> GetSkillCombo() { List <int> result = new List <int>(); int id = RandomGetSkill(); if (id < 0) { AiSkillComboList aiSkillComboConfig = AiSkillComboListProvider.Instance.GetDataById(id * -1); if (null != aiSkillComboConfig) { result = aiSkillComboConfig.SkillList; } } else { result.Add(id); } return(result); }
public override bool IsSatifyUser(CharacterInfo entity) { List <int> skillList = Converter.ConvertNumericList <int>(Config.ActionParam); long curTime = TimeUtility.GetServerMilliseconds(); for (int i = 0; i < skillList.Count; i++) { if (skillList[i] > 0) { if (entity.GetSkillStateInfo().GetSkillInfoById(skillList[i]) == null) { return(false); } SkillInfo skillInfo = entity.GetSkillStateInfo().GetSkillInfoById(skillList[i]); if (null == skillInfo || skillInfo.IsInCd(curTime / 1000.0f)) { return(false); } } else { AiSkillComboList aiSkillComboConfig = AiSkillComboListProvider.Instance.GetDataById(skillList[i] * -1); if (null != aiSkillComboConfig) { for (int j = 0; j < aiSkillComboConfig.SkillList.Count; j++) { if (entity.GetSkillStateInfo().GetSkillInfoById(aiSkillComboConfig.SkillList[i]) == null) { return(false); } SkillInfo skillInfo = entity.GetSkillStateInfo().GetSkillInfoById(aiSkillComboConfig.SkillList[i]); if (null == skillInfo || skillInfo.IsInCd(curTime / 1000.0f)) { return(false); } } } else { return(false); } } } /* * foreach (int comboId in skillList) { * if (comboId > 0) { * if (entity.GetSkillStateInfo().GetSkillInfoById(comboId) == null) { * return false; * } * } else { * AiSkillComboList aiSkillComboConfig = AiSkillComboListProvider.Instance.GetDataById(comboId * -1); * if (null != aiSkillComboConfig) { * foreach (int skillId in aiSkillComboConfig.SkillList) { * if (entity.GetSkillStateInfo().GetSkillInfoById(skillId) == null) { * return false; * } * } * } else { * return false; * } * } * }*/ return(true); }