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 TACoordinate getCoordinateFromOffset(TACoordinate original, params TADir[] dirs) { TACoordinate ret = original; if (dirs.Length == 0) { return(original); } foreach (var d in dirs) { ret = applyDirShift(ret, d); } return(ret); }
public void registerCoordinate(TACoordinate c, TAScene scene) { sceneArray[c.x][c.y][c.z] = scene; }