Esempio n. 1
0
        void DoWalking()
        {
            double   v  = 0.12;
            Vector3d vo = model.transform.Forward() * v; //OPENGL camera has inverse z

            _physics.SetActive(true);
            _physics._rigidBody.ApplyCentralImpulse(vo);
        }
Esempio n. 2
0
 public void SetTarget(Vector3d tpos, Quaterniond tRot)
 {
     TargetPosition = tpos;
     TargetRotation = tRot;
     Idle           = false;
     if (po != null)
     {
         po.SetActive(true);
     }
 }
Esempio n. 3
0
        //private MSceneObject parent;
        public MTeleportOneShot(MSceneObject inparent, Vector3d inTargetPos, Quaterniond inTargetRot) : base(EType.Teleport, "TeleportAnim")
        {
            Parent        = inparent;
            StartPosition = inparent.transform.Position;
            StartRotation = inparent.transform.Rotation;

            TargetPosition = inTargetPos;
            TargetRotation = inTargetRot;
            MPhysicsObject po = (MPhysicsObject)Parent.FindModuleByType(EType.PhysicsObject);

            if (po != null)
            {
                po.SetActive(false);
            }
            Start = 0;
        }
Esempio n. 4
0
        public void TeleportComplete()
        {
            MPhysicsObject po  = (MPhysicsObject)Parent.FindModuleByType(EType.PhysicsObject);
            MSceneObject   msp = (MSceneObject)Parent;

            msp.SetPosition(TargetPosition);
            msp.SetRotation(TargetRotation);
            if (po != null)
            {
                po.SetActive(true);
                po.StopAllMotion();
            }

            if (TeleportCompleteHandler != null)
            {
                TeleportCompleteHandler(this, new MoveEvent(Parent.InstanceID, TargetPosition, TargetRotation));
            }

            Parent.Remove(this);
            Dispose();
        }
Esempio n. 5
0
        public void InputH(double h)
        {
            if (_physics == null)
            {
                return;
            }
            _physics.SetActive(true);
            Vector3d vo = MScene.Camera.transform.Right() * h;

            _physics._rigidBody.ApplyCentralImpulse(vo);
        }