r5607 - in trunk/data: . qcsrc/client qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Mon Jan 19 01:17:58 EST 2009
Author: div0
Date: 2009-01-19 01:17:57 -0500 (Mon, 19 Jan 2009)
New Revision: 5607
Modified:
trunk/data/defaultNexuiz.cfg
trunk/data/qcsrc/client/gibs.qc
trunk/data/qcsrc/server/cl_player.qc
Log:
cl_gentle mode (test)
Modified: trunk/data/defaultNexuiz.cfg
===================================================================
--- trunk/data/defaultNexuiz.cfg 2009-01-18 20:38:04 UTC (rev 5606)
+++ trunk/data/defaultNexuiz.cfg 2009-01-19 06:17:57 UTC (rev 5607)
@@ -1424,3 +1424,7 @@
alias -camera_roll_right "set camera_roll 0"
alias +camera_roll_left "set camera_roll -1"
alias -camera_roll_left -camera_roll_right
+
+// "Gentle mode": show no blood
+seta sv_gentle 0 // force gentle mode for everyone, also remove references to acts of killing from the messages
+seta cl_gentle 0 // client side gentle mode (only replaces gibs)
Modified: trunk/data/qcsrc/client/gibs.qc
===================================================================
--- trunk/data/qcsrc/client/gibs.qc 2009-01-18 20:38:04 UTC (rev 5606)
+++ trunk/data/qcsrc/client/gibs.qc 2009-01-19 06:17:57 UTC (rev 5607)
@@ -88,8 +88,9 @@
mi = decompressShortVector(ReadShort());
ma = decompressShortVector(ReadShort());
+ if(cvar("cl_gentle"))
+ type |= 0x80; // set gentle bit
isgentle = (type & 0x80 || cvar("cl_gentle"));
- type = type & 0x7F;
gibfactor = 1 - cvar("cl_nogibs");
if(gibfactor <= 0)
@@ -99,54 +100,65 @@
if(cvar("ekg"))
amount *= 5;
+
+ self.origin = org; // for the sounds
- if(type == 1) // full gibbage
+ switch(type)
{
- sound (self, CHAN_PAIN, "misc/gib.wav", VOL_BASE, ATTN_NORM);
+ case 0x01:
+ sound (self, CHAN_PAIN, "misc/gib.wav", VOL_BASE, ATTN_NORM);
- if(random() < amount)
- TossGib("models/gibs/eye.md3", org, vel + randomvec() * 150, 0);
- te_bloodshower(org + mi, org + ma, 1200, 1000 * amount);
- if(random() < amount)
- TossGib("models/gibs/bloodyskull.md3", org, vel + randomvec() * 100, 0);
+ if(random() < amount)
+ TossGib("models/gibs/eye.md3", org, vel + randomvec() * 150, 0);
+ te_bloodshower(org + mi, org + ma, 1200, 1000 * amount);
+ if(random() < amount)
+ TossGib("models/gibs/bloodyskull.md3", org, vel + randomvec() * 100, 0);
- for(c = 0; c < amount; ++c)
- {
- randomvalue = amount - c;
-
- if(random() < randomvalue)
- TossGib ("models/gibs/arm.md3", org, vel + randomvec() * (random() * 120 + 90),0);
- if(random() < randomvalue)
- TossGib ("models/gibs/arm.md3", org, vel + randomvec() * (random() * 120 + 90),0);
- if(random() < randomvalue)
- TossGib ("models/gibs/chest.md3", org + '0 0 -12', vel + randomvec() * (random() * 120 + 80),0);
- if(random() < randomvalue)
- TossGib ("models/gibs/smallchest.md3", org, vel + randomvec() * (random() * 120 + 80),0);
- if(random() < randomvalue)
- TossGib ("models/gibs/leg1.md3", org + '0 0 -5', vel + randomvec() * (random() * 120 + 85),0);
- if(random() < randomvalue)
- TossGib ("models/gibs/leg2.md3", org + '0 0 -9', vel + randomvec() * (random() * 120 + 85),0);
+ for(c = 0; c < amount; ++c)
+ {
+ randomvalue = amount - c;
+
+ if(random() < randomvalue)
+ TossGib ("models/gibs/arm.md3", org, vel + randomvec() * (random() * 120 + 90),0);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/arm.md3", org, vel + randomvec() * (random() * 120 + 90),0);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/chest.md3", org + '0 0 -12', vel + randomvec() * (random() * 120 + 80),0);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/smallchest.md3", org, vel + randomvec() * (random() * 120 + 80),0);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/leg1.md3", org + '0 0 -5', vel + randomvec() * (random() * 120 + 85),0);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/leg2.md3", org + '0 0 -9', vel + randomvec() * (random() * 120 + 85),0);
- // these splat on impact
- if(random() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
- if(random() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
- if(random() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
- if(random() < randomvalue)
- TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
- }
+ // these splat on impact
+ if(random() < randomvalue)
+ TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
+ if(random() < randomvalue)
+ TossGib ("models/gibs/chunk.mdl", org, vel + randomvec() * 450,1);
+ }
+ break;
+ case 0x02:
+ pointparticles(particleeffectnum("blood"), org, vel, amount);
+ break;
+ case 0x03:
+ if(random() < amount)
+ TossGib ("models/gibs/chunk.mdl", org, vel, 1);
+ break;
+ case 0x81:
+ pointparticles(particleeffectnum("damage_dissolve"), org, vel, amount);
+ break;
+ case 0x82:
+ pointparticles(particleeffectnum("damage_hit"), org, vel, amount);
+ break;
+ case 0x83:
+ // no gibs in gentle mode, sorry
+ break;
}
- else if(type == 2) // just blood
- {
- pointparticles(particleeffectnum("blood"), org, vel, amount);
- }
- else if(type == 3) // single gib
- {
- if(random() < amount)
- TossGib ("models/gibs/chunk.mdl", org, vel, 1);
- }
}
void GibSplash_Precache()
Modified: trunk/data/qcsrc/server/cl_player.qc
===================================================================
--- trunk/data/qcsrc/server/cl_player.qc 2009-01-18 20:38:04 UTC (rev 5606)
+++ trunk/data/qcsrc/server/cl_player.qc 2009-01-19 06:17:57 UTC (rev 5607)
@@ -547,7 +547,6 @@
if(sv_gentle > 0) {
// remove corpse
PlayerCorpseDamage (inflictor, attacker, 100.0, deathtype, hitloc, force);
- pointparticles(particleeffectnum("damage_dissolve"), self.origin, force, 1);
}
}
}
More information about the nexuiz-commits
mailing list