Example #1
0
 public void Teleport(PlayerLocation newPosition)
 {
     new EntityTeleport(Wrapper)
     {
         UniqueServerId = EntityId,
         Coordinates = newPosition.ToVector3(),
         OnGround = newPosition.OnGround,
         Pitch = newPosition.Pitch,
         Yaw = newPosition.Yaw
     }.Broadcast(Level, true, this);
 }
Example #2
0
        public bool SetIntersectLocation(BoundingBox bbox, PlayerLocation location)
        {
            var ray = new Ray(location.ToVector3() - Velocity, Velocity.Normalize());
            var distance = ray.Intersects(bbox);
            if (distance != null)
            {
                var dist = (double) distance - 0.1;
                var pos = ray.Position + (ray.Direction*dist);
                KnownPosition.X = (float) pos.X;
                KnownPosition.Y = (float) pos.Y;
                KnownPosition.Z = (float) pos.Z;
                return true;
            }

            return false;
        }