public static TACoordinate applyDirShift(TACoordinate coord, TADir dir) { TACoordinate ret = coord; switch (dir) { case TADir.north: ret.y += 1; break; case TADir.south: ret.y -= 1; break; case TADir.east: ret.x += 1; break; case TADir.west: ret.x -= 1; break; case TADir.up: ret.z += 1; break; case TADir.down: ret.z -= 1; break; case TADir.none: break; } return(ret); }
public TADir[] getDirs(TAScene currentScene) { if (currentScene == inScene) { return(inDirs); } var oppDirs = new TADir[inDirs.Length]; for (int i = 0; i < inDirs.Length; i++) { oppDirs[i] = TACoordinateSystem.getOppositeDir(inDirs[i]); } return(oppDirs); }
public static TADir getOppositeDir(TADir d) { switch (d) { case TADir.north: return(TADir.south); case TADir.south: return(TADir.north); case TADir.east: return(TADir.east); case TADir.west: return(TADir.east); case TADir.up: return(TADir.down); case TADir.down: return(TADir.up); } return(TADir.none); }