-
Notifications
You must be signed in to change notification settings - Fork 0
/
Lirael.hpp
51 lines (45 loc) · 1.54 KB
/
Lirael.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/************************************************************************************
** Program name: 162 Final Project
** Author: Kristin Wood
** Date: 3/14/2018
** Description: This class is the main character of the game. It defines enums for
** items she can carry in her pack, as well as the 7 bells in her bandolier.
** Within the class definition, there are variables for strength, maximum
** strength, a vector of PackItems, a pointer to her location, and bools for
** if she has bells, a dark mirror, and the Disreputable Dog. She also has get
** and set functions, functions to add, remove and display her items, and use
** her bells.
************************************************************************************/
#ifndef LIRAEL_HPP
#define LIRAEL_HPP
#include <vector>
#include "isInt.hpp"
class Space;
enum PackItems {BELLS, SWORD, DOG, MIRROR, SKIN, BOOK, MOUSE};
enum Bells {RANNA, MOSRAEL, KIBETH, DYRIM, BELGAER, SARANETH, ASTARAEL};
class Lirael {
private:
int strength;
int maxStrength;
std::vector<PackItems> pack;
Space* location;
bool hasBells;
bool hasMirror;
bool hasDog;
public:
Lirael();
void addItem(PackItems);
void removeItem(int);
void displayItems();
Bells useBell();
void setMaxStrength(int); //When upper limit needs to be increased.
int getMaxStrength();
void addStrength(int);
int getStrength();
void setLocation(Space*);
Space* getLocation();
bool getBells();
bool getMirror();
bool getDog();
};
#endif //LIRAEL_HPP