Esempio n. 1
0
        void RecieveMovingObj(IMessage msg)
        {
            WsMovingObj newMovingObj = msg.Data as WsMovingObj;

            if (mStaticThings.I == null)
            {
                return;
            }
            if (newMovingObj.id != mStaticThings.I.mAvatarID)
            {
                if (newMovingObj.name == MovingObj.Value.name)
                {
                    isSending.Value = false;
                    if (newMovingObj.islocal)
                    {
                        MovingObj.Value.transform.localPosition = newMovingObj.position;
                        MovingObj.Value.transform.localRotation = newMovingObj.rotation;
                    }
                    else
                    {
                        MovingObj.Value.transform.position = newMovingObj.position;
                        MovingObj.Value.transform.rotation = newMovingObj.rotation;
                    }
                    MovingObj.Value.transform.localScale = newMovingObj.scale;
                }
            }
        }
Esempio n. 2
0
        public override void OnUpdate()
        {
            if (mStaticThings.I == null)
            {
                return;
            }
            if (isSending.Value)
            {
                if (Time.frameCount % FrameSend.Value == 0)
                {
                    Vector3    sendpos;
                    Quaternion sendnowrot;
                    Vector3    sendnowscal;
                    if (islocal.Value)
                    {
                        sendpos    = MovingObj.Value.transform.localPosition;
                        sendnowrot = MovingObj.Value.transform.localRotation;
                    }
                    else
                    {
                        sendpos    = MovingObj.Value.transform.position;
                        sendnowrot = MovingObj.Value.transform.rotation;
                    }
                    sendnowscal = MovingObj.Value.transform.localScale;

                    if (sendpos != nowpos || sendnowrot != nowrot || sendnowscal != nowscal)
                    {
                        nowpos  = sendpos;
                        nowrot  = sendnowrot;
                        nowscal = sendnowscal;
                        WsMovingObj sendMovingObj = new WsMovingObj()
                        {
                            id       = mStaticThings.I.mAvatarID,
                            name     = MovingObj.Value.name,
                            islocal  = islocal.Value,
                            position = sendpos,
                            rotation = sendnowrot,
                            scale    = sendnowscal
                        };
                        MessageDispatcher.SendMessage(this, WsMessageType.SendMovingObj.ToString(), sendMovingObj, 0);
                    }
                }
            }
        }
    void RecieveMovingObj(IMessage msg)
    {
        WsMovingObj newMovingObj = msg.Data as WsMovingObj;

        if (mStaticThings.I == null)
        {
            return;
        }
        if (newMovingObj.id != mStaticThings.I.mAvatarID)
        {
            if (newMovingObj.name == gameObject.name)
            {
                if (newMovingObj.mark == "i")
                {
                    if (newMovingObj.islocal)
                    {
                        transform.localPosition = newMovingObj.position;
                        transform.localRotation = newMovingObj.rotation;
                    }
                    else
                    {
                        transform.position = newMovingObj.position;
                        transform.rotation = newMovingObj.rotation;
                    }
                    transform.localScale = newMovingObj.scale;
                }
                else if (newMovingObj.mark == "s")
                {
                    if (GetComponent <Rigidbody>())
                    {
                        GetComponent <Rigidbody>().useGravity = false;
                    }
                }
                else if (newMovingObj.mark == "e")
                {
                    if (GetComponent <Rigidbody>())
                    {
                        GetComponent <Rigidbody>().useGravity = true;
                    }
                }
            }
        }
    }
        void RecieveMovingObj(IMessage msg)
        {
            WsMovingObj newMovingObj = msg.Data as WsMovingObj;

            if (mStaticThings.I == null)
            {
                return;
            }
            if (newMovingObj.id != mStaticThings.I.mAvatarID)
            {
                if (newMovingObj.name == ControllingObj.Value.name)
                {
                    isSending.Value = false;
                    if (newMovingObj.mark == "i")
                    {
                        if (newMovingObj.islocal)
                        {
                            ControllingObj.Value.transform.localPosition = newMovingObj.position;
                            ControllingObj.Value.transform.localRotation = newMovingObj.rotation;
                        }
                        else
                        {
                            ControllingObj.Value.transform.position = newMovingObj.position;
                            ControllingObj.Value.transform.rotation = newMovingObj.rotation;
                        }
                        ControllingObj.Value.transform.localScale = newMovingObj.scale;
                        Fsm.Event(Controlling);
                    }
                    else if (newMovingObj.mark == "s")
                    {
                        Fsm.Event(ControllStart);
                    }
                    else if (newMovingObj.mark == "e")
                    {
                        Fsm.Event(ControllEnd);
                    }
                }
            }
        }
Esempio n. 5
0
    void RecieveMovingObj(IMessage msg)
    {
        WsMovingObj newMovingObj = msg.Data as WsMovingObj;

        if (newMovingObj.id != mStaticThings.I.mAvatarID || !enabled)
        {
            isSending = false;
            if (newMovingObj.name == MovingObj.name)
            {
                if (newMovingObj.islocal)
                {
                    MovingObj.transform.localPosition = newMovingObj.position;
                    MovingObj.transform.localRotation = newMovingObj.rotation;
                }
                else
                {
                    MovingObj.transform.position = newMovingObj.position;
                    MovingObj.transform.rotation = newMovingObj.rotation;
                }
                MovingObj.transform.localScale = newMovingObj.scale;
            }
        }
    }