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.
sysmovement.h
Go to the documentation of this file.
1/* Conquer Space
2 * Copyright (C) 2021-2023 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 <vector>
20
22
23namespace cqsp {
24namespace common {
25namespace systems {
27 public:
29 void DoSystem() override;
30 int Interval() override { return 1; }
31
32 void ParseOrbitTree(entt::entity parent, entt::entity body);
33};
34
40void LeaveSOI(Universe& universe, const entt::entity& body);
41
48bool EnterSOI(Universe& universe, const entt::entity& parent, const entt::entity& body);
49
50class SysPath : public ISimulationSystem {
51 public:
53 void DoSystem();
54 int Interval() { return 1; }
55};
56
58 public:
60 void DoSystem();
61 int Interval() { return 1; }
62};
63} // namespace systems
64} // namespace common
65} // namespace cqsp
Wrapper class for all the components of the game, so that all the game stuff can be initialized in on...
Definition: game.h:28
Definition: universe.h:32
Definition: isimulationsystem.h:27
Game & game
Definition: isimulationsystem.h:43
Definition: sysmovement.h:26
void ParseOrbitTree(entt::entity parent, entt::entity body)
Definition: sysmovement.cpp:138
void DoSystem() override
Definition: sysmovement.cpp:35
SysOrbit(Game &game)
Definition: sysmovement.h:28
int Interval() override
Definition: sysmovement.h:30
Definition: sysmovement.h:50
SysPath(Game &game)
Definition: sysmovement.h:52
void DoSystem()
Definition: sysmovement.cpp:207
int Interval()
Definition: sysmovement.h:54
Definition: sysmovement.h:57
SysSurface(Game &game)
Definition: sysmovement.h:59
int Interval()
Definition: sysmovement.h:61
void DoSystem()
Definition: sysmovement.cpp:191
std::string parent
Definition: loadplanets.cpp:48
bool EnterSOI(Universe &universe, const entt::entity &parent, const entt::entity &body)
Change the current body's SOI into a child SOI
Definition: sysmovement.cpp:222
void LeaveSOI(Universe &universe, const entt::entity &body, entt::entity &parent, cqspt::Orbit &orb, cqspt::Kinematics &pos, cqspt::Kinematics &p_pos)
Definition: sysmovement.cpp:41
When adding assets, it is extremely crucial that you read cqsp::asset::AssetLoader::LoadResources to ...
Definition: clientctx.h:21
common::Universe * universe
Definition: turnsavewindow.h:3