diff options
author | Philipp Sehmisch <tmw@crushnet.org> | 2008-05-20 13:58:26 +0000 |
---|---|---|
committer | Philipp Sehmisch <tmw@crushnet.org> | 2008-05-20 13:58:26 +0000 |
commit | 8f07e2055ddda6e3ef9414cd08c849b5c6a6562c (patch) | |
tree | c9cf43a08cc35fde512562224d37c9e043eee041 /src/resources/npcdb.cpp | |
parent | 94d5480fe407fb1228d0c023fae3fc155912dd1e (diff) | |
download | mana-8f07e2055ddda6e3ef9414cd08c849b5c6a6562c.tar.gz mana-8f07e2055ddda6e3ef9414cd08c849b5c6a6562c.tar.bz2 mana-8f07e2055ddda6e3ef9414cd08c849b5c6a6562c.tar.xz mana-8f07e2055ddda6e3ef9414cd08c849b5c6a6562c.zip |
fixed some filename confusion messup in the last commit.
Diffstat (limited to 'src/resources/npcdb.cpp')
-rw-r--r-- | src/resources/npcdb.cpp | 35 |
1 files changed, 19 insertions, 16 deletions
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; |