Files
GTASource/game/SaveLoad/SavegameScriptData/script_save_xml_trees.cpp
expvintl 419f2e4752 init
2025-02-23 17:40:52 +08:00

47 lines
1.1 KiB
C++

#include "script_save_xml_trees.h"
// **************************************** SaveGameDataBlock - Script - CScriptSaveXmlTrees ****************************
#if SAVEGAME_USES_XML
void CScriptSaveXmlTrees::Shutdown()
{
// Because the elements of TreeArray are parTreeNode* rather than parTreeNode,
// Reset is not enough to call ~parTreeNode so I need to call delete
// for each element to free all the memory for parTreeNodes
int ArraySize = TreeArray.GetCount();
for (int loop = 0; loop < ArraySize; loop++)
{
delete TreeArray[loop];
}
TreeArray.Reset();
}
void CScriptSaveXmlTrees::Append(parTreeNode *pTreeNode)
{
TreeArray.PushAndGrow(pTreeNode);
}
parTreeNode *CScriptSaveXmlTrees::GetTreeNode(u32 TreeIndex)
{
return TreeArray[TreeIndex];
}
void CScriptSaveXmlTrees::DeleteTreeFromArray(u32 TreeIndex)
{
// remove parTree from the array and delete the parTree
// will this work?
delete TreeArray[TreeIndex];
TreeArray.DeleteFast(TreeIndex);
}
int CScriptSaveXmlTrees::GetTreeCount()
{
return TreeArray.GetCount();
}
#endif // SAVEGAME_USES_XML