summaryrefslogtreecommitdiff
path: root/plugins/dwarfexport
diff options
context:
space:
mode:
authorPetr Mrázek2012-02-09 03:07:26 +0100
committerPetr Mrázek2012-02-09 03:07:26 +0100
commit8f680dcf9482748b4a9ddaf3601c1a656622a994 (patch)
tree6fe46b31f3a11bd3f27d48eef55f9f8cf72b705e /plugins/dwarfexport
parentf7d8635be1dd00871e60c6adc388ac2cd865dd4b (diff)
downloaddfhack-8f680dcf9482748b4a9ddaf3601c1a656622a994.tar.gz
dfhack-8f680dcf9482748b4a9ddaf3601c1a656622a994.tar.bz2
dfhack-8f680dcf9482748b4a9ddaf3601c1a656622a994.tar.xz
Make it build and run on linux (no stonesense, df2mc, dfusion)
Diffstat (limited to 'plugins/dwarfexport')
-rw-r--r--plugins/dwarfexport/dwarfexport.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/plugins/dwarfexport/dwarfexport.cpp b/plugins/dwarfexport/dwarfexport.cpp
index 3dfd3f88..20d48f39 100644
--- a/plugins/dwarfexport/dwarfexport.cpp
+++ b/plugins/dwarfexport/dwarfexport.cpp
@@ -28,6 +28,7 @@ using df::global::world;
// our own, empty header.
#include "dwarfexport.h"
+#include <df/personality_facet_type.h>
// Here go all the command declarations...
@@ -106,18 +107,26 @@ static void printAttributes(Core* c, df::unit* cre, ostream& out) {
out << " </Attributes>" << endl;
}
-static void printTraits(Core* c, df::unit* cre, ostream& out) {
+static void printTraits(Core* c, df::unit* cre, ostream& out)
+{
+
out << " <Traits>" << endl;
df::unit_soul * s = cre->status.current_soul;
- if (s) {
- for (int i = 0; i < NUM_CREATURE_TRAITS; i++) {
- out << " <Trait name='" << c->vinfo->getTraitName(i) <<
- "' value='" << s->traits[i] << "'>";
+ if (s)
+ {
+ FOR_ENUM_ITEMS(personality_facet_type,index)
+ {
+ out << " <Trait name='" << df::enums::personality_facet_type::get_key(index) <<
+ "' value='" << s->traits[index] << "'>";
+ //FIXME: needs reimplementing trait string generation
+ /*
string trait = c->vinfo->getTrait(i, s->traits[i]);
if (!trait.empty()) {
out << trait.c_str();
}
+ */
out << "</Trait>" << endl;
+
}
}
out << " </Traits>" << endl;