Disable Minecart Spawners for players already riding a minecart

This commit is contained in:
Tatsuru 2019-12-31 00:38:09 -03:00
parent 3d724f302d
commit 47b096a357

View file

@ -1807,8 +1807,13 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
return; return;
case MT_MINECARTSPAWNER: case MT_MINECARTSPAWNER:
if (!player->bot && (special->fuse < TICRATE || player->powers[pw_carry] != CR_MINECART)) if (player->bot)
{ return;
if (special->fuse > TICRATE)
return;
if (player->powers[pw_carry] == CR_MINECART)
return;
mobj_t *mcart = P_SpawnMobj(special->x, special->y, special->z, MT_MINECART); mobj_t *mcart = P_SpawnMobj(special->x, special->y, special->z, MT_MINECART);
P_SetTarget(&mcart->target, toucher); P_SetTarget(&mcart->target, toucher);
mcart->angle = toucher->angle = player->drawangle = special->angle; mcart->angle = toucher->angle = player->drawangle = special->angle;
@ -1823,7 +1828,6 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
special->fuse = 3*TICRATE; special->fuse = 3*TICRATE;
special->flags2 |= MF2_DONTDRAW; special->flags2 |= MF2_DONTDRAW;
}
return; return;
case MT_MINECARTEND: case MT_MINECARTEND: