(svn r23443) -Fix (r23413): Building of locks in SE failed.
This commit is contained in:
@@ -284,7 +284,8 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag
|
|||||||
|
|
||||||
if (flags & DC_EXEC) {
|
if (flags & DC_EXEC) {
|
||||||
/* Update company infrastructure counts. */
|
/* Update company infrastructure counts. */
|
||||||
Company *c = Company::Get(_current_company);
|
Company *c = Company::GetIfValid(_current_company);
|
||||||
|
if (c != NULL) {
|
||||||
/* Counts for the water. */
|
/* Counts for the water. */
|
||||||
c->infrastructure.water++;
|
c->infrastructure.water++;
|
||||||
if (!IsWaterTile(tile - delta)) c->infrastructure.water++;
|
if (!IsWaterTile(tile - delta)) c->infrastructure.water++;
|
||||||
@@ -292,6 +293,7 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag
|
|||||||
/* Count for the lock itself. */
|
/* Count for the lock itself. */
|
||||||
c->infrastructure.water += 3 * LOCK_DEPOT_TILE_FACTOR; // Lock is three tiles.
|
c->infrastructure.water += 3 * LOCK_DEPOT_TILE_FACTOR; // Lock is three tiles.
|
||||||
DirtyCompanyInfrastructureWindows(_current_company);
|
DirtyCompanyInfrastructureWindows(_current_company);
|
||||||
|
}
|
||||||
|
|
||||||
MakeLock(tile, _current_company, dir, wc_lower, wc_upper);
|
MakeLock(tile, _current_company, dir, wc_lower, wc_upper);
|
||||||
MarkTileDirtyByTile(tile);
|
MarkTileDirtyByTile(tile);
|
||||||
|
Reference in New Issue
Block a user