summaryrefslogtreecommitdiff
path: root/sim/include
diff options
context:
space:
mode:
Diffstat (limited to 'sim/include')
-rw-r--r--sim/include/kurator/sim/HitPoints.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/sim/include/kurator/sim/HitPoints.h b/sim/include/kurator/sim/HitPoints.h
index b9a8523..0004999 100644
--- a/sim/include/kurator/sim/HitPoints.h
+++ b/sim/include/kurator/sim/HitPoints.h
@@ -9,8 +9,18 @@ namespace sim
struct HitPoints
{
- double structure;
- double structure_resists = 0.7;
+ HitPoints(double base_shield, double base_armour, double base_structure);
+
+ struct Layer
+ {
+ double points;
+ double resists = 0.7;
+ double consume(double& damage);
+ };
+
+ Layer structure;
+ Layer armour;
+ Layer shield;
double deal(double damage);
bool is_alive() const;
double total() const;