Merge branch 'next' of git.magicalgirl.moe:STJr/SRB2 into next
This commit is contained in:
commit
45404f7f27
|
@ -9461,6 +9461,10 @@ struct {
|
||||||
{"SF_MULTIABILITY",SF_MULTIABILITY},
|
{"SF_MULTIABILITY",SF_MULTIABILITY},
|
||||||
{"SF_NONIGHTSROTATION",SF_NONIGHTSROTATION},
|
{"SF_NONIGHTSROTATION",SF_NONIGHTSROTATION},
|
||||||
|
|
||||||
|
// Dashmode constants
|
||||||
|
{"DASHMODE_THRESHOLD",DASHMODE_THRESHOLD},
|
||||||
|
{"DASHMODE_MAX",DASHMODE_MAX},
|
||||||
|
|
||||||
// Character abilities!
|
// Character abilities!
|
||||||
// Primary
|
// Primary
|
||||||
{"CA_NONE",CA_NONE}, // now slot 0!
|
{"CA_NONE",CA_NONE}, // now slot 0!
|
||||||
|
|
|
@ -426,7 +426,7 @@ boolean P_DoSpring(mobj_t *spring, mobj_t *object)
|
||||||
object->player->pflags |= pflags;
|
object->player->pflags |= pflags;
|
||||||
object->player->secondjump = secondjump;
|
object->player->secondjump = secondjump;
|
||||||
}
|
}
|
||||||
else if (object->player->dashmode >= 3*TICRATE)
|
else if (object->player->dashmode >= DASHMODE_THRESHOLD)
|
||||||
P_SetPlayerMobjState(object, S_PLAY_DASH);
|
P_SetPlayerMobjState(object, S_PLAY_DASH);
|
||||||
else if (P_IsObjectOnGround(object) && horizspeed >= FixedMul(object->player->runspeed, object->scale))
|
else if (P_IsObjectOnGround(object) && horizspeed >= FixedMul(object->player->runspeed, object->scale))
|
||||||
P_SetPlayerMobjState(object, S_PLAY_RUN);
|
P_SetPlayerMobjState(object, S_PLAY_RUN);
|
||||||
|
@ -806,7 +806,7 @@ static boolean PIT_CheckThing(mobj_t *thing)
|
||||||
|
|
||||||
// SF_DASHMODE users destroy spikes and monitors, CA_TWINSPIN users and CA2_MELEE users destroy spikes.
|
// SF_DASHMODE users destroy spikes and monitors, CA_TWINSPIN users and CA2_MELEE users destroy spikes.
|
||||||
if ((tmthing->player)
|
if ((tmthing->player)
|
||||||
&& (((tmthing->player->charflags & SF_DASHMODE) && (tmthing->player->dashmode >= 3*TICRATE)
|
&& ((((tmthing->player->charflags & (SF_DASHMODE|SF_MACHINE)) == (SF_DASHMODE|SF_MACHINE)) && (tmthing->player->dashmode >= DASHMODE_THRESHOLD)
|
||||||
&& (thing->flags & (MF_MONITOR)
|
&& (thing->flags & (MF_MONITOR)
|
||||||
|| (thing->type == MT_SPIKE
|
|| (thing->type == MT_SPIKE
|
||||||
|| thing->type == MT_WALLSPIKE)))
|
|| thing->type == MT_WALLSPIKE)))
|
||||||
|
|
18
src/p_mobj.c
18
src/p_mobj.c
|
@ -3298,7 +3298,7 @@ boolean P_CanRunOnWater(player_t *player, ffloor_t *rover)
|
||||||
*rover->topheight;
|
*rover->topheight;
|
||||||
|
|
||||||
if (!player->powers[pw_carry] && !player->homing
|
if (!player->powers[pw_carry] && !player->homing
|
||||||
&& ((player->powers[pw_super] || player->charflags & SF_RUNONWATER || player->dashmode >= 3*TICRATE) && player->mo->ceilingz-topheight >= player->mo->height)
|
&& ((player->powers[pw_super] || player->charflags & SF_RUNONWATER || player->dashmode >= DASHMODE_THRESHOLD) && player->mo->ceilingz-topheight >= player->mo->height)
|
||||||
&& (rover->flags & FF_SWIMMABLE) && !(player->pflags & PF_SPINNING) && player->speed > FixedMul(player->runspeed, player->mo->scale)
|
&& (rover->flags & FF_SWIMMABLE) && !(player->pflags & PF_SPINNING) && player->speed > FixedMul(player->runspeed, player->mo->scale)
|
||||||
&& !(player->pflags & PF_SLIDING)
|
&& !(player->pflags & PF_SLIDING)
|
||||||
&& abs(player->mo->z - topheight) < FixedMul(30*FRACUNIT, player->mo->scale))
|
&& abs(player->mo->z - topheight) < FixedMul(30*FRACUNIT, player->mo->scale))
|
||||||
|
@ -7977,15 +7977,19 @@ static void P_MobjSceneryThink(mobj_t *mobj)
|
||||||
mobj->x = mobj->extravalue1 + P_ReturnThrustX(mobj, mobj->movedir, mobj->cvmem*mobj->scale);
|
mobj->x = mobj->extravalue1 + P_ReturnThrustX(mobj, mobj->movedir, mobj->cvmem*mobj->scale);
|
||||||
mobj->y = mobj->extravalue2 + P_ReturnThrustY(mobj, mobj->movedir, mobj->cvmem*mobj->scale);
|
mobj->y = mobj->extravalue2 + P_ReturnThrustY(mobj, mobj->movedir, mobj->cvmem*mobj->scale);
|
||||||
P_SetThingPosition(mobj);
|
P_SetThingPosition(mobj);
|
||||||
if ((--mobj->fuse) < 6)
|
|
||||||
|
if (!mobj->fuse)
|
||||||
{
|
{
|
||||||
if (!mobj->fuse)
|
#ifdef HAVE_BLUA
|
||||||
{
|
if (!LUAh_MobjFuse(mobj))
|
||||||
|
#endif
|
||||||
P_RemoveMobj(mobj);
|
P_RemoveMobj(mobj);
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
mobj->frame = (mobj->frame & ~FF_TRANSMASK) | ((10 - (mobj->fuse*2)) << (FF_TRANSSHIFT));
|
|
||||||
}
|
}
|
||||||
|
if (mobj->fuse < 0)
|
||||||
|
return;
|
||||||
|
if ((--mobj->fuse) < 6)
|
||||||
|
mobj->frame = (mobj->frame & ~FF_TRANSMASK) | ((10 - (mobj->fuse*2)) << (FF_TRANSSHIFT));
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case MT_VWREF:
|
case MT_VWREF:
|
||||||
|
|
Loading…
Reference in New Issue