|
UFO: Alien Invasion
|
Base building related stuff. More...
#include "../../DateTime.h"#include "cp_building.h"#include "../../cl_shared.h"#include "../../../shared/parse.h"#include "cp_campaign.h"#include "cp_time.h"
Go to the source code of this file.
Data Structures | |
| struct | buildingTypeMapping_s |
Functions | |
| 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. | |
| 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. | |
| 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_GetBuildingTemplateSilent (const char *buildingName) |
| Returns the building in the global building-types list that has the unique name buildingID. | |
| building_t * | B_GetBuildingTemplate (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. | |
| bool | B_CheckBuildingDependencesStatus (const building_t *building) |
| Check that the dependences of a building is operationnal. | |
| bool | B_FireEvent (const building_t *buildingTemplate, const base_t *base, buildingEvent_t eventType) |
| Run eventhandler script for a building. | |
Variables | |
| static const struct buildingTypeMapping_s | buildingTypeMapping [] |
| static const value_t | valid_building_vars [] |
| Holds the names of valid entries in the basemanagement.ufo file. | |
Base building related stuff.
Definition in file cp_building.cpp.
| 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 base_t * | base, | ||
| buildingEvent_t | eventType ) |
Run eventhandler script for a building.
| [in] | buildingTemplate | Building type (template) to run event for |
| [in] | base | The base to run it at |
| [in] | eventType | Type of the event to run |
true if an event was fired false otherwise (the building may not have one) Definition at line 344 of file cp_building.cpp.
References B_ONCONSTRUCT, B_ONDESTROY, B_ONDISABLE, B_ONENABLE, building_t::buildingType, cgi, ERR_DROP, base_t::idx, building_t::onConstruct, building_t::onDestroy, building_t::onDisable, building_t::onEnable, and Q_strvalid.
Referenced by B_AddBuildingToBasePos(), B_BuildBuilding(), B_BuildingDestroy(), B_CheckBuildingConstruction(), B_ResetAllStatusAndCapacities(), B_UpdateAllBaseBuildingStatus(), and B_UpdateStatusBuilding().
| 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().
|
static |
Referenced by B_GetBuildingTypeByBuildingID().
|
static |
Holds the names of valid entries in the basemanagement.ufo file.
The valid definition names for BUILDINGS (building_t) in the basemanagement.ufo file. to the appropriate values in the corresponding struct
Definition at line 98 of file cp_building.cpp.
Referenced by B_ParseBuildings().