[nexuiz-commits] r6931 - in trunk/data: . models/ctf qcsrc/server

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Mon Jun 8 15:27:37 EDT 2009


Author: div0
Date: 2009-06-08 15:27:37 -0400 (Mon, 08 Jun 2009)
New Revision: 6931

Added:
   trunk/data/models/ctf/shield.md3
   trunk/data/models/ctf/shockwavetransring.md3
Modified:
   trunk/data/defaultNexuiz.cfg
   trunk/data/effectinfo.txt
   trunk/data/qcsrc/server/constants.qh
   trunk/data/qcsrc/server/ctf.qc
Log:
CTF flag effects


Modified: trunk/data/defaultNexuiz.cfg
===================================================================
--- trunk/data/defaultNexuiz.cfg	2009-06-08 19:23:31 UTC (rev 6930)
+++ trunk/data/defaultNexuiz.cfg	2009-06-08 19:27:37 UTC (rev 6931)
@@ -24,7 +24,7 @@
 seta g_configversion 0	"Configuration file version (used to upgrade settings) 0: first run, or previous start was <2.4.1  Later, it's overridden by config.cfg, version ranges are defined in config_update.cfg"
 
 // default.cfg versioning (update using update-cvarcount.sh, run that every time after adding a new cvar)
-set cvar_check_default c120fa8ce7b9f4b1b86b922d65249573
+set cvar_check_default 265422ea51f974b6529d2414fb9e9d75
 
 // Nexuiz version (formatted for machines)
 // used to determine if a client version is compatible
@@ -541,6 +541,8 @@
 set g_ctf_flag_blue_model "models/ctf/flags.md3"
 set g_ctf_flag_blue_skin 1
 set g_ctf_flag_glowtrails 0
+set g_ctf_flag_pickup_effects 1
+set g_ctf_flag_capture_effects 1
 set g_ctf_captimerecord_allow_assisted 0 "if enabled, assisted CTF records (with other players on the server) are recorded too"
 
 exec ctfscoring-div0.cfg

Modified: trunk/data/effectinfo.txt
===================================================================
--- trunk/data/effectinfo.txt	2009-06-08 19:23:31 UTC (rev 6930)
+++ trunk/data/effectinfo.txt	2009-06-08 19:27:37 UTC (rev 6931)
@@ -2676,7 +2676,7 @@
 
 //smoke_ring
 //smoke
-// used nowhere in code
+// used in qcsrc/server/ctf.qc:		pointparticles(particleeffectnum("smoke_ring"), 0.5 * (self.absmin + self.absmax), '0 0 0', 1);
 effect smoke_ring
 type smoke
 count 90
@@ -3407,3 +3407,130 @@
 liquidfriction 4
 velocityjitter 64 64 64
 velocitymultiplier 1
+
+
+//red_ground_quake
+//smoke
+// used in qsrc/server/ctf.qc:		pointparticles(particleeffectnum("red_ground_quake"), self.origin, '0 0 0', 1);
+effect red_ground_quake
+type smoke
+count 180
+tex 0 8
+size 20 50
+sizeincrease 100
+gravity 0.5
+time 5 10
+airfriction 3
+alpha 100 126 200
+color 0x111111 0xbbbbbb
+//originjitter 2 2 0
+velocityjitter 190 190 50
+bounce 1.1
+notunderwater
+effect red_ground_quake
+type smoke
+count 80
+tex 0 8
+size 10 30
+sizeincrease 60
+gravity 0.2
+time 10 15
+airfriction 4
+alpha 100 126 200
+color 0x111111 0x979797
+//originjitter 2 2 0
+velocityjitter 190 190 50
+bounce 1.2
+notunderwater
+effect red_ground_quake
+//notunderwater
+count 32
+type smoke
+tex 48 55
+size 4 20
+time 15 25
+alpha 200 356 512
+gravity -0.5
+color 0x9E6A64 0x91302D
+origin 0 0 -20
+bounce 6
+sizeincrease 5
+originjitter 33 33 33
+velocityjitter 22 22 50
+// smoke
+effect red_ground_quake
+type alphastatic
+count 22
+tex 0 8
+size 22 33
+sizeincrease 11
+time 25 35
+alpha 200 256 200
+color 0x000000 0xffffff
+gravity -0.3
+originjitter 44 44 44
+velocityjitter 11 11 50
+bounce 2
+
+//blue_ground_quake
+//smoke
+// used in qsrc/server/ctf.qc:		pointparticles(particleeffectnum("blue_ground_quake"), self.origin, '0 0 0', 1);
+effect blue_ground_quake
+type smoke
+count 180
+tex 0 8
+size 20 50
+sizeincrease 100
+gravity 0.5
+time 5 10
+airfriction 3
+alpha 100 126 200
+color 0x111111 0xbbbbbb
+//originjitter 2 2 0
+velocityjitter 190 190 50
+bounce 1.1
+notunderwater
+effect blue_ground_quake
+type smoke
+count 80
+tex 0 8
+size 10 30
+sizeincrease 60
+gravity 0.2
+time 10 15
+airfriction 4
+alpha 100 126 200
+color 0x111111 0x979797
+//originjitter 2 2 0
+velocityjitter 190 190 50
+bounce 1.2
+notunderwater
+effect blue_ground_quake
+//notunderwater
+count 32
+type smoke
+tex 48 55
+size 4 20
+time 15 25
+alpha 200 356 512
+gravity -0.5
+color 0x64679E 0x2D4C91
+origin 0 0 -20
+bounce 6
+sizeincrease 5
+originjitter 33 33 33
+velocityjitter 22 22 50
+// smoke
+effect blue_ground_quake
+type alphastatic
+count 22
+tex 0 8
+size 22 33
+sizeincrease 11
+time 25 35
+alpha 200 256 200
+color 0x000000 0xffffff
+gravity -0.3
+originjitter 44 44 44
+velocityjitter 11 11 50
+bounce 2

Added: trunk/data/models/ctf/shield.md3
===================================================================
(Binary files differ)


Property changes on: trunk/data/models/ctf/shield.md3
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/data/models/ctf/shockwavetransring.md3
===================================================================
(Binary files differ)


Property changes on: trunk/data/models/ctf/shockwavetransring.md3
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Modified: trunk/data/qcsrc/server/constants.qh
===================================================================
--- trunk/data/qcsrc/server/constants.qh	2009-06-08 19:23:31 UTC (rev 6930)
+++ trunk/data/qcsrc/server/constants.qh	2009-06-08 19:27:37 UTC (rev 6931)
@@ -1,4 +1,4 @@
-string CVAR_CHECK_DEFAULT = "c120fa8ce7b9f4b1b86b922d65249573";
+string CVAR_CHECK_DEFAULT = "265422ea51f974b6529d2414fb9e9d75";
 string CVAR_CHECK_WEAPONS = "e85f111d2e89ae3a36fb432de7d2266a";
 
 float	FALSE					= 0;

Modified: trunk/data/qcsrc/server/ctf.qc
===================================================================
--- trunk/data/qcsrc/server/ctf.qc	2009-06-08 19:23:31 UTC (rev 6930)
+++ trunk/data/qcsrc/server/ctf.qc	2009-06-08 19:27:37 UTC (rev 6931)
@@ -115,7 +115,7 @@
 	e.solid = SOLID_TRIGGER;
 	e.avelocity = '7 0 11';
 	setorigin(e, self.origin);
-	setmodel(e, "models/onslaught/generator_shield.md3");
+	setmodel(e, "models/ctf/shield.md3");
 	e.scale = 0.5;
 	setsize(e, e.scale * e.mins, e.scale * e.maxs);
 }
@@ -404,6 +404,38 @@
 		DropFlag(self, e, world);
 };
 
+void flag_cap_ring_think()
+{
+	self.nextthink = time + 0.05;
+	if(self.count > 24)
+	{
+		self.think = SUB_Remove;
+		return;
+	}
+
+	self.scale = self.count / 30;
+
+	self.frame = self.count;
+
+	self.count += 1;
+	self.alpha = self.alpha-0.04;
+};
+
+void flag_cap_ring_spawn(vector org)
+{
+	entity e;
+	e = spawn();
+	setmodel(e, "models/ctf/shockwavetransring.md3");
+	org_z=org_z-15;
+	setorigin(e, org);
+
+	e.count = 1;
+	e.alpha = 0.9;
+	
+	e.think = flag_cap_ring_think;
+	e.nextthink = time;
+};
+
 void FlagTouch()
 {
 	if(gameover) return;
@@ -468,6 +500,17 @@
 		// give credit to the individual player
 		UpdateFrags(other, ctf_score_value("score_capture"));
 
+		if (cvar("g_ctf_flag_capture_effects")) {
+			if (other.team == COLOR_TEAM1) { // red team scores effect
+				pointparticles(particleeffectnum("red_ground_quake"), self.origin, '0 0 0', 1);
+				flag_cap_ring_spawn(self.origin);
+			}
+			if (other.team == COLOR_TEAM2) { // blue team scores effect
+				pointparticles(particleeffectnum("blue_ground_quake"), self.origin, '0 0 0', 1);
+				flag_cap_ring_spawn(self.origin);
+			}
+		}
+
 		sound (other, CHAN_AUTO, self.noise2, VOL_BASE, ATTN_NONE);
 		WaypointSprite_DetachCarrier(other);
 		if(self.speedrunning)
@@ -484,6 +527,10 @@
 	{
 		if (other.next_take_time > time)
 			return;
+			
+		if (cvar("g_ctf_flag_pickup_effects")) // pickup effect
+			pointparticles(particleeffectnum("smoke_ring"), 0.5 * (self.absmin + self.absmax), '0 0 0', 1);
+			
 		// pick up
 		self.flagpickuptime = time; // used for timing runs
 		self.speedrunning = other.speedrunning; // if speedrunning, flag will self-return and teleport the owner back after the record
@@ -561,6 +608,9 @@
 		}
 		else if (!other.flagcarried && (other.playerid != self.dropperid || time > self.ctf_droptime + cvar("g_balance_ctf_delay_collect")))
 		{
+			if (cvar("g_ctf_flag_pickup_effects")) // field pickup effect
+				pointparticles(particleeffectnum("smoke_ring"), 0.5 * (self.absmin + self.absmax), '0 0 0', 1);
+			
 			// pick up
 			self.solid = SOLID_NOT;
 			setorigin(self, self.origin); // relink
@@ -801,7 +851,7 @@
 	WaypointSprite_SpawnFixed("redbase", self.origin + '0 0 37', self, sprite);
 	WaypointSprite_UpdateTeamRadar(self.sprite, RADARICON_FLAG, '1 0 0');
 
-	precache_model("models/onslaught/generator_shield.md3");
+	precache_model("models/ctf/shield.md3");
 
 	self.reset = item_flag_reset;
 };
@@ -905,7 +955,7 @@
 	WaypointSprite_SpawnFixed("bluebase", self.origin + '0 0 37', self, sprite);
 	WaypointSprite_UpdateTeamRadar(self.sprite, RADARICON_FLAG, '0 0 1');
 
-	precache_model("models/onslaught/generator_shield.md3");
+	precache_model("models/ctf/shield.md3");
 
 	self.reset = item_flag_reset;
 };



More information about the nexuiz-commits mailing list