src/newgrf_generic.h
author bjarni
Thu, 19 Jun 2008 17:54:23 +0000
changeset 9561 f236daaaf93a
parent 9111 48ce04029fe4
permissions -rw-r--r--
(svn r13584) -Fix: [OSX] Fixed issue where 10.5 failed to switch to fullscreen
This is done by selecting the 32bpp-anim blitter by default as it seems Apple removed some 8bpp support
Since this is done at runtime the same binary will still select 8bpp on 10.3 and 10.4
8544
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     1
/* $Id$ */
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     2
9111
48ce04029fe4 (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
rubidium
parents: 8544
diff changeset
     3
/** @file newgrf_generic.h Functions related to generic callbacks. */
48ce04029fe4 (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description.
rubidium
parents: 8544
diff changeset
     4
8544
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     5
#ifndef NEWGRF_GENERIC_H
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     6
#define NEWGRF_GENERIC_H
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     7
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     8
enum AIConstructionEvent {
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
     9
	AICE_TRAIN_CHECK_RAIL_ENGINE     = 0x00, ///< Check if we should build an engine
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    10
	AICE_TRAIN_CHECK_ELRAIL_ENGINE   = 0x01,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    11
	AICE_TRAIN_CHECK_MONORAIL_ENGINE = 0x02,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    12
	AICE_TRAIN_CHECK_MAGLEV_ENGINE   = 0x03,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    13
	AICE_TRAIN_GET_RAIL_WAGON        = 0x08,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    14
	AICE_TRAIN_GET_ELRAIL_WAGON      = 0x09,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    15
	AICE_TRAIN_GET_MONORAIL_WAGON    = 0x0A,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    16
	AICE_TRAIN_GET_MAGLEV_WAGON      = 0x0B,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    17
	AICE_TRAIN_GET_RAILTYPE          = 0x0F,
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    18
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    19
	AICE_ROAD_CHECK_ENGINE           = 0x00, ///< Check if we should build an engine
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    20
	AICE_ROAD_GET_FIRST_ENGINE       = 0x01, ///< Unused, we check all
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    21
	AICE_ROAD_GET_NUMBER_ENGINES     = 0x02, ///< Unused, we check all
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    22
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    23
	AICE_SHIP_CHECK_ENGINE           = 0x00, ///< Check if we should build an engine
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    24
	AICE_SHIP_GET_FIRST_ENGINE       = 0x01, ///< Unused, we check all
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    25
	AICE_SHIP_GET_NUMBER_ENGINES     = 0x02, ///< Unused, we check all
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    26
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    27
	AICE_AIRCRAFT_CHECK_ENGINE       = 0x00, ///< Check if we should build an engine
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    28
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    29
	AICE_STATION_GET_STATION_ID      = 0x00, ///< Get a station ID to build
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    30
};
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    31
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    32
void ResetGenericCallbacks();
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    33
void AddGenericCallback(uint8 feature, const struct GRFFile *file, const struct SpriteGroup *group);
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    34
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    35
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 struct GRFFile **file);
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    36
47b99dc2da26 (svn r12122) -Codechange: Add framework for generic feature callbacks, along with some parts for AI use.
peter1138
parents:
diff changeset
    37
#endif /* NEWGRF_GENERIC_H */