summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2023-01-27 22:37:21 +0100
committerAki <please@ignore.pl>2023-01-27 22:37:21 +0100
commit161f92d0cf6982e605a7ec1be6eb19dc60951c45 (patch)
tree213afac48f03f006ade9aa67fc33fc28a4460228
parent25c604f1f2e50ea2cbabf3c5f9147dd57fd9dd44 (diff)
downloadkurator-161f92d0cf6982e605a7ec1be6eb19dc60951c45.zip
kurator-161f92d0cf6982e605a7ec1be6eb19dc60951c45.tar.gz
kurator-161f92d0cf6982e605a7ec1be6eb19dc60951c45.tar.bz2
Added damage per second to weapons tooltips
-rw-r--r--kurator/src/ScenarioEditor.cpp3
-rw-r--r--universe/include/kurator/universe/TurretType.h1
-rw-r--r--universe/src/TurretType.cpp7
3 files changed, 10 insertions, 1 deletions
diff --git a/kurator/src/ScenarioEditor.cpp b/kurator/src/ScenarioEditor.cpp
index b573d54..b9d3ada 100644
--- a/kurator/src/ScenarioEditor.cpp
+++ b/kurator/src/ScenarioEditor.cpp
@@ -154,7 +154,8 @@ loadout_editor(std::shared_ptr<universe::Repository> repo, campaign::Loadout& lo
}
if (ImGui::IsItemHovered()) {
ImGui::BeginTooltip();
- ImGui::Text("Damage: %.0f", type.base_damage);
+ ImGui::Text("Base Damage: %.0f", type.base_damage);
+ ImGui::Text("DPS: %.1f", type.damage_per_second());
ImGui::Text("RoF: %.1fs", type.rate_of_fire);
ImGui::Text("Reload: %.1fs", type.reload);
ImGui::Text("Rounds: %d", type.rounds);
diff --git a/universe/include/kurator/universe/TurretType.h b/universe/include/kurator/universe/TurretType.h
index 0a0c5fd..c7ba5a3 100644
--- a/universe/include/kurator/universe/TurretType.h
+++ b/universe/include/kurator/universe/TurretType.h
@@ -21,6 +21,7 @@ struct TurretType
double falloff_intensity = 0.2;
double effective_damage(double distance) const;
double effective_range() const;
+ double damage_per_second() const;
};
diff --git a/universe/src/TurretType.cpp b/universe/src/TurretType.cpp
index b6e006d..78887d7 100644
--- a/universe/src/TurretType.cpp
+++ b/universe/src/TurretType.cpp
@@ -28,5 +28,12 @@ TurretType::effective_range() const
}
+double
+TurretType::damage_per_second() const
+{
+ return (base_damage * rounds) / (rounds * rate_of_fire + reload);
+}
+
+
} // namespace universe
} // namespace kurator