Do not use mapthing flags to spawn hoops and rings; use the the previously set mapthing Z instead.

This commit is contained in:
Nev3r 2019-12-11 10:13:52 +01:00
parent ca6a7ffbb3
commit 584348b91e
1 changed files with 16 additions and 17 deletions

View File

@ -13077,7 +13077,7 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
mobj_t *hoopcenter; mobj_t *hoopcenter;
INT16 spewangle; INT16 spewangle;
z = mthing->options << FRACBITS; z = mthing->z << FRACBITS;
hoopcenter = P_SpawnMobj(x, y, z, MT_HOOPCENTER); hoopcenter = P_SpawnMobj(x, y, z, MT_HOOPCENTER);
@ -13217,8 +13217,7 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
INT32 hoopsize; INT32 hoopsize;
INT32 hoopplacement; INT32 hoopplacement;
// Save our flags! z = mthing->z << FRACBITS;
z = (mthing->options>>ZSHIFT) << FRACBITS;
hoopcenter = P_SpawnMobj(x, y, z, MT_HOOPCENTER); hoopcenter = P_SpawnMobj(x, y, z, MT_HOOPCENTER);
hoopcenter->spawnpoint = mthing; hoopcenter->spawnpoint = mthing;
@ -13360,8 +13359,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->c_slope ? P_GetZAt(sec->c_slope, x, y) : sec->c_slope ? P_GetZAt(sec->c_slope, x, y) :
#endif #endif
sec->ceilingheight) - mobjinfo[ringthing].height; sec->ceilingheight) - mobjinfo[ringthing].height;
if (mthing->options >> ZSHIFT) if (mthing->z)
z -= ((mthing->options >> ZSHIFT) << FRACBITS); z -= (mthing->z << FRACBITS);
} }
else else
{ {
@ -13370,8 +13369,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->f_slope ? P_GetZAt(sec->f_slope, x, y) : sec->f_slope ? P_GetZAt(sec->f_slope, x, y) :
#endif #endif
sec->floorheight); sec->floorheight);
if (mthing->options >> ZSHIFT) if (mthing->z)
z += ((mthing->options >> ZSHIFT) << FRACBITS); z += (mthing->z << FRACBITS);
} }
for (r = 1; r <= 5; r++) for (r = 1; r <= 5; r++)
@ -13420,8 +13419,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->c_slope ? P_GetZAt(sec->c_slope, x, y) : sec->c_slope ? P_GetZAt(sec->c_slope, x, y) :
#endif #endif
sec->ceilingheight) - mobjinfo[ringthing].height; sec->ceilingheight) - mobjinfo[ringthing].height;
if (mthing->options >> ZSHIFT) if (mthing->z)
z -= ((mthing->options >> ZSHIFT) << FRACBITS); z -= (mthing->z << FRACBITS);
} }
else else
{ {
@ -13430,8 +13429,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->f_slope ? P_GetZAt(sec->f_slope, x, y) : sec->f_slope ? P_GetZAt(sec->f_slope, x, y) :
#endif #endif
sec->floorheight); sec->floorheight);
if (mthing->options >> ZSHIFT) if (mthing->z)
z += ((mthing->options >> ZSHIFT) << FRACBITS); z += (mthing->z << FRACBITS);
} }
for (r = 1; r <= iterations; r++) for (r = 1; r <= iterations; r++)
@ -13477,8 +13476,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->f_slope ? P_GetZAt(sec->f_slope, x, y) : sec->f_slope ? P_GetZAt(sec->f_slope, x, y) :
#endif #endif
sec->floorheight; sec->floorheight;
if (mthing->options >> ZSHIFT) if (mthing->z)
z += ((mthing->options >> ZSHIFT) << FRACBITS); z += (mthing->z << FRACBITS);
closestangle = FixedAngle(mthing->angle*FRACUNIT); closestangle = FixedAngle(mthing->angle*FRACUNIT);
@ -13582,8 +13581,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->c_slope ? P_GetZAt(sec->c_slope, x, y) : sec->c_slope ? P_GetZAt(sec->c_slope, x, y) :
#endif #endif
sec->ceilingheight) - mobjinfo[ringthing].height; sec->ceilingheight) - mobjinfo[ringthing].height;
if (mthing->options >> ZSHIFT) if (mthing->z)
z -= ((mthing->options >> ZSHIFT) << FRACBITS); z -= (mthing->z << FRACBITS);
} }
else else
{ {
@ -13592,8 +13591,8 @@ void P_SpawnHoopsAndRings(mapthing_t *mthing, boolean bonustime)
sec->f_slope ? P_GetZAt(sec->f_slope, x, y) : sec->f_slope ? P_GetZAt(sec->f_slope, x, y) :
#endif #endif
sec->floorheight; sec->floorheight;
if (mthing->options >> ZSHIFT) if (mthing->z)
z += ((mthing->options >> ZSHIFT) << FRACBITS); z += (mthing->z << FRACBITS);
} }
if (mthing->options & MTF_AMBUSH) // Special flag for rings if (mthing->options & MTF_AMBUSH) // Special flag for rings