#ifndef _SITHTEMPLATE_H
#define _SITHTEMPLATE_H

#include "types.h"
#include "globals.h"

#define sithTemplate_Startup_ADDR (0x004DD880)
#define sithTemplate_Shutdown_ADDR (0x004DD8A0)
#define sithTemplate_AllocWorldTemplates_ADDR (0x004DD8C0)
#define sithTemplate_GetTemplateByIndex_ADDR (0x004DD970)
#define sithTemplate_ReadThingTemplatesListText_ADDR (0x004DD9B0)
#define sithTemplate_OldNew_ADDR (0x004DDB00)
#define sithTemplate_OldFree_ADDR (0x004DDCE0)
#define sithTemplate_FreeWorldTemplates_ADDR (0x004DDDB0)
#define sithTemplate_GetTemplate_ADDR (0x004DDE50)
#define sithTemplate_Parse_ADDR (0x004DDF30)

int sithTemplate_Startup();
void sithTemplate_Shutdown();
int sithTemplate_AllocWorldTemplates(SithWorld *pWorld, unsigned int size);
SithThing* sithTemplate_GetTemplateByIndex(int idx);
int sithTemplate_ReadThingTemplatesListText(SithWorld *pWorld, int bSkip);
int sithTemplate_OldNew(char *fpath);
void sithTemplate_OldFree();
void sithTemplate_FreeWorldTemplates(SithWorld *pWorld);
SithThing* sithTemplate_GetTemplate(const char *pName);
SithThing* sithTemplate_Parse(SithWorld *pWorld);

#endif // _SITHTEMPLATE_H
