-
Notifications
You must be signed in to change notification settings - Fork 0
/
Holding.hpp
49 lines (36 loc) · 1.18 KB
/
Holding.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
//Kanellaki Maria Anna - 1115201400060
//Matanis Panagiotis - 1115201400297
#ifndef PROJECT_HOLDING_HPP
#define PROJECT_HOLDING_HPP
#include <string>
#include "BlackCard.hpp"
using namespace std;
class Deck;
class Holding: public BlackCard {
string name;
Holdings typeH;
int cost;
bool tapped;
bool revealed;
int harvestValue;
Holding * upperHolding; //null if it is not subHolding of other holding
Holding * subHolding; //null if it is not upperHolding of other holding
public:
Holding(string n, int t, int spT, int c, int val);
bool ChainHoldings(list<Card*>, Holding*) override;
void PrintHolding();
int getHoldingType();
~Holding() override;
int getCost() const override;
bool isTapped() const;
int getHarvestValue() const override;
Holding *getUpperHolding() const override;
Holding *getSubHolding() const override;
void setHarvestValue(int harvestValue);
void setTapped(bool tapped);
bool isRevealed() const;
void setRevealed(bool revealed);
void setUpperHolding(Holding *upperHolding) override;
void setSubHolding(Holding *subHolding) override;
};
#endif //PROJECT_HOLDING_HPP