Module dpmod: Change committed

havoc at icculus.org havoc at icculus.org
Thu Feb 20 03:58:25 EST 2003


Commiter   : havoc
CVSROOT    : /cvs/cvsroot/twilight
Module     : dpmod
Commit time: 2003-02-20 08:58:25 UTC

Log message:

shotgun added back (fires explosive slugs)
dbshotgun now fires only buckshot
pistol moved to slot 1
plasma rifle no longer has zoom button, altfire fires 3x shot power (same behavior as before when zoomed), recommend use of +button4 for zoom
grenade launcher now fires remote explosives (radio detonate with altfire or shoot them with a suitable weapon)
mines now do impact damage when they hit something

Modified files:
     qc/w_dbshotgun.qc qc/w_grenade.qc qc/w_nailgun.qc qc/w_pistol.qc
     qc/w_plasmarifle.qc qc/w_shotgun.qc qc/w_supernailgun.qc
     qc/mine.qc

------=MIME.e145f49d1ce011e70c02b8ae5341d94f
Content-Type: text/plain; name="dpmod.20030220.085825.havoc.diff"
Content-Disposition: attachment; filename="dpmod.20030220.085825.havoc.diff"
Content-Transfer-Encoding: 8bit

Index: dpmod/qc/mine.qc
diff -u dpmod/qc/mine.qc:1.4 dpmod/qc/mine.qc:1.5
--- dpmod/qc/mine.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/mine.qc	Thu Feb 20 03:58:15 2003
@@ -5,10 +5,12 @@
 float MINE_TENWARHEAD = 8;
 float MINE_DETONATEONBUTTON3 = 16;
 
+.float activemines;
 void() MineExplode =
 {
 	local vector v, basevel;
 	local float t;
+	self.owner.activemines = self.owner.activemines - 1;
 	if (self.weapon & MINE_TENWARHEAD)
 	{
 		basevel = '0 0 250' + '0 0 0.2' * cvar("sv_gravity");
@@ -60,9 +62,15 @@
 	local vector v;
 	self.nextthink = time;
 	fightdone = time + 1; // delay stuff until fighting is over
+	if (time > self.cnt)
+	{
+		self.th_die();
+		return;
+	}
 	p = pointcontents(self.origin);
 	if (p == CONTENT_SKY)
 	{
+		self.owner.activemines = self.owner.activemines - 1;
 		remove(self);
 		return;
 	}
@@ -78,18 +86,17 @@
 		MineExplode();
 		return;
 	}
-	if (self.lefty == 3)
+	if (self.lefty)
+	if (time >= self.count)
 	{
+		self.count = time + 0.05;
+		if (self.lefty == 3)
 		if (!self.enemy.takedamage)
 		{
 			MineExplode();
 			return;
 		}
-	}
-	if (time >= self.count)
-	{
-		self.count = time + 0.05;
-		if (self.lefty)
+		if (self.weapon & (MINE_PROXIMITY | MINE_LASERTRIP))
 		{
 			head = findradius(self.origin, self.dmg2 * 0.5);
 			while (head)
@@ -111,33 +118,28 @@
 				}
 				head = head.chain;
 			}
-		}
-		if (self.lefty == 2)
-		{
-			v = self.angles;
-			v_x = 0 - v_x;
-			makevectors(v);
-			newmis = self.owner;
-			self.owner = world;
-			traceline(self.origin, self.origin + v_forward * 65536, FALSE, self);
-			self.owner = newmis;
-			self.dest = trace_endpos;
-			if (trace_ent)
-			if ((trace_ent.flags & FL_MONSTER) || trace_ent.classname == "player")
-			if (trace_ent.team == 0 || trace_ent.team != self.owner.team)
+			if (self.lefty == 2)
 			{
-				// trigger
-				self.count = time + 1000;
-				self.cnt = 0;
-				sound(self, CHAN_VOICE, "weapons/bomb/trigger.wav", 1, ATTN_STATIC);
+				v = self.angles;
+				v_x = 0 - v_x;
+				makevectors(v);
+				newmis = self.owner;
+				self.owner = world;
+				traceline(self.origin, self.origin + v_forward * 65536, FALSE, self);
+				self.owner = newmis;
+				self.dest = trace_endpos;
+				if (trace_ent)
+				if ((trace_ent.flags & FL_MONSTER) || trace_ent.classname == "player")
+				if (trace_ent.team == 0 || trace_ent.team != self.owner.team)
+				{
+					// trigger
+					self.count = time + 1000;
+					self.cnt = 0;
+					sound(self, CHAN_VOICE, "weapons/bomb/trigger.wav", 1, ATTN_STATIC);
+				}
 			}
 		}
 	}
-	if (time > self.cnt)
-	{
-		self.th_die();
-		return;
-	}
 };
 
 void(entity targ) MineAttach =
@@ -210,21 +212,26 @@
 	//self.angles = self.owner.angles;
 };
 
+.float count3, count4;
 void() MineTouch =
 {
+	local vector v;
 	if (other == self.owner)
 		return; // don't hit owner
 	if (other.solid == SOLID_BSP)
 	{
 		findnearestsurface(16, self.origin, 32);
 		self.angles = vectoangles(trace_plane_normal);
-		newmis = spawn();
-		newmis.classname = "laserdot";
-		newmis.owner = self;
-		newmis.think = laserdotthink;
-		newmis.nextthink = time;
-		setmodel(newmis, "progs/s_bubble.spr");
-		setsize(newmis, '0 0 0', '0 0 0');
+		if (self.weapon & MINE_LASERTRIP)
+		{
+			newmis = spawn();
+			newmis.classname = "laserdot";
+			newmis.owner = self;
+			newmis.think = laserdotthink;
+			newmis.nextthink = time;
+			setmodel(newmis, "progs/s_bubble.spr");
+			setsize(newmis, '0 0 0', '0 0 0');
+		}
 		if (self.weapon & MINE_LASERTRIP)
 			self.lefty = 2;
 		else
@@ -235,23 +242,31 @@
 	if ((other.flags & FL_MONSTER) || other.classname == "player")
 	if (other.team == 0 || other.team != self.owner.team)
 	{
+		if (self.count3)
+		{
+			v = normalize(self.velocity) * self.count4;
+			T_Damage(other, self, self.owner, self.count3, self.count4, self.deathtype, DT_IMPACT, self.origin, v, self.obitfunc1);
+			if (!other.takedamage)
+				return;
+		}
 		if (self.weapon & (MINE_PROXIMITY | MINE_LASERTRIP))
 		{
 			MineExplode();
 			return;
 		}
-		self.weapon = self.weapon | MINE_PROXIMITY;
 		self.lefty = 3;
 		MineAttach(other);
 		return;
 	}
 };
 
-void(vector org, vector vel, entity own, float damage, float damage2, float type, float lifetime, string dethtype, void(entity t, entity a, string m, float dtyp) obitfunc) LaunchMine =
+void(vector org, vector vel, entity own, float damage, float damage2, float impactdamage, float impactbodydamage, float type, float lifetime, string dethtype, void(entity t, entity a, string m, float dtyp) obitfunc) LaunchMine =
 {
 	local   vector  v;
 	DelayGibComment();      // make him wait before commenting on gibs so it's not drown out by explosions etc
 
+	own.activemines = own.activemines + 1;
+
 	fightdone = time + 1; // delay stuff until fighting is over
 	v = normalize(vel);
 	newmis = spawn ();
@@ -270,6 +285,8 @@
 	newmis.touch = MineTouch;
 	newmis.dmg = damage;
 	newmis.dmg2 = damage2;
+	newmis.count3 = impactdamage;
+	newmis.count4 = impactbodydamage;
 	newmis.effects = EF_LOWPRECISION;
 	if (self.items & IT_QUAD)
 	{
Index: dpmod/qc/w_dbshotgun.qc
diff -u dpmod/qc/w_dbshotgun.qc:1.4 dpmod/qc/w_dbshotgun.qc:1.5
--- dpmod/qc/w_dbshotgun.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_dbshotgun.qc	Thu Feb 20 03:58:15 2003
@@ -65,8 +65,8 @@
 		Obituary_Fallback(targ, attacker, dmsg, dtype);
 };
 
-float DBSHOTGUNBUCKSHOT = 60;
-float DBSHOTGUNEXPLOSIVESLUG = 85;
+float DBSHOTGUNBUCKSHOT = 80;
+//float DBSHOTGUNEXPLOSIVESLUG = 85;
 
 .float shotgunmode, shotgunshells;
 void(void(entity t, entity a, string m, float dtyp) obitfunc, float spreadboost) W_DBShotgunFireShell =
@@ -85,15 +85,19 @@
 		shotorg = shotorg + v_right;
 	}
 	self.wload = self.wload - 1;
+	/*
 	if (self.shotgunmode)
 		self.currentammo = self.ammo_xshells = self.ammo_xshells - 1;
 	else
+	*/
 		self.currentammo = self.ammo_shells = self.ammo_shells - 1;
 	self.wfiretime = time;
 	w_muzzleflash(v, 4);
+	/*
 	if (self.shotgunmode)
 		FireBullets(self, self, 1, 1, 0, 0, DBSHOTGUNEXPLOSIVESLUG * damagescale, 80, shotdir * 5000, spreadboost, "SHOTGUNEXPLOSIVESLUG", DT_SHOTGUN, obitfunc);
 	else
+	*/
 	{
 		FireBullets(self, self, 1, 5, DBSHOTGUNBUCKSHOT * 0.1 * damagescale, DBSHOTGUNBUCKSHOT * 0.1 * damagescale, 0, 0, shotdir * 6000, spreadboost + 0.03, "SHOTGUN", DT_SHOTGUN, obitfunc);
 		FireBullets(self, self, 0, 5, DBSHOTGUNBUCKSHOT * 0.1 * damagescale, DBSHOTGUNBUCKSHOT * 0.1 * damagescale, 0, 0, shotdir * 6000, spreadboost + 0.03, "SHOTGUN", DT_SHOTGUN, obitfunc);
@@ -123,12 +127,13 @@
 void() w_dbshotgunraise2;
 void() w_dbshotgun =
 {
-	local float swapmode, otherammo;
+	//local float swapmode, otherammo;
 	local vector v;
 
 	if (widle(w_dbshotgundrop1))
 		return;
 
+	/*
 	if (self.shotgunmode)
 	{
 		swapmode = self.ammo_xshells < 1 && self.ammo_shells >= 1;
@@ -153,6 +158,7 @@
 		else
 			sprint(self, "Ammo: Buckshot\n");
 	}
+	*/
 
 	if (self.wload > 0)
 	{
@@ -176,6 +182,7 @@
 			}
 			else
 			{
+				/*
 				if (self.shotgunmode)
 				{
 					if (self.ammo_xshells >= 1)
@@ -186,6 +193,7 @@
 					}
 				}
 				else
+				*/
 				{
 					if (self.ammo_shells >= 1)
 					{
@@ -224,12 +232,14 @@
 float() w_dbshotgunrating = {return genericweaponrating(0, 250, 175);};
 void() w_dbshotgunsetup =
 {
+	/*
 	if (self.shotgunmode)
 		wset(IT_WEAPON3, IT_SHELLS, self.ammo_xshells, VWEP_SUPER_SHOTGUN, "progs/v_dpshot2.mdl");
 	else
+	*/
 		wset(IT_WEAPON3, IT_SHELLS, self.ammo_shells, VWEP_SUPER_SHOTGUN, "progs/v_dpshot2.mdl");
 };
-float(float request) setweapon3 = {return weapongeneric(IT_WEAPON3, self.ammo_shells >= 1 || self.ammo_xshells >= 1, request, w_dbshotgunsetup, w_dbshotgun, w_dbshotgunraise1, w_directaim, w_dbshotgunrating, "Double Barrel Shotgun");};
+float(float request) setweapon3 = {return weapongeneric(IT_WEAPON3, self.ammo_shells >= 1/* || self.ammo_xshells >= 1*/, request, w_dbshotgunsetup, w_dbshotgun, w_dbshotgunraise1, w_directaim, w_dbshotgunrating, "Double Barrel Shotgun");};
 
 void() w_dbshotgunraise1 = {self.wload = 0;self.shotgunshells = 0;wraise(9, w_dbshotgunraise2, 0.1);};
 void() w_dbshotgunraise2 = {wraise(8, w_dbshotgun, 0.1);};
Index: dpmod/qc/w_grenade.qc
diff -u dpmod/qc/w_grenade.qc:1.3 dpmod/qc/w_grenade.qc:1.4
--- dpmod/qc/w_grenade.qc:1.3	Fri Nov 15 07:59:54 2002
+++ dpmod/qc/w_grenade.qc	Thu Feb 20 03:58:15 2003
@@ -28,24 +28,46 @@
 		Obituary_Fallback(targ, attacker, dmsg, dtype);
 };
 
+/*
 void() W_GrenadeFireImpact =
 {
+	local float a;
 	stopfiring = TRUE;
 	self.wfiretime = time;
-	self.currentammo = self.ammo_rockets = self.ammo_rockets - 1;
+	a = self.ammo_rockets;
+	if (a > 1)
+		a = 1;
+	self.wfiretime = time;
+	self.currentammo = self.ammo_rockets = self.ammo_rockets - a;
 	w_muzzleflash(shotorg, 3);
-	LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200/* + self.velocity*/, self, 150 * damagescale, 200, GRENADE_IMPACT, 25, "GRENADE", Obituary_Grenade);
+	//LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200 + self.velocity, self, (50 + 100 * a) * damagescale, 100 + 100 * a, GRENADE_IMPACT | GRENADE_IMMUNETODAMAGE, 25, "GRENADE", Obituary_Grenade);
+	LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200, self, (50 + 100 * a) * damagescale, 100 + 100 * a, GRENADE_IMPACT | GRENADE_IMMUNETODAMAGE, 25, "GRENADE", Obituary_Grenade);
 };
 
 void() W_GrenadeFireProximity =
 {
+	local float a;
 	stopfiring = TRUE;
+	a = self.ammo_rockets;
+	if (a > 1)
+		a = 1;
 	self.wfiretime = time;
+	self.currentammo = self.ammo_rockets = self.ammo_rockets - a;
+	w_muzzleflash(shotorg, 3);
+	LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200, self, 100 * damagescale, 150, GRENADE_PROXIMITY, 5, "GRENADE", Obituary_Grenade);
+};
+*/
+
+void() W_GrenadeFireSticky =
+{
+	stopfiring = TRUE;
+	self.wfiretime = time;
 	self.currentammo = self.ammo_rockets = self.ammo_rockets - 1;
 	w_muzzleflash(shotorg, 3);
-	LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200/* + self.velocity*/, self, 100 * damagescale, 150, GRENADE_PROXIMITY, 5, "GRENADE", Obituary_Grenade);
+	LaunchMine(shotorg, shotdir * 3000 + v_up * 0, self, 150 * damagescale, 200, 50 * damagescale, 20 * damagescale, MINE_DETONATEONBUTTON3, 60, "STICKYGRENADE", Obituary_Grenade);
 };
 
+.float activemines;
 void() w_grenadedrop1;
 void() w_grenadedrop2;
 void() w_grenaderaise1;
@@ -58,6 +80,20 @@
 
 	if (self.button0)
 	{
+		if (self.activemines >= 20)
+		{
+			if (time > self.attack_finished)
+			{
+				self.attack_finished = time + 0.5;
+				sprint(self, "only 20 remote explosives allowed, you must detonate some before placing more\n");
+			}
+		}
+		else if (self.ammo_rockets >= 1)
+			W_GenericSlowFireCode("weapons/grenade.wav", 0.5, W_GrenadeFireSticky);
+	}
+	/*
+	if (self.button0)
+	{
 		if (self.ammo_rockets >= 1)
 			W_GenericSlowFireCode("weapons/grenade.wav", 0.5, W_GrenadeFireImpact);
 	}
@@ -66,6 +102,7 @@
 		if (self.ammo_rockets >= 1)
 			W_GenericSlowFireCode("weapons/grenade.wav", 0.8, W_GrenadeFireProximity);
 	}
+	*/
 
 	if (self.wfiretime)
 	{
@@ -94,7 +131,7 @@
 
 float() w_grenaderating = {return genericweaponrating(200, 500, 300);};
 void() w_grenadesetup = {wset(IT_WEAPON6, IT_ROCKETS, self.ammo_rockets, VWEP_GRENADE_LAUNCHER, "progs/v_dprock.mdl");};
-float(float request) setweapon6 = {return weapongeneric(IT_WEAPON6, self.ammo_rockets >= 1, request, w_grenadesetup, w_grenade, w_grenaderaise1, w_grenadeaim, w_grenaderating, "Grenade Launcher");};
+float(float request) setweapon6 = {return weapongeneric(IT_WEAPON6, self.ammo_rockets >= 1 || self.activemines > 0, request, w_grenadesetup, w_grenade, w_grenaderaise1, w_grenadeaim, w_grenaderating, "Grenade Launcher");};
 
 void() w_grenaderaise1 = {wraise(8, w_grenaderaise2, 0.1);};
 void() w_grenaderaise2 = {wraise(7, w_grenade, 0.1);};
Index: dpmod/qc/w_nailgun.qc
diff -u dpmod/qc/w_nailgun.qc:1.4 dpmod/qc/w_nailgun.qc:1.5
--- dpmod/qc/w_nailgun.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_nailgun.qc	Thu Feb 20 03:58:15 2003
@@ -78,7 +78,7 @@
 	self.currentammo = self.ammo_rockets = self.ammo_rockets - 1;
 	w_muzzleflash(shotorg, 3);
 	//LaunchGrenade(shotorg, shotdir * 1000 + v_up * 200, self, 80 * damagescale, 300, GRENADE_IMPACT, 2.5, "NAILGUNGRENADE", Obituary_NailgunGrenade);
-	LaunchMine(shotorg, shotdir * 1000 + v_up * 200, self, 200 * damagescale, 70, MINE_LASERTRIP, 60, "LASERTRIPMINE", Obituary_NailgunMine);
+	LaunchMine(shotorg, shotdir * 1000 + v_up * 200, self, 200 * damagescale, 70, 20 * damagescale, 10 * damagescale, MINE_LASERTRIP, 60, "LASERTRIPMINE", Obituary_NailgunMine);
 };
 
 
Index: dpmod/qc/w_pistol.qc
diff -u dpmod/qc/w_pistol.qc:1.4 dpmod/qc/w_pistol.qc:1.5
--- dpmod/qc/w_pistol.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_pistol.qc	Thu Feb 20 03:58:15 2003
@@ -44,15 +44,15 @@
 	havoc_shotanimupdate(self.weaponframe);
 };
 
-void() weapon2_precache =
+void() weapon1_precache =
 {
 	precache_model("progs/v_dpshot.mdl");
 	precache_sound("weapons/rocket1i.wav");
 };
 
 float() w_pistolrating = {return genericweaponrating(0, 99999, 75);};
-void() w_pistolsetup = {wset(IT_WEAPON2, 0, 0, VWEP_SHOTGUN, "progs/v_dpshot.mdl");};
-float(float request) setweapon2 = {return weapongeneric(IT_WEAPON2, TRUE, request, w_pistolsetup, w_pistol, w_pistolraise1, w_directaim, w_pistolrating, "Pistol");};
+void() w_pistolsetup = {wset(IT_WEAPON1, 0, 0, VWEP_SHOTGUN, "progs/v_dpshot.mdl");};
+float(float request) setweapon1 = {return weapongeneric(IT_WEAPON1, TRUE, request, w_pistolsetup, w_pistol, w_pistolraise1, w_directaim, w_pistolrating, "Pistol");};
 
 void() w_pistolraise1 = {wraise(8, w_pistolraise2, 0.1);};
 void() w_pistolraise2 = {wraise(7, w_pistol, 0.1);};
Index: dpmod/qc/w_plasmarifle.qc
diff -u dpmod/qc/w_plasmarifle.qc:1.5 dpmod/qc/w_plasmarifle.qc:1.6
--- dpmod/qc/w_plasmarifle.qc:1.5	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_plasmarifle.qc	Thu Feb 20 03:58:15 2003
@@ -40,17 +40,12 @@
 	FirePlasma(self, shotorg, shotdir, self.wload * 30 * damagescale, 45, '0 0 0', "PLASMARIFLE", Obituary_PlasmaRifle);
 };
 
-.float idealzoom;
-
 void() w_plasmarifledrop1;
 void() w_plasmarifledrop2;
 void() w_plasmarifleraise1;
 void() w_plasmarifleraise2;
 void() w_plasmarifle =
 {
-	if (self.button3)
-		self.idealzoom = 0.2;
-
 	/*
 	if (time > self.attack_finished)
 	{
@@ -142,18 +137,18 @@
 
 	if (time >= self.attack_finished)
 	{
-		if (self.button0 && self.wburst > 0 && self.ammo_cells > 0)
+		if (self.ammo_cells > 0 && self.wburst > 0 && (self.button0 || self.button3))
 		{
 			// fire higher powered shots if zoomed
 			// (but they use ammo faster, so the burst runs out sooner)
 			self.wload = 1;
-			if (self.idealzoom < 1)
+			if (self.button3)
 				self.wload = 3;
 			if (self.wload > self.wburst)
 				self.wload = self.wburst;
-			W_GenericSlowFireCode("plasma/plasma.wav", 0.05, W_PlasmaRifleFire);
+			W_GenericSlowFireCode("plasma/plasma.wav", 0.1, W_PlasmaRifleFire);
 		}
-		else if (self.wburst <= 0 && self.ammo_cells > 0)
+		else if (self.ammo_cells > 0 && self.wburst < 9)
 		{
 			self.wburst = 9;
 			self.attack_finished = time + 0.4;
Index: dpmod/qc/w_shotgun.qc
diff -u dpmod/qc/w_shotgun.qc:1.4 dpmod/qc/w_shotgun.qc:1.5
--- dpmod/qc/w_shotgun.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_shotgun.qc	Thu Feb 20 03:58:15 2003
@@ -12,8 +12,8 @@
 		Obituary_Fallback(targ, attacker, dmsg, dtype);
 };
 
-float SHOTGUNBUCKSHOT = 75;
-float SHOTGUNEXPLOSIVESLUG = 120;
+//float SHOTGUNBUCKSHOT = 75;
+float SHOTGUNEXPLOSIVESLUG = 95;
 
 .float shotgunmode;
 void() W_SingleShotgunFireCode =
@@ -21,13 +21,15 @@
 	self.wfiretime = time;
 	self.currentammo = self.ammo_shells = self.ammo_shells - 1;
 	w_muzzleflash(shotorg, 2);
-	if (self.shotgunmode)
+	//if (self.shotgunmode)
 		FireBullets(self, self, 1, 1, SHOTGUNEXPLOSIVESLUG * 0.2 * damagescale, SHOTGUNEXPLOSIVESLUG * 0.2 * damagescale, SHOTGUNEXPLOSIVESLUG * 0.8 * damagescale, 80, shotdir * 5000, 0, "SHOTGUNEXPLOSIVESLUG", DT_SHOTGUN, Obituary_Shotgun);
+	/*
 	else
 	{
 		FireBullets(self, self, 1, 5, SHOTGUNBUCKSHOT * 0.1 * damagescale, SHOTGUNBUCKSHOT * 0.1 * damagescale, 0, 0, shotdir * 6000, 0.05, "SHOTGUN", DT_SHOTGUN, Obituary_Shotgun);
 		FireBullets(self, self, 0, 5, SHOTGUNBUCKSHOT * 0.1 * damagescale, SHOTGUNBUCKSHOT * 0.1 * damagescale, 0, 0, shotdir * 6000, 0.05, "SHOTGUN", DT_SHOTGUN, Obituary_Shotgun);
 	}
+	*/
 	self.wload = -1;
 };
 
@@ -41,6 +43,7 @@
 	if (widle(w_shotgundrop1))
 		return;
 
+	/*
 	if (self.button5)
 	if (time > self.attack_finished)
 	{
@@ -52,6 +55,7 @@
 		else
 			sprint(self, "Ammo: Buckshot\n");
 	}
+	*/
 
 	if (self.wload > self.ammo_shells)
 		self.wload = self.ammo_shells;
Index: dpmod/qc/w_supernailgun.qc
diff -u dpmod/qc/w_supernailgun.qc:1.4 dpmod/qc/w_supernailgun.qc:1.5
--- dpmod/qc/w_supernailgun.qc:1.4	Thu Feb 13 21:47:16 2003
+++ dpmod/qc/w_supernailgun.qc	Thu Feb 20 03:58:15 2003
@@ -76,7 +76,7 @@
 		a = self.ammo_rockets;
 	self.currentammo = self.ammo_rockets = self.ammo_rockets - a;
 	w_muzzleflash(shotorg, 3);
-	LaunchMine(shotorg, shotdir * 1000 + v_up * 200, self, a * 100 * damagescale, a * 100 + 50, MINE_PROXIMITY, 60, "PROXIMITYMINE", Obituary_ProximityMine);
+	LaunchMine(shotorg, shotdir * 1000 + v_up * 200, self, a * 100 * damagescale, a * 100 + 50, 20 * damagescale, 10 * damagescale, MINE_PROXIMITY, 60, "PROXIMITYMINE", Obituary_ProximityMine);
 };
 
 void() w_snailgundrop1;


More information about the twilight-commits mailing list