From 303f20ec9454d9e1f4b20f01719108ae8ba55629 Mon Sep 17 00:00:00 2001 From: mrbougo Date: Fri, 8 May 2009 18:49:57 +0000 Subject: [PATCH] Nexball HUD fix, and using the porto as weapon now git-svn-id: svn://svn.icculus.org/nexuiz/trunk@6691 f962a42d-fe04-0410-a3ab-8c8b0445ebaa --- data/qcsrc/client/View.qc | 2 +- data/qcsrc/client/sbar.qc | 4 ++-- data/qcsrc/server/miscfunctions.qc | 4 ++-- data/qcsrc/server/nexball.qc | 17 +++++++++-------- data/qcsrc/server/w_grenadelauncher.qc | 2 -- data/qcsrc/server/w_porto.qc | 2 ++ data/sound/nexball/shoot1.wav | Bin 0 -> 16940 bytes data/sound/nexball/shoot2.ogg | Bin 0 -> 10225 bytes 8 files changed, 16 insertions(+), 15 deletions(-) create mode 100644 data/sound/nexball/shoot1.wav create mode 100644 data/sound/nexball/shoot2.ogg diff --git a/data/qcsrc/client/View.qc b/data/qcsrc/client/View.qc index 0e4a90402..bbcb99c9f 100644 --- a/data/qcsrc/client/View.qc +++ b/data/qcsrc/client/View.qc @@ -11,7 +11,7 @@ void Porto_Draw() vector p, dir, ang, q, nextdir; float idx, portal_number, portal1_idx; - if(activeweapon != WEP_PORTO || spectatee_status) + if(activeweapon != WEP_PORTO || spectatee_status || gametype == GAME_NEXBALL) return; if(intermission == 1) return; diff --git a/data/qcsrc/client/sbar.qc b/data/qcsrc/client/sbar.qc index 7443e6a47..b4c5b9969 100644 --- a/data/qcsrc/client/sbar.qc +++ b/data/qcsrc/client/sbar.qc @@ -2213,7 +2213,7 @@ void CSQC_nb_hud(void) stat_items = getstati(STAT_ITEMS); nb_pb_starttime = getstatf(STAT_NB_METERSTART); - if(cvar("sbar_ballstatus_right")) + if(cvar_or("sbar_ballstatus_right", cvar("sbar_flagstatus_right"))) pos_x = vid_conwidth - 66 - sbar_x - 64; // the 66 comes from trial and error, no idea about the 64 (see CTF) else pos_x = 10 - sbar_x; @@ -2221,7 +2221,7 @@ void CSQC_nb_hud(void) pos_z = 0; if(sbar_hudselector == 1) - pos_y = (vid_conheight - sbar_y) - cvar("sbar_ballstatus_pos") - 64; + pos_y = (vid_conheight - sbar_y) - cvar_or("sbar_ballstatus_pos", 123) - 64; else pos_y = -124; // 17 more than flag icons diff --git a/data/qcsrc/server/miscfunctions.qc b/data/qcsrc/server/miscfunctions.qc index a22fc8a10..e911dde66 100644 --- a/data/qcsrc/server/miscfunctions.qc +++ b/data/qcsrc/server/miscfunctions.qc @@ -887,14 +887,14 @@ void readplayerstartcvars() else if(g_race) t = (i == WEP_LASER); else if(g_nexball) - t = 0; //GL is set a few lines later + t = 0; // weapon is set a few lines later else t = (i == WEP_LASER || i == WEP_SHOTGUN); if(g_grappling_hook) // if possible, redirect off-hand hook to on-hand hook t += (i == WEP_HOOK); } - if(g_nexball && i == WEP_GRENADE_LAUNCHER) + if(g_nexball && i == WEP_PORTO) t=1; if(t) diff --git a/data/qcsrc/server/nexball.qc b/data/qcsrc/server/nexball.qc index 1cf9a3f25..4edb89430 100644 --- a/data/qcsrc/server/nexball.qc +++ b/data/qcsrc/server/nexball.qc @@ -577,7 +577,7 @@ void W_Nexball_Attack (float t) if (!(ball = self.ballcarried)) return; - W_SetupShot (self, FALSE, 4, "weapons/grenade_fire.wav"); + W_SetupShot (self, FALSE, 4, "nexball/shoot1.wav"); tracebox(w_shotorg, BALL_MINS, BALL_MAXS, w_shotorg, MOVE_WORLDONLY, world); if(trace_startsolid) { @@ -608,8 +608,8 @@ void W_Nexball_Attack2 (void) local entity missile; if (!(balls & BALL_BASKET)) return; - W_SetupShot (self, FALSE, 2, "weapons/grenade_fire.wav"); - pointparticles(particleeffectnum("grenadelauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1); + W_SetupShot (self, FALSE, 2, "nexball/shoot2.ogg"); +// pointparticles(particleeffectnum("grenadelauncher_muzzleflash"), w_shotorg, w_shotdir * 1000, 1); missile = spawn (); missile.owner = self; @@ -667,14 +667,15 @@ float w_nexball_weapon(float req) } else if (req == WR_PRECACHE) { - precache_model ("models/weapons/g_gl.md3"); - precache_model ("models/weapons/v_gl.md3"); - precache_model ("models/weapons/h_gl.dpm"); + precache_model ("models/weapons/g_porto.md3"); + precache_model ("models/weapons/v_porto.md3"); + precache_model ("models/weapons/h_porto.dpm"); precache_model ("models/elaser.mdl"); - precache_sound ("weapons/grenade_fire.wav"); + precache_sound ("nexball/shoot1.wav"); + precache_sound ("nexball/shoot2.ogg"); } else if (req == WR_SETUP) - weapon_setup(WEP_GRENADE_LAUNCHER); + weapon_setup(WEP_PORTO); else if (req == WR_SUICIDEMESSAGE) { w_deathtypestring = "is a weirdo"; diff --git a/data/qcsrc/server/w_grenadelauncher.qc b/data/qcsrc/server/w_grenadelauncher.qc index 368d9e529..b5a269ad9 100644 --- a/data/qcsrc/server/w_grenadelauncher.qc +++ b/data/qcsrc/server/w_grenadelauncher.qc @@ -147,10 +147,8 @@ void spawnfunc_weapon_grenadelauncher (void) } .float bot_secondary_grenademooth; -float w_nexball_weapon(float req); float w_glauncher(float req) { - if (g_nexball) { return w_nexball_weapon(req); } if (req == WR_AIM) { self.BUTTON_ATCK = FALSE; diff --git a/data/qcsrc/server/w_porto.qc b/data/qcsrc/server/w_porto.qc index a7d82b6c5..50e71861b 100644 --- a/data/qcsrc/server/w_porto.qc +++ b/data/qcsrc/server/w_porto.qc @@ -202,10 +202,12 @@ void spawnfunc_weapon_porto (void) weapon_defaultspawnfunc(WEP_PORTO); } +float w_nexball_weapon(float req); float w_porto(float req) { vector v_angle_save; + if (g_nexball) { return w_nexball_weapon(req); } if (req == WR_AIM) { self.BUTTON_ATCK = FALSE; diff --git a/data/sound/nexball/shoot1.wav b/data/sound/nexball/shoot1.wav new file mode 100644 index 0000000000000000000000000000000000000000..c68f13fa47fa6ddcfbf1a9aa5202e4ca2ba2233b GIT binary patch literal 16940 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 F{{S8!G7JC! literal 0 HcmV?d00001 diff --git a/data/sound/nexball/shoot2.ogg b/data/sound/nexball/shoot2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..848f384f812e4e728bd20c66078f9abd43c74da9 GIT binary patch literal 10225 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 literal 0 HcmV?d00001 -- 2.39.2