#pragma once

#include "tesla_weapon.qh"

CLASS(TeslaCoil, Turret)
#ifdef GAMEQC
/* spawnflags */ ATTRIB(TeslaCoil, spawnflags, int, TUR_FLAG_HITSCAN | TUR_FLAG_PLAYER | TUR_FLAG_MISSILE);
/* mins       */ ATTRIB(TeslaCoil, m_mins, vector, '-60 -60 0');
/* maxs       */ ATTRIB(TeslaCoil, m_maxs, vector, '60 60 128');
/* modelname  */ ATTRIB(TeslaCoil, mdl, string, "tesla_base.md3");
/* model      */ ATTRIB_STRZONE(TeslaCoil, model, string, strcat("models/turrets/", this.mdl));
/* head_model */ ATTRIB_STRZONE(TeslaCoil, head_model, string, strcat("models/turrets/", "tesla_head.md3"));
#endif
/* netname    */ ATTRIB(TeslaCoil, netname, string, "tesla");
/* fullname   */ ATTRIB(TeslaCoil, m_name, string, _("Tesla Coil"));
#ifdef SVQC
/* weapon     */ ATTRIB(TeslaCoil, m_weapon, Weapon, WEP_TESLA);
#endif

#define X(BEGIN, P, END, class, prefix) \
	BEGIN(class) \
		TR_PROPS_COMMON(P, class, prefix) \
	END()
	TR_PROPS(X, TeslaCoil, tesla)
#undef X

ENDCLASS(TeslaCoil)
REGISTER_TURRET(TESLA, NEW(TeslaCoil));
