From cd660f68042f06f0a13b971914962632f6019e5f Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Fri, 3 Dec 2010 20:30:01 +0900 Subject: [PATCH] Fix smoke trails that were broken by the efrags commit. The efrags system's usage of ent->visframe clashes with that of CL_LinkPacketEntities. As the latter is rather bogus, and potentially visible entities are always inserted into the map (causing ent->efrag to be non-null), a null ent->efrag is a good indication that the entity is newly visible. --- qw/source/cl_ents.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/qw/source/cl_ents.c b/qw/source/cl_ents.c index 0e70cf6e0..39bf15b30 100644 --- a/qw/source/cl_ents.c +++ b/qw/source/cl_ents.c @@ -514,7 +514,7 @@ CL_LinkPacketEntities (void) // set frame ent->frame = s1->frame; - if (ent->visframe != r_framecount - 1) { + if (!ent->efrag) { ent->lerpflags |= LERP_RESETMOVE|LERP_RESETANIM; // No trail if new this frame @@ -530,7 +530,6 @@ CL_LinkPacketEntities (void) } if (!ent->efrag) R_AddEfrags (ent); - ent->visframe = r_framecount; if (model->flags & EF_ROTATE) { // rotate binary objects locally ent->angles[0] = 0;