Handling of generic feature callbacks. More...
#include "stdafx.h"
#include "debug.h"
#include "newgrf.h"
#include "newgrf_spritegroup.h"
#include "core/bitmath_func.hpp"
#include <list>
Go to the source code of this file.
Data Structures | |
struct | GenericCallback |
Typedefs | |
typedef std::list < GenericCallback > | GenericCallbackList |
Functions | |
void | ResetGenericCallbacks () |
Reset all generic feature callback sprite groups. | |
void | AddGenericCallback (uint8 feature, const GRFFile *file, const SpriteGroup *group) |
Add a generic feature callback sprite group to the appropriate feature list. | |
static uint32 | GenericCallbackGetRandomBits (const ResolverObject *object) |
static uint32 | GenericCallbackGetTriggers (const ResolverObject *object) |
static void | GenericCallbackSetTriggers (const ResolverObject *object, int triggers) |
static uint32 | GenericCallbackGetVariable (const ResolverObject *object, byte variable, byte parameter, bool *available) |
static const SpriteGroup * | GenericCallbackResolveReal (const ResolverObject *object, const RealSpriteGroup *group) |
static void | NewGenericResolver (ResolverObject *res, const GRFFile *grffile) |
static uint16 | GetGenericCallbackResult (uint8 feature, ResolverObject *object, const GRFFile **file) |
Follow a generic feature callback list and return the first successful answer. | |
uint16 | GetAiPurchaseCallbackResult (uint8 feature, CargoID cargo_type, uint8 default_selection, IndustryType src_industry, IndustryType dst_industry, uint8 distance, AIConstructionEvent event, uint8 count, uint8 station_size, const GRFFile **file) |
'Execute' an AI purchase selection callback | |
Variables | |
static GenericCallbackList | _gcl [GSF_END] |
Handling of generic feature callbacks.
Definition in file newgrf_generic.cpp.
void AddGenericCallback | ( | uint8 | feature, | |
const GRFFile * | file, | |||
const SpriteGroup * | group | |||
) |
Add a generic feature callback sprite group to the appropriate feature list.
feature | ||
file | ||
group |
Definition at line 52 of file newgrf_generic.cpp.
static uint16 GetGenericCallbackResult | ( | uint8 | feature, | |
ResolverObject * | object, | |||
const GRFFile ** | file | |||
) | [static] |
Follow a generic feature callback list and return the first successful answer.
feature | GRF Feature of callback | |
object | pre-populated resolver object | |
file | address of GRFFile object if file reference is needed, NULL is valid |
Definition at line 143 of file newgrf_generic.cpp.
References CALLBACK_FAILED, lengthof, and SpriteGroup::Resolve().
Referenced by GetAiPurchaseCallbackResult().