summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordominik <dominik@openttd.org>2004-08-10 16:12:40 +0000
committerdominik <dominik@openttd.org>2004-08-10 16:12:40 +0000
commit4d148bf0fa63fb36f253bdaf57e52280881945cb (patch)
treefa27cca8d14efc09f612933ecb0c3537f12cd34a
parent935be05e8ff0ba2e0c6d436d6e254f2fede73899 (diff)
downloadopenttd-4d148bf0fa63fb36f253bdaf57e52280881945cb.tar.xz
(svn r8) Fix: Automatic oil refinery generation in editor
-rw-r--r--industry_cmd.c6
-rw-r--r--main_gui.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/industry_cmd.c b/industry_cmd.c
index 693429211..895ca0442 100644
--- a/industry_cmd.c
+++ b/industry_cmd.c
@@ -1110,9 +1110,15 @@ static bool CheckNewIndustry_Forest(uint tile, int type)
return true;
}
+extern bool _ignore_restrictions;
+
static bool CheckNewIndustry_Oilwell(uint tile, int type)
{
int x,y;
+
+ if(_ignore_restrictions && _game_mode == GM_EDITOR)
+ return true;
+
if (type != IT_OIL_RIG && _game_mode == GM_EDITOR)
return true;
diff --git a/main_gui.c b/main_gui.c
index 46ec07d80..7340432d7 100644
--- a/main_gui.c
+++ b/main_gui.c
@@ -1437,6 +1437,8 @@ static bool TryBuildIndustry(TileIndex tile, int type)
{
int n;
+ if (CreateNewIndustry(tile, type)) return true;
+
n = 100;
do {
if (CreateNewIndustry(AdjustTileCoordRandomly(tile, 1), type)) return true;
@@ -1463,6 +1465,8 @@ static const byte _industry_type_list[4][16] = {
{26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36},
};
+bool _ignore_restrictions;
+
static void ScenEditIndustryWndProc(Window *w, WindowEvent *e)
{
int button;
@@ -1504,10 +1508,12 @@ static void ScenEditIndustryWndProc(Window *w, WindowEvent *e)
_current_player = OWNER_NONE;
_generating_world = true;
+ _ignore_restrictions = true;
if (!TryBuildIndustry(e->place.tile,type)) {
SET_DPARAM16(0, type + STR_4802_COAL_MINE);
ShowErrorMessage(_error_message, STR_0285_CAN_T_BUILD_HERE,e->place.pt.x, e->place.pt.y);
}
+ _ignore_restrictions = false;
_generating_world = false;
break;
}