From: Lyberta Date: Tue, 24 Apr 2018 21:04:41 +0000 (+0300) Subject: Renamed hmg to okhmg. X-Git-Tag: xonotic-v0.8.5~2119^2~11 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=734cdbddb9045ace2ee19f8114428fc2cd2b18de;p=xonotic%2Fxonotic-data.pk3dir.git Renamed hmg to okhmg. --- diff --git a/bal-wep-mario.cfg b/bal-wep-mario.cfg index 4c0eebfae..37ad0b459 100644 --- a/bal-wep-mario.cfg +++ b/bal-wep-mario.cfg @@ -778,23 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_ammo 1 -set g_balance_hmg_damage 30 -set g_balance_hmg_force 10 -set g_balance_hmg_refire 0.05 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_solidpenetration 32 -set g_balance_hmg_spread_add 0.005 -set g_balance_hmg_spread_max 0.06 -set g_balance_hmg_spread_min 0.01 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_ammo 10 diff --git a/bal-wep-nexuiz25.cfg b/bal-wep-nexuiz25.cfg index f10275919..554d5ea84 100644 --- a/bal-wep-nexuiz25.cfg +++ b/bal-wep-nexuiz25.cfg @@ -778,23 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_ammo 1 -set g_balance_hmg_damage 30 -set g_balance_hmg_force 10 -set g_balance_hmg_refire 0.05 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_solidpenetration 32 -set g_balance_hmg_spread_add 0.005 -set g_balance_hmg_spread_max 0.06 -set g_balance_hmg_spread_min 0.01 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_ammo 10 diff --git a/bal-wep-overkill.cfg b/bal-wep-overkill.cfg index 8d4033231..2564e700c 100644 --- a/bal-wep-overkill.cfg +++ b/bal-wep-overkill.cfg @@ -778,23 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_primary_ammo 1 -set g_balance_hmg_primary_damage 30 -set g_balance_hmg_primary_force 10 -set g_balance_hmg_primary_refire 0.05 -set g_balance_hmg_primary_solidpenetration 32 -set g_balance_hmg_primary_spread_add 0.005 -set g_balance_hmg_primary_spread_max 0.06 -set g_balance_hmg_primary_spread_min 0.01 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_primary_ammo 10 diff --git a/bal-wep-samual.cfg b/bal-wep-samual.cfg index 295756779..9fa51afb7 100644 --- a/bal-wep-samual.cfg +++ b/bal-wep-samual.cfg @@ -776,23 +776,36 @@ set g_balance_shotgun_weaponstart 0 set g_balance_shotgun_weaponstartoverride -1 set g_balance_shotgun_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_ammo 1 -set g_balance_hmg_damage 30 -set g_balance_hmg_force 10 -set g_balance_hmg_refire 0.05 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_solidpenetration 32 -set g_balance_hmg_spread_add 0.005 -set g_balance_hmg_spread_max 0.06 -set g_balance_hmg_spread_min 0.01 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_ammo 10 diff --git a/bal-wep-xdf.cfg b/bal-wep-xdf.cfg index fc9a1ddf8..7e5a465ba 100644 --- a/bal-wep-xdf.cfg +++ b/bal-wep-xdf.cfg @@ -778,23 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_ammo 1 -set g_balance_hmg_damage 30 -set g_balance_hmg_force 10 -set g_balance_hmg_refire 0.05 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_solidpenetration 32 -set g_balance_hmg_spread_add 0.005 -set g_balance_hmg_spread_max 0.06 -set g_balance_hmg_spread_min 0.01 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_ammo 10 diff --git a/bal-wep-xonotic.cfg b/bal-wep-xonotic.cfg index e8801663b..217705cd5 100644 --- a/bal-wep-xonotic.cfg +++ b/bal-wep-xonotic.cfg @@ -778,36 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_primary_ammo 1 -set g_balance_hmg_primary_damage 30 -set g_balance_hmg_primary_force 10 -set g_balance_hmg_primary_refire 0.05 -set g_balance_hmg_primary_solidpenetration 32 -set g_balance_hmg_primary_spread_add 0.005 -set g_balance_hmg_primary_spread_max 0.06 -set g_balance_hmg_primary_spread_min 0.01 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_secondary_ammo 0 -set g_balance_hmg_secondary_animtime 0.2 -set g_balance_hmg_secondary_damage 25 -set g_balance_hmg_secondary_delay 0 -set g_balance_hmg_secondary_edgedamage 12.5 -set g_balance_hmg_secondary_force 300 -set g_balance_hmg_secondary_lifetime 5 -set g_balance_hmg_secondary_radius 70 -set g_balance_hmg_secondary_refire 0.7 -set g_balance_hmg_secondary_refire_type 1 -set g_balance_hmg_secondary_shotangle 0 -set g_balance_hmg_secondary_speed 6000 -set g_balance_hmg_secondary_spread 0 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_primary_ammo 10 diff --git a/bal-wep-xpm.cfg b/bal-wep-xpm.cfg index 2a391a202..e0b3e2833 100644 --- a/bal-wep-xpm.cfg +++ b/bal-wep-xpm.cfg @@ -778,23 +778,36 @@ set g_balance_arc_weaponstart 0 set g_balance_arc_weaponstartoverride -1 set g_balance_arc_weaponthrowable 1 // }}} -// {{{ #21: Heavy Machine Gun -set g_balance_hmg_ammo 1 -set g_balance_hmg_damage 30 -set g_balance_hmg_force 10 -set g_balance_hmg_refire 0.05 -set g_balance_hmg_reload_ammo 120 -set g_balance_hmg_reload_time 1 -set g_balance_hmg_solidpenetration 32 -set g_balance_hmg_spread_add 0.005 -set g_balance_hmg_spread_max 0.06 -set g_balance_hmg_spread_min 0.01 -set g_balance_hmg_switchdelay_drop 0.2 -set g_balance_hmg_switchdelay_raise 0.2 -set g_balance_hmg_weaponreplace "" -set g_balance_hmg_weaponstart 0 -set g_balance_hmg_weaponstartoverride 0 -set g_balance_hmg_weaponthrowable 0 +// {{{ #21: Overkill Heavy Machine Gun +set g_balance_okhmg_primary_ammo 1 +set g_balance_okhmg_primary_damage 30 +set g_balance_okhmg_primary_force 10 +set g_balance_okhmg_primary_refire 0.05 +set g_balance_okhmg_primary_solidpenetration 32 +set g_balance_okhmg_primary_spread_add 0.005 +set g_balance_okhmg_primary_spread_max 0.06 +set g_balance_okhmg_primary_spread_min 0.01 +set g_balance_okhmg_reload_ammo 120 +set g_balance_okhmg_reload_time 1 +set g_balance_okhmg_secondary_ammo 0 +set g_balance_okhmg_secondary_animtime 0.2 +set g_balance_okhmg_secondary_damage 25 +set g_balance_okhmg_secondary_delay 0 +set g_balance_okhmg_secondary_edgedamage 12.5 +set g_balance_okhmg_secondary_force 300 +set g_balance_okhmg_secondary_lifetime 5 +set g_balance_okhmg_secondary_radius 70 +set g_balance_okhmg_secondary_refire 0.7 +set g_balance_okhmg_secondary_refire_type 1 +set g_balance_okhmg_secondary_shotangle 0 +set g_balance_okhmg_secondary_speed 6000 +set g_balance_okhmg_secondary_spread 0 +set g_balance_okhmg_switchdelay_drop 0.2 +set g_balance_okhmg_switchdelay_raise 0.2 +set g_balance_okhmg_weaponreplace "" +set g_balance_okhmg_weaponstart 0 +set g_balance_okhmg_weaponstartoverride 0 +set g_balance_okhmg_weaponthrowable 0 // }}} // {{{ #22: Rocket Propelled Chainsaw set g_balance_rpc_ammo 10 diff --git a/qcsrc/common/mutators/mutator/overkill/_mod.inc b/qcsrc/common/mutators/mutator/overkill/_mod.inc index 4ded17939..959902fd9 100644 --- a/qcsrc/common/mutators/mutator/overkill/_mod.inc +++ b/qcsrc/common/mutators/mutator/overkill/_mod.inc @@ -1,13 +1,12 @@ // generated file; do not modify -#include -#include -#include -#include -#include #ifdef CSQC #include #endif #ifdef SVQC #include #endif +#include +#include +#include +#include #include diff --git a/qcsrc/common/mutators/mutator/overkill/_mod.qh b/qcsrc/common/mutators/mutator/overkill/_mod.qh index db437c8b2..afe93c9f0 100644 --- a/qcsrc/common/mutators/mutator/overkill/_mod.qh +++ b/qcsrc/common/mutators/mutator/overkill/_mod.qh @@ -1,13 +1,12 @@ // generated file; do not modify -#include -#include -#include -#include -#include #ifdef CSQC #include #endif #ifdef SVQC #include #endif +#include +#include +#include +#include #include diff --git a/qcsrc/common/mutators/mutator/overkill/hmg.qc b/qcsrc/common/mutators/mutator/overkill/hmg.qc deleted file mode 100644 index 347e76d4b..000000000 --- a/qcsrc/common/mutators/mutator/overkill/hmg.qc +++ /dev/null @@ -1,168 +0,0 @@ -#include "hmg.qh" - -#ifdef SVQC - -REGISTER_MUTATOR(hmg_nadesupport, true); -MUTATOR_HOOKFUNCTION(hmg_nadesupport, Nade_Damage) -{ - if (M_ARGV(1, entity) != WEP_HMG) return; - return = true; - M_ARGV(3, float) /* damage */ = (M_ARGV(0, entity)).max_health * 0.1; -} - -void W_HeavyMachineGun_Attack_Auto(Weapon thiswep, entity actor, .entity weaponentity, int fire) -{ - if (!PHYS_INPUT_BUTTON_ATCK(actor)) - { - w_ready(thiswep, actor, weaponentity, fire); - return; - } - - if((!thiswep.wr_checkammo1(thiswep, actor, weaponentity) && !(actor.items & IT_UNLIMITED_WEAPON_AMMO)) || (!(actor.items & IT_SUPERWEAPON) && !(actor.items & IT_UNLIMITED_SUPERWEAPONS))) - { - W_SwitchWeapon_Force(actor, w_getbestweapon(actor, weaponentity), weaponentity); - w_ready(thiswep, actor, weaponentity, fire); - return; - } - - W_DecreaseAmmo(WEP_HMG, actor, WEP_CVAR_PRI(hmg, ammo), weaponentity); - - W_SetupShot(actor, weaponentity, true, 0, SND_UZI_FIRE, CH_WEAPON_A, WEP_CVAR_PRI(hmg, damage), WEP_HMG.m_id); - - if(!autocvar_g_norecoil) - { - actor.punchangle_x = random () - 0.5; - actor.punchangle_y = random () - 0.5; - } - - float hmg_spread = bound(WEP_CVAR_PRI(hmg, spread_min), WEP_CVAR_PRI(hmg, spread_min) + (WEP_CVAR_PRI(hmg, spread_add) * actor.(weaponentity).misc_bulletcounter), WEP_CVAR_PRI(hmg, spread_max)); - fireBullet(actor, weaponentity, w_shotorg, w_shotdir, hmg_spread, WEP_CVAR_PRI(hmg, solidpenetration), WEP_CVAR_PRI(hmg, damage), WEP_CVAR_PRI(hmg, force), WEP_HMG.m_id, 0); - - actor.(weaponentity).misc_bulletcounter = actor.(weaponentity).misc_bulletcounter + 1; - - Send_Effect(EFFECT_MACHINEGUN_MUZZLEFLASH, w_shotorg, w_shotdir * 1000, 1); - - W_MachineGun_MuzzleFlash(actor, weaponentity); - W_AttachToShotorg(actor, weaponentity, actor.(weaponentity).muzzle_flash, '5 0 0'); - - if (autocvar_g_casings >= 2) // casing code - { - makevectors(actor.v_angle); // for some reason, this is lost - SpawnCasing (((random () * 50 + 50) * v_right) - (v_forward * (random () * 25 + 25)) - ((random () * 5 - 70) * v_up), 2, vectoangles(v_forward),'0 250 0', 100, 3, actor, weaponentity); - } - - int slot = weaponslot(weaponentity); - ATTACK_FINISHED(actor, slot) = time + WEP_CVAR_PRI(hmg, refire) * W_WeaponRateFactor(actor); - weapon_thinkf(actor, weaponentity, WFRAME_FIRE1, WEP_CVAR_PRI(hmg, refire), W_HeavyMachineGun_Attack_Auto); -} - -METHOD(HeavyMachineGun, wr_aim, void(entity thiswep, entity actor, .entity weaponentity)) -{ - if(vdist(actor.origin - actor.enemy.origin, <, 3000 - bound(0, skill, 10) * 200)) - PHYS_INPUT_BUTTON_ATCK(actor) = bot_aim(actor, weaponentity, 1000000, 0, 0.001, false); - else - PHYS_INPUT_BUTTON_ATCK2(actor) = bot_aim(actor, weaponentity, 1000000, 0, 0.001, false); -} - -METHOD(HeavyMachineGun, wr_think, void(entity thiswep, entity actor, .entity weaponentity, int fire)) -{ - if ((WEP_CVAR_SEC(hmg, refire_type) == 1) && (fire & 2) && (time >= actor.jump_interval)) - { - // Secondary uses it's own refire timer if refire_type is 1. - actor.jump_interval = time + WEP_CVAR_SEC(hmg, refire) * W_WeaponRateFactor(actor); - BLASTER_SECONDARY_ATTACK(hmg, actor, weaponentity); - if ((actor.(weaponentity).wframe == WFRAME_IDLE) || - (actor.(weaponentity).wframe == WFRAME_FIRE2)) - { - // Set secondary fire animation. - vector a = '0 0 0'; - actor.(weaponentity).wframe = WFRAME_FIRE2; - a = actor.(weaponentity).anim_fire2; - a.z *= g_weaponratefactor; - FOREACH_CLIENT(true, LAMBDA( - if (it == actor || (IS_SPEC(it) && it.enemy == actor)) - { - wframe_send(it, actor.(weaponentity), a, true); - } - )); - animdecide_setaction(actor, ANIMACTION_SHOOT, true); - } - } - if (WEP_CVAR(hmg, reload_ammo) && actor.(weaponentity).clip_load < WEP_CVAR_PRI(hmg, ammo)) - { - // Forced reload. - thiswep.wr_reload(thiswep, actor, weaponentity); - return; - } - if (fire & 1) // Primary attack - { - if (!weapon_prepareattack(thiswep, actor, weaponentity, false, 0)) - { - return; - } - actor.(weaponentity).misc_bulletcounter = 0; - W_HeavyMachineGun_Attack_Auto(thiswep, actor, weaponentity, fire); - return; - } - if ((fire & 2) && (WEP_CVAR_SEC(hmg, refire_type) == 0)) // Secondary attack - { - if (!weapon_prepareattack(thiswep, actor, weaponentity, false, WEP_CVAR_SEC(hmg, refire))) - { - return; - } - BLASTER_SECONDARY_ATTACK(hmg, actor, weaponentity); - weapon_thinkf(actor, weaponentity, WFRAME_FIRE2, WEP_CVAR_SEC(hmg, animtime), w_ready); - } -} - -METHOD(HeavyMachineGun, wr_checkammo1, bool(entity thiswep, entity actor, .entity weaponentity)) -{ - float ammo_amount = GetResourceAmount(actor, thiswep.ammo_type) >= WEP_CVAR_PRI(hmg, ammo); - if (autocvar_g_balance_hmg_reload_ammo) - { - ammo_amount += actor.(weaponentity).(weapon_load[WEP_HMG.m_id]) >= WEP_CVAR_PRI(hmg, ammo); - } - return ammo_amount; -} - -METHOD(HeavyMachineGun, wr_checkammo2, bool(entity thiswep, entity actor, .entity weaponentity)) -{ - float ammo_amount = GetResourceAmount(actor, thiswep.ammo_type) >= WEP_CVAR_SEC(hmg, ammo); - if (autocvar_g_balance_hmg_reload_ammo) - { - ammo_amount += actor.(weaponentity).(weapon_load[WEP_HMG.m_id]) >= WEP_CVAR_SEC(hmg, ammo); - } - return ammo_amount; -} - -METHOD(HeavyMachineGun, wr_reload, void(entity thiswep, entity actor, .entity weaponentity)) -{ - W_Reload(actor, weaponentity, WEP_CVAR_PRI(hmg, ammo), SND_RELOAD); -} - -METHOD(HeavyMachineGun, wr_suicidemessage, Notification(entity thiswep)) -{ - return WEAPON_THINKING_WITH_PORTALS; -} - -METHOD(HeavyMachineGun, wr_killmessage, Notification(entity thiswep)) -{ - if(w_deathtype & HITTYPE_SECONDARY) - return WEAPON_HMG_MURDER_SNIPE; - else - return WEAPON_HMG_MURDER_SPRAY; -} - -#endif -#ifdef CSQC - -METHOD(HeavyMachineGun, wr_impacteffect, void(entity thiswep, entity actor)) -{ - vector org2; - org2 = w_org + w_backoff * 2; - pointparticles(EFFECT_MACHINEGUN_IMPACT, org2, w_backoff * 1000, 1); - if(!w_issilent) - sound(actor, CH_SHOTS, SND_RIC_RANDOM(), VOL_BASE, ATTEN_NORM); -} - -#endif diff --git a/qcsrc/common/mutators/mutator/overkill/hmg.qh b/qcsrc/common/mutators/mutator/overkill/hmg.qh deleted file mode 100644 index eafec5c17..000000000 --- a/qcsrc/common/mutators/mutator/overkill/hmg.qh +++ /dev/null @@ -1,60 +0,0 @@ -#pragma once - -#include - -CLASS(HeavyMachineGun, Weapon) -/* spawnfunc */ ATTRIB(HeavyMachineGun, m_canonical_spawnfunc, string, "weapon_hmg"); -/* ammotype */ ATTRIB(HeavyMachineGun, ammo_type, int, RESOURCE_BULLETS); -/* impulse */ ATTRIB(HeavyMachineGun, impulse, int, 3); -/* flags */ ATTRIB(HeavyMachineGun, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_SUPERWEAPON); -/* rating */ ATTRIB(HeavyMachineGun, bot_pickupbasevalue, float, 10000); -/* color */ ATTRIB(HeavyMachineGun, wpcolor, vector, '0.5 0.5 0'); -/* modelname */ ATTRIB(HeavyMachineGun, mdl, string, "ok_hmg"); -#ifdef GAMEQC -/* model */ ATTRIB(HeavyMachineGun, m_model, Model, MDL_HMG_ITEM); -#endif -/* crosshair */ ATTRIB(HeavyMachineGun, w_crosshair, string, "gfx/crosshairuzi"); -/* crosshair */ ATTRIB(HeavyMachineGun, w_crosshair_size, float, 0.6); -/* wepimg */ ATTRIB(HeavyMachineGun, model2, string, "weaponhmg"); -/* refname */ ATTRIB(HeavyMachineGun, netname, string, "hmg"); -/* wepname */ ATTRIB(HeavyMachineGun, m_name, string, _("Heavy Machine Gun")); - -#define X(BEGIN, P, END, class, prefix) \ - BEGIN(class) \ - P(class, prefix, ammo, float, PRI) \ - P(class, prefix, damage, float, PRI) \ - P(class, prefix, force, float, PRI) \ - P(class, prefix, refire, float, PRI) \ - P(class, prefix, solidpenetration, float, PRI) \ - P(class, prefix, spread_add, float, PRI) \ - P(class, prefix, spread_max, float, PRI) \ - P(class, prefix, spread_min, float, PRI) \ - P(class, prefix, ammo, float, SEC) \ - P(class, prefix, animtime, float, SEC) \ - P(class, prefix, damage, float, SEC) \ - P(class, prefix, delay, float, SEC) \ - P(class, prefix, edgedamage, float, SEC) \ - P(class, prefix, force, float, SEC) \ - P(class, prefix, lifetime, float, SEC) \ - P(class, prefix, radius, float, SEC) \ - P(class, prefix, refire, float, SEC) \ - P(class, prefix, refire_type, float, SEC) \ - P(class, prefix, shotangle, float, SEC) \ - P(class, prefix, speed, float, SEC) \ - P(class, prefix, spread, float, SEC) \ - P(class, prefix, reload_ammo, float, NONE) \ - P(class, prefix, reload_time, float, NONE) \ - P(class, prefix, switchdelay_drop, float, NONE) \ - P(class, prefix, switchdelay_raise, float, NONE) \ - P(class, prefix, weaponreplace, string, NONE) \ - P(class, prefix, weaponstartoverride, float, NONE) \ - P(class, prefix, weaponstart, float, NONE) \ - P(class, prefix, weaponthrowable, float, NONE) \ - END() - W_PROPS(X, HeavyMachineGun, hmg) -#undef X - -ENDCLASS(HeavyMachineGun) -REGISTER_WEAPON(HMG, hmg, NEW(HeavyMachineGun)); - -SPAWNFUNC_WEAPON(weapon_hmg, WEP_HMG) diff --git a/qcsrc/common/mutators/mutator/overkill/okhmg.qc b/qcsrc/common/mutators/mutator/overkill/okhmg.qc new file mode 100644 index 000000000..d278ca9d4 --- /dev/null +++ b/qcsrc/common/mutators/mutator/overkill/okhmg.qc @@ -0,0 +1,168 @@ +#include "okhmg.qh" + +#ifdef SVQC + +REGISTER_MUTATOR(okhmg_nadesupport, true); +MUTATOR_HOOKFUNCTION(okhmg_nadesupport, Nade_Damage) +{ + if (M_ARGV(1, entity) != WEP_OVERKILL_HMG) return; + return = true; + M_ARGV(3, float) /* damage */ = (M_ARGV(0, entity)).max_health * 0.1; +} + +void W_OverkillHeavyMachineGun_Attack_Auto(Weapon thiswep, entity actor, .entity weaponentity, int fire) +{ + if (!PHYS_INPUT_BUTTON_ATCK(actor)) + { + w_ready(thiswep, actor, weaponentity, fire); + return; + } + + if((!thiswep.wr_checkammo1(thiswep, actor, weaponentity) && !(actor.items & IT_UNLIMITED_WEAPON_AMMO)) || (!(actor.items & IT_SUPERWEAPON) && !(actor.items & IT_UNLIMITED_SUPERWEAPONS))) + { + W_SwitchWeapon_Force(actor, w_getbestweapon(actor, weaponentity), weaponentity); + w_ready(thiswep, actor, weaponentity, fire); + return; + } + + W_DecreaseAmmo(WEP_OVERKILL_HMG, actor, WEP_CVAR_PRI(okhmg, ammo), weaponentity); + + W_SetupShot(actor, weaponentity, true, 0, SND_UZI_FIRE, CH_WEAPON_A, WEP_CVAR_PRI(okhmg, damage), WEP_OVERKILL_HMG.m_id); + + if(!autocvar_g_norecoil) + { + actor.punchangle_x = random () - 0.5; + actor.punchangle_y = random () - 0.5; + } + + float okhmg_spread = bound(WEP_CVAR_PRI(okhmg, spread_min), WEP_CVAR_PRI(okhmg, spread_min) + (WEP_CVAR_PRI(okhmg, spread_add) * actor.(weaponentity).misc_bulletcounter), WEP_CVAR_PRI(okhmg, spread_max)); + fireBullet(actor, weaponentity, w_shotorg, w_shotdir, okhmg_spread, WEP_CVAR_PRI(okhmg, solidpenetration), WEP_CVAR_PRI(okhmg, damage), WEP_CVAR_PRI(okhmg, force), WEP_OVERKILL_HMG.m_id, 0); + + actor.(weaponentity).misc_bulletcounter = actor.(weaponentity).misc_bulletcounter + 1; + + Send_Effect(EFFECT_MACHINEGUN_MUZZLEFLASH, w_shotorg, w_shotdir * 1000, 1); + + W_MachineGun_MuzzleFlash(actor, weaponentity); + W_AttachToShotorg(actor, weaponentity, actor.(weaponentity).muzzle_flash, '5 0 0'); + + if (autocvar_g_casings >= 2) // casing code + { + makevectors(actor.v_angle); // for some reason, this is lost + SpawnCasing (((random () * 50 + 50) * v_right) - (v_forward * (random () * 25 + 25)) - ((random () * 5 - 70) * v_up), 2, vectoangles(v_forward),'0 250 0', 100, 3, actor, weaponentity); + } + + int slot = weaponslot(weaponentity); + ATTACK_FINISHED(actor, slot) = time + WEP_CVAR_PRI(okhmg, refire) * W_WeaponRateFactor(actor); + weapon_thinkf(actor, weaponentity, WFRAME_FIRE1, WEP_CVAR_PRI(okhmg, refire), W_OverkillHeavyMachineGun_Attack_Auto); +} + +METHOD(OverkillHeavyMachineGun, wr_aim, void(entity thiswep, entity actor, .entity weaponentity)) +{ + if(vdist(actor.origin - actor.enemy.origin, <, 3000 - bound(0, skill, 10) * 200)) + PHYS_INPUT_BUTTON_ATCK(actor) = bot_aim(actor, weaponentity, 1000000, 0, 0.001, false); + else + PHYS_INPUT_BUTTON_ATCK2(actor) = bot_aim(actor, weaponentity, 1000000, 0, 0.001, false); +} + +METHOD(OverkillHeavyMachineGun, wr_think, void(entity thiswep, entity actor, .entity weaponentity, int fire)) +{ + if ((WEP_CVAR_SEC(okhmg, refire_type) == 1) && (fire & 2) && (time >= actor.jump_interval)) + { + // Secondary uses it's own refire timer if refire_type is 1. + actor.jump_interval = time + WEP_CVAR_SEC(okhmg, refire) * W_WeaponRateFactor(actor); + BLASTER_SECONDARY_ATTACK(okhmg, actor, weaponentity); + if ((actor.(weaponentity).wframe == WFRAME_IDLE) || + (actor.(weaponentity).wframe == WFRAME_FIRE2)) + { + // Set secondary fire animation. + vector a = '0 0 0'; + actor.(weaponentity).wframe = WFRAME_FIRE2; + a = actor.(weaponentity).anim_fire2; + a.z *= g_weaponratefactor; + FOREACH_CLIENT(true, LAMBDA( + if (it == actor || (IS_SPEC(it) && it.enemy == actor)) + { + wframe_send(it, actor.(weaponentity), a, true); + } + )); + animdecide_setaction(actor, ANIMACTION_SHOOT, true); + } + } + if (WEP_CVAR(okhmg, reload_ammo) && actor.(weaponentity).clip_load < WEP_CVAR_PRI(okhmg, ammo)) + { + // Forced reload. + thiswep.wr_reload(thiswep, actor, weaponentity); + return; + } + if (fire & 1) // Primary attack + { + if (!weapon_prepareattack(thiswep, actor, weaponentity, false, 0)) + { + return; + } + actor.(weaponentity).misc_bulletcounter = 0; + W_OverkillHeavyMachineGun_Attack_Auto(thiswep, actor, weaponentity, fire); + return; + } + if ((fire & 2) && (WEP_CVAR_SEC(okhmg, refire_type) == 0)) // Secondary attack + { + if (!weapon_prepareattack(thiswep, actor, weaponentity, false, WEP_CVAR_SEC(okhmg, refire))) + { + return; + } + BLASTER_SECONDARY_ATTACK(okhmg, actor, weaponentity); + weapon_thinkf(actor, weaponentity, WFRAME_FIRE2, WEP_CVAR_SEC(okhmg, animtime), w_ready); + } +} + +METHOD(OverkillHeavyMachineGun, wr_checkammo1, bool(entity thiswep, entity actor, .entity weaponentity)) +{ + float ammo_amount = GetResourceAmount(actor, thiswep.ammo_type) >= WEP_CVAR_PRI(okhmg, ammo); + if (autocvar_g_balance_okhmg_reload_ammo) + { + ammo_amount += actor.(weaponentity).(weapon_load[WEP_OVERKILL_HMG.m_id]) >= WEP_CVAR_PRI(okhmg, ammo); + } + return ammo_amount; +} + +METHOD(OverkillHeavyMachineGun, wr_checkammo2, bool(entity thiswep, entity actor, .entity weaponentity)) +{ + float ammo_amount = GetResourceAmount(actor, thiswep.ammo_type) >= WEP_CVAR_SEC(okhmg, ammo); + if (autocvar_g_balance_okhmg_reload_ammo) + { + ammo_amount += actor.(weaponentity).(weapon_load[WEP_OVERKILL_HMG.m_id]) >= WEP_CVAR_SEC(okhmg, ammo); + } + return ammo_amount; +} + +METHOD(OverkillHeavyMachineGun, wr_reload, void(entity thiswep, entity actor, .entity weaponentity)) +{ + W_Reload(actor, weaponentity, WEP_CVAR_PRI(okhmg, ammo), SND_RELOAD); +} + +METHOD(OverkillHeavyMachineGun, wr_suicidemessage, Notification(entity thiswep)) +{ + return WEAPON_THINKING_WITH_PORTALS; +} + +METHOD(OverkillHeavyMachineGun, wr_killmessage, Notification(entity thiswep)) +{ + if(w_deathtype & HITTYPE_SECONDARY) + return WEAPON_OVERKILL_HMG_MURDER_SNIPE; + else + return WEAPON_OVERKILL_HMG_MURDER_SPRAY; +} + +#endif +#ifdef CSQC + +METHOD(OverkillHeavyMachineGun, wr_impacteffect, void(entity thiswep, entity actor)) +{ + vector org2; + org2 = w_org + w_backoff * 2; + pointparticles(EFFECT_MACHINEGUN_IMPACT, org2, w_backoff * 1000, 1); + if(!w_issilent) + sound(actor, CH_SHOTS, SND_RIC_RANDOM(), VOL_BASE, ATTEN_NORM); +} + +#endif diff --git a/qcsrc/common/mutators/mutator/overkill/okhmg.qh b/qcsrc/common/mutators/mutator/overkill/okhmg.qh new file mode 100644 index 000000000..ecad050ed --- /dev/null +++ b/qcsrc/common/mutators/mutator/overkill/okhmg.qh @@ -0,0 +1,61 @@ +#pragma once + +#include + +CLASS(OverkillHeavyMachineGun, Weapon) +/* spawnfunc */ ATTRIB(OverkillHeavyMachineGun, m_canonical_spawnfunc, string, "weapon_okhmg"); +/* ammotype */ ATTRIB(OverkillHeavyMachineGun, ammo_type, int, RESOURCE_BULLETS); +/* impulse */ ATTRIB(OverkillHeavyMachineGun, impulse, int, 3); +/* flags */ ATTRIB(OverkillHeavyMachineGun, spawnflags, int, WEP_FLAG_MUTATORBLOCKED | WEP_FLAG_HIDDEN | WEP_FLAG_NORMAL | WEP_FLAG_RELOADABLE | WEP_TYPE_HITSCAN | WEP_FLAG_SUPERWEAPON); +/* rating */ ATTRIB(OverkillHeavyMachineGun, bot_pickupbasevalue, float, 10000); +/* color */ ATTRIB(OverkillHeavyMachineGun, wpcolor, vector, '0.5 0.5 0'); +/* modelname */ ATTRIB(OverkillHeavyMachineGun, mdl, string, "ok_hmg"); +#ifdef GAMEQC +/* model */ ATTRIB(OverkillHeavyMachineGun, m_model, Model, MDL_HMG_ITEM); +#endif +/* crosshair */ ATTRIB(OverkillHeavyMachineGun, w_crosshair, string, "gfx/crosshairuzi"); +/* crosshair */ ATTRIB(OverkillHeavyMachineGun, w_crosshair_size, float, 0.6); +/* wepimg */ ATTRIB(OverkillHeavyMachineGun, model2, string, "weaponhmg"); +/* refname */ ATTRIB(OverkillHeavyMachineGun, netname, string, "okhmg"); +/* wepname */ ATTRIB(OverkillHeavyMachineGun, m_name, string, _("Overkill Heavy Machine Gun")); + +#define X(BEGIN, P, END, class, prefix) \ + BEGIN(class) \ + P(class, prefix, ammo, float, PRI) \ + P(class, prefix, damage, float, PRI) \ + P(class, prefix, force, float, PRI) \ + P(class, prefix, refire, float, PRI) \ + P(class, prefix, solidpenetration, float, PRI) \ + P(class, prefix, spread_add, float, PRI) \ + P(class, prefix, spread_max, float, PRI) \ + P(class, prefix, spread_min, float, PRI) \ + P(class, prefix, ammo, float, SEC) \ + P(class, prefix, animtime, float, SEC) \ + P(class, prefix, damage, float, SEC) \ + P(class, prefix, delay, float, SEC) \ + P(class, prefix, edgedamage, float, SEC) \ + P(class, prefix, force, float, SEC) \ + P(class, prefix, lifetime, float, SEC) \ + P(class, prefix, radius, float, SEC) \ + P(class, prefix, refire, float, SEC) \ + P(class, prefix, refire_type, float, SEC) \ + P(class, prefix, shotangle, float, SEC) \ + P(class, prefix, speed, float, SEC) \ + P(class, prefix, spread, float, SEC) \ + P(class, prefix, reload_ammo, float, NONE) \ + P(class, prefix, reload_time, float, NONE) \ + P(class, prefix, switchdelay_drop, float, NONE) \ + P(class, prefix, switchdelay_raise, float, NONE) \ + P(class, prefix, weaponreplace, string, NONE) \ + P(class, prefix, weaponstartoverride, float, NONE) \ + P(class, prefix, weaponstart, float, NONE) \ + P(class, prefix, weaponthrowable, float, NONE) \ + END() + W_PROPS(X, OverkillHeavyMachineGun, okhmg) +#undef X + +ENDCLASS(OverkillHeavyMachineGun) +REGISTER_WEAPON(OVERKILL_HMG, okhmg, NEW(OverkillHeavyMachineGun)); + +SPAWNFUNC_WEAPON(weapon_okhmg, WEP_OVERKILL_HMG) +SPAWNFUNC_WEAPON(weapon_hmg, WEP_OVERKILL_HMG) diff --git a/qcsrc/common/mutators/mutator/overkill/sv_overkill.qc b/qcsrc/common/mutators/mutator/overkill/sv_overkill.qc index dbdc793cf..4459541ef 100644 --- a/qcsrc/common/mutators/mutator/overkill/sv_overkill.qc +++ b/qcsrc/common/mutators/mutator/overkill/sv_overkill.qc @@ -1,6 +1,7 @@ #include "sv_overkill.qh" -#include "hmg.qh" +#include "okshotgun.qh" +#include "okhmg.qh" #include "rpc.qh" string autocvar_g_overkill; @@ -35,7 +36,7 @@ REGISTER_MUTATOR(ok, expr_evaluate(autocvar_g_overkill) && !autocvar_g_instagib } WEP_RPC.spawnflags &= ~WEP_FLAG_MUTATORBLOCKED; - WEP_HMG.spawnflags &= ~WEP_FLAG_MUTATORBLOCKED; + WEP_OVERKILL_HMG.spawnflags &= ~WEP_FLAG_MUTATORBLOCKED; //WEP_SHOTGUN.mdl = "ok_shotgun"; //WEP_MACHINEGUN.mdl = "ok_mg"; @@ -50,7 +51,7 @@ REGISTER_MUTATOR(ok, expr_evaluate(autocvar_g_overkill) && !autocvar_g_instagib ITEM_ArmorMega.spawnflags &= ~ITEM_FLAG_MUTATORBLOCKED; WEP_RPC.spawnflags |= WEP_FLAG_MUTATORBLOCKED; - WEP_HMG.spawnflags |= WEP_FLAG_MUTATORBLOCKED; + WEP_OVERKILL_HMG.spawnflags |= WEP_FLAG_MUTATORBLOCKED; } } @@ -167,7 +168,7 @@ MUTATOR_HOOKFUNCTION(ok, PlayerWeaponSelect) if(player.ok_lastwep[slot] && player.ok_lastwep[slot] != WEP_Null) { Weapon newwep = player.ok_lastwep[slot]; - if(player.ok_lastwep[slot] == WEP_HMG) + if(player.ok_lastwep[slot] == WEP_OVERKILL_HMG) newwep = WEP_OVERKILL_MACHINEGUN; if(player.ok_lastwep[slot] == WEP_RPC) newwep = WEP_OVERKILL_NEX; @@ -226,7 +227,7 @@ MUTATOR_HOOKFUNCTION(ok, FilterItem) } if (item.classname == "item_strength") { - entity wep = new(weapon_hmg); + entity wep = new(weapon_okhmg); setorigin(wep, item.origin); wep.ok_item = true; wep.noalign = Item_ShouldKeepPosition(item); @@ -235,7 +236,7 @@ MUTATOR_HOOKFUNCTION(ok, FilterItem) wep.respawntime = g_pickup_respawntime_superweapon; wep.pickup_anyway = true; wep.spawnfunc_checked = true; - Item_Initialize(wep, "weapon_hmg"); + Item_Initialize(wep, "weapon_okhmg"); return true; } else if (item.classname == "item_shield") @@ -260,7 +261,7 @@ MUTATOR_HOOKFUNCTION(ok, SetStartItems, CBC_ORDER_LAST) WepSet ok_start_items = (WEPSET(OVERKILL_MACHINEGUN) | WEPSET(OVERKILL_NEX) | WEPSET(OVERKILL_SHOTGUN)); if(WEP_RPC.weaponstart > 0) { ok_start_items |= WEPSET(RPC); } - if(WEP_HMG.weaponstart > 0) { ok_start_items |= WEPSET(HMG); } + if(WEP_OVERKILL_HMG.weaponstart > 0) { ok_start_items |= WEPSET(OVERKILL_HMG); } start_items |= IT_UNLIMITED_WEAPON_AMMO; start_weapons = warmup_start_weapons = ok_start_items; diff --git a/qcsrc/common/mutators/mutator/random_items/sv_random_items.qc b/qcsrc/common/mutators/mutator/random_items/sv_random_items.qc index 553dcf582..e22a02a9e 100644 --- a/qcsrc/common/mutators/mutator/random_items/sv_random_items.qc +++ b/qcsrc/common/mutators/mutator/random_items/sv_random_items.qc @@ -232,14 +232,14 @@ string RandomItems_GetRandomOverkillItemClassName(string prefix) } RandomSelection_AddString(it.m_canonical_spawnfunc, cvar(cvar_name), 1); }); - string cvar_name = sprintf("g_%s_overkill_weapon_hmg_probability", prefix); + string cvar_name = sprintf("g_%s_overkill_weapon_okhmg_probability", prefix); if (!(cvar_type(cvar_name) & CVAR_TYPEFLAG_EXISTS)) { LOG_WARNF("Random items: cvar %s doesn't exist.", cvar_name); } else { - RandomSelection_AddString("weapon_hmg", cvar(cvar_name), 1); + RandomSelection_AddString("weapon_okhmg", cvar(cvar_name), 1); } cvar_name = sprintf("g_%s_overkill_weapon_rpc_probability", prefix); if (!(cvar_type(cvar_name) & CVAR_TYPEFLAG_EXISTS)) diff --git a/qcsrc/common/notifications/all.inc b/qcsrc/common/notifications/all.inc index e0234c2ed..a41979bed 100644 --- a/qcsrc/common/notifications/all.inc +++ b/qcsrc/common/notifications/all.inc @@ -477,8 +477,6 @@ MSG_INFO_NOTIF(WEAPON_HAGAR_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhagar", _("^BG%s^K1 played with tiny Hagar rockets%s%s"), "") MSG_INFO_NOTIF(WEAPON_HLAC_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhlac", _("^BG%s%s^K1 was cut down with ^BG%s^K1's HLAC%s%s"), "") MSG_INFO_NOTIF(WEAPON_HLAC_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weaponhlac", _("^BG%s^K1 got a little jumpy with their HLAC%s%s"), "") - MSG_INFO_NOTIF(WEAPON_HMG_MURDER_SNIPE, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Heavy Machine Gun%s%s"), "") - MSG_INFO_NOTIF(WEAPON_HMG_MURDER_SPRAY, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was torn to bits by ^BG%s^K1's Heavy Machine Gun%s%s"), "") MSG_INFO_NOTIF(WEAPON_HOOK_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhook", _("^BG%s%s^K1 was caught in ^BG%s^K1's Hook gravity bomb%s%s"), "") MSG_INFO_NOTIF(WEAPON_KLEINBOTTLE_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapontuba", _("^BG%s%s^K1 died of ^BG%s^K1's great playing on the @!#%%'n Klein Bottle%s%s"), "") MSG_INFO_NOTIF(WEAPON_KLEINBOTTLE_SUICIDE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weapontuba", _("^BG%s^K1 hurt their own ears with the @!#%%'n Klein Bottle%s%s"), "") @@ -491,6 +489,8 @@ MSG_INFO_NOTIF(WEAPON_MORTAR_MURDER_EXPLODE, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weapongrenadelauncher", _("^BG%s%s^K1 ate ^BG%s^K1's Mortar grenade%s%s"), "") MSG_INFO_NOTIF(WEAPON_MORTAR_SUICIDE_BOUNCE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 didn't see their own Mortar grenade%s%s"), "") MSG_INFO_NOTIF(WEAPON_MORTAR_SUICIDE_EXPLODE, N_CONSOLE, 2, 1, "s1 s2loc spree_lost", "s1", "weapongrenadelauncher", _("^BG%s^K1 blew themself up with their own Mortar%s%s"), "") + MSG_INFO_NOTIF(WEAPON_OVERKILL_HMG_MURDER_SNIPE, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was sniped by ^BG%s^K1's Overkill Heavy Machine Gun%s%s"), "") + MSG_INFO_NOTIF(WEAPON_OVERKILL_HMG_MURDER_SPRAY, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponhmg", _("^BG%s%s^K1 was torn to bits by ^BG%s^K1's Overkill Heavy Machine Gun%s%s"), "") MSG_INFO_NOTIF(WEAPON_OVERKILL_MACHINEGUN_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponokmachinegun", _("^BG%s%s^K1 was riddled full of holes by ^BG%s^K1's Overkill Machine Gun%s%s"), "") MSG_INFO_NOTIF(WEAPON_OVERKILL_NEX_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponoknex", _("^BG%s%s^K1 has been vaporized by ^BG%s^K1's Overkill Nex%s%s"), "") MSG_INFO_NOTIF(WEAPON_OVERKILL_SHOTGUN_MURDER, N_CONSOLE, 3, 2, "spree_inf s1 s2 s3loc spree_end", "s2 s1", "weaponokshotgun", _("^BG%s%s^K1 was gunned down by ^BG%s^K1's Overkill Shotgun%s%s"), "") @@ -937,8 +937,6 @@ MSG_MULTI_NOTIF(WEAPON_HAGAR_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_HAGAR_SUICIDE, CENTER_DEATH_SELF_GENERIC) MSG_MULTI_NOTIF(WEAPON_HLAC_MURDER, N_ENABLE, NULL, INFO_WEAPON_HLAC_MURDER, NULL) MSG_MULTI_NOTIF(WEAPON_HLAC_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_HLAC_SUICIDE, CENTER_DEATH_SELF_GENERIC) - MSG_MULTI_NOTIF(WEAPON_HMG_MURDER_SNIPE, N_ENABLE, NULL, INFO_WEAPON_HMG_MURDER_SNIPE, NULL) - MSG_MULTI_NOTIF(WEAPON_HMG_MURDER_SPRAY, N_ENABLE, NULL, INFO_WEAPON_HMG_MURDER_SPRAY, NULL) MSG_MULTI_NOTIF(WEAPON_HOOK_MURDER, N_ENABLE, NULL, INFO_WEAPON_HOOK_MURDER, NULL) MSG_MULTI_NOTIF(WEAPON_KLEINBOTTLE_MURDER, N_ENABLE, NULL, INFO_WEAPON_KLEINBOTTLE_MURDER, NULL) MSG_MULTI_NOTIF(WEAPON_KLEINBOTTLE_SUICIDE, N_ENABLE, NULL, INFO_WEAPON_KLEINBOTTLE_SUICIDE, CENTER_DEATH_SELF_GENERIC) @@ -951,6 +949,8 @@ MSG_MULTI_NOTIF(WEAPON_MORTAR_MURDER_EXPLODE, N_ENABLE, NULL, INFO_WEAPON_MORTAR_MURDER_EXPLODE, NULL) MSG_MULTI_NOTIF(WEAPON_MORTAR_SUICIDE_BOUNCE, N_ENABLE, NULL, INFO_WEAPON_MORTAR_SUICIDE_BOUNCE, CENTER_DEATH_SELF_GENERIC) MSG_MULTI_NOTIF(WEAPON_MORTAR_SUICIDE_EXPLODE, N_ENABLE, NULL, INFO_WEAPON_MORTAR_SUICIDE_EXPLODE, CENTER_DEATH_SELF_GENERIC) + MSG_MULTI_NOTIF(WEAPON_OVERKILL_HMG_MURDER_SNIPE, N_ENABLE, NULL, INFO_WEAPON_OVERKILL_HMG_MURDER_SNIPE, NULL) + MSG_MULTI_NOTIF(WEAPON_OVERKILL_HMG_MURDER_SPRAY, N_ENABLE, NULL, INFO_WEAPON_OVERKILL_HMG_MURDER_SPRAY, NULL) MSG_MULTI_NOTIF(WEAPON_OVERKILL_MACHINEGUN_MURDER, N_ENABLE, NULL, INFO_WEAPON_OVERKILL_MACHINEGUN_MURDER, NULL) MSG_MULTI_NOTIF(WEAPON_OVERKILL_NEX_MURDER, N_ENABLE, NULL, INFO_WEAPON_OVERKILL_NEX_MURDER, NULL) MSG_MULTI_NOTIF(WEAPON_OVERKILL_SHOTGUN_MURDER, N_ENABLE, NULL, INFO_WEAPON_OVERKILL_SHOTGUN_MURDER, NULL) diff --git a/randomitems-xonotic.cfg b/randomitems-xonotic.cfg index f25387a43..c5d1ff7ad 100644 --- a/randomitems-xonotic.cfg +++ b/randomitems-xonotic.cfg @@ -39,7 +39,7 @@ set g_random_items_replace_weapon_hlac "random" "Classnames to replace HLAC with set g_random_items_replace_weapon_rifle "random" "Classnames to replace rifle with." set g_random_items_replace_weapon_seeker "random" "Classnames to replace TAG seeker with." set g_random_items_replace_weapon_vaporizer "random" "Classnames to replace vaporizer with." -set g_random_items_replace_weapon_hmg "random" "Classnames to replace HMG with." +set g_random_items_replace_weapon_okhmg "random" "Classnames to replace overkill HMG with." set g_random_items_replace_weapon_rpc "random" "Classnames to replace RPC with." set g_random_items_replace_item_strength "random" "Classnames to replace strength with." set g_random_items_replace_item_shield "random" "Classnames to replace shield with." @@ -104,7 +104,7 @@ set g_random_items_overkill_item_armor_small_probability 10 "Probability of rand set g_random_items_overkill_item_armor_medium_probability 4 "Probability of random medium armor spawning in the map during overkill." set g_random_items_overkill_item_armor_big_probability 2 "Probability of random big armor spawning in the map during overkill." set g_random_items_overkill_item_armor_mega_probability 1 "Probability of random mega armor spawning in the map during overkill." -set g_random_items_overkill_weapon_hmg_probability 0.5 "Probability of random HMG spawning in the map during overkill." +set g_random_items_overkill_weapon_okhmg_probability 0.5 "Probability of random overkill HMG spawning in the map during overkill." set g_random_items_overkill_weapon_rpc_probability 0.5 "Probability of random RPC spawning in the map during overkill." // Loot @@ -168,5 +168,5 @@ set g_random_loot_overkill_item_armor_small_probability 10 "Probability of rando set g_random_loot_overkill_item_armor_medium_probability 4 "Probability of random medium armor spawning as loot during overkill." set g_random_loot_overkill_item_armor_big_probability 2 "Probability of random big armor spawning as loot during overkill." set g_random_loot_overkill_item_armor_mega_probability 1 "Probability of random mega armor spawning as loot during overkill." -set g_random_loot_overkill_weapon_hmg_probability 1 "Probability of random HMG spawning as loot during overkill." +set g_random_loot_overkill_weapon_okhmg_probability 1 "Probability of random overkill HMG spawning as loot during overkill." set g_random_loot_overkill_weapon_rpc_probability 1 "Probability of random RPC spawning as loot during overkill."