r2336 - branches/nexuiz-2.0/data/qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Wed Apr 18 08:58:38 EDT 2007


Author: div0
Date: 2007-04-18 08:58:38 -0400 (Wed, 18 Apr 2007)
New Revision: 2336

Modified:
   branches/nexuiz-2.0/data/qcsrc/server/bots.qc
   branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc
   branches/nexuiz-2.0/data/qcsrc/server/cl_weaponsystem.qc
   branches/nexuiz-2.0/data/qcsrc/server/ctf.qc
   branches/nexuiz-2.0/data/qcsrc/server/domination.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_casings.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_hook.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_subs.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_triggers.qc
   branches/nexuiz-2.0/data/qcsrc/server/g_violence.qc
   branches/nexuiz-2.0/data/qcsrc/server/runematch.qc
   branches/nexuiz-2.0/data/qcsrc/server/t_halflife.qc
   branches/nexuiz-2.0/data/qcsrc/server/t_items.qc
   branches/nexuiz-2.0/data/qcsrc/server/t_jumppads.qc
   branches/nexuiz-2.0/data/qcsrc/server/t_plats.qc
   branches/nexuiz-2.0/data/qcsrc/server/t_teleporters.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_common.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_crylink.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_electro.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_grenadelauncher.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_hagar.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_laser.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_nex.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_rocketlauncher.qc
   branches/nexuiz-2.0/data/qcsrc/server/w_uzi.qc
   branches/nexuiz-2.0/data/qcsrc/server/waypointsprites.qc
Log:
EF_LOWPRECISION whereever needed


Modified: branches/nexuiz-2.0/data/qcsrc/server/bots.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/bots.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/bots.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -208,7 +208,7 @@
 		tracetossfaketarget = spawn();
 	tracetossfaketarget.solid = savesolid;
 	tracetossfaketarget.movetype = targ.movetype;
-	setmodel(tracetossfaketarget, targ.model);
+	setmodel(tracetossfaketarget, targ.model); // no low precision
 	tracetossfaketarget.model = targ.model;
 	tracetossfaketarget.modelindex = targ.modelindex;
 	setsize(tracetossfaketarget, targ.mins, targ.maxs);
@@ -542,7 +542,7 @@
 		local vector m1, m2;
 		m1 = wp.mins;
 		m2 = wp.maxs;
-		setmodel(wp, "models/runematch/rune.mdl");
+		setmodel(wp, "models/runematch/rune.mdl"); wp.effects = EF_LOWPRECISION;
 		setsize(wp, m1, m2);
 	}
 	else
@@ -555,6 +555,7 @@
 	// schedule an actual relink on next frame
 	wp.think = waypoint_think;
 	wp.nextthink = time;
+	wp.effects = EF_LOWPRECISION;
 }
 
 // create a new waypoint and automatically link it to other waypoints, and link

Modified: branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/cl_client.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -236,7 +236,7 @@
 	if(fexists(s))
 	{
 		precache_model(s);
-		setmodel(e, s);
+		setmodel(e, s); // players have high precision
 		self.modelindex_lod1 = self.modelindex;
 	}
 	else
@@ -246,14 +246,14 @@
 	if(fexists(s))
 	{
 		precache_model(s);
-		setmodel(e, s);
+		setmodel(e, s); // players have high precision
 		self.modelindex_lod2 = self.modelindex;
 	}
 	else
 		self.modelindex_lod2 = -1;
 
 	precache_model(modelname);
-	setmodel(e, modelname);
+	setmodel(e, modelname); // players have high precision
 	self.modelindex_lod0 = self.modelindex;
 
 	if(self.modelindex_lod1 < 0)
@@ -263,7 +263,7 @@
 		self.modelindex_lod2 = self.modelindex;
 #else
 	precache_model(modelname);
-	setmodel(e, modelname);
+	setmodel(e, modelname); // players have high precision
 #endif
 }
 
@@ -886,10 +886,11 @@
 		self.chatbubbleentity.exteriormodeltoclient = self;
 		self.chatbubbleentity.think = ChatBubbleThink;
 		self.chatbubbleentity.nextthink = time;
-		setmodel(self.chatbubbleentity, "models/misc/chatbubble.spr");
+		setmodel(self.chatbubbleentity, "models/misc/chatbubble.spr"); // precision set below
 		setorigin(self.chatbubbleentity, self.origin + '0 0 15' + self.maxs_z * '0 0 1');
 		self.chatbubbleentity.mdl = self.chatbubbleentity.model;
 		self.chatbubbleentity.model = "";
+		self.chatbubbleentity.effects = EF_LOWPRECISION;
 	}
 }
 
@@ -928,13 +929,14 @@
 		self.teambubbleentity.exteriormodeltoclient = self;
 		self.teambubbleentity.think = TeamBubbleThink;
 		self.teambubbleentity.nextthink = time;
-		setmodel(self.teambubbleentity, "models/misc/teambubble.spr");
+		setmodel(self.teambubbleentity, "models/misc/teambubble.spr"); // precision set below
 //		setorigin(self.teambubbleentity, self.origin + '0 0 15' + self.maxs_z * '0 0 1');
 		setorigin(self.teambubbleentity, self.teambubbleentity.origin + '0 0 15' + self.maxs_z * '0 0 1');
 		setattachment(self.teambubbleentity, self, "");  // sticks to moving player better, also conserves bandwidth
 		self.teambubbleentity.mdl = self.teambubbleentity.model;
 		self.teambubbleentity.model = self.teambubbleentity.mdl;
 		self.teambubbleentity.customizeentityforclient = TeamBubble_customizeentityforclient;
+		self.teambubbleentity.effects = EF_LOWPRECISION;
 	}
 }
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/cl_weaponsystem.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/cl_weaponsystem.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/cl_weaponsystem.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -98,11 +98,11 @@
 		e.owner = self.owner;			// Its owner is my owner
 		e.classname = "laser_target";
 		e.movetype = MOVETYPE_NOCLIP;	// don't touch things
-		setmodel(e, "models/laser_dot.mdl");	// what it looks like
+		setmodel(e, "models/laser_dot.mdl");	// what it looks like, precision set below
 		e.scale = 1.25;				// make it larger
 		e.alpha = 0.25;				// transparency
 		e.colormod = '255 0 0' * (1/255) * 8;	// change colors
-		e.effects = EF_FULLBRIGHT;
+		e.effects = EF_FULLBRIGHT | EF_LOWPRECISION;
 		// make it dynamically glow
 		// you should avoid over-using this, as it can slow down the player's computer.
 		e.glow_color = 251; // red color
@@ -156,11 +156,11 @@
 		self.dmg = self.owner.modelindex;
 		self.deadflag = self.owner.deadflag;
 		if (self.owner.weaponname != "")
-			setmodel(self, strcat("models/weapons/w_", self.owner.weaponname, ".zym"));
+			setmodel(self, strcat("models/weapons/w_", self.owner.weaponname, ".zym")); // precision set below
 		else
 			self.model = "";
 	}
-	self.effects = self.owner.effects;
+	self.effects = self.owner.effects | EF_LOWPRECISION;
 
 	if (self.flags & FL_FLY)
 		// owner is currently being teleported, so don't apply EF_NODRAW otherwise the viewmodel would "blink"
@@ -206,7 +206,7 @@
 		self.dmg = self.owner.modelindex;
 		self.deadflag = self.owner.deadflag;
 		if (self.owner.weaponname != "")
-			setmodel(self, strcat("models/weapons/v_", self.owner.weaponname, ".md3"));
+			setmodel(self, strcat("models/weapons/v_", self.owner.weaponname, ".md3")); // precision set below
 		else
 			self.model = "";
 		setattachment(self, self.owner, "bip01 r hand");
@@ -214,7 +214,7 @@
 		if (!self.tag_index)
 			self.model = "";
 	}
-	self.effects = self.owner.effects;
+	self.effects = self.owner.effects | EF_LOWPRECISION;
 	self.effects = self.effects - (self.effects & (EF_BLUE | EF_RED)); // eat performance
 	if(self.owner.alpha >= 0)
 		self.alpha = self.owner.alpha;
@@ -230,7 +230,7 @@
 	self.weaponentity.solid = SOLID_NOT;
 	self.weaponentity.owner = self;
 	self.weaponentity.weaponentity = self.weaponentity;
-	setmodel(self.weaponentity, "");
+	setmodel(self.weaponentity, ""); // precision set when changed
 	self.weaponentity.origin = '0 0 0';
 	self.weaponentity.angles = '0 0 0';
 	self.weaponentity.viewmodelforclient = self;
@@ -293,7 +293,7 @@
 	if (self.weaponentity)
 	{
 		self.weaponentity.state = WS_CLEAR;
-		setmodel(self.weaponentity, "");
+		setmodel(self.weaponentity, ""); // precision already set
 		self.weaponentity.effects = 0;
 	}
 };

Modified: branches/nexuiz-2.0/data/qcsrc/server/ctf.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/ctf.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/ctf.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -416,7 +416,7 @@
 	if (!self.noise3)
 		self.noise3 = "ctf/respawn.wav";
 	precache_model (self.model);
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
 	precache_sound (self.noise);
 	precache_sound (self.noise1);
 	precache_sound (self.noise2);
@@ -472,7 +472,7 @@
 	if (!self.noise3)
 		self.noise3 = "ctf/respawn.wav";
 	precache_model (self.model);
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
 	precache_sound (self.noise);
 	precache_sound (self.noise1);
 	precache_sound (self.noise2);

Modified: branches/nexuiz-2.0/data/qcsrc/server/domination.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/domination.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/domination.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -234,7 +234,7 @@
 	if (self.noise1 != "")
 		precache_sound(self.noise1);
 	self.classname = "dom_team";
-	setmodel(self, self.model);
+	setmodel(self, self.model); // precision not needed
 	self.mdl = self.model;
 	self.dmg = self.modelindex;
 	self.model = "";
@@ -255,7 +255,7 @@
 
 	// copy important properties from dom_team entity
 	self.goalentity = head;
-	setmodel(self, head.mdl);
+	setmodel(self, head.mdl); // precision already set
 	self.skin = head.skin;
 
 	self.cnt = -1;
@@ -493,7 +493,7 @@
 
 	//if(!self.glow_size)
 	//	self.glow_size = cvar("g_domination_point_glow");
-	self.effects = self.effects | EF_FULLBRIGHT;
+	self.effects = self.effects | EF_FULLBRIGHT | EF_LOWPRECISION;
 };
 
 // code from here on is just to support maps that don't have control point and team entities
@@ -512,7 +512,7 @@
 	self.message = capmessage;
 
 	// this code is identical to dom_team
-	setmodel(self, self.model);
+	setmodel(self, self.model); // precision not needed
 	self.mdl = self.model;
 	self.dmg = self.modelindex;
 	self.model = "";

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_casings.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_casings.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_casings.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -74,19 +74,19 @@
 	e.createdtime = time;
 	if (casingtype == 1)
 	{
-		setmodel (e, "models/casing_shell.mdl");
+		setmodel (e, "models/casing_shell.mdl"); // precision set above
 		e.cnt = time + 30;
 		// bias to make these be considered more important than other things
 		e.createdtime = time + 1;
 	}
 	else if (casingtype == 2)
 	{
-		setmodel (e, "models/casing_steel.mdl");
+		setmodel (e, "models/casing_steel.mdl"); // precision set above
 		e.cnt = time + 10;
 	}
 	else
 	{
-		setmodel (e, "models/casing_bronze.mdl");
+		setmodel (e, "models/casing_bronze.mdl"); // precision set above
 		e.cnt = time + 10;
 	}
 	if (maxclients == 1)

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_hook.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_hook.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_hook.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -226,7 +226,7 @@
 	missile.movetype = MOVETYPE_FLY;
 	missile.solid = SOLID_BBOX;
 
-	setmodel (missile, "models/ebomb.mdl"); // replace by something CENTERED!
+	setmodel (missile, "models/ebomb.mdl"); // replace by something CENTERED!, precision set below
 	setsize (missile, '-3 -3 -3', '3 3 3');
 	setorigin (missile, org);
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_subs.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_subs.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_subs.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -360,7 +360,7 @@
 	if (self.angles != '0 0 0')
 		SetMovedir ();
 	self.solid = SOLID_TRIGGER;
-	setmodel (self, self.model);	// set size and link into world
+	setmodel (self, self.model);	// set size and link into world, no precision needed
 	self.movetype = MOVETYPE_NONE;
 	self.modelindex = 0;
 	self.model = "";
@@ -374,7 +374,7 @@
 	if (self.angles != '0 0 0')
 		SetMovedir ();
 	self.solid = SOLID_BSP;
-	setmodel (self, self.model);	// set size and link into world
+	setmodel (self, self.model);	// set size and link into world, no precision needed
 	self.movetype = MOVETYPE_PUSH;
 //	self.modelindex = 0;
 	self.model = "";

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_triggers.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_triggers.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_triggers.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -463,7 +463,7 @@
 	self.angles = '0 0 0';
 	self.movetype = MOVETYPE_NONE;
 	self.solid = SOLID_NOT;
-	setmodel(self, self.model);
+	setmodel(self, self.model); // no precision needed
 	setorigin(self, self.origin);
 	setsize(self, self.mins, self.maxs);
 	self.model = "";
@@ -516,7 +516,7 @@
 	self.angles = '0 0 0';
 	self.movetype = MOVETYPE_NONE;
 	self.solid = SOLID_NOT;
-	setmodel(self, self.model);
+	setmodel(self, self.model); // no precision needed
 	setorigin(self, self.origin);
 	setsize(self, self.mins, self.maxs);
 	self.model = "";

Modified: branches/nexuiz-2.0/data/qcsrc/server/g_violence.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/g_violence.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/g_violence.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -38,9 +38,9 @@
 	if(self.classname == "player") // the eye
 	{
 		if(self.gibrandom > other.cvar_cl_nogibs)
-			setmodel(self, self.model);
+			self.model = self.mdl;
 		else
-			setmodel(self, "");
+			self.model = "";
 		return TRUE;
 	}
 	else // other gibs - don't even need to send them
@@ -71,7 +71,8 @@
 	gib.customizeentityforclient = Gib_customizeentityforclient;
 	gib.effects = EF_LOWPRECISION; // use less bandwidth
 
-	setmodel (gib, mdlname);
+	gib.mdl = mdlname;
+	setmodel (gib, mdlname); // precision set above
 	gib.gibmodelindex = gib.modelindex;
 	setsize (gib, '-8 -8 -8', '8 8 8');
 	setorigin (gib, org);

Modified: branches/nexuiz-2.0/data/qcsrc/server/runematch.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/runematch.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/runematch.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -581,7 +581,7 @@
 		e.movetype = MOVETYPE_TOSS;
 		e.solid = SOLID_TRIGGER;
 		e.flags = FL_ITEM;
-		setmodel(e, "models/runematch/rune.mdl");
+		setmodel(e, "models/runematch/rune.mdl"); // precision set below
 		setorigin(e, spot.origin);
 		setsize(e, '0 0 -35', '0 0 0');
 
@@ -590,7 +590,7 @@
 		e.enemy.classname = "curse";
 		e.enemy.runes = cs;
 		//e.enemy.avelocity = '300 500 200';
-		setmodel(e.enemy, "models/runematch/curse.mdl");
+		setmodel(e.enemy, "models/runematch/curse.mdl"); // precision set below
 		setorigin(e, '0 0 0');
 		setattachment(e.enemy, e, "");
 
@@ -599,11 +599,8 @@
 		e.enemy.colormod = RuneColormod(cs);
 
 		e.alpha = e.enemy.alpha = cvar("g_runematch_rune_alpha");//0.78;
-		e.effects = e.enemy.effects = cvar("g_runematch_rune_effects");//EF_ADDITIVE;// | EF_FULLBRIGHT;
+		e.effects = e.enemy.effects = cvar("g_runematch_rune_effects") | EF_LOWPRECISION;//EF_ADDITIVE;// | EF_FULLBRIGHT;
 
-		// Savage: Save some bandwidth
-		self.effects |= EF_LOWPRECISION;
-
 		//e.glow_size = e.enemy.glow_size = cvar("g_runematch_rune_glow_size");
 		//e.glow_color = e.enemy.glow_color = cvar("g_runematch_rune_glow_color");
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/t_halflife.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/t_halflife.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/t_halflife.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -52,7 +52,7 @@
 void() func_water =
 {
 	self.solid = SOLID_TRIGGER;
-	setmodel (self, self.model);	// set size and link into world
+	setmodel (self, self.model);	// set size and link into world, precision set by mapper
 	self.touch = func_ladder_touch;
 };
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/t_items.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/t_items.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/t_items.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -321,7 +321,8 @@
 		self.movetype = MOVETYPE_TOSS;
 	self.solid = SOLID_TRIGGER;
 	self.touch = Item_Touch;
-	setmodel (self, self.mdl);
+	setmodel (self, self.mdl); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	setsize (self, '-16 -16 0', '16 16 32');
 	if (itemflags & FL_WEAPON)
 	{
@@ -581,7 +582,7 @@
 void misc_models (void)
 {
 	precache_model (self.model);
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set by mapper
 	setsize (self, self.mins, self.maxs);
 }
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/t_jumppads.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/t_jumppads.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/t_jumppads.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -223,7 +223,7 @@
 		SetMovedir ();
 
 	self.solid = SOLID_TRIGGER;
-	setmodel (self, self.model);
+	setmodel (self, self.model); // no precision needed
 	self.movetype = MOVETYPE_NONE;
 	self.modelindex = 0;
 	self.model = "";

Modified: branches/nexuiz-2.0/data/qcsrc/server/t_plats.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/t_plats.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/t_plats.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -193,7 +193,8 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 	setorigin (self, self.origin);
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	setsize (self, self.mins , self.maxs);
 
 	self.blocked = plat_crush;
@@ -312,7 +313,8 @@
 	self.use = train_use;
 	self.classname = "train";
 
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	setsize (self, self.mins , self.maxs);
 	setorigin (self, self.origin);
 	self.nextthink = self.ltime + 0.1;
@@ -368,7 +370,8 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 
-	setmodel(self, self.model);
+	setmodel(self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	setsize(self, self.mins, self.maxs);
 	setorigin(self, self.origin);
 
@@ -436,7 +439,7 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 
-	setmodel(self, self.model);
+	setmodel(self, self.model); // no lowprecision here! evil!
 	setsize(self, self.mins, self.maxs);
 	setorigin(self, self.origin);
 
@@ -494,7 +497,7 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 
-	setmodel(self, self.model);
+	setmodel(self, self.model); // precision set below
 	setsize(self, self.mins, self.maxs);
 	setorigin(self, self.origin);
 
@@ -628,7 +631,8 @@
 
 	self.movetype = MOVETYPE_PUSH;
 	self.solid = SOLID_BSP;
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 
 	self.blocked = button_blocked;
 	self.use = button_use;
@@ -1065,7 +1069,8 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 	setorigin (self, self.origin);
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	self.classname = "door";
 
 	self.blocked = door_blocked;
@@ -1332,7 +1337,8 @@
 	self.solid = SOLID_BSP;
 	self.movetype = MOVETYPE_PUSH;
 	self.classname = "door";
-	setmodel (self, self.model);
+	setmodel (self, self.model); // precision set below
+	self.effects |= EF_LOWPRECISION;
 	setorigin (self, self.origin);
 
 	self.touch = secret_touch;

Modified: branches/nexuiz-2.0/data/qcsrc/server/t_teleporters.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/t_teleporters.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/t_teleporters.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -166,7 +166,7 @@
 	self.solid = SOLID_TRIGGER;
 	self.movetype = MOVETYPE_NONE;
 
-	setmodel (self, self.model);
+	setmodel (self, self.model); // no precision needed
 
 	self.model = "";
 	self.modelindex = 0;

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_common.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_common.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_common.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -151,10 +151,10 @@
 		e.nextthink = time + vlen(trace_endpos - start) / 6000;
 		e.velocity = dir * 6000;
 		e.angles = vectoangles(e.velocity);
-		setmodel (e, "models/tracer.mdl");
+		setmodel (e, "models/tracer.mdl"); // precision set below
 		setsize (e, '0 0 0', '0 0 0');
 		setorigin (e, start);
-		e.effects = e.effects | EF_ADDITIVE | EF_FULLBRIGHT | EF_NOSHADOW;
+		e.effects = EF_ADDITIVE | EF_FULLBRIGHT | EF_NOSHADOW | EF_LOWPRECISION;
 		e.flags = FL_PROJECTILE;
 	}
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_crylink.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_crylink.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_crylink.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -22,7 +22,7 @@
 	}
 	self.owner = world;
 	self.touch = SUB_Null;
-	setmodel (self, "models/plasma.mdl");
+	setmodel (self, "models/plasma.mdl"); // precision set below
 	setsize (self, '0 0 0', '0 0 0');
 	self.gravity = 0;
 	self.glow_size = 0;
@@ -54,7 +54,7 @@
 	}
 	self.owner = world;
 	self.touch = SUB_Null;
-	setmodel (self, "models/plasma.mdl");
+	setmodel (self, "models/plasma.mdl"); // precision set below
 	setsize (self, '0 0 0', '0 0 0');
 	self.gravity = 0;
 	self.glow_size = 0;
@@ -91,7 +91,7 @@
 		proj.solid = SOLID_BBOX;
 		proj.gravity = 0.001;
 
-		setmodel (proj, "models/plasmatrail.mdl");
+		setmodel (proj, "models/plasmatrail.mdl"); // precision set below
 		setsize (proj, '0 0 0', '0 0 0');
 		setorigin (proj, w_shotorg);
 
@@ -136,7 +136,7 @@
 		proj.solid = SOLID_BBOX;
 		proj.gravity = 0.001;
 
-		setmodel (proj, "models/plasmatrail.mdl");
+		setmodel (proj, "models/plasmatrail.mdl"); // precision set below
 		setsize (proj, '0 0 0', '0 0 0');
 		setorigin (proj, w_shotorg);
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_electro.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_electro.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_electro.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -107,7 +107,7 @@
 	proj.angles = vectoangles(proj.velocity);
 	proj.touch = W_Plasma_TouchExplode;
 	proj.flags = FL_PROJECTILE;
-	setmodel(proj, "models/elaser.mdl");
+	setmodel(proj, "models/elaser.mdl"); // precision set above
 	setsize(proj, '0 0 0', '0 0 0');
 
 	// LordHavoc: disabled because no one likes this sound and it sometimes never stops due to packet loss
@@ -139,7 +139,7 @@
 	proj.velocity = v_forward * cvar("g_balance_electro_secondary_speed") + v_up * cvar("g_balance_electro_secondary_speed_up");
 	W_SetupProjectileVelocity(proj);
 	proj.touch = W_Plasma_Touch;
-	setmodel(proj, "models/ebomb.mdl");
+	setmodel(proj, "models/ebomb.mdl"); // precision set above
 	setsize(proj, '0 0 -3', '0 0 -3');
 	proj.takedamage = DAMAGE_YES;
 	proj.damageforcescale = 4;

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_grenadelauncher.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_grenadelauncher.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_grenadelauncher.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -85,7 +85,7 @@
 	gren.movetype = MOVETYPE_BOUNCE;
 	gren.solid = SOLID_BBOX;
 	gren.effects = EF_NOSHADOW | EF_LOWPRECISION;
-	setmodel(gren, "models/grenademodel.md3");
+	setmodel(gren, "models/grenademodel.md3"); // precision set above
 	setsize(gren, '0 0 0', '0 0 0');
 	setorigin(gren, w_shotorg);
 
@@ -116,7 +116,7 @@
 	gren.movetype = MOVETYPE_BOUNCE;
 	gren.solid = SOLID_BBOX;
 	gren.effects = EF_NOSHADOW | EF_LOWPRECISION;
-	setmodel(gren, "models/grenademodel.md3");
+	setmodel(gren, "models/grenademodel.md3"); // precision set above
 	setsize(gren, '0 0 -3', '0 0 -3');
 	setorigin(gren, w_shotorg);
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_hagar.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_hagar.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_hagar.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -94,7 +94,7 @@
 	missile.solid = SOLID_BBOX;
 	missile.scale = 0.4; // BUG: the model is too big
 	setorigin (missile, w_shotorg);
-	setmodel (missile, "models/hagarmissile.mdl");
+	setmodel (missile, "models/hagarmissile.mdl"); // precision set below
 	setsize (missile, '0 0 0', '0 0 0');
 	//missile.takedamage = DAMAGE_YES;
 	//missile.damageforcescale = 4;
@@ -130,7 +130,7 @@
 	missile.solid = SOLID_BBOX;
 	missile.scale = 0.4; // BUG: the model is too big
 	setorigin (missile, w_shotorg);
-	setmodel (missile, "models/hagarmissile.mdl");
+	setmodel (missile, "models/hagarmissile.mdl"); // precision set below
 	setsize (missile, '0 0 0', '0 0 0');
 	//missile.takedamage = DAMAGE_YES;
 	//missile.damageforcescale = 4;

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_laser.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_laser.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_laser.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -43,7 +43,7 @@
 	missile.movetype = MOVETYPE_FLY;
 	missile.solid = SOLID_BBOX;
 
-	setmodel (missile, "models/laser.mdl");
+	setmodel (missile, "models/laser.mdl"); // precision set below
 	setsize (missile, '0 0 0', '0 0 0');
 	setorigin (missile, w_shotorg);
 

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_nex.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_nex.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_nex.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -50,7 +50,7 @@
 	//flash.origin = '150 -16 -8';
 	//flash.angles_z = 90;
 	//flash.scale = 4;
-	setmodel (flash, "models/nexflash.md3");
+	setmodel (flash, "models/nexflash.md3"); // precision set below
 	SUB_SetFade (flash, time, 0.4);
 	flash.effects = flash.effects | EF_ADDITIVE | EF_FULLBRIGHT | EF_LOWPRECISION;
 	*/

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_rocketlauncher.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_rocketlauncher.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_rocketlauncher.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -202,7 +202,7 @@
 
 	missile.movetype = MOVETYPE_FLY;
 	missile.solid = SOLID_BBOX;
-	setmodel (missile, "models/rocket.md3");
+	setmodel (missile, "models/rocket.md3"); // precision set below
 	setsize (missile, '0 0 0', '0 0 0');
 
 	setorigin (missile, w_shotorg);
@@ -217,13 +217,13 @@
 	missile.think = W_Rocket_Think;
 	missile.nextthink = time;
 	missile.cnt = time + cvar("g_balance_rocketlauncher_lifetime");
-	missile.effects = EF_NOSHADOW;
+	missile.effects = EF_NOSHADOW | EF_LOWPRECISION;
 	sound (missile, CHAN_BODY, "weapons/rocket_fly.wav", 0.4, ATTN_NORM);
 	missile.flags = FL_PROJECTILE;
 
 	flash = spawn ();
 	setorigin (flash, w_shotorg);
-	setmodel (flash, "models/flash.md3");
+	setmodel (flash, "models/flash.md3"); // precision set below
 	flash.angles = vectoangles (w_shotdir);
 	SUB_SetFade (flash, time, 0.4);
 	flash.effects = flash.effects | EF_ADDITIVE | EF_FULLBRIGHT | EF_LOWPRECISION;

Modified: branches/nexuiz-2.0/data/qcsrc/server/w_uzi.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/w_uzi.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/w_uzi.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -28,7 +28,7 @@
 	// muzzle flash for 1st person view
 	flash = spawn();
 	setorigin(flash, '53 5 -1');
-	setmodel(flash, "models/uziflash.md3");
+	setmodel(flash, "models/uziflash.md3"); flash.effects = EF_LOWPRECISION;
 	setattachment(flash, self.weaponentity, "bone01");
 	flash.viewmodelforclient = self;
 	flash.scale = 1.2;
@@ -37,7 +37,7 @@
 	// muzzle flash for 3rd person view
 	flash2 = spawn();
 	setorigin(flash2, '51 1 8');
-	setmodel(flash2, "models/uziflash.md3");
+	setmodel(flash2, "models/uziflash.md3"); flash2.effects = EF_LOWPRECISION;
 	setattachment(flash2, self.exteriorweaponentity, "");
 	SUB_SetFade(flash2, time, 0.2);
 	

Modified: branches/nexuiz-2.0/data/qcsrc/server/waypointsprites.qc
===================================================================
--- branches/nexuiz-2.0/data/qcsrc/server/waypointsprites.qc	2007-04-18 12:57:29 UTC (rev 2335)
+++ branches/nexuiz-2.0/data/qcsrc/server/waypointsprites.qc	2007-04-18 12:58:38 UTC (rev 2336)
@@ -227,8 +227,8 @@
 	wp.customizeentityforclient = WaypointSprite_CustomizeEntityForClient;
 	wp.think = WaypointSprite_Think;
 	wp.nextthink = time;
-	wp.effects = EF_NODEPTHTEST;
-	setmodel(wp, strcat("models/sprites/", spr, ".sp2"));
+	wp.effects = EF_NODEPTHTEST | EF_LOWPRECISION;
+	setmodel(wp, strcat("models/sprites/", spr, ".sp2")); // precision set above
 	return wp;
 }
 




More information about the nexuiz-commits mailing list