Пример #1
0
 public static Vector2Int NewMapPosition(Vector2Int oldPos, DIRECTION dir)
 {
     if (dir == DIRECTION.NORTH)
     {
         return(oldPos + new Vector2Int(0, 1));
     }
     else if (dir == DIRECTION.EAST)
     {
         return(oldPos + new Vector2Int(1, 0));
     }
     else if (dir == DIRECTION.SOUTH)
     {
         return(oldPos + new Vector2Int(0, -1));
     }
     else
     {
         return(oldPos + new Vector2Int(-1, 0));
     }
 }
Пример #2
0
 public static DIRECTION Opposite(this DIRECTION dir)
 {
     if (dir == DIRECTION.NORTH)
     {
         return(DIRECTION.SOUTH);
     }
     else if (dir == DIRECTION.EAST)
     {
         return(DIRECTION.WEST);
     }
     else if (dir == DIRECTION.SOUTH)
     {
         return(DIRECTION.NORTH);
     }
     else
     {
         return(DIRECTION.EAST);
     }
 }
Пример #3
0
 public static CELL_PLACEMENT AttachedCell(this CELL_PLACEMENT placement, DIRECTION attachDirection)
 {
     if (attachDirection == DIRECTION.NORTH || attachDirection == DIRECTION.SOUTH)
     {
         if (placement == CELL_PLACEMENT.TOPLEFT)
         {
             return(CELL_PLACEMENT.BOTLEFT);
         }
         else if (placement == CELL_PLACEMENT.BOTLEFT)
         {
             return(CELL_PLACEMENT.TOPLEFT);
         }
         else if (placement == CELL_PLACEMENT.TOPRIGHT)
         {
             return(CELL_PLACEMENT.BOTRIGHT);
         }
         else
         {
             return(CELL_PLACEMENT.TOPRIGHT);
         }
     }
     else
     {
         if (placement == CELL_PLACEMENT.TOPLEFT)
         {
             return(CELL_PLACEMENT.TOPRIGHT);
         }
         else if (placement == CELL_PLACEMENT.BOTLEFT)
         {
             return(CELL_PLACEMENT.BOTRIGHT);
         }
         else if (placement == CELL_PLACEMENT.TOPRIGHT)
         {
             return(CELL_PLACEMENT.TOPLEFT);
         }
         else
         {
             return(CELL_PLACEMENT.BOTLEFT);
         }
     }
 }
Пример #4
0
 public static CELL_PLACEMENT RandomInnerCellPlacement(DIRECTION dir)
 {
     if (dir == DIRECTION.WEST)
     {
         CELL_PLACEMENT[] placements = { CELL_PLACEMENT.TOPRIGHT, CELL_PLACEMENT.BOTRIGHT };
         return(placements.Random());
     }
     else if (dir == DIRECTION.SOUTH)
     {
         CELL_PLACEMENT[] placements = { CELL_PLACEMENT.TOPLEFT, CELL_PLACEMENT.TOPRIGHT };
         return(placements.Random());
     }
     else if (dir == DIRECTION.EAST)
     {
         CELL_PLACEMENT[] placements = { CELL_PLACEMENT.TOPLEFT, CELL_PLACEMENT.BOTLEFT };
         return(placements.Random());
     }
     else
     {
         CELL_PLACEMENT[] placements = { CELL_PLACEMENT.BOTLEFT, CELL_PLACEMENT.BOTRIGHT };
         return(placements.Random());
     }
 }