diff options
author | celestar <celestar@openttd.org> | 2006-03-31 08:44:53 +0000 |
---|---|---|
committer | celestar <celestar@openttd.org> | 2006-03-31 08:44:53 +0000 |
commit | b47d27932a7db5683dffa94c1db4a33404e9c3e6 (patch) | |
tree | c4b5c390e53dd7749ad6f84bbbf606230f15303d | |
parent | bc3f98c4dd40ac383902b7922b250954a7941e66 (diff) | |
download | openttd-b47d27932a7db5683dffa94c1db4a33404e9c3e6.tar.xz |
(svn r4193) -Codechange: Add and make use of an accessor function to create company HQs
-rw-r--r-- | unmovable_cmd.c | 6 | ||||
-rw-r--r-- | unmovable_map.h | 15 |
2 files changed, 16 insertions, 5 deletions
diff --git a/unmovable_cmd.c b/unmovable_cmd.c index 9a9643a75..1b1de5876 100644 --- a/unmovable_cmd.c +++ b/unmovable_cmd.c @@ -89,10 +89,8 @@ int32 CmdBuildCompanyHQ(int x, int y, uint32 flags, uint32 p1, uint32 p2) p->location_of_house = tile; - ModifyTile(tile + TileDiffXY(0, 0), MP_SETTYPE(MP_UNMOVABLE) | MP_MAPOWNER_CURRENT | MP_MAP5, 0x80); - ModifyTile(tile + TileDiffXY(0, 1), MP_SETTYPE(MP_UNMOVABLE) | MP_MAPOWNER_CURRENT | MP_MAP5, 0x81); - ModifyTile(tile + TileDiffXY(1, 0), MP_SETTYPE(MP_UNMOVABLE) | MP_MAPOWNER_CURRENT | MP_MAP5, 0x82); - ModifyTile(tile + TileDiffXY(1, 1), MP_SETTYPE(MP_UNMOVABLE) | MP_MAPOWNER_CURRENT | MP_MAP5, 0x83); + MakeCompanyHQ(tile, _current_player); + UpdatePlayerHouse(p, score); InvalidateWindow(WC_COMPANY, p->index); } diff --git a/unmovable_map.h b/unmovable_map.h index 5f4b2b329..6eb164956 100644 --- a/unmovable_map.h +++ b/unmovable_map.h @@ -4,7 +4,11 @@ typedef enum UnmovableType { UNMOVABLE_TRANSMITTER = 0, UNMOVABLE_LIGHTHOUSE = 1, UNMOVABLE_STATUE = 2, - UNMOVABLE_OWNED_LAND = 3 + UNMOVABLE_OWNED_LAND = 3, + UNMOVABLE_HQ_NORTH = 0x80, + UNMOVABLE_HQ_WEST = 0x81, + UNMOVABLE_HQ_EAST = 0x82, + UNMOVABLE_HQ_SOUTH = 0x83, } UnmovableType; @@ -65,3 +69,12 @@ static inline void MakeOwnedLand(TileIndex t, Owner o) { MakeUnmovable(t, UNMOVABLE_OWNED_LAND, o); } + +static inline void MakeCompanyHQ(TileIndex t, Owner o) +{ + MakeUnmovable(t + TileDiffXY(0, 0), UNMOVABLE_HQ_NORTH, o); + MakeUnmovable(t + TileDiffXY(0, 1), UNMOVABLE_HQ_WEST, o); + MakeUnmovable(t + TileDiffXY(1, 0), UNMOVABLE_HQ_EAST, o); + MakeUnmovable(t + TileDiffXY(1, 1), UNMOVABLE_HQ_SOUTH, o); +} + |