|
UFO: Alien Invasion
|
Header for base building related stuff. More...


Go to the source code of this file.
Data Structures | |
| struct | building_t |
| A building with all it's data. More... | |
Enumerations | |
| enum | buildingStatus_t { B_STATUS_NOT_SET , B_STATUS_UNDER_CONSTRUCTION , B_STATUS_CONSTRUCTION_FINISHED , B_STATUS_WORKING , B_STATUS_DOWN } |
| All possible building status. More... | |
| enum | buildingEvent_t { B_ONCONSTRUCT , B_ONENABLE , B_ONDISABLE , B_ONDESTROY , B_MAXEVENT } |
| Building events. More... | |
| enum | buildingType_t { B_MISC , B_LAB , B_QUARTERS , B_STORAGE , B_WORKSHOP , B_HOSPITAL , B_HANGAR , B_ALIEN_CONTAINMENT , B_SMALL_HANGAR , B_POWER , B_COMMAND , B_ANTIMATTER , B_ENTRANCE , B_DEFENCE_MISSILE , B_DEFENCE_LASER , B_RADAR , MAX_BUILDING_TYPE } |
| All different building types. More... | |
Functions | |
| void | B_ParseBuildings (const char *name, const char **text, bool link) |
| Copies an entry from the building description file into the list of building types. | |
| bool | B_BuildingScriptSanityCheck (void) |
| Checks the parsed buildings for errors. | |
| building_t * | B_GetBuildingTemplate (const char *buildingName) |
| Returns the building in the global building-types list that has the unique name buildingID. | |
| building_t * | B_GetBuildingTemplateSilent (const char *buildingName) |
| Returns the building in the global building-types list that has the unique name buildingID. | |
| const building_t * | B_GetBuildingTemplateByType (buildingType_t type) |
| Returns the building template in the global building-types list for a buildingType. | |
| buildingType_t | B_GetBuildingTypeByBuildingID (const char *buildingID) |
| Returns the building type for a given building identified by its building id from the ufo script files. | |
| bool | B_CheckBuildingDependencesStatus (const building_t *building) |
| Check that the dependences of a building is operationnal. | |
| bool | B_IsBuildingBuiltUp (const building_t *building) |
| Returns if a building is fully buildt up. | |
| float | B_GetConstructionTimeRemain (const building_t *building) |
| Returns the time remaining time of a building construction. | |
| bool | B_FireEvent (const building_t *buildingTemplate, const struct base_s *base, buildingEvent_t eventType) |
Header for base building related stuff.
Definition in file cp_building.h.
| enum buildingEvent_t |
Building events.
Definition at line 41 of file cp_building.h.
| enum buildingStatus_t |
All possible building status.
Definition at line 31 of file cp_building.h.
| enum buildingType_t |
All different building types.
Definition at line 51 of file cp_building.h.
| bool B_BuildingScriptSanityCheck | ( | void | ) |
Checks the parsed buildings for errors.
Definition at line 242 of file cp_building.cpp.
References ccs, cgi, i, building_t::id, building_t::image, building_t::name, building_t::pedia, and RS_GetTechByID().
| bool B_CheckBuildingDependencesStatus | ( | const building_t * | building | ) |
Check that the dependences of a building is operationnal.
| [in] | building | Pointer to the building to check |
Definition at line 324 of file cp_building.cpp.
References B_GetBuildingStatus(), building_t::base, and building_t::dependsBuilding.
Referenced by B_CheckUpdateBuilding().
| bool B_FireEvent | ( | const building_t * | buildingTemplate, |
| const struct base_s * | base, | ||
| buildingEvent_t | eventType ) |
| building_t * B_GetBuildingTemplate | ( | const char * | buildingName | ) |
Returns the building in the global building-types list that has the unique name buildingID.
| [in] | buildingName | The unique id of the building (building_t->id). |
Definition at line 292 of file cp_building.cpp.
References B_GetBuildingTemplateSilent(), and cgi.
Referenced by B_LoadXML(), B_ParseBuildings(), TEST_F(), and UP_BuildingDescription().
| const building_t * B_GetBuildingTemplateByType | ( | buildingType_t | type | ) |
Returns the building template in the global building-types list for a buildingType.
| [in] | type | Building type. |
Definition at line 309 of file cp_building.cpp.
References building_t::buildingType, ccs, i, and type.
Referenced by CAP_CheckOverflow(), and UP_AircraftDescription().
| building_t * B_GetBuildingTemplateSilent | ( | const char * | buildingName | ) |
Returns the building in the global building-types list that has the unique name buildingID.
| [in] | buildingName | The unique id of the building (building_t->id). |
Definition at line 274 of file cp_building.cpp.
References ccs, i, building_t::id, and Q_streq.
Referenced by AIR_CanIntercept(), AIR_GetHangarCapacityType(), B_BuildBuilding_f(), B_FillBuildingInfo_f(), and B_GetBuildingTemplate().
| buildingType_t B_GetBuildingTypeByBuildingID | ( | const char * | buildingID | ) |
Returns the building type for a given building identified by its building id from the ufo script files.
| [in] | buildingID | The script building id that should get converted into the enum value |
Definition at line 84 of file cp_building.cpp.
References buildingTypeMapping, MAX_BUILDING_TYPE, Q_streq, and v.
Referenced by B_ParseBuildings().
| float B_GetConstructionTimeRemain | ( | const building_t * | building | ) |
Returns the time remaining time of a building construction.
| [in] | building | Pointer to the building to check |
Definition at line 50 of file cp_building.cpp.
References building_t::buildTime, ccs, DateTime::getDateAsDays(), DateTime::getTimeAsSeconds(), DateTime::SECONDS_PER_DAY, and building_t::timeStart.
Referenced by B_FillMap_f().
| bool B_IsBuildingBuiltUp | ( | const building_t * | building | ) |
Returns if a building is fully buildt up.
| [in] | building | Pointer to the building to check |
true for buildings with {0, 0} timeStart Definition at line 37 of file cp_building.cpp.
References building_t::buildTime, ccs, and building_t::timeStart.
Referenced by B_AssembleMap(), B_BuildBuilding(), B_CheckBuildingConstruction(), B_FillMap_f(), and B_GetNeighbours().
| void B_ParseBuildings | ( | const char * | name, |
| const char ** | text, | ||
| bool | link ) |
Copies an entry from the building description file into the list of building types.
| [in] | name | Unique script id of a building. This is parsed from "building xxx" -> id=xxx. |
| [in] | text | the whole following text that is part of the "building" item definition in .ufo. |
| [in] | link | Bool value that decides whether to link the tech pointer in or not |
Definition at line 133 of file cp_building.cpp.
References B_GetBuildingTemplate(), B_GetBuildingTypeByBuildingID(), building_t::base, BASE_SIZE, building_t::buildingType, ccs, cgi, Com_Parse(), cp_campaignPool, DEBUG_CLIENT, building_t::dependsBuilding, ERR_DROP, i, building_t::id, building_t::idx, MAX_BUILDING_TYPE, MAX_BUILDINGS, building_t::maxCount, name, OBJZERO, Q_streq, RS_GetTechByProvided(), building_t::size, building_t::tech, building_t::tpl, and valid_building_vars.
Referenced by CP_ParseScriptFirst(), and CP_ParseScriptSecond().