#ifndef __GOLD_H__
#define __GOLD_H__

#include <vector>
#include "position.h"
#include "rng.h"
#include "item.h"

class gold : public item {
private:
        int amount;
        bool locked;
public:
        gold(const position &pos, const int amount);
        void print(output *out) const override;

        int get_amount() const;
        void set_amount(const int new_amount);
        bool is_locked() const;
        void unlock();
};

typedef std::vector<gold> gold_list;

gold get_gold_at(const position &pos, gold_list &glist);
int rand_gold_pile(RNG *rng);
int rand_gold_drop(RNG *rng);

#endif
