3 #include <common/weapons/all.qh>
5 CLASS(OverkillRocketPropelledChainsaw, Weapon)
6 /* spawnfunc */ ATTRIB(OverkillRocketPropelledChainsaw, m_canonical_spawnfunc, string, "weapon_okrpc");
7 /* ammotype */ ATTRIB(OverkillRocketPropelledChainsaw, ammo_type, Resource, RES_ROCKETS);
8 /* impulse */ ATTRIB(OverkillRocketPropelledChainsaw, impulse, int, 9);
9 /* flags */ ATTRIB(OverkillRocketPropelledChainsaw, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_CANCLIMB | WEP_FLAG_RELOADABLE | WEP_TYPE_SPLASH | WEP_FLAG_SUPERWEAPON);
10 /* rating */ ATTRIB(OverkillRocketPropelledChainsaw, bot_pickupbasevalue, float, 10000);
11 /* color */ ATTRIB(OverkillRocketPropelledChainsaw, wpcolor, vector, '0.5 0.5 0');
12 /* modelname */ ATTRIB(OverkillRocketPropelledChainsaw, mdl, string, "ok_rl");
14 /* model */ ATTRIB(OverkillRocketPropelledChainsaw, m_model, Model, MDL_RPC_ITEM);
15 /* flash mdl */ ATTRIB(OverkillRocketPropelledChainsaw, m_muzzlemodel, Model, MDL_RPC_MUZZLEFLASH);
16 /* flash eff */ ATTRIB(OverkillRocketPropelledChainsaw, m_muzzleeffect, entity, EFFECT_ROCKET_MUZZLEFLASH);
18 /* crosshair */ ATTRIB(OverkillRocketPropelledChainsaw, w_crosshair, string, "gfx/crosshairrocketlauncher");
19 /* crosshair */ ATTRIB(OverkillRocketPropelledChainsaw, w_crosshair_size, float, 0.6);
20 /* wepimg */ ATTRIB(OverkillRocketPropelledChainsaw, model2, string, "weaponrpc");
21 /* refname */ ATTRIB(OverkillRocketPropelledChainsaw, netname, string, "okrpc");
22 /* wepname */ ATTRIB(OverkillRocketPropelledChainsaw, m_name, string, _("Overkill Rocket Propelled Chainsaw"));
23 /* legacy */ ATTRIB(OverkillRocketPropelledChainsaw, m_deprecated_netname, string, "rpc");
25 #define RPC_MINS '-4 -4 -4' // 0.8.5 used '-3 -3 -3' (before sv_legacy_bbox_expand 0)
26 #define RPC_MAXS '4 4 4' // 0.8.5 used '3 3 3' (before sv_legacy_bbox_expand 0)
28 #define X(BEGIN, P, END, class, prefix) \
30 P(class, prefix, ammo, float, PRI) \
31 P(class, prefix, animtime, float, PRI) \
32 P(class, prefix, damage, float, PRI) \
33 P(class, prefix, damage2, float, PRI) \
34 P(class, prefix, damageforcescale, float, PRI) \
35 P(class, prefix, edgedamage, float, PRI) \
36 P(class, prefix, force, float, PRI) \
37 P(class, prefix, health, float, PRI) \
38 P(class, prefix, lifetime, float, PRI) \
39 P(class, prefix, radius, float, PRI) \
40 P(class, prefix, refire, float, PRI) \
41 P(class, prefix, speedaccel, float, PRI) \
42 P(class, prefix, speed, float, PRI) \
43 P(class, prefix, ammo, float, SEC) \
44 P(class, prefix, animtime, float, SEC) \
45 P(class, prefix, damage, float, SEC) \
46 P(class, prefix, delay, float, SEC) \
47 P(class, prefix, edgedamage, float, SEC) \
48 P(class, prefix, force, float, SEC) \
49 P(class, prefix, force_zscale, float, SEC) \
50 P(class, prefix, lifetime, float, SEC) \
51 P(class, prefix, radius, float, SEC) \
52 P(class, prefix, refire, float, SEC) \
53 P(class, prefix, refire_type, float, SEC) \
54 P(class, prefix, shotangle, float, SEC) \
55 P(class, prefix, speed, float, SEC) \
56 P(class, prefix, spread, float, SEC) \
57 P(class, prefix, reload_ammo, float, NONE) \
58 P(class, prefix, reload_time, float, NONE) \
59 P(class, prefix, switchdelay_drop, float, NONE) \
60 P(class, prefix, switchdelay_raise, float, NONE) \
61 P(class, prefix, weaponreplace, string, NONE) \
62 P(class, prefix, weaponstartoverride, float, NONE) \
63 P(class, prefix, weaponstart, float, NONE) \
64 P(class, prefix, weaponthrowable, float, NONE) \
66 W_PROPS(X, OverkillRocketPropelledChainsaw, okrpc)
69 ENDCLASS(OverkillRocketPropelledChainsaw)
70 REGISTER_WEAPON(OVERKILL_RPC, okrpc, NEW(OverkillRocketPropelledChainsaw));
72 //SPAWNFUNC_WEAPON(weapon_okrpc, WEP_OVERKILL_RPC)
73 //SPAWNFUNC_WEAPON(weapon_rpc, WEP_OVERKILL_RPC)