Esempio n. 1
0
    /// <summary>
    /// 引导技能流监听响应
    /// </summary>
    /// <param name="message"></param>
    public void Run_CastGuideSkillResponse(uint entityId, CastGuideSkillResponse message)
    {
        CastGuideSkillResponse.Types.Success success = message.Success;
        if (success != null)
        {
            CastSkillResult     result              = success.Success_.Result;
            EmitNode            node_info           = success.Success_.NodeInfo;
            StopSkill           stopskill           = success.Success_.StopSkill;
            GuideSkillEndResult guideSkillEndResult = success.Success_.EndResult;
            ChangeGuideSkillTargetInfoResult changeGuideSkillTargetInfoResult = success.Success_.ChangeResult;

            Leyoutech.Utility.DebugUtility.Log("SkillRPCNet", " 引导技能流监听响应" + this.GetHashCode());


            // 处理是否可以释放的返回结果
            if (result != null)
            {
                DisposeCastSkillResult(result);
            }

            //随机发射点
            if (node_info != null)
            {
                DisposeEmitNodeResult(entityId, node_info);
            }

            // 执行取消技能
            if (stopskill != null)
            {
                DisposeStopResult(stopskill);
            }

            //引导按键抬起,end 阶段
            if (guideSkillEndResult != null)
            {
                DisposeGuideSkillEndResult(guideSkillEndResult);
            }

            //目标改变
            if (changeGuideSkillTargetInfoResult != null)
            {
            }
        }
    }
Esempio n. 2
0
    /// <summary>
    /// 引导技能结束
    /// </summary>
    /// <param name="result"></param>
    private void DisposeGuideSkillEndResult(GuideSkillEndResult result)
    {
        if (result == null)
        {
            Leyoutech.Utility.DebugUtility.LogError("引导技能结束", "服务器下行消息  --- >GuideSkillEndResult 为null ,服务器检查下 ");
            return;
        }

        Leyoutech.Utility.DebugUtility.Log("引导技能结束", "服务器下行消息  --- >GuideSkillEndResult ");


        BaseEntity entity = GameplayManager.Instance.GetEntityManager().GetEntityById <BaseEntity>(result.CasterId);

        if (entity == null)
        {
            return;
        }

        EndSkillResult enResult = new EndSkillResult();
        uint           skillid  = result.SkillId;

        enResult.skillId = (int)skillid;
        entity.SendEvent(ComponentEventName.ToEndSkill, enResult);
    }