From 975339d07aeb193564221adff31b55a913d92a1e Mon Sep 17 00:00:00 2001 From: Aki Date: Sun, 23 Apr 2023 12:54:14 +0200 Subject: Separated Turret from AI, shuffled their units --- sim/include/kurator/sim/TurretControl.h | 25 ------------------------- sim/include/kurator/sim/ai.h | 23 +++++++++++++++++++++++ sim/include/kurator/sim/components.h | 8 -------- sim/include/kurator/sim/weapons.h | 31 +++++++++++++++++++++++++++++++ 4 files changed, 54 insertions(+), 33 deletions(-) delete mode 100644 sim/include/kurator/sim/TurretControl.h create mode 100644 sim/include/kurator/sim/ai.h create mode 100644 sim/include/kurator/sim/weapons.h (limited to 'sim/include') diff --git a/sim/include/kurator/sim/TurretControl.h b/sim/include/kurator/sim/TurretControl.h deleted file mode 100644 index ecafb90..0000000 --- a/sim/include/kurator/sim/TurretControl.h +++ /dev/null @@ -1,25 +0,0 @@ -#pragma once - -#include - -#include "State.h" - - -namespace kurator -{ -namespace sim -{ - - -struct TurretControl -{ - double delay; - double reload; - int rounds; - entt::entity owner; - static void update(State& ctx); -}; - - -} // namespace sim -} // namespace kurator diff --git a/sim/include/kurator/sim/ai.h b/sim/include/kurator/sim/ai.h new file mode 100644 index 0000000..f9899d6 --- /dev/null +++ b/sim/include/kurator/sim/ai.h @@ -0,0 +1,23 @@ +#pragma once + +#include + +#include + + +namespace kurator +{ +namespace sim +{ + + +struct AIShip +{ + double keep_at_range; + engine::Point destination; + entt::entity target = entt::null; +}; + + +} // namespace sim +} // namespace kurator diff --git a/sim/include/kurator/sim/components.h b/sim/include/kurator/sim/components.h index f329c0e..c4d8abc 100644 --- a/sim/include/kurator/sim/components.h +++ b/sim/include/kurator/sim/components.h @@ -25,13 +25,5 @@ struct Team }; -struct AIState -{ - double keep_at_range; - engine::Point destination; - entt::entity target = entt::null; -}; - - } // namespace sim } // namespace kurator diff --git a/sim/include/kurator/sim/weapons.h b/sim/include/kurator/sim/weapons.h new file mode 100644 index 0000000..7dd5b3b --- /dev/null +++ b/sim/include/kurator/sim/weapons.h @@ -0,0 +1,31 @@ +#pragma once + +#include + +#include + +#include "State.h" + + +namespace kurator +{ +namespace sim +{ + + +struct Turret +{ + entt::entity owner; + universe::TurretType type; + double delay = 0.0; + double reload = 0.0; + int rounds = type.rounds; + void shoot_at(State& ctx, const entt::entity& target, double distance); +}; + + +void update_turrets(State& ctx); + + +} // namespace sim +} // namespace kurator -- cgit v1.1