Zappy GUI
C++ graphic client: renderer, camera, network
Loading...
Searching...
No Matches
Resources.hpp
Go to the documentation of this file.
1
#pragma once
2
3
#include <ostream>
4
#include <stdexcept>
5
#include <string>
6
10
class
Resources
{
11
public
:
12
int
food
= 0;
13
int
linemate
= 0;
14
int
deraumere
= 0;
15
int
sibur
= 0;
16
int
mendiane
= 0;
17
int
phiras
= 0;
18
int
thystame
= 0;
19
20
bool
isEmpty
()
const
21
{
22
return
food
== 0 &&
linemate
== 0 &&
deraumere
== 0 &&
sibur
== 0 &&
mendiane
== 0 &&
23
phiras
== 0 &&
thystame
== 0;
24
}
25
26
std::string
get_name
(
int
index)
const
27
{
28
switch
(index) {
29
case
0:
30
return
"Food"
;
31
case
1:
32
return
"Linemate"
;
33
case
2:
34
return
"Deraumere"
;
35
case
3:
36
return
"Sibur"
;
37
case
4:
38
return
"Mendiane"
;
39
case
5:
40
return
"Phiras"
;
41
case
6:
42
return
"Thystame"
;
43
default
:
44
throw
std::out_of_range(
"Invalid resource index"
);
45
}
46
}
47
48
int
&
operator[]
(
size_t
index)
49
{
50
switch
(index) {
51
case
0:
52
return
food
;
53
case
1:
54
return
linemate
;
55
case
2:
56
return
deraumere
;
57
case
3:
58
return
sibur
;
59
case
4:
60
return
mendiane
;
61
case
5:
62
return
phiras
;
63
case
6:
64
return
thystame
;
65
default
:
66
throw
std::out_of_range(
"Invalid resource index"
);
67
}
68
}
69
70
const
int
&
operator[]
(
size_t
index)
const
71
{
72
switch
(index) {
73
case
0:
74
return
food
;
75
case
1:
76
return
linemate
;
77
case
2:
78
return
deraumere
;
79
case
3:
80
return
sibur
;
81
case
4:
82
return
mendiane
;
83
case
5:
84
return
phiras
;
85
case
6:
86
return
thystame
;
87
default
:
88
throw
std::out_of_range(
"Invalid resource index"
);
89
}
90
}
91
};
92
93
inline
std::ostream&
operator<<
(std::ostream& os,
const
Resources
& res)
94
{
95
os <<
"Food: "
<< res.
food
<<
", Linemate: "
<< res.
linemate
<<
", Deraumere: "
<< res.
deraumere
96
<<
", Sibur: "
<< res.
sibur
<<
", Mendiane: "
<< res.
mendiane
<<
", Phiras: "
<< res.
phiras
97
<<
", Thystame: "
<< res.
thystame
;
98
return
os;
99
}
operator<<
std::ostream & operator<<(std::ostream &os, const Resources &res)
Definition
Resources.hpp:93
Resources
Resources::isEmpty
bool isEmpty() const
Resources::mendiane
int mendiane
Definition
Resources.hpp:16
Resources::operator[]
int & operator[](size_t index)
Resources::linemate
int linemate
Definition
Resources.hpp:13
Resources::get_name
static std::string get_name(int index)
Resources::food
int food
Definition
Resources.hpp:12
Resources::thystame
int thystame
Definition
Resources.hpp:18
Resources::phiras
int phiras
Definition
Resources.hpp:17
Resources::deraumere
int deraumere
Definition
Resources.hpp:14
Resources::sibur
int sibur
Definition
Resources.hpp:15
gui
src
core
Resources.hpp
Generated by
1.9.8