| 296 | // load / save |
| 297 | |
| 298 | void TechnoTypeExt::ExtData::LoadFromINIFile(CCINIClass* const pINI) |
| 299 | { |
| 300 | auto pThis = this->OwnerObject(); |
| 301 | const char* pSection = pThis->ID; |
| 302 | INI_EX exINI(pINI); |
| 303 | |
| 304 | this->HealthBar_Hide.Read(exINI, pSection, "HealthBar.Hide"); |
| 305 | this->UIDescription.Read(exINI, pSection, "UIDescription"); |
| 306 | this->LowSelectionPriority.Read(exINI, pSection, "LowSelectionPriority"); |
| 307 | this->MindControlRangeLimit.Read(exINI, pSection, "MindControlRangeLimit"); |
| 308 | this->FactoryPlant_Multiplier.Read(exINI, pSection, "FactoryPlant.Multiplier"); |
| 309 | |
| 310 | this->Spawner_LimitRange.Read(exINI, pSection, "Spawner.LimitRange"); |
| 311 | this->Spawner_ExtraLimitRange.Read(exINI, pSection, "Spawner.ExtraLimitRange"); |
| 312 | this->Spawner_DelayFrames.Read(exINI, pSection, "Spawner.DelayFrames"); |
| 313 | this->Spawner_AttackImmediately.Read(exINI, pSection, "Spawner.AttackImmediately"); |
| 314 | |
| 315 | this->Harvester_Counted.Read(exINI, pSection, "Harvester.Counted"); |
| 316 | if (!this->Harvester_Counted.isset() && pThis->Enslaves) |
| 317 | this->Harvester_Counted = true; |
| 318 | |
| 319 | this->Promote_IncludeSpawns.Read(exINI, pSection, "Promote.IncludeSpawns"); |
| 320 | this->ImmuneToCrit.Read(exINI, pSection, "ImmuneToCrit"); |
| 321 | this->MultiMindControl_ReleaseVictim.Read(exINI, pSection, "MultiMindControl.ReleaseVictim"); |
| 322 | this->NoManualMove.Read(exINI, pSection, "NoManualMove"); |
| 323 | this->InitialStrength.Read(exINI, pSection, "InitialStrength"); |
| 324 | if (this->InitialStrength.isset()) |
| 325 | this->InitialStrength = Math::clamp(this->InitialStrength, 1, pThis->Strength); |
| 326 | |
| 327 | this->ReloadInTransport.Read(exINI, pSection, "ReloadInTransport"); |
| 328 | this->ForbidParallelAIQueues.Read(exINI, pSection, "ForbidParallelAIQueues"); |
| 329 | this->ShieldType.Read<true>(exINI, pSection, "ShieldType"); |
| 330 | |
| 331 | this->Ammo_AddOnDeploy.Read(exINI, pSection, "Ammo.AddOnDeploy"); |
| 332 | this->Ammo_AutoDeployMinimumAmount.Read(exINI, pSection, "Ammo.AutoDeployMinimumAmount"); |
| 333 | this->Ammo_AutoDeployMaximumAmount.Read(exINI, pSection, "Ammo.AutoDeployMaximumAmount"); |
| 334 | this->Ammo_DeployUnlockMinimumAmount.Read(exINI, pSection, "Ammo.DeployUnlockMinimumAmount"); |
| 335 | this->Ammo_DeployUnlockMaximumAmount.Read(exINI, pSection, "Ammo.DeployUnlockMaximumAmount"); |
| 336 | |
| 337 | this->AutoDeath_Behavior.Read(exINI, pSection, "AutoDeath.Behavior"); |
| 338 | this->AutoDeath_VanishAnimation.Read(exINI, pSection, "AutoDeath.VanishAnimation"); |
| 339 | this->AutoDeath_OnAmmoDepletion.Read(exINI, pSection, "AutoDeath.OnAmmoDepletion"); |
| 340 | this->AutoDeath_AfterDelay.Read(exINI, pSection, "AutoDeath.AfterDelay"); |
| 341 | this->AutoDeath_TechnosDontExist.Read(exINI, pSection, "AutoDeath.TechnosDontExist"); |
| 342 | this->AutoDeath_TechnosDontExist_Any.Read(exINI, pSection, "AutoDeath.TechnosDontExist.Any"); |
| 343 | this->AutoDeath_TechnosDontExist_AllowLimboed.Read(exINI, pSection, "AutoDeath.TechnosDontExist.AllowLimboed"); |
| 344 | this->AutoDeath_TechnosDontExist_Houses.Read(exINI, pSection, "AutoDeath.TechnosDontExist.Houses"); |
| 345 | this->AutoDeath_TechnosExist.Read(exINI, pSection, "AutoDeath.TechnosExist"); |
| 346 | this->AutoDeath_TechnosExist_Any.Read(exINI, pSection, "AutoDeath.TechnosExist.Any"); |
| 347 | this->AutoDeath_TechnosExist_AllowLimboed.Read(exINI, pSection, "AutoDeath.TechnosExist.AllowLimboed"); |
| 348 | this->AutoDeath_TechnosExist_Houses.Read(exINI, pSection, "AutoDeath.TechnosExist.Houses"); |
| 349 | |
| 350 | this->Slaved_OwnerWhenMasterKilled.Read(exINI, pSection, "Slaved.OwnerWhenMasterKilled"); |
| 351 | this->SlavesFreeSound.Read(exINI, pSection, "SlavesFreeSound"); |
| 352 | this->SellSound.Read(exINI, pSection, "SellSound"); |
| 353 | this->EVA_Sold.Read(exINI, pSection, "EVA.Sold"); |
| 354 | |
| 355 | this->VoiceCreated.Read(exINI, pSection, "VoiceCreated"); |
nothing calls this directly
no test coverage detected