]> de.git.xonotic.org Git - xonotic/xonotic-data.pk3dir.git/blobdiff - qcsrc/common/weapons/w_minelayer.qc
No need for that extra prefix
[xonotic/xonotic-data.pk3dir.git] / qcsrc / common / weapons / w_minelayer.qc
index bb7bae1bf674ef7357f1fa166c2ba97faf200878..a3b0f0cc10a678bf2a899d044dfbfae82f621ab8 100644 (file)
@@ -2,7 +2,7 @@
 REGISTER_WEAPON(
 /* WEP_##id */ MINE_LAYER,
 /* function */ w_minelayer,
-/* ammotype */ IT_ROCKETS,
+/* ammotype */ ammo_rockets,
 /* impulse  */ 4,
 /* flags    */ WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH,
 /* rating   */ BOT_PICKUP_RATING_HIGH,
@@ -11,32 +11,36 @@ REGISTER_WEAPON(
 /* fullname */ _("Mine Layer")
 );
 
-#define MINELAYER_SETTINGS(w_cvar,w_prop) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, ammo) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, animtime) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, damage) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, damageforcescale) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, detonatedelay) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, edgedamage) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, force) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, health) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, lifetime) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, lifetime_countdown) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, limit) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, protection) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, proximityradius) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, radius) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, refire) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, remote_damage) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, remote_edgedamage) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, remote_force) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, remote_radius) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, speed) \
-       w_cvar(WEP_MINE_LAYER, minelayer, MO_NONE, time) \
-       w_prop(WEP_MINE_LAYER, minelayer, reloading_ammo, reload_ammo) \
-       w_prop(WEP_MINE_LAYER, minelayer, reloading_time, reload_time) \
-       w_prop(WEP_MINE_LAYER, minelayer, switchdelay_raise, switchdelay_raise) \
-       w_prop(WEP_MINE_LAYER, minelayer, switchdelay_drop, switchdelay_drop)
+#define MINELAYER_SETTINGS(w_cvar,w_prop) MINELAYER_SETTINGS_LIST(w_cvar, w_prop, MINE_LAYER, minelayer)
+#define MINELAYER_SETTINGS_LIST(w_cvar,w_prop,id,sn) \
+       w_cvar(id, sn, NONE, ammo) \
+       w_cvar(id, sn, NONE, animtime) \
+       w_cvar(id, sn, NONE, damage) \
+       w_cvar(id, sn, NONE, damageforcescale) \
+       w_cvar(id, sn, NONE, detonatedelay) \
+       w_cvar(id, sn, NONE, edgedamage) \
+       w_cvar(id, sn, NONE, force) \
+       w_cvar(id, sn, NONE, health) \
+       w_cvar(id, sn, NONE, lifetime) \
+       w_cvar(id, sn, NONE, lifetime_countdown) \
+       w_cvar(id, sn, NONE, limit) \
+       w_cvar(id, sn, NONE, protection) \
+       w_cvar(id, sn, NONE, proximityradius) \
+       w_cvar(id, sn, NONE, radius) \
+       w_cvar(id, sn, NONE, refire) \
+       w_cvar(id, sn, NONE, remote_damage) \
+       w_cvar(id, sn, NONE, remote_edgedamage) \
+       w_cvar(id, sn, NONE, remote_force) \
+       w_cvar(id, sn, NONE, remote_radius) \
+       w_cvar(id, sn, NONE, speed) \
+       w_cvar(id, sn, NONE, time) \
+       w_prop(id, sn, float,  reloading_ammo, reload_ammo) \
+       w_prop(id, sn, float,  reloading_time, reload_time) \
+       w_prop(id, sn, float,  switchdelay_raise, switchdelay_raise) \
+       w_prop(id, sn, float,  switchdelay_drop, switchdelay_drop) \
+       w_prop(id, sn, string, weaponreplace, weaponreplace) \
+       w_prop(id, sn, float,  weaponstart, weaponstart) \
+       w_prop(id, sn, float,  weaponstartoverride, weaponstartoverride)
 
 #ifdef SVQC
 MINELAYER_SETTINGS(WEP_ADD_CVAR, WEP_ADD_PROP)
@@ -315,7 +319,7 @@ void W_Mine_Attack (void)
                }
        }
 
-       W_DecreaseAmmo(ammo_rockets, WEP_CVAR(minelayer, ammo), autocvar_g_balance_minelayer_reload_ammo);
+       W_DecreaseAmmo(WEP_CVAR(minelayer, ammo));
 
        W_SetupShot_ProjectileSize (self, '-4 -4 -4', '4 4 4', FALSE, 5, "weapons/mine_fire.wav", CH_WEAPON_A, WEP_CVAR(minelayer, damage));
        pointparticles(particleeffectnum("rocketlauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1);