Beispiel #1
0
        public void Tick()
        {
            Vec3F forward = Vec3F.CircleUnitDeg(DoomUnityAngleConverter(yawDegrees));
            Vec3F right   = new Vec3F(forward.Z, 0, -forward.X);

            // TODO: This is obviously bad if we're not the console player...
            // TODO: Should use the config!
            Vec3F velocity = Vec3F.Zero;

            if (Input.GetKey(KeyCode.W) || Input.GetMouseButton(1))
            {
                velocity += forward * ForwardMovementSpeed;
            }
            if (Input.GetKey(KeyCode.A))
            {
                velocity += -right * SideMovementSpeed;
            }
            if (Input.GetKey(KeyCode.S))
            {
                velocity += -forward * ForwardMovementSpeed;
            }
            if (Input.GetKey(KeyCode.D))
            {
                velocity += right * SideMovementSpeed;
            }

            Entity.Velocity += velocity;
        }