From: TimePath Date: Fri, 25 Sep 2015 10:30:27 +0000 (+1000) Subject: Deprecate weapon_func X-Git-Tag: xonotic-v0.8.2~1874^2~93 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=91b5b85f82da949105551eb0ec01888ec52e8a99;p=xonotic%2Fxonotic-data.pk3dir.git Deprecate weapon_func --- diff --git a/qcsrc/client/damage.qc b/qcsrc/client/damage.qc index ec6da9842..58ae6b7cd 100644 --- a/qcsrc/client/damage.qc +++ b/qcsrc/client/damage.qc @@ -360,6 +360,6 @@ void Ent_DamageInfo(float isNew) w_backoff = -1 * normalize(force); setorigin(self, w_org + w_backoff * 2); // for sound() calls - if(!(trace_dphitq3surfaceflags & Q3SURFACEFLAG_SKY)) { WEP_ACTION(hitwep, WR_IMPACTEFFECT); } + if(!(trace_dphitq3surfaceflags & Q3SURFACEFLAG_SKY)) { _WEP_ACTION(hitwep, WR_IMPACTEFFECT); } } } diff --git a/qcsrc/client/view.qc b/qcsrc/client/view.qc index 146d322fc..80d1fe1df 100644 --- a/qcsrc/client/view.qc +++ b/qcsrc/client/view.qc @@ -1540,7 +1540,7 @@ void CSQC_UpdateView(float w, float h) // no zoom reticle while dead reticle_type = 0; } - else if(WEP_ACTION(activeweapon, WR_ZOOMRETICLE) && autocvar_cl_reticle_weapon) + else if(_WEP_ACTION(activeweapon, WR_ZOOMRETICLE) && autocvar_cl_reticle_weapon) { if(reticle_image != "") { reticle_type = 2; } else { reticle_type = 0; } diff --git a/qcsrc/common/weapons/all.qh b/qcsrc/common/weapons/all.qh index f965c3998..b351e7bd1 100644 --- a/qcsrc/common/weapons/all.qh +++ b/qcsrc/common/weapons/all.qh @@ -30,22 +30,60 @@ const int WEP_FLAG_MUTATORBLOCKED = 0x200; // hides from impulse 99 etc. (mutato // weapon requests const int WR_SETUP = 1; // (SERVER) setup weapon data +.bool(entity this) wr_setup; const int WR_THINK = 2; // (SERVER) logic to run every frame +.bool(entity this) wr_think; const int WR_CHECKAMMO1 = 3; // (SERVER) checks ammo for weapon primary +.bool(entity this) wr_checkammo1; const int WR_CHECKAMMO2 = 4; // (SERVER) checks ammo for weapon second +.bool(entity this) wr_checkammo2; const int WR_AIM = 5; // (SERVER) runs bot aiming code for this weapon +.bool(entity this) wr_aim; const int WR_INIT = 6; // (BOTH) precaches models/sounds used by this weapon, also sets up weapon properties +.bool(entity this) wr_init; const int WR_SUICIDEMESSAGE = 7; // (SERVER) notification number for suicide message (may inspect w_deathtype for details) +.bool(entity this) wr_suicidemessage; const int WR_KILLMESSAGE = 8; // (SERVER) notification number for kill message (may inspect w_deathtype for details) +.bool(entity this) wr_killmessage; const int WR_RELOAD = 9; // (SERVER) handles reloading for weapon +.bool(entity this) wr_reload; const int WR_RESETPLAYER = 10; // (SERVER) clears fields that the weapon may use +.bool(entity this) wr_resetplayer; const int WR_IMPACTEFFECT = 11; // (CLIENT) impact effect for weapon explosion +.bool(entity this) wr_impacteffect; const int WR_PLAYERDEATH = 12; // (SERVER) called whenever a player dies +.bool(entity this) wr_playerdeath; const int WR_GONETHINK = 13; // (SERVER) logic to run when weapon is lost +.bool(entity this) wr_gonethink; const int WR_CONFIG = 14; // (ALL) dump weapon cvars to config in data directory (see: sv_cmd dumpweapons) +.bool(entity this) wr_config; const int WR_ZOOMRETICLE = 15; // (CLIENT) weapon specific zoom reticle +.bool(entity this) wr_zoomreticle; const int WR_DROP = 16; // (SERVER) the weapon is dropped +.bool(entity this) wr_drop; const int WR_PICKUP = 17; // (SERVER) a weapon is picked up +.bool(entity this) wr_pickup; + +bool w_new(entity this, int req) { + if (req == WR_SETUP) return this.wr_setup ? this.wr_setup(this) : false; + if (req == WR_THINK) return this.wr_think ? this.wr_think(this) : false; + if (req == WR_CHECKAMMO1) return this.wr_checkammo1 ? this.wr_checkammo1(this) : false; + if (req == WR_CHECKAMMO2) return this.wr_checkammo2 ? this.wr_checkammo2(this) : false; + if (req == WR_AIM) return this.wr_aim ? this.wr_aim(this) : false; + if (req == WR_INIT) return this.wr_init ? this.wr_init(this) : false; + if (req == WR_SUICIDEMESSAGE) return this.wr_suicidemessage ? this.wr_suicidemessage(this) : false; + if (req == WR_KILLMESSAGE) return this.wr_killmessage ? this.wr_killmessage(this) : false; + if (req == WR_RELOAD) return this.wr_reload ? this.wr_reload(this) : false; + if (req == WR_RESETPLAYER) return this.wr_resetplayer ? this.wr_resetplayer(this) : false; + if (req == WR_IMPACTEFFECT) return this.wr_impacteffect ? this.wr_impacteffect(this) : false; + if (req == WR_PLAYERDEATH) return this.wr_playerdeath ? this.wr_playerdeath(this) : false; + if (req == WR_GONETHINK) return this.wr_gonethink ? this.wr_gonethink(this) : false; + if (req == WR_CONFIG) return this.wr_config ? this.wr_config(this) : false; + if (req == WR_ZOOMRETICLE) return this.wr_zoomreticle ? this.wr_zoomreticle(this) : false; + if (req == WR_DROP) return this.wr_drop ? this.wr_drop(this) : false; + if (req == WR_PICKUP) return this.wr_pickup ? this.wr_pickup(this) : false; + return false; +} // variables: string weaponorder_byid; @@ -103,7 +141,8 @@ string W_Model(string w_mdl); .int ammo_none; // other useful macros -#define WEP_ACTION(wpn,wrequest) (get_weaponinfo(wpn)).weapon_func(wrequest) +#define WEP_ACTION(wpn,wrequest) wpn.weapon_func(wpn, wrequest) +#define _WEP_ACTION(wpn,wrequest) WEP_ACTION(get_weaponinfo(wpn), wrequest) #define WEP_AMMO(wpn) (WEP_##wpn.ammo_field) // only used inside weapon files/with direct name, don't duplicate prefix #define WEP_NAME(wpn) ((get_weaponinfo(wpn)).message) @@ -143,8 +182,6 @@ string W_Model(string w_mdl); // Weapon Registration // ===================== -bool w_null(int) { return false; } - /** fields which are explicitly/manually set are marked with "M", fields set automatically are marked with "A" */ CLASS(Weapon, Object) ATTRIB(Weapon, m_id, int, 0) @@ -156,7 +193,7 @@ CLASS(Weapon, Object) /** A: WEPSET_id : WEPSET_... */ ATTRIB(Weapon, weapons, WepSet, '0 0 0'); /** M: function : w_... */ - ATTRIB(Weapon, weapon_func, bool(int), w_null); + ATTRIB(Weapon, weapon_func, bool(entity thiswep, int req), w_new); /** M: ammotype : main ammo field */ ATTRIB(Weapon, ammo_field, .int, ammo_none); /** M: impulse : weapon impulse */ @@ -191,7 +228,7 @@ CLASS(Weapon, Object) } CONSTRUCTOR(Weapon, - bool(int) function, + bool(entity this, int req) function, .int ammotype, int i, int weapontype, @@ -228,7 +265,7 @@ CLASS(Weapon, Object) this.weapons = bit; this.wpmodel = strzone(strcat("wpn-", ftos(id))); #ifdef CSQC - this.weapon_func(WR_INIT); + this.weapon_func(this, WR_INIT); #endif } ENDCLASS(Weapon) @@ -238,24 +275,27 @@ REGISTER_REGISTRY(RegisterWeapons) entity weapon_info[WEP_MAXCOUNT], weapon_info_first, weapon_info_last; entity dummy_weapon_info; -#define _REGISTER_WEAPON(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ +#define REGISTER_WEAPON(...) EVAL(OVERLOAD(REGISTER_WEAPON, __VA_ARGS__)) + +#define REGISTER_WEAPON_2(id, inst) \ WepSet WEPSET_##id; \ - REGISTER(RegisterWeapons, WEP, weapon_info, WEP_COUNT, id, m_id, \ - NEW(Weapon, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ - ) { \ + REGISTER(RegisterWeapons, WEP, weapon_info, WEP_COUNT, id, m_id, inst) { \ this.m_id++; \ WEPSET_ALL |= (WEPSET_##id = WepSet_FromWeapon(this.m_id)); \ - if ((flags) & WEP_FLAG_SUPERWEAPON) WEPSET_SUPERWEAPONS |= WEPSET_##id; \ + if ((this.spawnflags) & WEP_FLAG_SUPERWEAPON) WEPSET_SUPERWEAPONS |= WEPSET_##id; \ register_weapon(this, this.m_id, WEPSET_##id); \ } +#define _REGISTER_WEAPON(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ + REGISTER_WEAPON_2(id, NEW(Weapon, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname)) + #ifndef MENUQC - #define REGISTER_WEAPON(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ - bool function(int); \ + #define REGISTER_WEAPON_13(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ + bool function(entity this, int); \ _REGISTER_WEAPON(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) #else - #define REGISTER_WEAPON(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ - _REGISTER_WEAPON(id, w_null, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) + #define REGISTER_WEAPON_13(id, function, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) \ + _REGISTER_WEAPON(id, w_new, ammotype, impulse, flags, rating, color, modelname, simplemdl, crosshair, wepimg, refname, wepname) #endif #include "all.inc" diff --git a/qcsrc/common/weapons/config.qc b/qcsrc/common/weapons/config.qc index b90c01f4a..8db080797 100644 --- a/qcsrc/common/weapons/config.qc +++ b/qcsrc/common/weapons/config.qc @@ -35,7 +35,7 @@ void Dump_Weapon_Settings(void) { wep_config_queue[x] = string_null; } // step 2: build new queue - WEP_ACTION(i, WR_CONFIG); + _WEP_ACTION(i, WR_CONFIG); // step 3: sort queue heapsort(WEP_CONFIG_COUNT, W_Config_Queue_Swap, W_Config_Queue_Compare, world); diff --git a/qcsrc/common/weapons/weapon/arc.qc b/qcsrc/common/weapons/weapon/arc.qc index a6a073099..fa98c2cbf 100644 --- a/qcsrc/common/weapons/weapon/arc.qc +++ b/qcsrc/common/weapons/weapon/arc.qc @@ -273,7 +273,7 @@ void W_Arc_Beam_Think(void) if(self == self.owner.arc_beam) { self.owner.arc_beam = world; } setself(self.owner); - if(!WEP_ACTION(WEP_ARC.m_id, WR_CHECKAMMO1) && !WEP_ACTION(WEP_ARC.m_id, WR_CHECKAMMO2)) + if(!WEP_ACTION(WEP_ARC, WR_CHECKAMMO1) && !WEP_ACTION(WEP_ARC, WR_CHECKAMMO2)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { // note: this doesn't force the switch @@ -631,7 +631,7 @@ void Arc_Smoke() } } -bool W_Arc(int req) +bool W_Arc(entity thiswep, int req) {SELFPARAM(); switch(req) { @@ -1513,7 +1513,7 @@ void Ent_ReadArcBeam(float isnew) } } -bool W_Arc(int req) +bool W_Arc(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/blaster.qc b/qcsrc/common/weapons/weapon/blaster.qc index b20713c02..1038cfaf2 100644 --- a/qcsrc/common/weapons/weapon/blaster.qc +++ b/qcsrc/common/weapons/weapon/blaster.qc @@ -144,7 +144,7 @@ void W_Blaster_Attack( WITH(entity, self, missile, missile.think()); } } -bool W_Blaster(int request) +bool W_Blaster(entity thiswep, int request) {SELFPARAM(); switch(request) { @@ -260,7 +260,7 @@ bool W_Blaster(int request) } #endif #ifdef CSQC -bool W_Blaster(int request) +bool W_Blaster(entity thiswep, int request) {SELFPARAM(); switch(request) { diff --git a/qcsrc/common/weapons/weapon/crylink.qc b/qcsrc/common/weapons/weapon/crylink.qc index 6821d5a0e..61c4de6e0 100644 --- a/qcsrc/common/weapons/weapon/crylink.qc +++ b/qcsrc/common/weapons/weapon/crylink.qc @@ -564,7 +564,7 @@ void W_Crylink_Attack2(void) } } -bool W_Crylink(int req) +bool W_Crylink(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -581,7 +581,7 @@ bool W_Crylink(int req) case WR_THINK: { if(autocvar_g_balance_crylink_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(crylink, ammo), WEP_CVAR_SEC(crylink, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); if(self.BUTTON_ATCK) { @@ -624,7 +624,7 @@ bool W_Crylink(int req) setorigin(linkjoineffect, pos); } self.crylink_waitrelease = 0; - if(!W_Crylink(WR_CHECKAMMO1) && !W_Crylink(WR_CHECKAMMO2)) + if(!W_Crylink(WEP_CRYLINK, WR_CHECKAMMO1) && !W_Crylink(WEP_CRYLINK, WR_CHECKAMMO2)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { // ran out of ammo! @@ -687,7 +687,7 @@ bool W_Crylink(int req) } #endif #ifdef CSQC -bool W_Crylink(int req) +bool W_Crylink(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/devastator.qc b/qcsrc/common/weapons/weapon/devastator.qc index cb2d16659..d52d64b20 100644 --- a/qcsrc/common/weapons/weapon/devastator.qc +++ b/qcsrc/common/weapons/weapon/devastator.qc @@ -392,7 +392,7 @@ void W_Devastator_Attack(void) MUTATOR_CALLHOOK(EditProjectile, self, missile); } -bool W_Devastator(int req) +bool W_Devastator(entity thiswep, int req) {SELFPARAM(); entity rock; float rockfound; @@ -530,7 +530,7 @@ bool W_Devastator(int req) case WR_THINK: { if(WEP_CVAR(devastator, reload_ammo) && self.clip_load < WEP_CVAR(devastator, ammo)) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { if(self.BUTTON_ATCK) @@ -652,7 +652,7 @@ bool W_Devastator(int req) } #endif #ifdef CSQC -bool W_Devastator(int req) +bool W_Devastator(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/electro.qc b/qcsrc/common/weapons/weapon/electro.qc index 7f02a00ce..743033cc9 100644 --- a/qcsrc/common/weapons/weapon/electro.qc +++ b/qcsrc/common/weapons/weapon/electro.qc @@ -420,7 +420,7 @@ void W_Electro_CheckAttack(void) } .float bot_secondary_electromooth; -bool W_Electro(int req) +bool W_Electro(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -467,7 +467,7 @@ bool W_Electro(int req) if(!ammo_amount) { - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); return false; } @@ -567,7 +567,7 @@ bool W_Electro(int req) } #endif #ifdef CSQC -bool W_Electro(int req) +bool W_Electro(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/fireball.qc b/qcsrc/common/weapons/weapon/fireball.qc index a37ae8f09..359a19d81 100644 --- a/qcsrc/common/weapons/weapon/fireball.qc +++ b/qcsrc/common/weapons/weapon/fireball.qc @@ -348,7 +348,7 @@ void W_Fireball_Attack2(void) MUTATOR_CALLHOOK(EditProjectile, self, proj); } -bool W_Fireball(int req) +bool W_Fireball(entity thiswep, int req) {SELFPARAM(); switch(req) { @@ -444,7 +444,7 @@ bool W_Fireball(int req) } #endif #ifdef CSQC -bool W_Fireball(int req) +bool W_Fireball(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/hagar.qc b/qcsrc/common/weapons/weapon/hagar.qc index d55a1b607..016bf65fe 100644 --- a/qcsrc/common/weapons/weapon/hagar.qc +++ b/qcsrc/common/weapons/weapon/hagar.qc @@ -387,7 +387,7 @@ void W_Hagar_Attack2_Load(void) self.hagar_warning = false; // we aren't checking ammo during an attack, so we must do it here - if(!(WEP_ACTION(self.weapon, WR_CHECKAMMO1) + WEP_ACTION(self.weapon, WR_CHECKAMMO2))) + if(!(_WEP_ACTION(self.weapon, WR_CHECKAMMO1) + _WEP_ACTION(self.weapon, WR_CHECKAMMO2))) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { // note: this doesn't force the switch @@ -397,7 +397,7 @@ void W_Hagar_Attack2_Load(void) } } -bool W_Hagar(int req) +bool W_Hagar(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -419,7 +419,7 @@ bool W_Hagar(int req) if(loadable_secondary) W_Hagar_Attack2_Load(); // must always run each frame if(autocvar_g_balance_hagar_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(hagar, ammo), WEP_CVAR_SEC(hagar, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(self.BUTTON_ATCK && !self.hagar_load && !self.hagar_loadblock) // not while secondary is loaded or awaiting reset { if(weapon_prepareattack(0, WEP_CVAR_PRI(hagar, refire))) @@ -522,7 +522,7 @@ bool W_Hagar(int req) } #endif #ifdef CSQC -bool W_Hagar(int req) +bool W_Hagar(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/hlac.qc b/qcsrc/common/weapons/weapon/hlac.qc index 074b76053..10907b8ac 100644 --- a/qcsrc/common/weapons/weapon/hlac.qc +++ b/qcsrc/common/weapons/weapon/hlac.qc @@ -169,7 +169,7 @@ void W_HLAC_Attack_Frame(void) if(self.BUTTON_ATCK) { - if(!WEP_ACTION(self.weapon, WR_CHECKAMMO1)) + if(!_WEP_ACTION(self.weapon, WR_CHECKAMMO1)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -204,7 +204,7 @@ void W_HLAC_Attack2_Frame(void) } } -bool W_HLAC(int req) +bool W_HLAC(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -217,7 +217,7 @@ bool W_HLAC(int req) case WR_THINK: { if(autocvar_g_balance_hlac_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(hlac, ammo), WEP_CVAR_SEC(hlac, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(self.BUTTON_ATCK) { if(weapon_prepareattack(0, WEP_CVAR_PRI(hlac, refire))) @@ -280,7 +280,7 @@ bool W_HLAC(int req) } #endif #ifdef CSQC -bool W_HLAC(int req) +bool W_HLAC(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/hmg.qc b/qcsrc/common/weapons/weapon/hmg.qc index c55304118..2b7520fb4 100644 --- a/qcsrc/common/weapons/weapon/hmg.qc +++ b/qcsrc/common/weapons/weapon/hmg.qc @@ -51,7 +51,7 @@ void W_HeavyMachineGun_Attack_Auto() return; } - if(!WEP_ACTION(self.weapon, WR_CHECKAMMO1)) + if(!_WEP_ACTION(self.weapon, WR_CHECKAMMO1)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -86,7 +86,7 @@ void W_HeavyMachineGun_Attack_Auto() weapon_thinkf(WFRAME_FIRE1, WEP_CVAR(hmg, refire), W_HeavyMachineGun_Attack_Auto); } -bool W_HeavyMachineGun(int req) +bool W_HeavyMachineGun(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -103,7 +103,7 @@ bool W_HeavyMachineGun(int req) case WR_THINK: { if(WEP_CVAR(hmg, reload_ammo) && self.clip_load < WEP_CVAR(hmg, ammo)) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { if (self.BUTTON_ATCK) @@ -166,7 +166,7 @@ bool W_HeavyMachineGun(int req) } #endif #ifdef CSQC -bool W_HeavyMachineGun(int req) +bool W_HeavyMachineGun(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/hook.qc b/qcsrc/common/weapons/weapon/hook.qc index b7f51b54c..5bab0d91d 100644 --- a/qcsrc/common/weapons/weapon/hook.qc +++ b/qcsrc/common/weapons/weapon/hook.qc @@ -174,7 +174,7 @@ void W_Hook_Attack2(void) MUTATOR_CALLHOOK(EditProjectile, self, gren); } -bool W_Hook(int req) +bool W_Hook(entity thiswep, int req) {SELFPARAM(); float hooked_time_max, hooked_fuel; @@ -334,7 +334,7 @@ bool W_Hook(int req) } #endif #ifdef CSQC -bool W_Hook(int req) +bool W_Hook(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/machinegun.qc b/qcsrc/common/weapons/weapon/machinegun.qc index 01efced0f..4b05c7de3 100644 --- a/qcsrc/common/weapons/weapon/machinegun.qc +++ b/qcsrc/common/weapons/weapon/machinegun.qc @@ -144,7 +144,7 @@ void W_MachineGun_Attack_Frame(void) } if(self.BUTTON_ATCK) { - if(!WEP_ACTION(self.weapon, WR_CHECKAMMO2)) + if(!_WEP_ACTION(self.weapon, WR_CHECKAMMO2)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -170,7 +170,7 @@ void W_MachineGun_Attack_Auto(void) return; } - if(!WEP_ACTION(self.weapon, WR_CHECKAMMO1)) + if(!_WEP_ACTION(self.weapon, WR_CHECKAMMO1)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -236,7 +236,7 @@ void W_MachineGun_Attack_Burst(void) } -bool W_MachineGun(int req) +bool W_MachineGun(entity thiswep, int req) {SELFPARAM(); float ammo_amount; switch(req) @@ -253,7 +253,7 @@ bool W_MachineGun(int req) case WR_THINK: { if(WEP_CVAR(machinegun, reload_ammo) && self.clip_load < min(max(WEP_CVAR(machinegun, sustained_ammo), WEP_CVAR(machinegun, first_ammo)), WEP_CVAR(machinegun, burst_ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(WEP_CVAR(machinegun, mode) == 1) { if(self.BUTTON_ATCK) @@ -266,7 +266,7 @@ bool W_MachineGun(int req) if(self.BUTTON_ATCK2) if(weapon_prepareattack(1, 0)) { - if(!WEP_ACTION(self.weapon, WR_CHECKAMMO2)) + if(!_WEP_ACTION(self.weapon, WR_CHECKAMMO2)) if(!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -366,7 +366,7 @@ bool W_MachineGun(int req) } #endif #ifdef CSQC -bool W_MachineGun(int req) +bool W_MachineGun(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/minelayer.qc b/qcsrc/common/weapons/weapon/minelayer.qc index 1c7e89fde..276f58148 100644 --- a/qcsrc/common/weapons/weapon/minelayer.qc +++ b/qcsrc/common/weapons/weapon/minelayer.qc @@ -123,7 +123,7 @@ void W_MineLayer_Explode(void) if(self.realowner.weapon == WEP_MINE_LAYER.m_id) { setself(self.realowner); - if(!WEP_ACTION(WEP_MINE_LAYER.m_id, WR_CHECKAMMO1)) + if(!WEP_ACTION(WEP_MINE_LAYER, WR_CHECKAMMO1)) { self.cnt = WEP_MINE_LAYER.m_id; ATTACK_FINISHED(self) = time; @@ -148,7 +148,7 @@ void W_MineLayer_DoRemoteExplode(void) if(self.realowner.weapon == WEP_MINE_LAYER.m_id) { setself(self.realowner); - if(!WEP_ACTION(WEP_MINE_LAYER.m_id, WR_CHECKAMMO1)) + if(!WEP_ACTION(WEP_MINE_LAYER, WR_CHECKAMMO1)) { self.cnt = WEP_MINE_LAYER.m_id; ATTACK_FINISHED(self) = time; @@ -397,7 +397,7 @@ float W_MineLayer_PlacedMines(float detonate) return minfound; } -bool W_MineLayer(int req) +bool W_MineLayer(entity thiswep, int req) {SELFPARAM(); entity mine; float ammo_amount; @@ -509,7 +509,7 @@ bool W_MineLayer(int req) { // not if we're holding the minelayer without enough ammo, but can detonate existing mines if(!(W_MineLayer_PlacedMines(false) && self.WEP_AMMO(MINE_LAYER) < WEP_CVAR(minelayer, ammo))) - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); } else if(self.BUTTON_ATCK) { @@ -583,7 +583,7 @@ bool W_MineLayer(int req) } #endif #ifdef CSQC -bool W_MineLayer(int req) +bool W_MineLayer(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/mortar.qc b/qcsrc/common/weapons/weapon/mortar.qc index d03eb8e56..68f401250 100644 --- a/qcsrc/common/weapons/weapon/mortar.qc +++ b/qcsrc/common/weapons/weapon/mortar.qc @@ -320,7 +320,7 @@ void W_Mortar_Attack2(void) } .float bot_secondary_grenademooth; -bool W_Mortar(int req) +bool W_Mortar(entity thiswep, int req) {SELFPARAM(); entity nade; float nadefound; @@ -369,7 +369,7 @@ bool W_Mortar(int req) case WR_THINK: { if(autocvar_g_balance_mortar_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(mortar, ammo), WEP_CVAR_SEC(mortar, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(self.BUTTON_ATCK) { if(weapon_prepareattack(0, WEP_CVAR_PRI(mortar, refire))) @@ -457,7 +457,7 @@ bool W_Mortar(int req) } #endif #ifdef CSQC -bool W_Mortar(int req) +bool W_Mortar(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/porto.qc b/qcsrc/common/weapons/weapon/porto.qc index 58c28716a..dfbcac933 100644 --- a/qcsrc/common/weapons/weapon/porto.qc +++ b/qcsrc/common/weapons/weapon/porto.qc @@ -284,7 +284,7 @@ void W_Porto_Attack(float type) } bool w_nexball_weapon(int req); // WEAPONTODO -bool W_Porto(int req) +bool W_Porto(entity thiswep, int req) {SELFPARAM(); //vector v_angle_save; @@ -397,7 +397,7 @@ bool W_Porto(int req) } #endif #ifdef CSQC -bool W_Porto(int req) +bool W_Porto(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/rifle.qc b/qcsrc/common/weapons/weapon/rifle.qc index 66be38175..be77b866c 100644 --- a/qcsrc/common/weapons/weapon/rifle.qc +++ b/qcsrc/common/weapons/weapon/rifle.qc @@ -134,7 +134,7 @@ void W_Rifle_BulletHail(float mode, void(void) AttackFunc, float fr, float animt } .float bot_secondary_riflemooth; -bool W_Rifle(int req) +bool W_Rifle(entity thiswep, int req) {SELFPARAM(); float ammo_amount; @@ -168,7 +168,7 @@ bool W_Rifle(int req) case WR_THINK: { if(autocvar_g_balance_rifle_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(rifle, ammo), WEP_CVAR_SEC(rifle, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { self.rifle_accumulator = bound(time - WEP_CVAR(rifle, bursttime), self.rifle_accumulator, time); @@ -185,7 +185,7 @@ bool W_Rifle(int req) if(WEP_CVAR(rifle, secondary)) { if(WEP_CVAR_SEC(rifle, reload)) - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { if(weapon_prepareattack_check(1, WEP_CVAR_SEC(rifle, refire))) @@ -262,7 +262,7 @@ bool W_Rifle(int req) } #endif #ifdef CSQC -bool W_Rifle(int req) +bool W_Rifle(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/rpc.qc b/qcsrc/common/weapons/weapon/rpc.qc index 51c040440..f8069bf39 100644 --- a/qcsrc/common/weapons/weapon/rpc.qc +++ b/qcsrc/common/weapons/weapon/rpc.qc @@ -147,7 +147,7 @@ void W_RocketPropelledChainsaw_Attack (void) MUTATOR_CALLHOOK(EditProjectile, self, missile); } -bool W_RocketPropelledChainsaw(int req) +bool W_RocketPropelledChainsaw(entity thiswep, int req) {SELFPARAM(); float ammo_amount = false; switch(req) @@ -160,7 +160,7 @@ bool W_RocketPropelledChainsaw(int req) case WR_THINK: { if(WEP_CVAR(rpc, reload_ammo) && self.clip_load < WEP_CVAR(rpc, ammo)) - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { if (self.BUTTON_ATCK) @@ -229,7 +229,7 @@ bool W_RocketPropelledChainsaw(int req) #endif #ifdef CSQC -bool W_RocketPropelledChainsaw(int req) +bool W_RocketPropelledChainsaw(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/seeker.qc b/qcsrc/common/weapons/weapon/seeker.qc index 0687437af..4d67e153e 100644 --- a/qcsrc/common/weapons/weapon/seeker.qc +++ b/qcsrc/common/weapons/weapon/seeker.qc @@ -596,7 +596,7 @@ void W_Seeker_Fire_Tag(void) // Begin: Genereal weapon functions // ============================ -bool W_Seeker(int req) +bool W_Seeker(entity thiswep, int req) {SELFPARAM(); float ammo_amount; @@ -616,7 +616,7 @@ bool W_Seeker(int req) case WR_THINK: { if(autocvar_g_balance_seeker_reload_ammo && self.clip_load < min(WEP_CVAR(seeker, missile_ammo), WEP_CVAR(seeker, tag_ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(self.BUTTON_ATCK) { @@ -722,7 +722,7 @@ bool W_Seeker(int req) } #endif #ifdef CSQC -bool W_Seeker(int req) +bool W_Seeker(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/shockwave.qc b/qcsrc/common/weapons/weapon/shockwave.qc index b56a41fbb..3c5d5a9a8 100644 --- a/qcsrc/common/weapons/weapon/shockwave.qc +++ b/qcsrc/common/weapons/weapon/shockwave.qc @@ -666,7 +666,7 @@ void W_Shockwave_Attack(void) } } -bool W_Shockwave(int req) +bool W_Shockwave(entity thiswep, int req) {SELFPARAM(); switch(req) { @@ -861,7 +861,7 @@ void Net_ReadShockwaveParticle(void) shockwave.sw_time = time; } -bool W_Shockwave(int req) +bool W_Shockwave(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/shotgun.qc b/qcsrc/common/weapons/weapon/shotgun.qc index 814d57303..d2e58836f 100644 --- a/qcsrc/common/weapons/weapon/shotgun.qc +++ b/qcsrc/common/weapons/weapon/shotgun.qc @@ -195,7 +195,7 @@ void W_Shotgun_Attack2(void) // alternate secondary weapon frames void W_Shotgun_Attack3_Frame2() {SELFPARAM(); - if (!WEP_ACTION(self.weapon, WR_CHECKAMMO2)) + if (!_WEP_ACTION(self.weapon, WR_CHECKAMMO2)) if (!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -209,7 +209,7 @@ void W_Shotgun_Attack3_Frame2() } void W_Shotgun_Attack3_Frame1() {SELFPARAM(); - if (!WEP_ACTION(self.weapon, WR_CHECKAMMO2)) + if (!_WEP_ACTION(self.weapon, WR_CHECKAMMO2)) if (!(self.items & IT_UNLIMITED_WEAPON_AMMO)) { W_SwitchWeapon_Force(self, w_getbestweapon(self)); @@ -223,7 +223,7 @@ void W_Shotgun_Attack3_Frame1() .float shotgun_primarytime; -float W_Shotgun(float req) +float W_Shotgun(entity thiswep, float req) {SELFPARAM(); float ammo_amount; switch(req) @@ -243,7 +243,7 @@ float W_Shotgun(float req) { // don't force reload an empty shotgun if its melee attack is active if(WEP_CVAR(shotgun, secondary) < 2) - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); } else { @@ -347,7 +347,7 @@ float W_Shotgun(float req) #endif #ifdef CSQC .float prevric; -float W_Shotgun(float req) +float W_Shotgun(entity thiswep, float req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/tuba.qc b/qcsrc/common/weapons/weapon/tuba.qc index 20100bf39..2d88f3d2c 100644 --- a/qcsrc/common/weapons/weapon/tuba.qc +++ b/qcsrc/common/weapons/weapon/tuba.qc @@ -365,7 +365,7 @@ void W_Tuba_NoteOn(float hittype) } } -bool W_Tuba(int req) +bool W_Tuba(entity thiswep, int req) {SELFPARAM(); switch(req) { @@ -481,7 +481,7 @@ bool W_Tuba(int req) } #endif #ifdef CSQC -bool W_Tuba(int req) +bool W_Tuba(entity thiswep, int req) {SELFPARAM(); // nothing to do here; particles of tuba are handled differently // WEAPONTODO diff --git a/qcsrc/common/weapons/weapon/vaporizer.qc b/qcsrc/common/weapons/weapon/vaporizer.qc index 13c3fef8c..6bed925d9 100644 --- a/qcsrc/common/weapons/weapon/vaporizer.qc +++ b/qcsrc/common/weapons/weapon/vaporizer.qc @@ -268,7 +268,7 @@ void W_RocketMinsta_Attack3 (void) } } -float W_Vaporizer(float req) +float W_Vaporizer(entity thiswep, float req) {SELFPARAM(); float ammo_amount; float vaporizer_ammo; @@ -292,9 +292,9 @@ float W_Vaporizer(float req) { // if the laser uses load, we also consider its ammo for reloading if(WEP_CVAR(vaporizer, reload_ammo) && WEP_CVAR_SEC(vaporizer, ammo) && self.clip_load < min(vaporizer_ammo, WEP_CVAR_SEC(vaporizer, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else if(WEP_CVAR(vaporizer, reload_ammo) && self.clip_load < vaporizer_ammo) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); if(self.BUTTON_ATCK && (self.ammo_cells || !autocvar_g_rm) && !forbidWeaponUse(self)) { if(weapon_prepareattack(0, WEP_CVAR_PRI(vaporizer, refire))) @@ -424,7 +424,7 @@ float W_Vaporizer(float req) } #endif #ifdef CSQC -float W_Vaporizer(float req) +float W_Vaporizer(entity thiswep, float req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/common/weapons/weapon/vortex.qc b/qcsrc/common/weapons/weapon/vortex.qc index 2e515137c..898fedf22 100644 --- a/qcsrc/common/weapons/weapon/vortex.qc +++ b/qcsrc/common/weapons/weapon/vortex.qc @@ -132,7 +132,7 @@ void W_Vortex_Attack(float issecondary) void spawnfunc_weapon_vortex(void); // defined in t_items.qc .float vortex_chargepool_pauseregen_finished; -bool W_Vortex(int req) +bool W_Vortex(entity thiswep, int req) {SELFPARAM(); float dt; float ammo_amount; @@ -163,7 +163,7 @@ bool W_Vortex(int req) } if(autocvar_g_balance_vortex_reload_ammo && self.clip_load < min(WEP_CVAR_PRI(vortex, ammo), WEP_CVAR_SEC(vortex, ammo))) // forced reload - WEP_ACTION(self.weapon, WR_RELOAD); + _WEP_ACTION(self.weapon, WR_RELOAD); else { if(self.BUTTON_ATCK) @@ -315,7 +315,7 @@ bool W_Vortex(int req) #endif #ifdef CSQC float autocvar_g_balance_vortex_secondary = 0; // WEAPONTODO -bool W_Vortex(int req) +bool W_Vortex(entity thiswep, int req) {SELFPARAM(); switch(req) { diff --git a/qcsrc/server/bot/havocbot/havocbot.qc b/qcsrc/server/bot/havocbot/havocbot.qc index 7a3ac0561..4f7f7fb8e 100644 --- a/qcsrc/server/bot/havocbot/havocbot.qc +++ b/qcsrc/server/bot/havocbot/havocbot.qc @@ -102,7 +102,7 @@ void havocbot_ai() if(self.weapons) { - WEP_ACTION(self.weapon, WR_AIM); + _WEP_ACTION(self.weapon, WR_AIM); if (autocvar_bot_nofire || IS_INDEPENDENT_PLAYER(self)) { self.BUTTON_ATCK = false; @@ -963,7 +963,7 @@ float havocbot_chooseweapon_checkreload(int new_weapon) for(i = WEP_FIRST; i <= WEP_LAST; ++i) { // if we are out of ammo for all other weapons, it's an emergency to switch to anything else - if (WEP_ACTION(i, WR_CHECKAMMO1) + WEP_ACTION(i, WR_CHECKAMMO2)) + if (_WEP_ACTION(i, WR_CHECKAMMO1) + _WEP_ACTION(i, WR_CHECKAMMO2)) other_weapon_available = true; } if(other_weapon_available) diff --git a/qcsrc/server/cl_client.qc b/qcsrc/server/cl_client.qc index bd9c46a9b..1063731a8 100644 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@ -620,7 +620,7 @@ void PutClientInServer() // reset fields the weapons may use for (int j = WEP_FIRST; j <= WEP_LAST; ++j) { - WEP_ACTION(j, WR_RESETPLAYER); + _WEP_ACTION(j, WR_RESETPLAYER); // all weapons must be fully loaded when we spawn entity e = get_weaponinfo(j); diff --git a/qcsrc/server/cl_impulse.qc b/qcsrc/server/cl_impulse.qc index bc71664b7..823f2a665 100644 --- a/qcsrc/server/cl_impulse.qc +++ b/qcsrc/server/cl_impulse.qc @@ -134,7 +134,7 @@ void ImpulseCommands (void) W_PreviousWeapon(1); break; case 20: - if(!forbidWeaponUse(self)) { WEP_ACTION(self.weapon, WR_RELOAD); } + if(!forbidWeaponUse(self)) { _WEP_ACTION(self.weapon, WR_RELOAD); } break; } } diff --git a/qcsrc/server/cl_player.qc b/qcsrc/server/cl_player.qc index f7f3c03b7..87764b05a 100644 --- a/qcsrc/server/cl_player.qc +++ b/qcsrc/server/cl_player.qc @@ -548,7 +548,7 @@ void PlayerDamage (entity inflictor, entity attacker, float damage, int deathtyp MUTATOR_CALLHOOK(PlayerDies, inflictor, attacker, self, deathtype); excess = frag_damage; - WEP_ACTION(self.weapon, WR_PLAYERDEATH); + _WEP_ACTION(self.weapon, WR_PLAYERDEATH); RemoveGrapplingHook(self); @@ -630,7 +630,7 @@ void PlayerDamage (entity inflictor, entity attacker, float damage, int deathtyp // reset fields the weapons may use just in case for (j = WEP_FIRST; j <= WEP_LAST; ++j) { - WEP_ACTION(j, WR_RESETPLAYER); + _WEP_ACTION(j, WR_RESETPLAYER); ATTACK_FINISHED_FOR(self, j) = 0; } } diff --git a/qcsrc/server/defs.qh b/qcsrc/server/defs.qh index 5072e4900..f9112fcdd 100644 --- a/qcsrc/server/defs.qh +++ b/qcsrc/server/defs.qh @@ -162,7 +162,7 @@ const float MAX_DAMAGEEXTRARADIUS = 16; // WEAPONTODO .float autoswitch; -//float WEP_ACTION(float wpn, float wrequest); +//float _WEP_ACTION(float wpn, float wrequest); float client_hasweapon(entity cl, float wpn, float andammo, float complain); void w_clear(); void w_ready(); diff --git a/qcsrc/server/g_damage.qc b/qcsrc/server/g_damage.qc index b5d87eed1..76e69865a 100644 --- a/qcsrc/server/g_damage.qc +++ b/qcsrc/server/g_damage.qc @@ -265,7 +265,7 @@ float Obituary_WeaponDeath( if(death_weapon) { w_deathtype = deathtype; - int death_message = WEP_ACTION(death_weapon, ((murder) ? WR_KILLMESSAGE : WR_SUICIDEMESSAGE)); + int death_message = _WEP_ACTION(death_weapon, ((murder) ? WR_KILLMESSAGE : WR_SUICIDEMESSAGE)); w_deathtype = false; if (death_message) diff --git a/qcsrc/server/g_hook.qc b/qcsrc/server/g_hook.qc index 6a95a61fe..305118a08 100644 --- a/qcsrc/server/g_hook.qc +++ b/qcsrc/server/g_hook.qc @@ -522,7 +522,7 @@ void GrappleHookInit() } else { - WEP_ACTION(WEP_HOOK.m_id, WR_INIT); + WEP_ACTION(WEP_HOOK, WR_INIT); hook_shotorigin[0] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 1); hook_shotorigin[1] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 2); hook_shotorigin[2] = shotorg_adjust_values(CL_Weapon_GetShotOrg(WEP_HOOK.m_id), false, false, 3); diff --git a/qcsrc/server/miscfunctions.qc b/qcsrc/server/miscfunctions.qc index eb8277abc..1c27828a1 100644 --- a/qcsrc/server/miscfunctions.qc +++ b/qcsrc/server/miscfunctions.qc @@ -720,7 +720,7 @@ void readplayerstartcvars() { e = get_weaponinfo(i); if(precache_weapons & WepSet_FromWeapon(i)) - WEP_ACTION(i, WR_INIT); + _WEP_ACTION(i, WR_INIT); } start_ammo_shells = max(0, start_ammo_shells); diff --git a/qcsrc/server/miscfunctions.qh b/qcsrc/server/miscfunctions.qh index f1f003820..9d9397389 100644 --- a/qcsrc/server/miscfunctions.qh +++ b/qcsrc/server/miscfunctions.qh @@ -421,7 +421,7 @@ void readlevelcvars(void) game_starttime = time + cvar("g_start_delay"); for(int i = WEP_FIRST; i <= WEP_LAST; ++i) - WEP_ACTION(i, WR_INIT); + _WEP_ACTION(i, WR_INIT); readplayerstartcvars(); } diff --git a/qcsrc/server/mutators/gamemode_nexball.qc b/qcsrc/server/mutators/gamemode_nexball.qc index e3480a42e..c3f00d61b 100644 --- a/qcsrc/server/mutators/gamemode_nexball.qc +++ b/qcsrc/server/mutators/gamemode_nexball.qc @@ -155,7 +155,7 @@ void GiveBall(entity plyr, entity ball) plyr.weaponentity.switchweapon = plyr.weapon; plyr.weapons = WEPSET_PORTO; setself(plyr); - WEP_ACTION(WEP_PORTO.m_id, WR_RESETPLAYER); + WEP_ACTION(WEP_PORTO, WR_RESETPLAYER); plyr.switchweapon = WEP_PORTO.m_id; W_SwitchWeapon(WEP_PORTO.m_id); setself(this); @@ -929,7 +929,7 @@ MUTATOR_HOOKFUNCTION(nexball_PlayerPreThink) if(self.weaponentity.weapons) { self.weapons = self.weaponentity.weapons; - WEP_ACTION(WEP_PORTO.m_id, WR_RESETPLAYER); + WEP_ACTION(WEP_PORTO, WR_RESETPLAYER); self.switchweapon = self.weaponentity.switchweapon; W_SwitchWeapon(self.switchweapon); diff --git a/qcsrc/server/mutators/mutator_nix.qc b/qcsrc/server/mutators/mutator_nix.qc index 8cf0118d4..93864b184 100644 --- a/qcsrc/server/mutators/mutator_nix.qc +++ b/qcsrc/server/mutators/mutator_nix.qc @@ -60,7 +60,7 @@ void NIX_GiveCurrentWeapon() nix_nextchange = time; // start the first round now! else nix_nextchange = time + autocvar_g_balance_nix_roundtime; - //WEP_ACTION(nix_weapon, WR_INIT); // forget it, too slow + //_WEP_ACTION(nix_weapon, WR_INIT); // forget it, too slow } // get weapon info @@ -101,7 +101,7 @@ void NIX_GiveCurrentWeapon() else Send_Notification(NOTIF_ONE_ONLY, self, MSG_CENTER, CENTER_NIX_NEWWEAPON, nix_weapon); - WEP_ACTION(nix_weapon, WR_RESETPLAYER); + _WEP_ACTION(nix_weapon, WR_RESETPLAYER); // all weapons must be fully loaded when we spawn if(e.spawnflags & WEP_FLAG_RELOADABLE) // prevent accessing undefined cvars @@ -156,7 +156,7 @@ void NIX_precache() float i; for (i = WEP_FIRST; i <= WEP_LAST; ++i) if (NIX_CanChooseWeapon(i)) - WEP_ACTION(i, WR_INIT); + _WEP_ACTION(i, WR_INIT); } MUTATOR_HOOKFUNCTION(nix_ForbidThrowCurrentWeapon) diff --git a/qcsrc/server/t_items.qc b/qcsrc/server/t_items.qc index 0fbbf2732..e6e45963c 100644 --- a/qcsrc/server/t_items.qc +++ b/qcsrc/server/t_items.qc @@ -1459,7 +1459,7 @@ void spawnfunc_target_items (void) { self.weapons |= WepSet_FromWeapon(j); if(self.spawnflags == 0 || self.spawnflags == 2) - WEP_ACTION(e.weapon, WR_INIT); + _WEP_ACTION(e.weapon, WR_INIT); break; } } @@ -1529,7 +1529,7 @@ void spawnfunc_target_items (void) e = get_weaponinfo(j); if(argv(i) == e.netname) { - WEP_ACTION(e.weapon, WR_INIT); + _WEP_ACTION(e.weapon, WR_INIT); break; } } @@ -1843,7 +1843,7 @@ float GiveItems(entity e, float beginarg, float endarg) POSTGIVE_WEAPON(e, j, W_Sound("weaponpickup"), string_null); if (!(save_weapons & WepSet_FromWeapon(j))) if(e.weapons & WepSet_FromWeapon(j)) - WEP_ACTION(wi.weapon, WR_INIT); + _WEP_ACTION(wi.weapon, WR_INIT); } } POSTGIVE_VALUE(e, strength_finished, 1, "misc/powerup.wav", "misc/poweroff.wav"); diff --git a/qcsrc/server/weapons/selection.qc b/qcsrc/server/weapons/selection.qc index de240ce2e..9e175aec4 100644 --- a/qcsrc/server/weapons/selection.qc +++ b/qcsrc/server/weapons/selection.qc @@ -47,8 +47,8 @@ float client_hasweapon(entity cl, float wpn, float andammo, float complain) else { setself(cl); - f = WEP_ACTION(wpn, WR_CHECKAMMO1); - f = f + WEP_ACTION(wpn, WR_CHECKAMMO2); + f = _WEP_ACTION(wpn, WR_CHECKAMMO1); + f = f + _WEP_ACTION(wpn, WR_CHECKAMMO2); // always allow selecting the Mine Layer if we placed mines, so that we can detonate them entity mine; @@ -260,7 +260,7 @@ void W_SwitchWeapon(float imp) else self.selectweapon = imp; // update selectweapon ANYWAY } - else if(!forbidWeaponUse(self)) { WEP_ACTION(self.weapon, WR_RELOAD); } + else if(!forbidWeaponUse(self)) { _WEP_ACTION(self.weapon, WR_RELOAD); } } void W_CycleWeapon(string weaponorder, float dir) diff --git a/qcsrc/server/weapons/spawning.qc b/qcsrc/server/weapons/spawning.qc index 202b29fda..95d02a1d5 100644 --- a/qcsrc/server/weapons/spawning.qc +++ b/qcsrc/server/weapons/spawning.qc @@ -180,6 +180,6 @@ void weapon_defaultspawnfunc(float wpn) StartItem(e.model, "weapons/weaponpickup.wav", self.respawntime, self.respawntimejitter, e.message, 0, e.weapon, f, weapon_pickupevalfunc, e.bot_pickupbasevalue); #if 0 // WEAPONTODO if (self.modelindex) // don't precache if self was removed - WEP_ACTION(e.weapon, WR_INIT); + _WEP_ACTION(e.weapon, WR_INIT); #endif } diff --git a/qcsrc/server/weapons/weaponsystem.qc b/qcsrc/server/weapons/weaponsystem.qc index 076a172c8..6d48e7894 100644 --- a/qcsrc/server/weapons/weaponsystem.qc +++ b/qcsrc/server/weapons/weaponsystem.qc @@ -460,7 +460,7 @@ void w_ready() float weapon_prepareattack_checkammo(float secondary) {SELFPARAM(); if (!(self.items & IT_UNLIMITED_WEAPON_AMMO)) - if (!WEP_ACTION(self.weapon, WR_CHECKAMMO1 + secondary)) + if (!_WEP_ACTION(self.weapon, WR_CHECKAMMO1 + secondary)) { // always keep the Mine Layer if we placed mines, so that we can detonate them entity mine; @@ -478,7 +478,7 @@ float weapon_prepareattack_checkammo(float secondary) self.prevdryfire = time; } - if(WEP_ACTION(self.weapon, WR_CHECKAMMO2 - secondary)) // check if the other firing mode has enough ammo + if(_WEP_ACTION(self.weapon, WR_CHECKAMMO2 - secondary)) // check if the other firing mode has enough ammo { if(time - self.prevwarntime > 1) { @@ -702,7 +702,7 @@ void W_WeaponFrame() self.weaponname = newwep.mdl; self.bulletcounter = 0; self.ammo_field = newwep.ammo_field; - WEP_ACTION(self.switchweapon, WR_SETUP); + _WEP_ACTION(self.switchweapon, WR_SETUP); self.weaponentity.state = WS_RAISE; // set our clip load to the load of the weapon we switched to, if it's reloadable @@ -768,9 +768,9 @@ void W_WeaponFrame() v_up = up; if(w) - WEP_ACTION(self.weapon, WR_THINK); + _WEP_ACTION(self.weapon, WR_THINK); else - WEP_ACTION(self.weapon, WR_GONETHINK); + _WEP_ACTION(self.weapon, WR_GONETHINK); if (time + self.weapon_frametime * 0.5 >= self.weapon_nextthink) { @@ -932,7 +932,7 @@ void W_Reload(float sent_ammo_min, string sent_sound) self.reload_complain = time + 1; } // switch away if the amount of ammo is not enough to keep using this weapon - if (!(WEP_ACTION(self.weapon, WR_CHECKAMMO1) + WEP_ACTION(self.weapon, WR_CHECKAMMO2))) + if (!(_WEP_ACTION(self.weapon, WR_CHECKAMMO1) + _WEP_ACTION(self.weapon, WR_CHECKAMMO2))) { self.clip_load = -1; // reload later W_SwitchToOtherWeapon(self); @@ -971,6 +971,6 @@ void W_DropEvent(float event, entity player, float weapon_type, entity weapon_it {SELFPARAM(); setself(player); weapon_dropevent_item = weapon_item; - WEP_ACTION(weapon_type, event); + _WEP_ACTION(weapon_type, event); setself(this); }