Ares
|
#include <src/Enum/ArmorTypes.h>
Public Member Functions | |
ArmorType (const char *Title) | |
virtual | ~ArmorType () |
virtual void | LoadFromINI (CCINIClass *pINI) |
Static Public Member Functions | |
static void | LoadForWarhead (CCINIClass *pINI, WarheadTypeClass *pWH) |
static void | AddDefaults () |
Public Attributes | |
int | DefaultIndex |
WarheadTypeExt::VersesData | DefaultVerses |
ArmorType::ArmorType | ( | const char * | Title | ) | [inline] |
{ AresCRT::strCopy(this->Name, Title, 31); DefaultIndex = -1; Array.AddItem(this); }
virtual ArmorType::~ArmorType | ( | ) | [inline, virtual] |
void ArmorType::AddDefaults | ( | ) | [static] |
{ FindOrAllocate("none"); FindOrAllocate("flak"); FindOrAllocate("plate"); FindOrAllocate("light"); FindOrAllocate("medium"); FindOrAllocate("heavy"); FindOrAllocate("wood"); FindOrAllocate("steel"); FindOrAllocate("concrete"); FindOrAllocate("special_1"); FindOrAllocate("special_2"); }
void ArmorType::LoadForWarhead | ( | CCINIClass * | pINI, |
WarheadTypeClass * | pWH | ||
) | [static] |
{ WarheadTypeExt::ExtData *pData = WarheadTypeExt::ExtMap.Find(pWH); if(!pData) { return; } while(pData->Verses.Count < Array.Count) { ArmorType *pArmor = Array[pData->Verses.Count]; int idx = pArmor->DefaultIndex; pData->Verses.AddItem( idx == -1 ? pArmor->DefaultVerses : pData->Verses[idx] ); } char buffer[0x80]; char ret[0x20]; const char *section = pWH->get_ID(); for(int i = 0; i < Array.Count; ++i) { _snprintf(buffer, 64, "Versus.%s", Array[i]->Name); if(pINI->ReadString(section, buffer, "", ret, 0x20)) { pData->Verses[i].Parse(ret); } _snprintf(buffer, 128, "Versus.%s.ForceFire", Array[i]->Name); pData->Verses[i].ForceFire = pINI->ReadBool(section, buffer, pData->Verses[i].ForceFire); _snprintf(buffer, 128, "Versus.%s.Retaliate", Array[i]->Name); pData->Verses[i].Retaliate = pINI->ReadBool(section, buffer, pData->Verses[i].Retaliate); _snprintf(buffer, 128, "Versus.%s.PassiveAcquire", Array[i]->Name); pData->Verses[i].PassiveAcquire = pINI->ReadBool(section, buffer, pData->Verses[i].PassiveAcquire); } }
void ArmorType::LoadFromINI | ( | CCINIClass * | pINI | ) | [virtual] |
{ const char *section = Enumerable<ArmorType>::GetMainSection(); char buffer[0x40]; pINI->ReadString(section, this->Name, "", buffer, 0x40); this->DefaultIndex = ArmorType::FindIndex(buffer); WarheadTypeExt::VersesData *VS = &this->DefaultVerses; VS->Parse(buffer); }