house.h File Reference

definition of HouseSpec and accessors More...

#include "strings_type.h"
#include "cargo_type.h"
#include "economy_type.h"
#include "date_type.h"
#include "house_type.h"

Go to the source code of this file.

Data Structures

struct  HouseSpec

Enumerations

enum  {
  HOUSE_NO_CLASS = 0, NEW_HOUSE_OFFSET = 110, HOUSE_MAX = 512, INVALID_HOUSE_ID = 0xFFFF,
  HOUSE_CLASS_MAX = HOUSE_MAX - NEW_HOUSE_OFFSET + 1
}
enum  BuildingFlags {
  TILE_NO_FLAG = 0, TILE_SIZE_1x1 = 1U << 0, TILE_NOT_SLOPED = 1U << 1, TILE_SIZE_2x1 = 1U << 2,
  TILE_SIZE_1x2 = 1U << 3, TILE_SIZE_2x2 = 1U << 4, BUILDING_IS_ANIMATED = 1U << 5, BUILDING_IS_CHURCH = 1U << 6,
  BUILDING_IS_STADIUM = 1U << 7, BUILDING_HAS_1_TILE = TILE_SIZE_1x1 | TILE_SIZE_2x1 | TILE_SIZE_1x2 | TILE_SIZE_2x2, BUILDING_HAS_2_TILES = TILE_SIZE_2x1 | TILE_SIZE_1x2 | TILE_SIZE_2x2, BUILDING_2_TILES_X = TILE_SIZE_2x1 | TILE_SIZE_2x2,
  BUILDING_2_TILES_Y = TILE_SIZE_1x2 | TILE_SIZE_2x2, BUILDING_HAS_4_TILES = TILE_SIZE_2x2
}
enum  HouseZonesBits {
  HZB_BEGIN = 0, HZB_TOWN_EDGE = 0, HZB_TOWN_OUTSKIRT, HZB_TOWN_OUTER_SUBURB,
  HZB_TOWN_INNER_SUBURB, HZB_TOWN_CENTRE, HZB_END
}
enum  HouseZones {
  HZ_NOZNS = 0x0000, HZ_ZON1 = 1U << HZB_TOWN_EDGE, HZ_ZON2 = 1U << HZB_TOWN_OUTSKIRT, HZ_ZON3 = 1U << HZB_TOWN_OUTER_SUBURB,
  HZ_ZON4 = 1U << HZB_TOWN_INNER_SUBURB, HZ_ZON5 = 1U << HZB_TOWN_CENTRE, HZ_ZONALL = 0x001F, HZ_SUBARTC_ABOVE = 0x0800,
  HZ_TEMP = 0x1000, HZ_SUBARTC_BELOW = 0x2000, HZ_SUBTROPIC = 0x4000, HZ_TOYLND = 0x8000
}
enum  HouseExtraFlags {
  NO_EXTRA_FLAG = 0, BUILDING_IS_HISTORICAL = 1U << 0, BUILDING_IS_PROTECTED = 1U << 1, SYNCHRONISED_CALLBACK_1B = 1U << 2,
  CALLBACK_1A_RANDOM_BITS = 1U << 3
}

Functions

 assert_compile (HZB_END==5)
static HouseID GetTranslatedHouseID (HouseID hid)
 Do HouseID translation for NewGRFs.

Variables

static const byte TOWN_HOUSE_COMPLETED = 3
 Simple value that indicates the house has reached the final stage of construction.


Detailed Description

definition of HouseSpec and accessors

Definition in file house.h.


Enumeration Type Documentation

Enumerator:
BUILDING_IS_HISTORICAL  this house will only appear during town generation in random games, thus the historical
BUILDING_IS_PROTECTED  towns and AI will not remove this house, while human players will be able to
SYNCHRONISED_CALLBACK_1B  synchronized callback 1B will be performed, on multi tile houses
CALLBACK_1A_RANDOM_BITS  callback 1A needs random bits

Definition at line 83 of file house.h.

enum HouseZones

Enumerator:
HZ_NOZNS  Bit Value Meaning.

0 This is just to get rid of zeros, meaning none

HZ_ZON1  0..4 1,2,4,8,10 which town zones the building can be built in, Zone1 been the further suburb
HZ_ZON5  center of town
HZ_ZONALL  1F This is just to englobe all above types at once
HZ_SUBARTC_ABOVE  11 800 can appear in sub-arctic climate above the snow line
HZ_TEMP  12 1000 can appear in temperate climate
HZ_SUBARTC_BELOW  13 2000 can appear in sub-arctic climate below the snow line
HZ_SUBTROPIC  14 4000 can appear in subtropical climate
HZ_TOYLND  15 8000 can appear in toyland climate

Definition at line 67 of file house.h.


Function Documentation

static HouseID GetTranslatedHouseID ( HouseID  hid  )  [inline, static]

Do HouseID translation for NewGRFs.

Parameters:
hid the HouseID to get the override for.
Returns:
the HouseID to actually work with.

Definition at line 145 of file house.h.

Referenced by GetHouseType().


Variable Documentation

const byte TOWN_HOUSE_COMPLETED = 3 [static]

Simple value that indicates the house has reached the final stage of construction.

Definition at line 23 of file house.h.

Referenced by BuildTownHouse(), GetHouseBuildingStage(), IncHouseConstructionTick(), and MakeHouseTile().


Generated on Wed Dec 23 23:27:59 2009 for OpenTTD by  doxygen 1.5.6