diff options
Diffstat (limited to 'universe')
-rw-r--r-- | universe/include/kurator/universe/TurretType.h | 1 | ||||
-rw-r--r-- | universe/src/TurretType.cpp | 9 |
2 files changed, 10 insertions, 0 deletions
diff --git a/universe/include/kurator/universe/TurretType.h b/universe/include/kurator/universe/TurretType.h index 553894b..0a0c5fd 100644 --- a/universe/include/kurator/universe/TurretType.h +++ b/universe/include/kurator/universe/TurretType.h @@ -20,6 +20,7 @@ struct TurretType double falloff_modifier = 0.05; double falloff_intensity = 0.2; double effective_damage(double distance) const; + double effective_range() const; }; diff --git a/universe/src/TurretType.cpp b/universe/src/TurretType.cpp index d213d07..a215b32 100644 --- a/universe/src/TurretType.cpp +++ b/universe/src/TurretType.cpp @@ -19,5 +19,14 @@ TurretType::effective_damage(const double distance) const } +double +TurretType::effective_range() const +{ + const double target = std::log2(0.01) / std::log2(falloff_intensity); + const double one_percent_falloff = target * falloff_modifier * optimal_range; + return one_percent_falloff + optimal_range; +} + + } // namespace universe } // namespace kurator |