From 8f07e2055ddda6e3ef9414cd08c849b5c6a6562c Mon Sep 17 00:00:00 2001 From: Philipp Sehmisch Date: Tue, 20 May 2008 13:58:26 +0000 Subject: fixed some filename confusion messup in the last commit. --- src/resources/npcdb.cpp | 35 +++++++++++++++++++---------------- 1 file changed, 19 insertions(+), 16 deletions(-) (limited to 'src/resources/npcdb.cpp') diff --git a/src/resources/npcdb.cpp b/src/resources/npcdb.cpp index 589effa9..bc1c920e 100644 --- a/src/resources/npcdb.cpp +++ b/src/resources/npcdb.cpp @@ -45,7 +45,7 @@ void NPCDB::load() NPCsprite *unknownSprite = new NPCsprite; unknownSprite->sprite = "error.xml"; unknownSprite->variant = 0; - mUnknown.push_back(unknownSprite); + mUnknown.sprites.push_back(unknownSprite); logger->log("Initializing NPC database..."); @@ -74,17 +74,20 @@ void NPCDB::load() for_each_xml_child_node(spriteNode, npcNode) { - if (!xmlStrEqual(spriteNode->name, BAD_CAST "sprite")) - continue; - - NPCsprite *currentSprite = new NPCsprite; - currentSprite->sprite = (const char*)spriteNode->xmlChildrenNode->content; - currentSprite->variant = XML::getProperty(spriteNode, "variant", 0); - currentInfo->push_back(currentSprite); + if (xmlStrEqual(spriteNode->name, BAD_CAST "sprite")) + { + NPCsprite *currentSprite = new NPCsprite; + currentSprite->sprite = (const char*)spriteNode->xmlChildrenNode->content; + currentSprite->variant = XML::getProperty(spriteNode, "variant", 0); + currentInfo->sprites.push_back(currentSprite); + } + else if (xmlStrEqual(spriteNode->name, BAD_CAST "particlefx")) + { + std::string particlefx = (const char*)spriteNode->xmlChildrenNode->content; + currentInfo->particles.push_back(particlefx); + } } - mNPCInfos[id] = currentInfo; - } mLoaded = true; @@ -97,20 +100,20 @@ NPCDB::unload() i != mNPCInfos.end(); i++) { - while (!i->second->empty()) + while (!i->second->sprites.empty()) { - delete i->second->front(); - i->second->pop_front(); + delete i->second->sprites.front(); + i->second->sprites.pop_front(); } delete i->second; } mNPCInfos.clear(); - while (!mUnknown.empty()) + while (!mUnknown.sprites.empty()) { - delete mUnknown.front(); - mUnknown.pop_front(); + delete mUnknown.sprites.front(); + mUnknown.sprites.pop_front(); } mLoaded = false; -- cgit v1.2.3-70-g09d2