public static Vector3 MoveCreatureTo(this CreatureBoardAsset asset, Vector3 dropPosition)
        {
            if (dropPosition.y < 0)
            {
                dropPosition = new Vector3(dropPosition.x, 0, dropPosition.z);
            }

            float dropOffset = 0;

            if (!asset.IsFlying)
            {
                dropPosition = Board.GetFloorPositionClosestTo(dropPosition);
                dropOffset   = 0.5f;
            }

            float height = dropPosition.y + dropOffset;

            asset.Drop(dropPosition, height);
            return(dropPosition);
        }