public void AddCommondQueue(stSkillCommond st) { if (!m_commondQue.Contains(st)) { m_commondQue.Enqueue(st); } }
void AddSkillCommond(uint uSkillID) { if (IsCommonSkill(uSkillID)) { return; } if (m_bSkillLongPress) { //点击其他技能 解除长按 stSkillLongPress longPress = new stSkillLongPress(); longPress.bLongPress = false; EventEngine.Instance().DispatchEvent((int)GameEventID.SKLL_LONGPRESS, longPress); EventEngine.Instance().DispatchEvent((int)GameEventID.SKILLSYSTEM_CLEARSKILLCMD, null); stSkillCommond cmd = new stSkillCommond(); cmd.type = 0; cmd.skillID = uSkillID; EventEngine.Instance().DispatchEvent((int)GameEventID.SKILLSYSTEM_ADDSKILLCMD, cmd); stSkillCommond st = new stSkillCommond(); st.type = 0; st.skillID = DataManager.Manager <LearnSkillDataManager>().GetCommonSkillIDByJob(); EventEngine.Instance().DispatchEvent((int)GameEventID.SKILLSYSTEM_ADDSKILLCMD, st); } }
void SkillEvent(int eventID, object param) { if (eventID == (int)GameEventID.SKILLSYSTEM_ADDSKILLCMD) { stSkillCommond st = (stSkillCommond)param; AddCommondQueue(st); } else if (eventID == (int)GameEventID.SKILLSYSTEM_CLEARSKILLCMD) { ClearCommondQueue(); } else if (eventID == (int)GameEventID.SKLL_LONGPRESS) { stSkillLongPress st = (stSkillLongPress)param; m_bSkillLongPress = st.bLongPress; } else if (eventID == (int)GameEventID.ENTITYSYSTEM_ENTITYBEGINMOVE) { stEntityBeginMove move = (stEntityBeginMove)param; if (move.uid == MainPlayerHelper.GetPlayerUID()) { ClearCommondQueue(); } } else if (eventID == (int)GameEventID.ROBOTCOMBAT_START) { stSkillLongPress longPress = new stSkillLongPress(); longPress.bLongPress = false; EventEngine.Instance().DispatchEvent((int)GameEventID.SKLL_LONGPRESS, longPress); } else if (eventID == (int)GameEventID.SKILLSYSTEM_STIFFTIMEOVER) { DoInsertSkill(); } }
void DoInsertSkill() { if (m_commondQue.Count > 0) { //技能 IPlayer mp = MainPlayerHelper.GetMainPlayer(); if (mp != null) { ISkillPart sp = mp.GetPart(EntityPart.Skill) as ISkillPart; if (sp != null) { stSkillCommond st = m_commondQue.Dequeue(); if (st.type == 0) { OnUseSkill(st.skillID); } } } } }