mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-27 20:41:46 +00:00
Fix item flicker
This commit is contained in:
parent
6e0bc7a8e5
commit
25de15672e
1 changed files with 13 additions and 9 deletions
|
|
@ -112,18 +112,22 @@ void Obj_RandomItemVisuals(mobj_t *mobj)
|
||||||
ItemBoxScaling(mobj);
|
ItemBoxScaling(mobj);
|
||||||
item_vfxtimer(mobj)++;
|
item_vfxtimer(mobj)++;
|
||||||
|
|
||||||
for (UINT8 i = 0; i <= r_splitscreen; i++)
|
|
||||||
{
|
|
||||||
UINT32 flag = K_GetPlayerDontDrawFlag(&players[displayplayers[i]]);
|
|
||||||
if (!players[displayplayers[i]].cangrabitems)
|
|
||||||
mobj->renderflags |= flag;
|
|
||||||
else
|
|
||||||
mobj->renderflags &= ~(flag);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (mobj->type != MT_RANDOMITEM)
|
if (mobj->type != MT_RANDOMITEM)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (!((mobj->flags & MF_NOCLIPTHING) || mobj->fuse))
|
||||||
|
{
|
||||||
|
for (UINT8 i = 0; i <= r_splitscreen; i++)
|
||||||
|
{
|
||||||
|
UINT32 flag = K_GetPlayerDontDrawFlag(&players[displayplayers[i]]);
|
||||||
|
if (!players[displayplayers[i]].cangrabitems)
|
||||||
|
mobj->renderflags |= flag;
|
||||||
|
else
|
||||||
|
mobj->renderflags &= ~(flag);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// Respawn flow, documented by a dumb asshole:
|
// Respawn flow, documented by a dumb asshole:
|
||||||
// P_TouchSpecialThing -> P_ItemPop sets fuse, NOCLIPTHING and DONTDRAW.
|
// P_TouchSpecialThing -> P_ItemPop sets fuse, NOCLIPTHING and DONTDRAW.
|
||||||
// P_FuseThink does visual flicker, and when fuse is 0, unsets NOCLIPTHING/DONTDRAW/etc...
|
// P_FuseThink does visual flicker, and when fuse is 0, unsets NOCLIPTHING/DONTDRAW/etc...
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue