public static Vector3IntRef NextTile_(TileExitDirection direction, int currentTileX, int currentTileY, int currentTileZ) { switch (direction) { case TileExitDirection.Left: return Vector3IntRef.Create(currentTileX - 1, currentTileY, currentTileZ); case TileExitDirection.Right: return Vector3IntRef.Create(currentTileX + 1, currentTileY, currentTileZ); case TileExitDirection.Up: return Vector3IntRef.Create(currentTileX, currentTileY - 1, currentTileZ); case TileExitDirection.Down: return Vector3IntRef.Create(currentTileX, currentTileY + 1, currentTileZ); default: return null; } }
public static Vector3IntRef NextTile_(TileExitDirection direction, int currentTileX, int currentTileY, int currentTileZ) { switch (direction) { case TileExitDirection.Left: return(Vector3IntRef.Create(currentTileX - 1, currentTileY, currentTileZ)); case TileExitDirection.Right: return(Vector3IntRef.Create(currentTileX + 1, currentTileY, currentTileZ)); case TileExitDirection.Up: return(Vector3IntRef.Create(currentTileX, currentTileY - 1, currentTileZ)); case TileExitDirection.Down: return(Vector3IntRef.Create(currentTileX, currentTileY + 1, currentTileZ)); default: return(null); } }
public static TileEnterDirection ResultEnter(TileExitDirection direction) { switch (direction) { case TileExitDirection.Up: return(TileEnterDirection.Down); case TileExitDirection.Down: return(TileEnterDirection.Up); case TileExitDirection.Left: return(TileEnterDirection.Right); case TileExitDirection.Right: return(TileEnterDirection.Left); default: throw new Exception(); } }
public static Vector3 NextTile(TileExitDirection direction, Vector3 currentTile) { switch (direction) { case TileExitDirection.Left: return(new Vector3(currentTile.X - 1, currentTile.Y, currentTile.Z)); case TileExitDirection.Right: return(new Vector3(currentTile.X + 1, currentTile.Y, currentTile.Z)); case TileExitDirection.Up: return(new Vector3(currentTile.X, currentTile.Y - 1, currentTile.Z)); case TileExitDirection.Down: return(new Vector3(currentTile.X, currentTile.Y + 1, currentTile.Z)); default: throw new ArgumentException("direction"); } }
/// <summary> /// TileExitDirection.Left => TileEnterDirection.Left /// </summary> /// <param name="exit"></param> /// <returns></returns> public static TileEnterDirection ToEnter(TileExitDirection exit) { switch (exit) { case TileExitDirection.Down: return TileEnterDirection.Down; case TileExitDirection.Left: return TileEnterDirection.Left; case TileExitDirection.Right: return TileEnterDirection.Right; case TileExitDirection.Up: return TileEnterDirection.Up; default: throw new Exception(); } }
public static VehicleDirection12 StraightToVehicleDirection12(TileExitDirection direction) { switch (direction) { case TileExitDirection.Up: return VehicleDirection12.VerticalUp; case TileExitDirection.Down: return VehicleDirection12.VerticalDown; case TileExitDirection.Left: return VehicleDirection12.HorizontalLeft; case TileExitDirection.Right: return VehicleDirection12.HorizontalRight; default: throw new Exception(); } }
public static TileEnterDirection ResultEnter(TileExitDirection direction) { switch (direction) { case TileExitDirection.Up: return TileEnterDirection.Down; case TileExitDirection.Down: return TileEnterDirection.Up; case TileExitDirection.Left: return TileEnterDirection.Right; case TileExitDirection.Right: return TileEnterDirection.Left; default: return TileEnterDirection.Down; } }
public static Vector3 NextTile(TileExitDirection direction, Vector3 currentTile) { switch (direction) { case TileExitDirection.Left: return new Vector3(currentTile.X - 1, currentTile.Y, currentTile.Z); case TileExitDirection.Right: return new Vector3(currentTile.X + 1, currentTile.Y, currentTile.Z); case TileExitDirection.Up: return new Vector3(currentTile.X, currentTile.Y - 1, currentTile.Z); case TileExitDirection.Down: return new Vector3(currentTile.X, currentTile.Y + 1, currentTile.Z); default: throw new ArgumentException("direction"); } }