diff --git a/engine/client/p_script.c b/engine/client/p_script.c index 24673b799..0d3c6ec68 100644 --- a/engine/client/p_script.c +++ b/engine/client/p_script.c @@ -2238,7 +2238,7 @@ static void P_PartInfo_f (void) if (j) { - Con_Printf("Type %s = %i total\n", part_type[i].name, j); + Con_Printf("Type %s.%s = %i total\n", part_type[i].config, part_type[i].name, j); if (!(part_type[i].state & PS_INRUNLIST)) Con_Printf(" NOT RUNNING\n"); } @@ -2254,7 +2254,7 @@ static void P_PartInfo_f (void) j++; - Con_Printf("Type %s = %i total\n", ptype->name, j); + Con_Printf("Type %s.%s = %i total\n", ptype->config, ptype->name, j); r += j; e++; } @@ -3751,7 +3751,7 @@ static int PScript_RunParticleEffectState (vec3_t org, vec3_t dir, float count, goto skip; } - if (dir) + if (dir && (dir[0] || dir[1] || dir[2])) { void PerpendicularVector( vec3_t dst, const vec3_t src ); VectorCopy(dir, axis[2]); diff --git a/engine/client/pr_csqc.c b/engine/client/pr_csqc.c index b32db9644..5b6066cbc 100644 --- a/engine/client/pr_csqc.c +++ b/engine/client/pr_csqc.c @@ -2466,12 +2466,13 @@ static void QCBUILTIN PF_cs_particleeffectnum (pubprogfuncs_t *prinst, struct gl free(cl.particle_csname[i]); cl.particle_csname[i] = NULL; cl.particle_csprecache[i] = P_FindParticleType(effectname); - if (cl.particle_csprecache[i] != P_INVALID) + //if (cl.particle_csprecache[i] != P_INVALID) { //it exists, allow it. cl.particle_csname[i] = strdup(effectname); G_FLOAT(OFS_RETURN) = -i; } + cl.particle_csprecaches = true; } //if we're using dp network protocols, we should use the effectinfo.txt file as a lookup table instead.