mirror of
https://github.com/KartKrewDev/RingRacers.git
synced 2026-04-22 10:02:01 +00:00
Pick-me-up Volt fixes
This commit is contained in:
parent
cd68b1145a
commit
7a7b0938ac
3 changed files with 18 additions and 3 deletions
|
|
@ -403,10 +403,11 @@ bool is_object_tracking_target(const mobj_t* mobj)
|
|||
case MT_LANDMINE:
|
||||
case MT_BANANA:
|
||||
case MT_BANANA_SHIELD:
|
||||
case MT_GACHABOM:
|
||||
return (mobj->target && !P_MobjWasRemoved(mobj->target) && (
|
||||
(mobj->target->player && stplyr == mobj->target->player)
|
||||
|| (mobj->target->player && G_SameTeam(stplyr, mobj->target->player))
|
||||
));
|
||||
) && P_CheckSight(stplyr->mo, const_cast<mobj_t*>(mobj)));
|
||||
|
||||
default:
|
||||
return false;
|
||||
|
|
|
|||
17
src/k_kart.c
17
src/k_kart.c
|
|
@ -8352,7 +8352,17 @@ static void K_MoveHeldObjects(player_t *player)
|
|||
// If we can move our backup item into main slots, do so.
|
||||
static void K_TryMoveBackupItem(player_t *player)
|
||||
{
|
||||
if (player->itemtype == KITEM_NONE && player->backupitemtype)
|
||||
if (player->itemtype && player->itemtype == player->backupitemtype)
|
||||
{
|
||||
player->itemamount += player->backupitemamount;
|
||||
|
||||
player->backupitemtype = 0;
|
||||
player->backupitemamount = 0;
|
||||
|
||||
S_StartSound(player->mo, sfx_mbs54);
|
||||
}
|
||||
|
||||
if (player->itemtype == KITEM_NONE && player->backupitemtype && !(player->itemRoulette.active))
|
||||
{
|
||||
player->itemtype = player->backupitemtype;
|
||||
player->itemamount = player->backupitemamount;
|
||||
|
|
@ -15503,6 +15513,9 @@ static void K_PickUp(player_t *player, mobj_t *picked)
|
|||
case MT_DROPTARGET_SHIELD:
|
||||
type = KITEM_DROPTARGET;
|
||||
break;
|
||||
case MT_GACHABOM:
|
||||
type = KITEM_GACHABOM;
|
||||
break;
|
||||
default:
|
||||
type = KITEM_SAD;
|
||||
break;
|
||||
|
|
@ -15573,7 +15586,7 @@ boolean K_TryPickMeUp(mobj_t *m1, mobj_t *m2)
|
|||
|
||||
boolean allied = (inflictor->target == victim);
|
||||
|
||||
if (!allied)
|
||||
if (!allied && inflictor->target && !P_MobjWasRemoved(inflictor->target))
|
||||
if (inflictor->target->player && G_SameTeam(inflictor->target->player, victim->player))
|
||||
allied = true;
|
||||
|
||||
|
|
|
|||
|
|
@ -5410,6 +5410,7 @@ static boolean P_IsTrackerType(INT32 type)
|
|||
case MT_LANDMINE:
|
||||
case MT_BANANA:
|
||||
case MT_BANANA_SHIELD:
|
||||
case MT_GACHABOM:
|
||||
return true;
|
||||
|
||||
default:
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue