From: Rudolf Polzer Date: Sun, 4 Mar 2012 15:30:45 +0000 (+0100) Subject: stuff X-Git-Tag: xonotic-v0.7.0~348^2~1^2~37 X-Git-Url: https://git.rm.cloudns.org/?a=commitdiff_plain;h=7934038c339fd0f238485b8990d3a1f900b3b52d;p=xonotic%2Fxonotic-data.pk3dir.git stuff --- diff --git a/qcsrc/server/cl_client.qc b/qcsrc/server/cl_client.qc index 2c89b3e3e..18922fea7 100644 --- a/qcsrc/server/cl_client.qc +++ b/qcsrc/server/cl_client.qc @@ -757,10 +757,10 @@ void PutClientInServer (void) if(g_weaponarena_random) { if(g_weaponarena_random_with_laser) - WEPSET_ANDNOT_EW(self, WEPBIT_LASER); + WEPSET_ANDNOT_EW(self, WEP_LASER); self.weapons = randombits(self.weapons, g_weaponarena_random, FALSE); if(g_weaponarena_random_with_laser) - WEPSET_OR_EW(self, WEPBIT_LASER); + WEPSET_OR_EW(self, WEP_LASER); } self.items = start_items; diff --git a/qcsrc/server/g_damage.qc b/qcsrc/server/g_damage.qc index ab9096c45..5d086820e 100644 --- a/qcsrc/server/g_damage.qc +++ b/qcsrc/server/g_damage.qc @@ -144,26 +144,27 @@ void GiveFrags (entity attacker, entity targ, float f, float deathtype) if(!culprit || !WEPSET_CONTAINS_EW(attacker, culprit)) culprit = attacker.weapon; - if(g_weaponarena_random_with_laser && culprit == WEPBIT_LASER) + if(g_weaponarena_random_with_laser && culprit == WEP_LASER) { // no exchange } else { if(inWarmupStage) - w = warmup_start_weapons; + WEPSET_COPY_AA(w, warmup_start_weapons); else - w = start_weapons; + WEPSET_COPY_AA(w, start_weapons); // all others (including the culprit): remove - w &~= attacker.weapons; + WEPSET_ANDNOT_AE(w, attacker); + WEPSET_ANDNOT_AW(w, culprit); // among the remaining ones, choose one by random w = randombits(w, 1, FALSE); if(w) { - attacker.weapons |= w; - attacker.weapons &~= get_weaponinfo(culprit).weapons; + WEPSET_OR_EA(attacker, w); + WEPSET_ANDNOT_EW(attacker, culprit); } } diff --git a/qcsrc/server/mutators/mutator_nix.qc b/qcsrc/server/mutators/mutator_nix.qc index 2e5e425eb..dc90336ca 100644 --- a/qcsrc/server/mutators/mutator_nix.qc +++ b/qcsrc/server/mutators/mutator_nix.qc @@ -143,7 +143,7 @@ void NIX_GiveCurrentWeapon() self.weapons = 0; if(g_nix_with_laser) - self.weapons = self.weapons | WEPBIT_LASER; + WEPSET_ANDNOT_EW(self, WEP_LASER); WEPSET_OR_EW(self, nix_weapon); if(self.switchweapon != nix_weapon) diff --git a/qcsrc/server/w_porto.qc b/qcsrc/server/w_porto.qc index c919c497e..024db232b 100644 --- a/qcsrc/server/w_porto.qc +++ b/qcsrc/server/w_porto.qc @@ -36,7 +36,7 @@ void W_Porto_Fail (float failhard) self.realowner.porto_current = world; - if(self.cnt < 0 && !failhard && self.realowner.playerid == self.playerid && self.realowner.deadflag == DEAD_NO && !(self.realowner.weapons & WEPBIT_PORTO)) + if(self.cnt < 0 && !failhard && self.realowner.playerid == self.playerid && self.realowner.deadflag == DEAD_NO && !WEPSET_CONTAINS_EW(self.realowner, WEPBIT_PORTO)) { setsize (self, '-16 -16 0', '16 16 32'); setorigin(self, self.origin + trace_plane_normal); @@ -202,12 +202,6 @@ void W_Porto_Attack (float type) { entity gren; - if(type == -1) - { - if not(self.items & IT_UNLIMITED_SUPERWEAPONS) - self.weapons = self.weapons - (self.weapons & WEPBIT_PORTO); - } - W_SetupShot (self, FALSE, 4, "porto/fire.wav", CH_WEAPON_A, 0); // always shoot from the eye w_shotdir = v_forward;