Conquer Space
0.0.0
A space themed grand strategy game set in the near future, with realistic orbital mechanics, and an emphasis on economics and politics.
src
core
components
science.h
Go to the documentation of this file.
1
/* Conquer Space
2
* Copyright (C) 2021-2025 Conquer Space
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program. If not, see <https://www.gnu.org/licenses/>.
16
*/
17
#pragma once
18
19
#include <map>
20
#include <set>
21
#include <string>
22
#include <vector>
23
24
#include <entt/entt.hpp>
25
26
#include "
core/components/resource.h
"
27
28
namespace
cqsp::core::components::science
{
29
struct
Field
{
30
std::vector<entt::entity>
parents
;
// Should probably changed to a set
31
std::vector<entt::entity>
adjacent
;
// same
32
};
33
34
struct
Science
{
35
int
difficulty
;
36
std::vector<entt::entity>
fields
;
37
};
38
39
struct
ScienceProject
{};
40
41
// The amount of research a country has
42
struct
ScientificResearch
{
43
int
research
= 0;
44
};
45
46
struct
Technology
{
47
std::set<entt::entity>
fields
;
48
std::vector<std::string>
actions
;
49
50
int
difficulty
;
51
};
52
}
// namespace cqsp::core::components::science
cqsp::core::components::science
Definition:
science.h:28
resource.h
cqsp::core::components::science::Field
Definition:
science.h:29
cqsp::core::components::science::Field::adjacent
std::vector< entt::entity > adjacent
Definition:
science.h:31
cqsp::core::components::science::Field::parents
std::vector< entt::entity > parents
Definition:
science.h:30
cqsp::core::components::science::Science
Definition:
science.h:34
cqsp::core::components::science::Science::difficulty
int difficulty
Definition:
science.h:35
cqsp::core::components::science::Science::fields
std::vector< entt::entity > fields
Definition:
science.h:36
cqsp::core::components::science::ScienceProject
Definition:
science.h:39
cqsp::core::components::science::ScientificResearch
Definition:
science.h:42
cqsp::core::components::science::ScientificResearch::research
int research
Definition:
science.h:43
cqsp::core::components::science::Technology
Definition:
science.h:46
cqsp::core::components::science::Technology::difficulty
int difficulty
Definition:
science.h:50
cqsp::core::components::science::Technology::actions
std::vector< std::string > actions
Definition:
science.h:48
cqsp::core::components::science::Technology::fields
std::set< entt::entity > fields
Definition:
science.h:47
Generated on Thu Jul 9 2026 07:40:54 for Conquer Space by
1.9.2