Long overdue tenebrae2 progs update :)

This commit is contained in:
cholleme 2003-11-10 10:47:12 +00:00
parent e5a55b2f7e
commit f295f7ec3a
7 changed files with 3690 additions and 3699 deletions

View file

@ -943,10 +943,8 @@ void() PlayerPreThink =
if (!self.flashlight) { if (!self.flashlight) {
self.flashlight = spawn (); self.flashlight = spawn ();
setmodel(self.flashlight, "progs/w_light.spr");
self.flashlight.velocity = '0 0 0'; self.flashlight.velocity = '0 0 0';
setmodel(self.flashlight, "progs/flashlight.spr");
self.flashlight.style = 0; self.flashlight.style = 0;
self.flashlight.skin = 24; self.flashlight.skin = 24;
self.flashlight.color = '1 1 1'; self.flashlight.color = '1 1 1';
@ -957,6 +955,7 @@ void() PlayerPreThink =
flatforward = normalize(v_forward); flatforward = normalize(v_forward);
flatforward_z = 0; flatforward_z = 0;
source = self.origin + flatforward * 20; source = self.origin + flatforward * 20;
source_z = source_z + 20;
setorigin(self.flashlight, source); setorigin(self.flashlight, source);
// traceline (source, source + v_forward*4096, FALSE, self); // traceline (source, source + v_forward*4096, FALSE, self);
// setorigin(self.flashlight, trace_endpos - v_forward*100); // setorigin(self.flashlight, trace_endpos - v_forward*100);

View file

@ -702,8 +702,10 @@ string(string s) precache_file2 = #77; // registered version only
void(entity e) setspawnparms = #78; // set parm1... to the void(entity e) setspawnparms = #78; // set parm1... to the
// values at level start // values at level start
// for coop respawn // for coop respawn
//PENTA: set the portal between area1 and area2 to the open parameter (0=closed, 1=open)
void(float area1, float area2, float open ) setareaportalstate = #79; void(vector o, float pcount,string effectname) BasicEmitter = #79;
void(vector o, vector v, float pcount,float tick,float life,string effectname) ExtendedEmitter = #80;
void(float area1, float area2, float open ) setareaportalstate = #81;
//============================================================================ //============================================================================

14
misc.qc
View file

@ -32,24 +32,28 @@ void() light_use =
} }
}; };
/*
Penta: These are never used by the engine. They're the map compiler's problem.
*/
void() light = {
remove(self);
};
/*QUAKED light (0 1 0) (-8 -8 -8) (8 8 8) START_OFF /*QUAKED light (0 1 0) (-8 -8 -8) (8 8 8) START_OFF
Non-displayed light. Non-displayed light.
Default light value is 300 Default light value is 300
Default style is 0 Default style is 0
If targeted, it will toggle between on or off. If targeted, it will toggle between on or off.
*/ */
void() light = void() rt_light =
{ {
local entity client; local entity client;
precache_model ("progs/w_light.spr"); precache_model ("progs/w_light.spr");
setmodel (self, "progs/w_light.spr"); setmodel (self, "progs/w_light.spr");
if (self.spawnflags & 2048) {
makestatic(self);
} else
if (!self.targetname) if (!self.targetname)
{ // inert light { //it will be loaded on the client side
remove(self); remove(self);
return; return;
} }

View file

@ -55,7 +55,7 @@ void() misc_model =
// makestatic(self); // makestatic(self);
// } // }
//} else { //} else {
if (self.button0) { if (self.button1) {
self.think = next_frame; self.think = next_frame;
self.nextthink = self.ltime + 0.1; self.nextthink = self.ltime + 0.1;
self.frame = self.button0; self.frame = self.button0;

21
subs.qc
View file

@ -315,29 +315,14 @@ void (void() thinkst) SUB_CheckRefire =
self.think = thinkst; self.think = thinkst;
}; };
//PENTA: new particle support //PENTA: new particle support, Fix don't overflow network packets when user spawns to much particles
void (entity ent, float pcount, string effectname) SUB_BasicEmitter = void (entity ent, float pcount, string effectname) SUB_BasicEmitter =
{ {
WriteByte (MSG_BROADCAST, SVC_BASICEMITTER); BasicEmitter(ent.origin, pcount, effectname);
WriteCoord (MSG_BROADCAST, ent.origin_x);
WriteCoord (MSG_BROADCAST, ent.origin_y);
WriteCoord (MSG_BROADCAST, ent.origin_z);
WriteByte (MSG_BROADCAST, pcount);
WriteString(MSG_BROADCAST, effectname);
}; };
//PENTA: new particle support //PENTA: new particle support
void (entity ent, float pcount, float tick, float life, string effectname) SUB_ExtendedEmitter = void (entity ent, float pcount, float tick, float life, string effectname) SUB_ExtendedEmitter =
{ {
WriteByte (MSG_BROADCAST, SVC_EXTENDEDEMITTER); ExtendedEmitter(ent.origin, ent.velocity, pcount, tick, life, effectname);
WriteCoord (MSG_BROADCAST, ent.origin_x);
WriteCoord (MSG_BROADCAST, ent.origin_y);
WriteCoord (MSG_BROADCAST, ent.origin_z);
WriteCoord (MSG_BROADCAST, ent.velocity_x);
WriteCoord (MSG_BROADCAST, ent.velocity_y);
WriteCoord (MSG_BROADCAST, ent.velocity_z);
WriteByte (MSG_BROADCAST, pcount);
WriteLong (MSG_BROADCAST, life*100);
WriteLong (MSG_BROADCAST, tick*100);
WriteString(MSG_BROADCAST, effectname);
}; };

View file

@ -336,6 +336,7 @@ void() BecomeExplosion =
self.color = '1 0.75 0.5'; self.color = '1 0.75 0.5';
self.light_lev = 300; self.light_lev = 300;
s_explode1 (); s_explode1 ();
SUB_BasicEmitter(self.origin_x,self.origin_y,self.origin_z,10,"pt_explodecloud");
}; };
void() T_MissileTouch = void() T_MissileTouch =

View file

@ -287,7 +287,7 @@ void() worldspawn =
precache_model ("progs/zom_gib.mdl"); precache_model ("progs/zom_gib.mdl");
precache_model ("progs/v_light.mdl"); precache_model ("progs/v_light.mdl");
precache_model ("progs/flashlight.spr");
// //
// Setup light animation tables. 'a' is total darkness, 'z' is maxbright. // Setup light animation tables. 'a' is total darkness, 'z' is maxbright.