+ #ifdef DEBUGMODE
+ log("Setting Player data for %s", name);
+ #endif
+}
+
+monster_::~monster_()
+{
+ delete name;
+ delete weapon;
+ delete death;
+}
+
+monster_::monster_()
+{
+ name = new char[64];
+ weapon = new char[64];
+ death = new char[512];
+
+ memset(name, 0, 64);
+ memset(weapon, 0, 64);
+ memset(death, 0, 512);
+}
+
+monster_::monster_(monster_ *m)
+{
+ name = new char[strlen(m->name) + 1];
+ weapon = new char[strlen(m->weapon) + 1];
+ death = new char[strlen(m->death) + 1];
+
+ strcpy(name, m->name);
+ strcpy(weapon, m->weapon);
+ strcpy(death, m->death);
+
+ strength = m->strength;
+ maxhp = m->maxhp;
+ hp = m->hp;
+ gold = m->gold;
+ exp = m->exp;
+}
+
+monster_::monster_(monster_ &m)
+{
+ name = new char[strlen(m.name) + 1];
+ weapon = new char[strlen(m.weapon) + 1];
+ death = new char[strlen(m.death) + 1];
+
+ strcpy(name, m.name);
+ strcpy(weapon, m.weapon);
+ strcpy(death, m.death);
+
+ strength = m.strength;
+ maxhp = m.maxhp;
+ hp = m.hp;
+ gold = m.gold;
+ exp = m.exp;
+}
+
+long int Player::setFlags(long int newflags)
+{
+ flags = newflags;
+ return getFlags();
+}
+
+long int Player::addFlag(long int flag)
+{
+ flags |= flag;
+ return getFlags();
+}
+
+long int Player::remFlag(long int flag)
+{
+ flags &= ~flag;
+ return getFlags();
+}
+
+Pouch::Pouch(int h, int s, int d)
+{
+ setHealing(h);
+ setStrength(s);
+ setDefense(d);