summaryrefslogtreecommitdiff
path: root/universe/include/kurator/universe/TurretType.h
blob: c00c2eaf8dea4b1bd31b47c683696a5034f405d0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#pragma once

#include <string>


namespace kurator
{
namespace universe
{


struct TurretType
{
	std::string name;
	int rounds = 1;
	double base_damage = 0.0;
	double rate_of_fire = 1.0;
	double reload = 0.0;
	double optimal_range = 0.0;
	double falloff_modifier = 0.05;
	double falloff_intensity = 0.2;
	double effective_damage(double distance) const;
	double range_modifier(double distance) const;
	double effective_range() const;
	double damage_per_second() const;
};


}  // namespace universe
}  // namespace kurator