X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=cl_main.c;h=735660494ddec0951117c1b11584fed542005600;hb=f489a657f28418efa08ca8907f5f78e17b44655f;hp=693caeb7353b0bf468b0c48cd293eaf688521396;hpb=e4af24f74c017f75dccc8bc675a4184d801e5d8a;p=xonotic%2Fdarkplaces.git diff --git a/cl_main.c b/cl_main.c index 693caeb7..73566049 100644 --- a/cl_main.c +++ b/cl_main.c @@ -289,6 +289,8 @@ void CL_Disconnect(void) if (cls.state == ca_dedicated) return; + Curl_Clear_forthismap(); + Con_DPrintf("CL_Disconnect\n"); CL_VM_ShutDown(); @@ -967,19 +969,13 @@ void CL_UpdateNetworkEntity(entity_t *e, int recursionlimit) // player model is only shown with chase_active on if (e->state_current.number == cl.viewentity) e->render.flags |= RENDER_EXTERIORMODEL; - // transparent stuff can't be lit during the opaque stage - if (e->render.effects & (EF_ADDITIVE | EF_NODEPTHTEST) || e->render.alpha < 1) - e->render.flags |= RENDER_TRANSPARENT; - // double sided rendering mode causes backfaces to be visible - // (mostly useful on transparent stuff) - if (e->render.effects & EF_DOUBLESIDED) - e->render.flags |= RENDER_NOCULLFACE; // either fullbright or lit if (!(e->render.effects & EF_FULLBRIGHT) && !r_fullbright.integer) e->render.flags |= RENDER_LIGHT; // hide player shadow during intermission or nehahra movie - if (!(e->render.effects & EF_NOSHADOW) - && !(e->render.flags & (RENDER_VIEWMODEL | RENDER_TRANSPARENT)) + if (!(e->render.effects & (EF_NOSHADOW | EF_ADDITIVE | EF_NODEPTHTEST)) + && (e->render.alpha >= 1) + && !(e->render.flags & RENDER_VIEWMODEL) && (!(e->render.flags & RENDER_EXTERIORMODEL) || (!cl.intermission && cls.protocol != PROTOCOL_NEHAHRAMOVIE && !cl_noplayershadow.integer))) e->render.flags |= RENDER_SHADOW; } @@ -1329,14 +1325,11 @@ static void CL_RelinkStaticEntities(void) // need to re-fetch the model pointer e->render.model = cl.model_precache[e->state_baseline.modelindex]; CL_UpdateRenderEntity(&e->render); - // transparent stuff can't be lit during the opaque stage - if (e->render.effects & (EF_ADDITIVE | EF_NODEPTHTEST) || e->render.alpha < 1) - e->render.flags |= RENDER_TRANSPARENT; // either fullbright or lit if (!(e->render.effects & EF_FULLBRIGHT) && !r_fullbright.integer) e->render.flags |= RENDER_LIGHT; // hide player shadow during intermission or nehahra movie - if (!(e->render.effects & EF_NOSHADOW) && !(e->render.flags & RENDER_TRANSPARENT)) + if (!(e->render.effects & (EF_NOSHADOW | EF_ADDITIVE | EF_NODEPTHTEST)) && (e->render.alpha >= 1)) e->render.flags |= RENDER_SHADOW; VectorSet(e->render.colormod, 1, 1, 1); R_LerpAnimation(&e->render);