21 #ifndef __PSNPCLOADER_H__    22 #define __PSNPCLOADER_H__    27 #include <csutil/csstring.h>    66     bool SaveDialogsToFile(csString &area, csString &filename, 
int questid, 
bool quest);
    70     csRef<iDocumentNode> npcRoot;
    78     csArray<csString>           knowledgeAreas;
    79     csArray<int>                knowledgeAreasPriority;
    80     csArray<psTrainerSkill>     trainerSkills;
    81     csString                    factionStandings;
    86     csArray<int>                triggers;
    90     bool ReadDescription();
    94     void ReadKnowledgeAreas();
    95     void ReadSpecificKnowledge(
int questID = -1);
    96     void ReadSpecialResponses(
int questID = -1);
    97     void ReadTrainerInfo();
    98     void ReadMerchantInfo();
   103     void SetupEquipment();
   106     bool WriteToDatabase();
   111     void WriteBasicInfo();
   112     void WriteDescription();
   113     void WriteKnowledgeAreas();
   114     bool WriteResponse(csRef<iDocumentNode> attitudeNode, 
int id, 
int questID);
   115     bool WriteTrigger(csRef<iDocumentNode> specificsNode, csString &trigger, 
int priorID, 
int questID = -1);
   116     bool WriteSpecificKnowledge(
int questid = -1);
   117     void WriteFactions();
   119     void WriteMerchantInfo();
   120     void WriteTrainerInfo();
   123     void WriteLocation();
   124     void WriteEquipment();
 This is a utility class used to load/save NPCs from/to an XML file Was used in the past to load NPCs ...
 
bool LoadDialogsFromFile(csString &filename)
 
bool LoadFromFile(csString &filename)
 
This is used to handle <specificknowledge> and <specialresponse> tags. 
 
bool SaveDialogsToFile(csString &area, csString &filename, int questid, bool quest)
 
bool SaveToFile(int id, csString &filename)
 
bool RemoveFromDatabase(int npcid)