38 lines
956 B
C++
38 lines
956 B
C++
#ifndef __PLAYER_H__
|
|
#define __PLAYER_H__
|
|
|
|
#include "characters.h"
|
|
|
|
enum game_command : int;
|
|
|
|
class player_base: public character {
|
|
protected:
|
|
int gold_cnt;
|
|
potion_list potions;
|
|
public:
|
|
player_base(RNG *rng, const feature enabled_features,
|
|
const enum race &nrace);
|
|
virtual long_result move(level *lvl, const position &p);
|
|
|
|
virtual long_result apply(potion *p);
|
|
|
|
virtual long_result attack(character *ch) override;
|
|
virtual long_result get_hit(character *ch, const int tATK,
|
|
const fraction &hit_rate) override;
|
|
|
|
virtual void add_gold(int amount);
|
|
|
|
void print(output *out) override;
|
|
|
|
std::string get_abbrev() const override;
|
|
|
|
long_result interpret_command(level *lvl, game_command cmd);
|
|
|
|
int get_gold() const;
|
|
int get_ATK() const;
|
|
int get_DEF() const;
|
|
int get_HP() const;
|
|
};
|
|
|
|
#endif
|