Exemple #1
0
    /// <summary>
    /// 20141011 动态阻挡传送结算
    /// </summary>
    /// <param name="sMsgFightTeleport_CSC"></param>
    public void BeTeleport(SMsgFightTeleport_CSC sMsgFightTeleport_CSC)
    {
        //	传送前先打断目标所有动作,将其置为站立状态,无视霸体和无敌
        m_FSMSystem.PerformTransition(Transition.MonsterToIdle);
        ThisTransform.position = new Vector3(0.1f * sMsgFightTeleport_CSC.ptPosX, ThisTransform.position.y, -0.1f * sMsgFightTeleport_CSC.ptPosY);
        var euler = new Vector3(0.1f * sMsgFightTeleport_CSC.ptDirectX, 0, -0.1f * sMsgFightTeleport_CSC.ptDirectY);

        ThisTransform.rotation = Quaternion.Euler(euler);
    }
Exemple #2
0
    CommandCallbackType ReceiveFightTeleport(byte[] dataBuffer, int socketID)
    {
        //场景加载完成前不处理战斗结果消息(组队)
        if (!GameManager.Instance.CreateEntityIM)
        {
            return(CommandCallbackType.Continue);
        }
        SMsgFightTeleport_CSC sMsgFightTeleport_CSC = SMsgFightTeleport_CSC.ParseResultPackage(dataBuffer);

        RaiseEvent(EventTypeEnum.Teleport.ToString(), sMsgFightTeleport_CSC);
        return(CommandCallbackType.Continue);
    }
Exemple #3
0
    private void Teleport(long uid, Vector3 pos, Vector3 dir)
    {
        SMsgFightTeleport_CSC sMsgFightTeleport_CSC = new SMsgFightTeleport_CSC();

        sMsgFightTeleport_CSC.uidFighter = uid;
        sMsgFightTeleport_CSC.ptPosX     = pos.x * 10.0f;
        sMsgFightTeleport_CSC.ptPosY     = pos.z * 10.0f;
        sMsgFightTeleport_CSC.ptDirectX  = dir.x;
        sMsgFightTeleport_CSC.ptDirectY  = dir.z;
        RaiseEvent(EventTypeEnum.Teleport.ToString(), sMsgFightTeleport_CSC);

        NetServiceManager.Instance.BattleService.SendFightTeleportCS(sMsgFightTeleport_CSC);
    }
Exemple #4
0
 public void SendFightTeleportCS(SMsgFightTeleport_CSC sMsgFightTeleport_CSC)
 {
     this.Request(sMsgFightTeleport_CSC.GeneratePackage());
 }