Redo all changes I ended up losing trying to undo the mess I made.

Also, fix the issue pointed out by Alam.
This commit is contained in:
ilag 2014-05-02 14:24:20 -07:00
parent ea7abe7c44
commit 1af18c7013
3 changed files with 6 additions and 5 deletions

View file

@ -2857,9 +2857,10 @@ static void HWR_Subsector(size_t num)
#ifdef DOPLANES #ifdef DOPLANES
// -------------------- WATER IN DEV. TEST ------------------------ // -------------------- WATER IN DEV. TEST ------------------------
//dck hack : use abs(tag) for waterheight //dck hack : use abs(tag) for waterheight
if (gr_frontsector->tag < 0) //ilag : Since we changed to UINT16 for sector tags, simulate INT16
if (gr_frontsector->tag > 32767)
{ {
wh = ((-gr_frontsector->tag) <<FRACBITS) + (FRACUNIT/2); wh = ((65535-gr_frontsector->tag) <<FRACBITS) + (FRACUNIT/2);
if (wh > gr_frontsector->floorheight && if (wh > gr_frontsector->floorheight &&
wh < gr_frontsector->ceilingheight) wh < gr_frontsector->ceilingheight)
{ {

View file

@ -3670,7 +3670,7 @@ static void P_Boss3Thinker(mobj_t *mobj)
// Move Boss4's sectors by delta. // Move Boss4's sectors by delta.
static boolean P_Boss4MoveCage(fixed_t delta) static boolean P_Boss4MoveCage(fixed_t delta)
{ {
const INT16 tag = -2; const UINT16 tag = 65534;
INT32 snum; INT32 snum;
sector_t *sector; sector_t *sector;
for (snum = sectors[tag%numsectors].firsttag; snum != -1; snum = sector->nexttag) for (snum = sectors[tag%numsectors].firsttag; snum != -1; snum = sector->nexttag)
@ -3719,7 +3719,7 @@ static void P_Boss4PinchSpikeballs(mobj_t *mobj, angle_t angle, fixed_t fz)
// Destroy cage FOFs. // Destroy cage FOFs.
static void P_Boss4DestroyCage(void) static void P_Boss4DestroyCage(void)
{ {
const INT16 tag = -2; const UINT16 tag = 65534;
INT32 snum, next; INT32 snum, next;
size_t a; size_t a;
sector_t *sector, *rsec; sector_t *sector, *rsec;

View file

@ -242,7 +242,7 @@ typedef struct sector_s
INT32 ceilingpic; INT32 ceilingpic;
INT16 lightlevel; INT16 lightlevel;
INT16 special; INT16 special;
INT16 tag; UINT16 tag;
INT32 nexttag, firsttag; // for fast tag searches INT32 nexttag, firsttag; // for fast tag searches
// origin for any sounds played by the sector // origin for any sounds played by the sector