diff options
author | tron <tron@openttd.org> | 2006-03-08 06:55:33 +0000 |
---|---|---|
committer | tron <tron@openttd.org> | 2006-03-08 06:55:33 +0000 |
commit | 8cfcdaa733684b00500f7811087312e6d8e60bc0 (patch) | |
tree | 5dc0e72ac096a8404e81f92e3e1480cb29c96061 /water_cmd.c | |
parent | 3027b8673e31b52f50201e9571612a946cb3aade (diff) | |
download | openttd-8cfcdaa733684b00500f7811087312e6d8e60bc0.tar.xz |
(svn r3783) Replace further ints and magic numbers by Direction, DiagDirection and friends
Diffstat (limited to 'water_cmd.c')
-rw-r--r-- | water_cmd.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/water_cmd.c b/water_cmd.c index 2df124595..c4745b763 100644 --- a/water_cmd.c +++ b/water_cmd.c @@ -127,7 +127,7 @@ static int32 RemoveShipDepot(TileIndex tile, uint32 flags) } // build a shiplift -static int32 DoBuildShiplift(TileIndex tile, int dir, uint32 flags) +static int32 DoBuildShiplift(TileIndex tile, DiagDirection dir, uint32 flags) { int32 ret; int delta; @@ -189,17 +189,18 @@ static void MarkTilesAroundDirty(TileIndex tile) int32 CmdBuildLock(int x, int y, uint32 flags, uint32 p1, uint32 p2) { TileIndex tile = TileVirtXY(x, y); - uint tileh; + DiagDirection dir; SET_EXPENSES_TYPE(EXPENSES_CONSTRUCTION); - tileh = GetTileSlope(tile, NULL); - if (tileh == 3 || tileh == 6 || tileh == 9 || tileh == 12) { - static const byte _shiplift_dirs[16] = {0, 0, 0, 2, 0, 0, 1, 0, 0, 3, 0, 0, 0}; - return DoBuildShiplift(tile, _shiplift_dirs[tileh], flags); + switch (GetTileSlope(tile, NULL)) { + case 3: dir = DIAGDIR_SW; break; + case 6: dir = DIAGDIR_SE; break; + case 9: dir = DIAGDIR_NW; break; + case 12: dir = DIAGDIR_NE; break; + default: return_cmd_error(STR_1000_LAND_SLOPED_IN_WRONG_DIRECTION); } - - return_cmd_error(STR_1000_LAND_SLOPED_IN_WRONG_DIRECTION); + return DoBuildShiplift(tile, dir, flags); } /** Build a piece of canal. |