#ifndef ABILITY_H
#define ABILITY_H

#include <stdint.h>

#include "../util/fileUtils.h"
#include <libxml/parser.h>
#include <libxml/tree.h>
#include <libxml/xpath.h>
#include <libxml/xpathInternals.h>

#include <string>
using namespace std;

#define NULL_INDEX 0

class Ability {
 public:
  Ability ();
  ~Ability ();

  void clearAbility ();

  bool getEquipped ();
  void setEquipped (bool g);
  const string & getAbilityName ();
  void setAbilityName (const string & x);

  int16_t getQuantity ();
  void setQuantity (int16_t);
  void incQuantity ();
  void decQuantity ();

 private:
  bool equipped;
  string id;
  int16_t quantity; // < 0 means infinite
};

#endif
