/// <summary> /// 取消释放技能 /// </summary> /// <param name="obj"></param> private void OnCaseSkillResult(IComponentEvent obj) { CaseSkillResult result = obj as CaseSkillResult; if (result.skillId != SkillID) { return; } if (!result.succeed) { DoCancelSkill(); } }
/// <summary> /// 处理是否可以释放的返回结果 /// </summary> private static void DisposeCastSkillResult(CastSkillResult result) { if (result == null) { Leyoutech.Utility.DebugUtility.LogError("技能释放验证", "服务器下行消息 --- > CastSkillResult 为null ,服务器检查下 "); return; } BaseEntity entity = GameplayManager.Instance.GetEntityManager().GetEntityById <BaseEntity>(result.CasterId); if (entity == null) { return; } CaseSkillResult caseSkillResult = new CaseSkillResult(); if (result.Code) { //验证成功 uint skillid = result.SkillId; caseSkillResult.skillId = (int)skillid; caseSkillResult.succeed = true; Leyoutech.Utility.DebugUtility.Log("技能释放验证", string.Format("验证成功 SkillId = {0}", skillid)); } else { //验证失败 uint skillid = result.SkillId; caseSkillResult.skillId = (int)skillid; caseSkillResult.succeed = false; Leyoutech.Utility.DebugUtility.Log("技能释放验证", string.Format("验证失败 SkillId = {0}", skillid)); } entity.SendEvent(ComponentEventName.CaseSkillResult, caseSkillResult); }