-Remove superfluous variables from raise_t
-Cleanup signatures of P_AddRaiseThinker and P_AddAirbob
This commit is contained in:
parent
a41dbe2bae
commit
63a901b714
|
@ -1856,8 +1856,9 @@ void T_RaiseSector(raise_t *raise)
|
||||||
boolean playeronme = false, active = false;
|
boolean playeronme = false, active = false;
|
||||||
boolean moveUp;
|
boolean moveUp;
|
||||||
fixed_t ceilingdestination, floordestination;
|
fixed_t ceilingdestination, floordestination;
|
||||||
fixed_t origspeed;
|
fixed_t speed, origspeed;
|
||||||
fixed_t distToNearestEndpoint;
|
fixed_t distToNearestEndpoint;
|
||||||
|
INT32 direction;
|
||||||
result_e res = 0;
|
result_e res = 0;
|
||||||
|
|
||||||
if (raise->sector->crumblestate >= 3 || raise->sector->ceilingdata)
|
if (raise->sector->crumblestate >= 3 || raise->sector->ceilingdata)
|
||||||
|
@ -1936,60 +1937,59 @@ void T_RaiseSector(raise_t *raise)
|
||||||
else // Air bobbing platform (not a Dynamically Sinking Platform^tm)
|
else // Air bobbing platform (not a Dynamically Sinking Platform^tm)
|
||||||
active = playeronme;
|
active = playeronme;
|
||||||
|
|
||||||
raise->speed = raise->basespeed;
|
|
||||||
if (!active)
|
|
||||||
raise->speed /= 2;
|
|
||||||
|
|
||||||
moveUp = active ^ (raise->flags & RF_REVERSE);
|
moveUp = active ^ (raise->flags & RF_REVERSE);
|
||||||
ceilingdestination = moveUp ? raise->ceilingtop : raise->ceilingbottom;
|
ceilingdestination = moveUp ? raise->ceilingtop : raise->ceilingbottom;
|
||||||
floordestination = moveUp ? raise->floortop : raise->floorbottom;
|
floordestination = ceilingdestination - (raise->sector->ceilingheight - raise->sector->floorheight);
|
||||||
|
|
||||||
if ((moveUp && raise->sector->ceilingheight >= ceilingdestination)
|
if ((moveUp && raise->sector->ceilingheight >= ceilingdestination)
|
||||||
|| (!moveUp && raise->sector->ceilingheight <= ceilingdestination))
|
|| (!moveUp && raise->sector->ceilingheight <= ceilingdestination))
|
||||||
{
|
{
|
||||||
raise->sector->floorheight = ceilingdestination - (raise->sector->ceilingheight - raise->sector->floorheight);
|
raise->sector->floorheight = floordestination;
|
||||||
raise->sector->ceilingheight = ceilingdestination;
|
raise->sector->ceilingheight = ceilingdestination;
|
||||||
raise->sector->ceilspeed = 0;
|
raise->sector->ceilspeed = 0;
|
||||||
raise->sector->floorspeed = 0;
|
raise->sector->floorspeed = 0;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
raise->direction = moveUp ? 1 : -1;
|
direction = moveUp ? 1 : -1;
|
||||||
|
|
||||||
|
origspeed = raise->basespeed;
|
||||||
|
if (!active)
|
||||||
|
origspeed /= 2;
|
||||||
|
|
||||||
origspeed = raise->speed;
|
|
||||||
// Speed up as you get closer to the middle, then slow down again
|
// Speed up as you get closer to the middle, then slow down again
|
||||||
distToNearestEndpoint = min(raise->sector->ceilingheight - raise->ceilingbottom, raise->ceilingtop - raise->sector->ceilingheight);
|
distToNearestEndpoint = min(raise->sector->ceilingheight - raise->ceilingbottom, raise->ceilingtop - raise->sector->ceilingheight);
|
||||||
raise->speed = FixedMul(raise->speed, FixedDiv(distToNearestEndpoint, (raise->ceilingtop - raise->ceilingbottom) >> 5));
|
speed = FixedMul(origspeed, FixedDiv(distToNearestEndpoint, (raise->ceilingtop - raise->ceilingbottom) >> 5));
|
||||||
|
|
||||||
if (raise->speed <= origspeed/16)
|
if (speed <= origspeed/16)
|
||||||
raise->speed = origspeed/16;
|
speed = origspeed/16;
|
||||||
else if (raise->speed > origspeed)
|
else if (speed > origspeed)
|
||||||
raise->speed = origspeed;
|
speed = origspeed;
|
||||||
|
|
||||||
raise->speed += raise->extraspeed;
|
speed += raise->extraspeed;
|
||||||
|
|
||||||
res = T_MovePlane
|
res = T_MovePlane
|
||||||
(
|
(
|
||||||
raise->sector, // sector
|
raise->sector, // sector
|
||||||
raise->speed, // speed
|
speed, // speed
|
||||||
ceilingdestination, // dest
|
ceilingdestination, // dest
|
||||||
0, // crush
|
0, // crush
|
||||||
1, // floor or ceiling (1 for ceiling)
|
1, // floor or ceiling (1 for ceiling)
|
||||||
raise->direction // direction
|
direction // direction
|
||||||
);
|
);
|
||||||
|
|
||||||
if (res == ok || res == pastdest)
|
if (res == ok || res == pastdest)
|
||||||
T_MovePlane
|
T_MovePlane
|
||||||
(
|
(
|
||||||
raise->sector, // sector
|
raise->sector, // sector
|
||||||
raise->speed, // speed
|
speed, // speed
|
||||||
floordestination, // dest
|
floordestination, // dest
|
||||||
0, // crush
|
0, // crush
|
||||||
0, // floor or ceiling (0 for floor)
|
0, // floor or ceiling (0 for floor)
|
||||||
raise->direction // direction
|
direction // direction
|
||||||
);
|
);
|
||||||
|
|
||||||
raise->sector->ceilspeed = 42;
|
raise->sector->ceilspeed = 42;
|
||||||
raise->sector->floorspeed = raise->speed*raise->direction;
|
raise->sector->floorspeed = speed*direction;
|
||||||
|
|
||||||
for (i = -1; (i = P_FindSectorFromTag(raise->sourceline->tag, i)) >= 0 ;)
|
for (i = -1; (i = P_FindSectorFromTag(raise->sourceline->tag, i)) >= 0 ;)
|
||||||
P_RecalcPrecipInSector(§ors[i]);
|
P_RecalcPrecipInSector(§ors[i]);
|
||||||
|
|
|
@ -1669,13 +1669,9 @@ static void SaveRaiseThinker(const thinker_t *th, const UINT8 type)
|
||||||
WRITEUINT8(save_p, type);
|
WRITEUINT8(save_p, type);
|
||||||
WRITEUINT32(save_p, SaveLine(ht->sourceline));
|
WRITEUINT32(save_p, SaveLine(ht->sourceline));
|
||||||
WRITEUINT32(save_p, SaveSector(ht->sector));
|
WRITEUINT32(save_p, SaveSector(ht->sector));
|
||||||
WRITEFIXED(save_p, ht->floorbottom);
|
|
||||||
WRITEFIXED(save_p, ht->ceilingbottom);
|
WRITEFIXED(save_p, ht->ceilingbottom);
|
||||||
WRITEFIXED(save_p, ht->floortop);
|
|
||||||
WRITEFIXED(save_p, ht->ceilingtop);
|
WRITEFIXED(save_p, ht->ceilingtop);
|
||||||
WRITEFIXED(save_p, ht->basespeed);
|
WRITEFIXED(save_p, ht->basespeed);
|
||||||
WRITEFIXED(save_p, ht->speed);
|
|
||||||
WRITEINT32(save_p, ht->direction);
|
|
||||||
WRITEFIXED(save_p, ht->extraspeed);
|
WRITEFIXED(save_p, ht->extraspeed);
|
||||||
WRITEUINT8(save_p, ht->shaketimer);
|
WRITEUINT8(save_p, ht->shaketimer);
|
||||||
WRITEUINT8(save_p, ht->flags);
|
WRITEUINT8(save_p, ht->flags);
|
||||||
|
@ -2802,13 +2798,9 @@ static thinker_t* LoadRaiseThinker(actionf_p1 thinker)
|
||||||
ht->thinker.function.acp1 = thinker;
|
ht->thinker.function.acp1 = thinker;
|
||||||
ht->sourceline = LoadLine(READUINT32(save_p));
|
ht->sourceline = LoadLine(READUINT32(save_p));
|
||||||
ht->sector = LoadSector(READUINT32(save_p));
|
ht->sector = LoadSector(READUINT32(save_p));
|
||||||
ht->floorbottom = READFIXED(save_p);
|
|
||||||
ht->ceilingbottom = READFIXED(save_p);
|
ht->ceilingbottom = READFIXED(save_p);
|
||||||
ht->floortop = READFIXED(save_p);
|
|
||||||
ht->ceilingtop = READFIXED(save_p);
|
ht->ceilingtop = READFIXED(save_p);
|
||||||
ht->basespeed = READFIXED(save_p);
|
ht->basespeed = READFIXED(save_p);
|
||||||
ht->speed = READFIXED(save_p);
|
|
||||||
ht->direction = READINT32(save_p);
|
|
||||||
ht->extraspeed = READFIXED(save_p);
|
ht->extraspeed = READFIXED(save_p);
|
||||||
ht->shaketimer = READUINT8(save_p);
|
ht->shaketimer = READUINT8(save_p);
|
||||||
ht->flags = READUINT8(save_p);
|
ht->flags = READUINT8(save_p);
|
||||||
|
|
55
src/p_spec.c
55
src/p_spec.c
|
@ -6040,7 +6040,7 @@ static void P_AddBlockThinker(sector_t *sec, line_t *sourceline)
|
||||||
* \sa P_SpawnSpecials, T_RaiseSector
|
* \sa P_SpawnSpecials, T_RaiseSector
|
||||||
* \author SSNTails <http://www.ssntails.org>
|
* \author SSNTails <http://www.ssntails.org>
|
||||||
*/
|
*/
|
||||||
static void P_AddRaiseThinker(sector_t *sec, line_t *sourceline)
|
static void P_AddRaiseThinker(sector_t *sec, line_t *sourceline, boolean lower, boolean spindash)
|
||||||
{
|
{
|
||||||
raise_t *raise;
|
raise_t *raise;
|
||||||
|
|
||||||
|
@ -6053,20 +6053,17 @@ static void P_AddRaiseThinker(sector_t *sec, line_t *sourceline)
|
||||||
raise->sector = sec;
|
raise->sector = sec;
|
||||||
|
|
||||||
raise->ceilingtop = P_FindHighestCeilingSurrounding(sec);
|
raise->ceilingtop = P_FindHighestCeilingSurrounding(sec);
|
||||||
raise->floortop = raise->ceilingtop - (sec->ceilingheight - sec->floorheight);
|
|
||||||
raise->ceilingbottom = P_FindLowestCeilingSurrounding(sec);
|
raise->ceilingbottom = P_FindLowestCeilingSurrounding(sec);
|
||||||
raise->floorbottom = raise->ceilingbottom - (sec->ceilingheight - sec->floorheight);
|
|
||||||
|
|
||||||
raise->basespeed = FixedDiv(P_AproxDistance(sourceline->dx, sourceline->dy), 4*FRACUNIT);
|
raise->basespeed = FixedDiv(P_AproxDistance(sourceline->dx, sourceline->dy), 4*FRACUNIT);
|
||||||
raise->speed = raise->basespeed;
|
|
||||||
|
|
||||||
if (sourceline->flags & ML_BLOCKMONSTERS)
|
if (lower)
|
||||||
raise->flags |= RF_REVERSE;
|
raise->flags |= RF_REVERSE;
|
||||||
if (sourceline->flags & ML_NOCLIMB)
|
if (spindash)
|
||||||
raise->flags |= RF_SPINDASH;
|
raise->flags |= RF_SPINDASH;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void P_AddAirbob(sector_t *sec, line_t *sourceline, boolean noadjust, boolean dynamic)
|
static void P_AddAirbob(sector_t *sec, line_t *sourceline, fixed_t dist, boolean raise, boolean spindash, boolean dynamic)
|
||||||
{
|
{
|
||||||
raise_t *airbob;
|
raise_t *airbob;
|
||||||
|
|
||||||
|
@ -6079,16 +6076,15 @@ static void P_AddAirbob(sector_t *sec, line_t *sourceline, boolean noadjust, boo
|
||||||
airbob->sector = sec;
|
airbob->sector = sec;
|
||||||
|
|
||||||
airbob->ceilingtop = sec->ceilingheight;
|
airbob->ceilingtop = sec->ceilingheight;
|
||||||
airbob->floortop = airbob->ceilingtop - (sec->ceilingheight - sec->floorheight);
|
airbob->ceilingbottom = sec->ceilingheight - speed;
|
||||||
airbob->ceilingbottom = sec->ceilingheight - (noadjust ? 16*FRACUNIT : P_AproxDistance(sourceline->dx, sourceline->dy));
|
|
||||||
airbob->floorbottom = airbob->ceilingbottom - (sec->ceilingheight - sec->floorheight);
|
|
||||||
|
|
||||||
airbob->basespeed = FRACUNIT;
|
airbob->basespeed = FRACUNIT;
|
||||||
airbob->speed = airbob->basespeed;
|
|
||||||
|
|
||||||
if (sourceline->flags & ML_BLOCKMONSTERS)
|
airbob->flags = flags;
|
||||||
|
|
||||||
|
if (!raise)
|
||||||
airbob->flags |= RF_REVERSE;
|
airbob->flags |= RF_REVERSE;
|
||||||
if (sourceline->flags & ML_NOCLIMB)
|
if (spindash)
|
||||||
airbob->flags |= RF_SPINDASH;
|
airbob->flags |= RF_SPINDASH;
|
||||||
if (dynamic)
|
if (dynamic)
|
||||||
airbob->flags |= RF_DYNAMIC;
|
airbob->flags |= RF_DYNAMIC;
|
||||||
|
@ -6894,18 +6890,22 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
|
|
||||||
case 150: // Air bobbing platform
|
case 150: // Air bobbing platform
|
||||||
case 151: // Adjustable air bobbing platform
|
case 151: // Adjustable air bobbing platform
|
||||||
|
{
|
||||||
|
fixed_t dist = (lines[i].special == 150) ? 16*FRACUNIT : P_AproxDistance(lines[i].dx, lines[i].dy);
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
||||||
lines[i].flags |= ML_BLOCKMONSTERS;
|
P_AddAirbob(lines[i].frontsector, lines + i, dist, false, !!(lines[i].flags & ML_NOCLIMB), false);
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, (lines[i].special != 151), false);
|
|
||||||
break;
|
break;
|
||||||
|
}
|
||||||
case 152: // Adjustable air bobbing platform in reverse
|
case 152: // Adjustable air bobbing platform in reverse
|
||||||
|
if (lines[i].flags & NOCLIMB)
|
||||||
|
raiseflags |= RF_SPINDASH;
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, true, false);
|
P_AddAirbob(lines[i].frontsector, lines + i, P_AproxDistance(lines[i].dx, lines[i].dy), true, !!(lines[i].flags & ML_NOCLIMB), false);
|
||||||
break;
|
break;
|
||||||
case 153: // Dynamic Sinking Platform
|
case 153: // Dynamic Sinking Platform
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
||||||
lines[i].flags |= ML_BLOCKMONSTERS;
|
lines[i].flags |= ML_BLOCKMONSTERS;
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, false, true);
|
P_AddAirbob(lines[i].frontsector, lines + i, P_AproxDistance(lines[i].dx, lines[i].dy), false, !!(lines[i].flags & ML_NOCLIMB), true);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 160: // Float/bob platform
|
case 160: // Float/bob platform
|
||||||
|
@ -6955,15 +6955,13 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
|
|
||||||
case 176: // Air bobbing platform that will crumble and bob on the water when it falls and hits
|
case 176: // Air bobbing platform that will crumble and bob on the water when it falls and hits
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_FLOATBOB|FF_CRUMBLE, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_FLOATBOB|FF_CRUMBLE, secthinkers);
|
||||||
lines[i].flags |= ML_BLOCKMONSTERS;
|
P_AddAirbob(lines[i].frontsector, lines + i, 16*FRACUNIT, false, !!(lines[i].flags & ML_NOCLIMB), false);
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, true, false);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 177: // Air bobbing platform that will crumble and bob on
|
case 177: // Air bobbing platform that will crumble and bob on
|
||||||
// the water when it falls and hits, then never return
|
// the water when it falls and hits, then never return
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL|FF_FLOATBOB|FF_CRUMBLE|FF_NORETURN, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL|FF_FLOATBOB|FF_CRUMBLE|FF_NORETURN, secthinkers);
|
||||||
lines[i].flags |= ML_BLOCKMONSTERS;
|
P_AddAirbob(lines[i].frontsector, lines + i, 16*FRACUNIT, false, !!(lines[i].flags & ML_NOCLIMB), false);
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, true, false);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 178: // Crumbling platform that will float when it hits water
|
case 178: // Crumbling platform that will float when it hits water
|
||||||
|
@ -6976,28 +6974,27 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
|
|
||||||
case 180: // Air bobbing platform that will crumble
|
case 180: // Air bobbing platform that will crumble
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL|FF_CRUMBLE, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL|FF_CRUMBLE, secthinkers);
|
||||||
lines[i].flags |= ML_BLOCKMONSTERS;
|
P_AddAirbob(lines[i].frontsector, lines + i, 16*FRACUNIT, false, !!(lines[i].flags & ML_NOCLIMB), false);
|
||||||
P_AddAirbob(lines[i].frontsector, lines + i, true, false);
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 190: // Rising Platform FOF (solid, opaque, shadows)
|
case 190: // Rising Platform FOF (solid, opaque, shadows)
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_CUTLEVEL, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 191: // Rising Platform FOF (solid, opaque, no shadows)
|
case 191: // Rising Platform FOF (solid, opaque, no shadows)
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_NOSHADE|FF_CUTLEVEL, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_NOSHADE|FF_CUTLEVEL, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 192: // Rising Platform TL block: FOF (solid, translucent)
|
case 192: // Rising Platform TL block: FOF (solid, translucent)
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_NOSHADE|FF_TRANSLUCENT|FF_EXTRA|FF_CUTEXTRA, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_NOSHADE|FF_TRANSLUCENT|FF_EXTRA|FF_CUTEXTRA, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 193: // Rising Platform FOF (solid, invisible)
|
case 193: // Rising Platform FOF (solid, invisible)
|
||||||
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_NOSHADE, secthinkers);
|
P_AddFakeFloorsByLine(i, FF_EXISTS|FF_SOLID|FF_NOSHADE, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 194: // Rising Platform 'Platform' - You can jump up through it
|
case 194: // Rising Platform 'Platform' - You can jump up through it
|
||||||
|
@ -7007,7 +7004,7 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
ffloorflags |= FF_NOSHADE;
|
ffloorflags |= FF_NOSHADE;
|
||||||
|
|
||||||
P_AddFakeFloorsByLine(i, ffloorflags, secthinkers);
|
P_AddFakeFloorsByLine(i, ffloorflags, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 195: // Rising Platform Translucent "platform"
|
case 195: // Rising Platform Translucent "platform"
|
||||||
|
@ -7017,7 +7014,7 @@ void P_SpawnSpecials(boolean fromnetsave)
|
||||||
ffloorflags |= FF_NOSHADE;
|
ffloorflags |= FF_NOSHADE;
|
||||||
|
|
||||||
P_AddFakeFloorsByLine(i, ffloorflags, secthinkers);
|
P_AddFakeFloorsByLine(i, ffloorflags, secthinkers);
|
||||||
P_AddRaiseThinker(lines[i].frontsector, &lines[i]);
|
P_AddRaiseThinker(lines[i].frontsector, &lines[i], !!(lines[i].flags & ML_BLOCKMONSTERS), !!(lines[i].flags & ML_NOCLIMB));
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 200: // Double light effect
|
case 200: // Double light effect
|
||||||
|
|
|
@ -332,13 +332,9 @@ typedef struct
|
||||||
thinker_t thinker;
|
thinker_t thinker;
|
||||||
line_t *sourceline;
|
line_t *sourceline;
|
||||||
sector_t *sector;
|
sector_t *sector;
|
||||||
fixed_t floorbottom;
|
|
||||||
fixed_t ceilingbottom;
|
fixed_t ceilingbottom;
|
||||||
fixed_t floortop;
|
|
||||||
fixed_t ceilingtop;
|
fixed_t ceilingtop;
|
||||||
fixed_t basespeed;
|
fixed_t basespeed;
|
||||||
fixed_t speed;
|
|
||||||
INT32 direction; //1 = up, -1 = down
|
|
||||||
fixed_t extraspeed; //For dynamically sinking platform
|
fixed_t extraspeed; //For dynamically sinking platform
|
||||||
UINT8 shaketimer; //For dynamically sinking platform
|
UINT8 shaketimer; //For dynamically sinking platform
|
||||||
UINT8 flags;
|
UINT8 flags;
|
||||||
|
|
Loading…
Reference in a new issue