-
Notifications
You must be signed in to change notification settings - Fork 0
/
Produce.hpp
46 lines (41 loc) · 840 Bytes
/
Produce.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
#ifndef PRODUCE_H
#define PRODUCE_H
#include <iostream>
#include <vector>
enum class Produce {
WOOD,
STONE,
ORE,
BRICK,
PAPER,
CLOTH,
GLASS,
VP,
GEAR,
COMPASS,
TABLET,
ANY_SCIENCE,
COIN,
SHIELD,
WOOD_OR_BRICK,
STONE_OR_BRICK,
BRICK_OR_ORE,
STONE_OR_WOOD,
WOOD_OR_ORE,
ORE_OR_STONE,
RAW_MATERIAL,
MANUFACTURED_GOOD,
LEFT_RAW_CHEAP,
RIGHT_RAW_CHEAP,
MANUFACTURED_CHEAP,
FREE_STRUCTURE,
FROM_DISCARD,
BUILD_SEVENTH,
};
std::vector<Produce> simplify(const Produce& p);
std::vector<Produce> simplifyForBuy(const Produce& p);
//bool operator<(const Produce& lhs, const Produce& rhs) {
// return static_cast<int>(lhs) < static_cast<int>(rhs);
//}
std::ostream& operator<< (std::ostream& o, const Produce& p);
#endif//PRODUCE_H