summaryrefslogtreecommitdiff
path: root/src/hexen/p_mobj.c
diff options
context:
space:
mode:
authorSimon Howard2011-09-25 23:46:08 +0000
committerSimon Howard2011-09-25 23:46:08 +0000
commitfcb27f12ee85d068e6b07fccc102ddf70c153c1f (patch)
treed2a5a3f36cfda24ed9262ae67943bba8d8fecbe1 /src/hexen/p_mobj.c
parent0ea5739881d540d5e5d8007917ee7e17d68a57be (diff)
downloadchocolate-doom-fcb27f12ee85d068e6b07fccc102ddf70c153c1f.tar.gz
chocolate-doom-fcb27f12ee85d068e6b07fccc102ddf70c153c1f.tar.bz2
chocolate-doom-fcb27f12ee85d068e6b07fccc102ddf70c153c1f.zip
Fix special1/special2 values in Hexen code so that they can properly
hold pointer values. Subversion-branch: /branches/v2-branch Subversion-revision: 2407
Diffstat (limited to 'src/hexen/p_mobj.c')
-rw-r--r--src/hexen/p_mobj.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/hexen/p_mobj.c b/src/hexen/p_mobj.c
index ee8f8fd4..388440ac 100644
--- a/src/hexen/p_mobj.c
+++ b/src/hexen/p_mobj.c
@@ -320,14 +320,14 @@ boolean P_SeekerMissile(mobj_t * actor, angle_t thresh, angle_t turnMax)
angle_t angle;
mobj_t *target;
- target = (mobj_t *) actor->special1;
+ target = actor->special1.m;
if (target == NULL)
{
return (false);
}
if (!(target->flags & MF_SHOOTABLE))
{ // Target died
- actor->special1 = 0;
+ actor->special1.m = NULL;
return (false);
}
dir = P_FaceMobj(actor, target, &delta);
@@ -573,7 +573,7 @@ void P_XYMovement(mobj_t * mo)
// mo->momz = -mo->momz;
if (mo->flags2 & MF2_SEEKERMISSILE)
{
- mo->special1 = (int) (mo->target);
+ mo->special1.m = mo->target;
}
mo->target = BlockingMobj;
return;
@@ -983,9 +983,9 @@ void P_BlasterMobjThinker(mobj_t * mobj)
}
P_SpawnMobj(mobj->x, mobj->y, z, MT_MWANDSMOKE);
}
- else if (!--mobj->special1)
+ else if (!--mobj->special1.i)
{
- mobj->special1 = 4;
+ mobj->special1.i = 4;
z = mobj->z - 12 * FRACUNIT;
if (z < mobj->floorz)
{
@@ -1085,7 +1085,7 @@ void P_MobjThinker(mobj_t * mobj)
if (mobj->flags2 & MF2_FLOATBOB)
{ // Floating item bobbing motion (special1 is height)
mobj->z = mobj->floorz +
- mobj->special1 + FloatBobOffsets[(mobj->health++) & 63];
+ mobj->special1.i + FloatBobOffsets[(mobj->health++) & 63];
}
else if ((mobj->z != mobj->floorz) || mobj->momz || BlockingMobj)
{ // Handle Z momentum and gravity
@@ -1592,7 +1592,7 @@ void P_SpawnMapThing(mapthing_t * mthing)
if (mobj->flags2 & MF2_FLOATBOB)
{ // Seed random starting index for bobbing motion
mobj->health = P_Random();
- mobj->special1 = mthing->height << FRACBITS;
+ mobj->special1.i = mthing->height << FRACBITS;
}
if (mobj->tics > 0)
{