#pragma once #include "flac_weapon.qh" CLASS(Flac, Turret) /* spawnflags */ ATTRIB(Flac, spawnflags, int, TUR_FLAG_SPLASH | TUR_FLAG_FASTPROJ | TUR_FLAG_MISSILE); /* mins */ ATTRIB(Flac, m_mins, vector, '-32 -32 0'); /* maxs */ ATTRIB(Flac, m_maxs, vector, '32 32 64'); /* modelname */ ATTRIB(Flac, mdl, string, "base.md3"); /* model */ ATTRIB_STRZONE(Flac, model, string, strcat("models/turrets/", this.mdl)); /* head_model */ ATTRIB_STRZONE(Flac, head_model, string, strcat("models/turrets/", "flac.md3")); /* netname */ ATTRIB(Flac, netname, string, "flac"); /* fullname */ ATTRIB(Flac, turret_name, string, _("FLAC Cannon")); ATTRIB(Flac, m_weapon, Weapon, WEP_FLAC); #define X(BEGIN, P, END, class, prefix) \ BEGIN(class) \ P(class, prefix, aim_firetolerance_dist, float) \ P(class, prefix, aim_maxpitch, float) \ P(class, prefix, aim_maxrot, float) \ P(class, prefix, aim_speed, float) \ P(class, prefix, ammo, float) \ P(class, prefix, ammo_max, float) \ P(class, prefix, ammo_recharge, float) \ P(class, prefix, health, float) \ P(class, prefix, respawntime, float) \ P(class, prefix, shot_dmg, float) \ P(class, prefix, shot_force, float) \ P(class, prefix, shot_radius, float) \ P(class, prefix, shot_refire, float) \ P(class, prefix, shot_speed, float) \ P(class, prefix, shot_spread, float) \ P(class, prefix, shot_volly, float) \ P(class, prefix, shot_volly_refire, float) \ P(class, prefix, target_range, float) \ P(class, prefix, target_range_min, float) \ P(class, prefix, target_range_optimal, float) \ P(class, prefix, target_select_anglebias, float) \ P(class, prefix, target_select_missilebias, float) \ P(class, prefix, target_select_playerbias, float) \ P(class, prefix, target_select_rangebias, float) \ P(class, prefix, target_select_samebias, float) \ P(class, prefix, track_accel_pitch, float) \ P(class, prefix, track_accel_rot, float) \ P(class, prefix, track_blendrate, float) \ P(class, prefix, track_type, float) \ END() TR_PROPS(X, Flac, flac) #undef X ENDCLASS(Flac) REGISTER_TURRET(FLAC, NEW(Flac));