Changeset - r15952:5f49686d97e6
[Not reviewed]
master
0 2 0
rubidium - 14 years ago 2010-08-28 17:35:00
rubidium@openttd.org
(svn r20650) -Codechange: add some variables to the object's spec
2 files changed with 14 insertions and 6 deletions:
0 comments (0 inline, 0 general)
src/newgrf_object.h
Show inline comments
 
@@ -12,9 +12,11 @@
 
#ifndef NEWGRF_OBJECT_H
 
#define NEWGRF_OBJECT_H
 

	
 
#include "date_type.h"
 
#include "economy_func.h"
 
#include "strings_type.h"
 
#include "object_type.h"
 
#include "newgrf_animation_type.h"
 
#include "newgrf_class.h"
 
#include "newgrf_commons.h"
 

	
 
@@ -55,10 +57,16 @@ struct ObjectSpec {
 
	ObjectClassID cls_id;         ///< The class to which this spec belongs.
 
	StringID name;                ///< The name for this object.
 

	
 
	uint8 climate;                ///< In which climates is this object available?
 
	uint8 size;                   ///< The size of this objects; low nibble for X, high nibble for Y.
 
	uint8 build_cost_multiplier;  ///< Build cost multiplier per tile.
 
	uint8 clear_cost_multiplier;  ///< Clear cost multiplier per tile.
 
	Date introduction_date;       ///< From when can this object be built.
 
	Date end_of_life_date;        ///< When can't this object be built anymore.
 
	ObjectFlags flags;            ///< Flags/settings related to the object.
 
	AnimationInfo animation;      ///< Information about the animation.
 
	uint16 callback_mask;         ///< Bitmask of requested/allowed callbacks.
 
	uint8 height;                 ///< The height of this structure, in heightlevels; max MAX_TILE_HEIGHT.
 
	bool enabled;                 ///< Is this spec enabled?
 

	
 
	/**
src/table/object_land.h
Show inline comments
 
@@ -123,15 +123,15 @@ static const DrawTileSprites _object_hq[
 

	
 
#undef TILE_SPRITE_LINE
 

	
 
#define M(name, size, build_cost_multiplier, clear_cost_multiplier, flags) { GRFFilePropsBase<2>(), INVALID_OBJECT_CLASS, name, size, build_cost_multiplier, clear_cost_multiplier, flags, true }
 
#define M(name, size, build_cost_multiplier, clear_cost_multiplier, height, flags) { GRFFilePropsBase<2>(), INVALID_OBJECT_CLASS, name, 0xF, size, 0, 0, build_cost_multiplier, clear_cost_multiplier, flags, {0, 0, 0, 0}, 0, height, true }
 

	
 
/** Specification of the original object structures. */
 
extern const ObjectSpec _original_objects[] = {
 
	M(STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER,          0x11,   0,   0, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_SCENEDIT),
 
	M(STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE,           0x11,   0,   0, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_SCENEDIT),
 
	M(STR_TOWN_BUILDING_NAME_STATUE_1,                 0x11,   0,   0, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_GAME | OBJECT_FLAG_ONLY_IN_SCENEDIT), // Yes, we disallow building this everywhere. Happens in "special" case!
 
	M(STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND,   0x11,  10,   2, OBJECT_FLAG_AUTOREMOVE | OBJECT_FLAG_ONLY_IN_GAME | OBJECT_FLAG_CLEAR_INCOME | OBJECT_FLAG_HAS_NO_FOUNDATION | OBJECT_FLAG_ALLOW_UNDER_BRIDGE),
 
	M(STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS, 0x22,   0,   0, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_GAME),
 
	M(STR_LAI_OBJECT_DESCRIPTION_TRANSMITTER,          0x11,   0,   0, 10, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_SCENEDIT),
 
	M(STR_LAI_OBJECT_DESCRIPTION_LIGHTHOUSE,           0x11,   0,   0,  8, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_SCENEDIT),
 
	M(STR_TOWN_BUILDING_NAME_STATUE_1,                 0x11,   0,   0,  5, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_GAME | OBJECT_FLAG_ONLY_IN_SCENEDIT), // Yes, we disallow building this everywhere. Happens in "special" case!
 
	M(STR_LAI_OBJECT_DESCRIPTION_COMPANY_OWNED_LAND,   0x11,  10,   2,  0, OBJECT_FLAG_AUTOREMOVE | OBJECT_FLAG_ONLY_IN_GAME | OBJECT_FLAG_CLEAR_INCOME | OBJECT_FLAG_HAS_NO_FOUNDATION | OBJECT_FLAG_ALLOW_UNDER_BRIDGE),
 
	M(STR_LAI_OBJECT_DESCRIPTION_COMPANY_HEADQUARTERS, 0x22,   0,   0,  7, OBJECT_FLAG_CANNOT_REMOVE | OBJECT_FLAG_ONLY_IN_GAME),
 
};
 

	
 
#undef M
0 comments (0 inline, 0 general)