[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