mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-02-01 03:48:43 +00:00
(svn r12844) -Fix: the industry tick trigger should only be triggered once every 256 ticks, not every tick... Also bail out of the triggers a little earlier if you know they are not going to happen anyway.
This commit is contained in:
parent
501b89b8de
commit
2d860049a7
@ -1033,6 +1033,9 @@ static void ProduceIndustryGoods(Industry *i)
|
||||
|
||||
if (cut) ChopLumberMillTrees(i);
|
||||
}
|
||||
|
||||
TriggerIndustry(i, INDUSTRY_TRIGGER_INDUSTRY_TICK);
|
||||
StartStopIndustryTileAnimation(i, IAT_INDUSTRY_TICK);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1054,8 +1057,6 @@ void OnTick_Industry()
|
||||
if (_game_mode == GM_EDITOR) return;
|
||||
|
||||
FOR_ALL_INDUSTRIES(i) {
|
||||
TriggerIndustry(i, INDUSTRY_TRIGGER_INDUSTRY_TICK);
|
||||
StartStopIndustryTileAnimation(i, IAT_INDUSTRY_TICK);
|
||||
ProduceIndustryGoods(i);
|
||||
}
|
||||
}
|
||||
|
@ -547,6 +547,8 @@ static void DoTriggerHouse(TileIndex tile, HouseTrigger trigger, byte base_rando
|
||||
HouseID hid = GetHouseType(tile);
|
||||
HouseSpec *hs = GetHouseSpecs(hid);
|
||||
|
||||
if (hs->spritegroup == NULL) return;
|
||||
|
||||
NewHouseResolver(&object, hid, tile, GetTownByTile(tile));
|
||||
|
||||
object.callback = CBID_RANDOM_TRIGGER;
|
||||
|
@ -417,6 +417,8 @@ static void DoTriggerIndustryTile(TileIndex tile, IndustryTileTrigger trigger, I
|
||||
IndustryGfx gfx = GetIndustryGfx(tile);
|
||||
const IndustryTileSpec *itspec = GetIndustryTileSpec(gfx);
|
||||
|
||||
if (itspec->grf_prop.spritegroup == NULL) return;
|
||||
|
||||
NewIndustryTileResolver(&object, gfx, tile, ind);
|
||||
|
||||
object.callback = CBID_RANDOM_TRIGGER;
|
||||
|
Loading…
Reference in New Issue
Block a user