(svn r15080) -Fix: terraforming at the northern border failed without any visible reason

This commit is contained in:
smatz 2009-01-14 13:11:39 +00:00
parent e18c24cdb5
commit 66213d8e4b
1 changed files with 5 additions and 0 deletions

View File

@ -113,6 +113,11 @@ static void GenerateRockyArea(TileIndex end, TileIndex start)
**/
bool GUIPlaceProcDragXY(ViewportDragDropSelectionProcess proc, TileIndex start_tile, TileIndex end_tile)
{
/* When end_tile is MP_VOID, the DoCommandP checks will deny this command without any
* user-visible reason. This happens when terraforming at the northern border. */
if (TileX(end_tile) == MapMaxX()) end_tile += TileDiffXY(-1, 0);
if (TileY(end_tile) == MapMaxY()) end_tile += TileDiffXY(0, -1);
switch (proc) {
case DDSP_DEMOLISH_AREA:
DoCommandP(end_tile, start_tile, 0, CMD_CLEAR_AREA | CMD_MSG(STR_00B5_CAN_T_CLEAR_THIS_AREA), CcPlaySound10);