Files
@ r14895:fb237f7e7f5b
Branch filter:
Location: cpp/openttd-patchpack/source/src/newgrf_industries.h - annotation
r14895:fb237f7e7f5b
2.2 KiB
text/x-c
(svn r19502) -Codechange: During NewGRF loading, store rail type labels in temporary data and process after loading has finished. This avoids deactivated rail vehicles being reactivated if the climate property is set after the rail type property.
r6835:9051f7024392 r6835:9051f7024392 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r12768:980ae0491352 r9111:983de9c5a848 r6835:9051f7024392 r6835:9051f7024392 r6835:9051f7024392 r6835:9051f7024392 r14598:744c3c3ec434 r6835:9051f7024392 r6835:9051f7024392 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r7621:16fbec405049 r8213:466402e95092 r8213:466402e95092 r8213:466402e95092 r8213:466402e95092 r8213:466402e95092 r8213:466402e95092 r8213:466402e95092 r6884:06c993c360e4 r6835:9051f7024392 r7327:28855024ff6c r14315:8b21eb31a313 r7168:156fd244b919 r14598:744c3c3ec434 r7260:348163217738 r6835:9051f7024392 r7233:d578434a488b r7233:d578434a488b r6884:06c993c360e4 r7234:89807e0412b9 r7234:89807e0412b9 r6835:9051f7024392 | /* $Id$ */
/*
* This file is part of OpenTTD.
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
*/
/** @file newgrf_industries.h Functions for NewGRF industries. */
#ifndef NEWGRF_INDUSTRIES_H
#define NEWGRF_INDUSTRIES_H
#include "command_type.h"
#include "newgrf_spritegroup.h"
/** When should the industry(tile) be triggered for random bits? */
enum IndustryTrigger {
/** Triggered each tile loop */
INDUSTRY_TRIGGER_TILELOOP_PROCESS = 1,
/** Triggered (whole industry) each 256 ticks */
INDUSTRY_TRIGGER_256_TICKS = 2,
/** Triggered on cargo delivery */
INDUSTRY_TRIGGER_CARGO_DELIVERY = 4,
};
/** From where is callback CBID_INDUSTRY_AVAILABLE been called */
enum IndustryAvailabilityCallType {
IACT_MAPGENERATION, ///< during random map generation
IACT_RANDOMCREATION, ///< during creation of random ingame industry
IACT_USERCREATION, ///< from the Fund/build window
};
/* in newgrf_industry.cpp */
uint32 IndustryGetVariable(const ResolverObject *object, byte variable, byte parameter, bool *available);
uint16 GetIndustryCallback(CallbackID callback, uint32 param1, uint32 param2, Industry *industry, IndustryType type, TileIndex tile);
uint32 GetIndustryIDAtOffset(TileIndex new_tile, const Industry *i, uint32 cur_grfid);
void IndustryProductionCallback(Industry *ind, int reason);
CommandCost CheckIfCallBackAllowsCreation(TileIndex tile, IndustryType type, uint layout, uint32 seed);
bool CheckIfCallBackAllowsAvailability(IndustryType type, IndustryAvailabilityCallType creation_type);
IndustryType MapNewGRFIndustryType(IndustryType grf_type, uint32 grf_id);
/* in newgrf_industrytiles.cpp*/
uint32 GetNearbyIndustryTileInformation(byte parameter, TileIndex tile, IndustryID index);
#endif /* NEWGRF_INDUSTRIES_H */
|