Mercurial > hg > openttd
changeset 15731:c5f579b016bc draft
(svn r20398) -Codechange: move some variables of GRFFileProps into (the new) GRFFilePropsBase
author | rubidium <rubidium@openttd.org> |
---|---|
date | Sat, 07 Aug 2010 20:51:07 +0000 |
parents | 2480d28f215a |
children | 574ae0427343 |
files | src/industrytype.h src/newgrf_airport.h src/newgrf_commons.h src/table/airport_defaults.h src/table/airporttiles.h src/table/build_industry.h |
diffstat | 6 files changed, 24 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/src/industrytype.h +++ b/src/industrytype.h @@ -131,7 +131,7 @@ uint16 callback_mask; ///< Bitmask of industry callbacks that have to be called uint8 cleanup_flag; ///< flags indicating which data should be freed upon cleaning up bool enabled; ///< entity still avaible (by default true).newgrf can disable it, though - struct GRFFileProps grf_prop; ///< properties related the the grf file + GRFFileProps grf_prop; ///< properties related the the grf file /** * Is an industry with the spec a raw industry? @@ -172,7 +172,7 @@ uint8 animation_triggers; ///< When to start the animation IndustryTileSpecialFlags special_flags; ///< Bitmask of extra flags used by the tile bool enabled; ///< entity still avaible (by default true).newgrf can disable it, though - struct GRFFileProps grf_prop; + GRFFileProps grf_prop; ///< properties related the the grf file }; /* industry_cmd.cpp*/
--- a/src/newgrf_airport.h +++ b/src/newgrf_airport.h @@ -76,7 +76,7 @@ SpriteID preview_sprite; ///< preview sprite for this airport /* Newgrf data */ bool enabled; ///< entity still avaible (by default true).newgrf can disable it, though - GRFFileProps grf_prop; ///< properties related the the grf file + struct GRFFileProps grf_prop; ///< properties related the the grf file static const AirportSpec *Get(byte type); static AirportSpec *GetWithoutOverride(byte type);
--- a/src/newgrf_commons.h +++ b/src/newgrf_commons.h @@ -129,11 +129,24 @@ uint32 GetNearbyTileInformation(TileIndex tile); /** Data related to the handling of grf files. */ -struct GRFFileProps { - uint16 subst_id; +struct GRFFilePropsBase { + /** Set all data constructor for the props. */ + GRFFilePropsBase(uint local_id, const struct GRFFile *grffile) : local_id(local_id), grffile(grffile) {} + /** Simple constructor for the props. */ + GRFFilePropsBase() {} uint16 local_id; ///< id defined by the grf file for this entity + const struct GRFFile *grffile; ///< grf file that introduced this entity +}; + +/** Data related to the handling of grf files. */ +struct GRFFileProps : GRFFilePropsBase { + /** Set all default data constructor for the props. */ + GRFFileProps(uint16 subst_id) : + GRFFilePropsBase(0, NULL), subst_id(subst_id), spritegroup(NULL), override(subst_id) {} + /** Simple constructor for the props. */ + GRFFileProps() : GRFFilePropsBase() {} + uint16 subst_id; struct SpriteGroup *spritegroup; ///< pointer to the different sprites of the entity - const struct GRFFile *grffile; ///< grf file that introduced this entity uint16 override; ///< id of the entity been replaced by };
--- a/src/table/airport_defaults.h +++ b/src/table/airport_defaults.h @@ -382,7 +382,7 @@ /** General AirportSpec definition. */ #define AS_GENERIC(fsm, att, rot, att_len, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, ttdpatch_type, class_id, name, preview, enabled) \ - {fsm, att, rot, att_len, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, name, ttdpatch_type, class_id, preview, enabled, {AT_INVALID, 0, NULL, NULL, AT_INVALID}} + {fsm, att, rot, att_len, depot_tbl, num_depots, size_x, size_y, noise, catchment, min_year, max_year, name, ttdpatch_type, class_id, preview, enabled, GRFFileProps(AT_INVALID)} /** AirportSpec definition for airports without any depot. */ #define AS_ND(ap_name, size_x, size_y, min_year, max_year, catchment, noise, ttdpatch_type, class_id, name, preview) \
--- a/src/table/airporttiles.h +++ b/src/table/airporttiles.h @@ -13,9 +13,9 @@ #define AIRPORTTILES_H /** Writes all airport tile properties in the AirportTile struct */ -#define AT(num_frames, anim_speed) {(1 << 8) | num_frames, anim_speed, STR_NULL, 0, 0, 0, true, {INVALID_AIRPORTTILE, 0, NULL, NULL, INVALID_AIRPORTTILE}} +#define AT(num_frames, anim_speed) {(1 << 8) | num_frames, anim_speed, STR_NULL, 0, 0, 0, true, GRFFileProps(INVALID_AIRPORTTILE)} /** Writes an airport tile without animation in the AirportTile struct */ -#define AT_NOANIM {0xFFFF, 2, STR_NULL, 0, 0, 0, true, {INVALID_AIRPORTTILE, 0, NULL, NULL, INVALID_AIRPORTTILE}} +#define AT_NOANIM {0xFFFF, 2, STR_NULL, 0, 0, 0, true, GRFFileProps(INVALID_AIRPORTTILE)} /** * All default airport tiles.
--- a/src/table/build_industry.h +++ b/src/table/build_industry.h @@ -1184,7 +1184,7 @@ c1, c2, c3, proc, p1, r1, p2, r2, m, a1, im1, a2, im2, a3, im3, pr, clim, bev, in, intx, s1, s2, s3) \ {tbl, lengthof(tbl), d, 0, pc, {c1, c2, c3}, proc, {p1, p2}, {r1, r2}, m, \ {a1, a2, a3}, {{im1, 0}, {im2, 0}, {im3, 0}}, pr, clim, bev, col, in, intx, s1, s2, s3, STR_UNDEFINED, {ai1, ai2, ai3, ai4}, {ag1, ag2, ag3, ag4}, \ - sndc, snd, 0, 0, true, {INVALID_INDUSTRYTYPE, 0, NULL, NULL, INVALID_INDUSTRYTYPE}} + sndc, snd, 0, 0, true, GRFFileProps(INVALID_INDUSTRYTYPE)} /* Format: tile table count and sounds table cost multiplier appear chances(4ingame, 4random) map colour @@ -1581,7 +1581,7 @@ * @param a2 next frame of animation * @param a3 chooses between animation or construction state */ -#define MT(ca1, c1, ca2, c2, ca3, c3, sl, a1, a2, a3) {{c1, c2, c3}, {ca1, ca2, ca3}, sl, a1, a2, a3, 0, 0xFFFF, 2, 0, INDTILE_SPECIAL_NONE, true, {INVALID_INDUSTRYTILE, 0, NULL, NULL, INVALID_INDUSTRYTILE}} +#define MT(ca1, c1, ca2, c2, ca3, c3, sl, a1, a2, a3) {{c1, c2, c3}, {ca1, ca2, ca3}, sl, a1, a2, a3, 0, 0xFFFF, 2, 0, INDTILE_SPECIAL_NONE, true, GRFFileProps(INVALID_INDUSTRYTILE)} static const IndustryTileSpec _origin_industry_tile_specs[NEW_INDUSTRYTILEOFFSET] = { /* Coal Mine */ MT(0, CT_INVALID, 0, CT_INVALID, 0, CT_INVALID, SLOPE_STEEP, INDUSTRYTILE_NOANIM, INDUSTRYTILE_NOANIM, false),