Data Structures | |
class | StaticConstructionMethods |
class | ConstructionBoxTrigger |
Enumerations | |
enum | ConstructionMaterialType { MATERIAL_NONE = 0 , MATERIAL_LOG = 1 , MATERIAL_WOOD = 2 , MATERIAL_STAIRS = 3 , MATERIAL_METAL = 4 , MATERIAL_WIRE = 5 } |
Variables | |
enum ConstructionMaterialType | REPAIR_MATERIAL_PERCENTAGE = 0.15 |
static const float | DECONSTURCT_MATERIAL_LOSS = 0.2 |
protected ref map< string, ref ConstructionPart > | m_ConstructionParts |
protected BaseBuildingBase | m_Parent |
protected Shape | m_CollisionBox |
protected ConstructionBoxTrigger | m_ConstructionBoxTrigger |
class StaticConstructionMethods | m_AdditionalExcludes |
Data structure for passing parameters (extendable, modable) | |
string | m_PartName |
int | m_PrimaryGeometry |
int | m_SecondaryGeometry |
void AddToConstructedParts | ( | string | part_name | ) |
References CanUseToolToBuildPart(), HasConflictPart(), HasMaterials(), HasRequiredPart(), IsPartConstructed(), and MaterialIsRuined().
Referenced by GetConstructionPartsToBuild().
References HasDependentPart(), and IsPartConstructed().
Referenced by GetConstructionPartToDestroy().
References CanUseToolToDismantlePart(), HasDependentPart(), and IsPartConstructed().
Referenced by GetConstructionPartToDismantle().
References CGame::ConfigGetInt(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), and ConstructionPart::GetPartName().
Referenced by CanBuildPart().
References CGame::ConfigGetInt(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), and ConstructionPart::GetPartName().
Referenced by CanDismantlePart().
void CollisionCheckData | ( | ) |
void Construction | ( | BaseBuildingBase | parent | ) |
References m_ConstructionParts, and SetParent().
Referenced by ActionBuildPart::ActionConditionContinue(), ActionBuildShelter::ActionConditionContinue(), ComplexBuildCollideCheckClient(), ItemBase::ConstructionInit(), ActionDestroyPart::DestroyCondition(), ActionDismantlePart::DismantleCondition(), ItemBase::EEHealthLevelChanged(), ItemBase::GetConstructionPartById(), ActionBuildPart::OnFinishProgressServer(), ActionDestroyPart::OnFinishProgressServer(), ActionDismantlePart::OnFinishProgressServer(), ActionRepairPart::OnFinishProgressServer(), ActionBuildShelter::OnFinishProgressServer(), ActionRepairPart::RepairCondition(), ItemBase::SetPartsFromSyncData(), and StaticConstructionMethods::SpawnConstructionMaterialPiles().
void DestroyCollisionTrigger | ( | ) |
References GetGame(), m_ConstructionBoxTrigger, and CGame::ObjectDelete().
Referenced by BuildPartServer(), and CreateCollisionTrigger().
void DestroyConnectedParts | ( | string | part_name | ) |
protected void DestroyDebugCollisionBox | ( | ) |
References m_CollisionBox.
Referenced by DrawDebugCollisionBox(), Hologram::UpdateHologram(), and Hologram::~Hologram().
protected void DestroyMaterialsServer | ( | Man | player, |
string | part_name | ||
) |
References bsbDebugPrint(), CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetFloat(), CGame::ConfigGetInt(), CGame::ConfigGetText(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), InventoryLocation::GetSlot(), LogManager::IsBaseBuildingLogEnable(), and CGame::ObjectDelete().
Referenced by DestroyPartServer().
void DestroyPartServer | ( | Man | player, |
string | part_name, | ||
int | action_id, | ||
bool | destroyed_by_connected_part = false |
||
) |
References bsbDebugPrint(), DestroyMaterialsServer(), DropNonUsableMaterialsServer(), GetParent(), and LogManager::IsBaseBuildingLogEnable().
Referenced by DestroyConnectedParts().
References DestroyDebugCollisionBox(), Debug::DrawBox(), GetParent(), and m_CollisionBox.
Referenced by Hologram::IsCollidingBBox().
void DropNonUsableMaterialsServer | ( | Man | player, |
string | part_name | ||
) |
References bsbDebugPrint(), CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetText(), CGame::ConfigGetTextArray(), string::Contains(), ECE_PLACE_ON_SURFACE, GetConstructionPart(), InventoryLocation::GetDir(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), ConstructionPart::GetPartName(), InventoryLocation::GetSlot(), ConstructionPart::IsBase(), LogManager::IsBaseBuildingLogEnable(), CGame::IsMultiplayer(), string::Length(), EntityAI::LocalTakeToDst(), UAItemsSpreadRadius::NARROW, CGame::ObjectModelToWorld(), RF_DEFAULT, EntityAI::ServerTakeToDst(), InventoryLocation::SetGround(), InventoryLocation::SetGroundEx(), ItemBase::SetQuantity(), and string::ToLower().
Referenced by DestroyPartServer(), and DismantlePartServer().
Exceptions from 'dependent parts' hierarchy are handled here.
References GetConstructionPart(), and ConstructionPart::IsGate().
Referenced by DestroyConnectedParts().
ConstructionPart GetBaseConstructionPart | ( | ) |
References ConstructionPart::IsBase(), and m_ConstructionParts.
References Vector().
Referenced by IsColliding(), and IsCollidingEx().
References CGame::ConfigGetTextArray(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), and GetParent().
Referenced by IsColliding(), and IsCollidingEx().
References Math::AbsFloat(), and Vector().
Referenced by GetTriggerExtents(), IsColliding(), and IsCollidingEx().
ConstructionPart GetConstructionPart | ( | string | part_name | ) |
References m_ConstructionParts.
Referenced by AddToConstructedParts(), CanUseToolToBuildPart(), CanUseToolToDismantlePart(), DestroyMaterialsServer(), DropNonUsableMaterialsServer(), ExceptionCheck(), GetCollisionBoxData(), GetConstructionPartToDestroy(), GetConstructionPartToDismantle(), GetMaterialType(), HasConflictPart(), HasMaterials(), HasRequiredPart(), IsColliding(), IsCollidingEx(), IsPartConstructed(), MaterialIsRuined(), ReceiveMaterialsServer(), RemoveFromConstructedParts(), SetLockOnAttachedMaterials(), and TakeMaterialsServer().
map< string, ref ConstructionPart > GetConstructionParts | ( | ) |
References m_ConstructionParts.
ConstructionPart GetConstructionPartToDestroy | ( | string | part_name | ) |
References CanDestroyPart(), and GetConstructionPart().
ConstructionPart GetConstructionPartToDismantle | ( | string | part_name, |
ItemBase | tool | ||
) |
References CanDismantlePart(), and GetConstructionPart().
ConstructionPart GetGateConstructionPart | ( | ) |
References ConstructionPart::IsGate(), and m_ConstructionParts.
ConstructionMaterialType GetMaterialType | ( | string | part_name | ) |
References CGame::ConfigGetTextArray(), GetGame(), and GetParent().
Referenced by UpdateConstructionParts().
References GetCollisionBoxSize().
Referenced by CreateCollisionTrigger().
protected array< string > GetValidDepenentPartsArray | ( | string | part_name, |
array< string > | recurs = null |
||
) |
References ConstructionPart::GetRequiredParts(), ConstructionPart::IsBuilt(), m_ConstructionParts, and name.
Referenced by DestroyConnectedParts().
References CGame::ConfigGetTextArray(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), and IsPartConstructed().
Referenced by CanBuildPart().
References ConstructionPart::GetRequiredParts(), ConstructionPart::IsBuilt(), and m_ConstructionParts.
Referenced by CanDestroyPart(), and CanDismantlePart().
References CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetFloat(), CGame::ConfigGetText(), Math::Floor(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), HasMaterialWithQuantityAttached(), Math::Max(), and REPAIR_MATERIAL_PERCENTAGE.
Referenced by CanBuildPart().
References GetParent().
Referenced by HasMaterials().
References CGame::ConfigGetTextArray(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), and IsPartConstructed().
Referenced by CanBuildPart().
protected void HideConstructionPart | ( | string | part_name | ) |
References bsbDebugPrint(), GetParent(), and LogManager::IsBaseBuildingLogEnable().
Referenced by UpdateVisuals().
void HideConstructionPartPhysics | ( | string | part_name | ) |
References GetParent().
Referenced by UpdatePhysics().
void Init | ( | ) |
Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside of a non-static system)
References UpdateConstructionParts().
void InitBaseState | ( | ) |
References bsbDebugPrint(), InitVisuals(), LogManager::IsBaseBuildingLogEnable(), and m_Parent.
Referenced by ItemBase::EEInit().
void InitVisuals | ( | ) |
References bsbDebugPrint(), ConstructionPart::GetPartName(), LogManager::IsBaseBuildingLogEnable(), ConstructionPart::IsBuilt(), m_ConstructionParts, m_Parent, and ShowConstructionPart().
Referenced by InitBaseState(), and ItemBase::InitBaseState().
bool IsCollidingEx | ( | CollisionCheckData | check_data | ) |
Collision check for building part.
References GetBoxCenter(), GetCollisionBoxData(), GetCollisionBoxSize(), GetConstructionPart(), CfgGameplayHandler::GetDisableIsCollidingCheck(), GetGame(), GetOrientation(), GetParent(), EntityAI::IsIgnoredByConstruction(), and Vector().
bool IsTriggerColliding | ( | ) |
References ConstructionBoxTrigger::IsColliding(), and m_ConstructionBoxTrigger.
void RemoveFromConstructedParts | ( | string | part_name | ) |
References bsbDebugPrint(), CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetFloat(), CGame::ConfigGetInt(), CGame::ConfigGetText(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), InventoryLocation::GetSlot(), and LogManager::IsBaseBuildingLogEnable().
protected void SetParent | ( | BaseBuildingBase | parent | ) |
References m_Parent.
protected void ShowConstructionPart | ( | string | part_name | ) |
References bsbDebugPrint(), GetParent(), and LogManager::IsBaseBuildingLogEnable().
Referenced by InitVisuals(), and UpdateVisuals().
void ShowConstructionPartPhysics | ( | string | part_name | ) |
References GetParent().
Referenced by UpdatePhysics().
References CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetFloat(), CGame::ConfigGetInt(), CGame::ConfigGetText(), Math::Floor(), GetConstructionPart(), GetGame(), ConstructionPart::GetMainPartName(), GetParent(), InventoryLocation::GetSlot(), Math::Max(), CGame::ObjectDelete(), and REPAIR_MATERIAL_PERCENTAGE.
Referenced by BuildPartServer().
protected void UpdateConstructionParts | ( | ) |
References bsbDebugPrint(), CGame::ConfigGetChildName(), CGame::ConfigGetChildrenCount(), CGame::ConfigGetInt(), CGame::ConfigGetTextRaw(), CGame::FormatRawConfigStringKeys(), GetGame(), GetParent(), GetRequiredParts(), LogManager::IsBaseBuildingLogEnable(), m_ConstructionParts, and name.
Referenced by Init().
void UpdatePhysics | ( | ) |
References bsbDebugPrint(), ConstructionPart::GetPartName(), HideConstructionPartPhysics(), LogManager::IsBaseBuildingLogEnable(), ConstructionPart::IsBuilt(), m_ConstructionParts, m_Parent, and ShowConstructionPartPhysics().
Referenced by ItemBase::EEInit(), ItemBase::OnItemLocationChanged(), ItemBase::Refresh(), and ItemBase::RefreshPhysics().
void UpdateVisuals | ( | ) |
References bsbDebugPrint(), ConstructionPart::GetPartName(), HideConstructionPart(), LogManager::IsBaseBuildingLogEnable(), ConstructionPart::IsBuilt(), m_ConstructionParts, m_Parent, and ShowConstructionPart().
Referenced by BaseBuildingBase::AfterStoreLoad(), EEInit(), ItemBase::EEInit(), TerritoryFlag::FullyBuild(), Plastic_Explosive::OnDisarmed(), BaseBuildingBase::OnPartBuiltServer(), BaseBuildingBase::OnPartDestroyedServer(), BaseBuildingBase::OnPartDismantledServer(), ImprovisedExplosive::OnTriggerAttached(), Plastic_Explosive::OnTriggerAttached(), ImprovisedExplosive::OnTriggerDetached(), Plastic_Explosive::OnTriggerDetached(), ImprovisedExplosive::OnVariablesSynchronized(), Plastic_Explosive::OnVariablesSynchronized(), OnVariablesSynchronized(), ItemBase::Refresh(), and Synchronize().
|
static |
class StaticConstructionMethods m_AdditionalExcludes |
Data structure for passing parameters (extendable, modable)
Referenced by CollisionCheckData().
protected Shape m_CollisionBox |
Referenced by DestroyDebugCollisionBox(), and DrawDebugCollisionBox().
protected ConstructionBoxTrigger m_ConstructionBoxTrigger |
Referenced by CreateCollisionTrigger(), DestroyCollisionTrigger(), and IsTriggerColliding().
protected ref map<string, ref ConstructionPart> m_ConstructionParts |
protected BaseBuildingBase m_Parent |
string m_PartName |
Referenced by CollisionCheckData().
int m_PrimaryGeometry |
Referenced by CollisionCheckData().
int m_SecondaryGeometry |
Referenced by CollisionCheckData().
enum ConstructionMaterialType REPAIR_MATERIAL_PERCENTAGE = 0.15 |
Referenced by HasMaterials(), and TakeMaterialsServer().