DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ SetPartFromSyncData()

void ItemBase::SetPartFromSyncData ( ConstructionPart part)
inlineprotected

См. определение в файле BaseBuildingBase.c строка 252

253 {
254 string key = part.m_PartName;
255 bool is_base = part.IsBase();
256 bool is_part_built_sync = IsPartBuildInSyncData( part.GetId() );
257 bsbDebugSpam("[bsb] " + GetDebugName(this) + " SetPartFromSyncData try to sync: built=" + is_part_built_sync + " key=" + key + " part=" + part.GetPartName() + " part_built=" + part.IsBuilt());
258 if ( is_part_built_sync )
259 {
260 if ( !part.IsBuilt() )
261 {
262 if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] " + GetDebugName(this) + " SetPartsFromSyncData +++ " + key);
263 GetConstruction().AddToConstructedParts( key );
264 GetConstruction().ShowConstructionPartPhysics(part.GetPartName());
265
266 if (is_base)
267 {
268 if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] " + GetDebugName(this) + ANIMATION_DEPLOYED + " RM");
269 RemoveProxyPhysics( ANIMATION_DEPLOYED );
270 }
271 }
272 }
273 else
274 {
275 if ( part.IsBuilt() )
276 {
277 if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] " + GetDebugName(this) + " SetPartsFromSyncData --- " + key);
278 GetConstruction().RemoveFromConstructedParts( key );
279 GetConstruction().HideConstructionPartPhysics(part.GetPartName());
280
281 if (is_base)
282 {
283 if (LogManager.IsBaseBuildingLogEnable()) bsbDebugPrint("[bsb] " + GetDebugName(this) + ANIMATION_DEPLOYED + " ADD");
284 AddProxyPhysics( ANIMATION_DEPLOYED );
285 }
286 }
287 }
288
289 //check slot lock for material attachments
290 GetConstruction().SetLockOnAttachedMaterials( part.GetPartName(), part.IsBuilt() ); //failsafe for corrupted sync/storage data
291 }
void bsbDebugSpam(string s)
Определения BaseBuildingBase.c:1300
class BaseBuildingBase extends ItemBase bsbDebugPrint(string s)
Определения BaseBuildingBase.c:1292
int GetId()
Определения ConstructionPart.c:40
string GetPartName()
Определения ConstructionPart.c:30
bool IsBase()
Определения ConstructionPart.c:65
bool IsBuilt()
Определения ConstructionPart.c:45
string m_PartName
Определения ConstructionPart.c:5
const string ANIMATION_DEPLOYED
Определения BaseBuildingBase.c:4
Construction GetConstruction()
Определения BaseBuildingBase.c:955
bool IsPartBuildInSyncData(int part_id)
Определения BaseBuildingBase.c:182
override string GetDebugName()
Определения dayzplayer.c:1170

Перекрестные ссылки ANIMATION_DEPLOYED, bsbDebugPrint(), bsbDebugSpam(), GetConstruction(), GetDebugName(), ConstructionPart::GetId(), ConstructionPart::GetPartName(), ConstructionPart::IsBase(), LogManager::IsBaseBuildingLogEnable(), ConstructionPart::IsBuilt(), IsPartBuildInSyncData() и ConstructionPart::m_PartName.