From b9bee108e1fb8c46470f54e52d11e3b2b53f906f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Petr=20Mr=C3=A1zek?= Date: Tue, 31 Aug 2010 06:52:03 +0200 Subject: [PATCH] Sync, fixes. --- data/Memory-ng.xml | 16 +++++++++------- library/ContextShared.cpp | 7 ++++--- library/VersionInfoFactory.cpp | 26 +++++++++++++------------- library/modules/Creatures.cpp | 4 ++-- library/modules/Materials.cpp | 6 ++++-- tools/examples/creaturedump.cpp | 6 ++++-- 6 files changed, 36 insertions(+), 29 deletions(-) diff --git a/data/Memory-ng.xml b/data/Memory-ng.xml index 9ba868c52..d22192b81 100644 --- a/data/Memory-ng.xml +++ b/data/Memory-ng.xml @@ -892,7 +892,7 @@ -
+
@@ -953,7 +953,7 @@
-
+
@@ -1168,7 +1168,7 @@ -
+
@@ -1350,7 +1350,7 @@ -
+
@@ -1368,6 +1368,7 @@
+
@@ -1419,7 +1420,7 @@ -
+
@@ -1430,6 +1431,7 @@
+
@@ -1553,7 +1555,7 @@
-
+
@@ -1700,7 +1702,7 @@ -
+
diff --git a/library/ContextShared.cpp b/library/ContextShared.cpp index 5b6c0bae6..62ca3fff1 100644 --- a/library/ContextShared.cpp +++ b/library/ContextShared.cpp @@ -40,9 +40,10 @@ DFContextShared::~DFContextShared() bool DFContextShared::InitReadNames() { - name_firstname_offset = offset_descriptor->getOffset("name_firstname"); - name_nickname_offset = offset_descriptor->getOffset("name_nickname"); - name_words_offset = offset_descriptor->getOffset("name_words"); + OffsetGroup * OG = offset_descriptor->getGroup("name"); + name_firstname_offset = OG->getOffset("first"); + name_nickname_offset = OG->getOffset("nick"); + name_words_offset = OG->getOffset("second_words"); return true; } diff --git a/library/VersionInfoFactory.cpp b/library/VersionInfoFactory.cpp index 11007f00c..83102648e 100644 --- a/library/VersionInfoFactory.cpp +++ b/library/VersionInfoFactory.cpp @@ -294,7 +294,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Professions") { - pElement2nd = entry->FirstChildElement("Profession"); + pElement2nd = pElement->FirstChildElement("Profession"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Profession")) { const char * id = pElement2nd->Attribute("id"); @@ -313,7 +313,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Jobs") { - pElement2nd = entry->FirstChildElement("Job"); + pElement2nd = pElement->FirstChildElement("Job"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Job")) { const char * id = pElement2nd->Attribute("id"); @@ -331,7 +331,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Skills") { - pElement2nd = entry->FirstChildElement("Skill"); + pElement2nd = pElement->FirstChildElement("Skill"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Skill")) { const char * id = pElement2nd->Attribute("id"); @@ -349,17 +349,17 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Traits") { - pElement2nd = entry->FirstChildElement("Trait"); + pElement2nd = pElement->FirstChildElement("Trait"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Trait")) { const char * id = pElement2nd->Attribute("id"); const char * name = pElement2nd->Attribute("name"); - const char * lvl0 = pElement->Attribute("level_0"); - const char * lvl1 = pElement->Attribute("level_1"); - const char * lvl2 = pElement->Attribute("level_2"); - const char * lvl3 = pElement->Attribute("level_3"); - const char * lvl4 = pElement->Attribute("level_4"); - const char * lvl5 = pElement->Attribute("level_5"); + const char * lvl0 = pElement2nd->Attribute("level_0"); + const char * lvl1 = pElement2nd->Attribute("level_1"); + const char * lvl2 = pElement2nd->Attribute("level_2"); + const char * lvl3 = pElement2nd->Attribute("level_3"); + const char * lvl4 = pElement2nd->Attribute("level_4"); + const char * lvl5 = pElement2nd->Attribute("level_5"); if(id && name && lvl0 && lvl1 && lvl2 && lvl3 && lvl4 && lvl5) { mem->setTrait(id, name, lvl0, lvl1, lvl2, lvl3, lvl4, lvl5); @@ -373,7 +373,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Labors") { - pElement2nd = entry->FirstChildElement("Labor"); + pElement2nd = pElement->FirstChildElement("Labor"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Labor")) { const char * id = pElement2nd->Attribute("id"); @@ -391,7 +391,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Levels") { - pElement2nd = entry->FirstChildElement("Level"); + pElement2nd = pElement->FirstChildElement("Level"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Level")) { const char * id = pElement2nd->Attribute("id"); @@ -410,7 +410,7 @@ void VersionInfoFactory::ParseBase (TiXmlElement* entry, VersionInfo* mem) } else if (type == "Moods") { - pElement2nd = entry->FirstChildElement("Mood"); + pElement2nd = pElement->FirstChildElement("Mood"); for(;pElement2nd;pElement2nd=pElement2nd->NextSiblingElement("Mood")) { const char * id = pElement2nd->Attribute("id"); diff --git a/library/modules/Creatures.cpp b/library/modules/Creatures.cpp index 141828243..0ab171440 100644 --- a/library/modules/Creatures.cpp +++ b/library/modules/Creatures.cpp @@ -83,8 +83,8 @@ Creatures::Creatures(DFContextShared* _d) creatures.profession_offset = OG_creature->getOffset ("profession"); creatures.race_offset = OG_creature->getOffset ("race"); creatures.pos_offset = OG_creature->getOffset ("position"); - creatures.flags1_offset = OG_creature->getOffset ("creature_flags1"); - creatures.flags2_offset = OG_creature->getOffset ("creature_flags2"); + creatures.flags1_offset = OG_creature->getOffset ("flags1"); + creatures.flags2_offset = OG_creature->getOffset ("flags2"); creatures.sex_offset = OG_creature->getOffset ("sex"); creatures.caste_offset = OG_creature->getOffset ("caste"); creatures.id_offset = OG_creature->getOffset ("id"); diff --git a/library/modules/Materials.cpp b/library/modules/Materials.cpp index b5ce66306..a7f4e63da 100644 --- a/library/modules/Materials.cpp +++ b/library/modules/Materials.cpp @@ -71,6 +71,7 @@ Materials::~Materials() bool Materials::Finish() { + /* inorganic.clear(); organic.clear(); tree.clear(); @@ -80,6 +81,7 @@ bool Materials::Finish() color.clear(); other.clear(); alldesc.clear(); + */ return true; } @@ -331,8 +333,8 @@ bool Materials::ReadCreatureTypesEx (void) OffsetGroup * OG_Creature = OG_Mats->getGroup("creature"); uint32_t castes_vector_offset = OG_Creature->getOffset ("caste_vector"); uint32_t extract_vector_offset = OG_Creature->getOffset ("extract_vector"); - uint32_t tile_offset = OG_Creature->getOffset ("creature_tile"); - uint32_t tile_color_offset = OG_Creature->getOffset ("creature_tile_color"); + uint32_t tile_offset = OG_Creature->getOffset ("tile"); + uint32_t tile_color_offset = OG_Creature->getOffset ("tile_color"); OffsetGroup * OG_Caste = OG_Creature->getGroup("caste"); uint32_t caste_colormod_offset = OG_Caste->getOffset ("color_modifiers"); uint32_t caste_attributes_offset = OG_Caste->getOffset ("attributes"); diff --git a/tools/examples/creaturedump.cpp b/tools/examples/creaturedump.cpp index 316624d92..c4bb8e4ac 100644 --- a/tools/examples/creaturedump.cpp +++ b/tools/examples/creaturedump.cpp @@ -271,8 +271,9 @@ void printCreature(DFHack::Context * DF, const DFHack::t_creature & creature) } } - std::vector inventory; - + //std::vector inventory; + // FIXME: TOO BAD... + /* if( Creatures->ReadInventoryPtr(creature.origin, inventory) ) { DFHack::Items * Items = DF->getItems(); @@ -282,6 +283,7 @@ void printCreature(DFHack::Context * DF, const DFHack::t_creature & creature) printf("\t\t%s\n", Items->getItemDescription(inventory[i], Materials).c_str()); } } + */ /* if(creature.pregnancy_timer > 0)