fixed n blame

This commit is contained in:
SeventhSentinel 2018-08-11 20:54:08 -04:00
parent 4ac97eb77b
commit 82343719e2
5 changed files with 13 additions and 3 deletions

View file

@ -320,6 +320,7 @@ typedef enum
k_deathsentence, // 30 seconds to live... (SPB murder timer (not actually 30 sec, I just couldn't help the FF reference :p)) k_deathsentence, // 30 seconds to live... (SPB murder timer (not actually 30 sec, I just couldn't help the FF reference :p))
k_eggmanheld, // Eggman monitor held, separate from k_itemheld so it doesn't stop you from getting items k_eggmanheld, // Eggman monitor held, separate from k_itemheld so it doesn't stop you from getting items
k_eggmanexplode, // Fake item recieved, explode in a few seconds k_eggmanexplode, // Fake item recieved, explode in a few seconds
k_eggmanblame, // Fake item recieved, who set this fake
k_bananadrag, // After a second of holding a banana behind you, you start to slow down k_bananadrag, // After a second of holding a banana behind you, you start to slow down
k_spinouttimer, // Spin-out from a banana peel or oil slick (was "pw_bananacam") k_spinouttimer, // Spin-out from a banana peel or oil slick (was "pw_bananacam")
k_wipeoutslow, // Timer before you slowdown when getting wiped out k_wipeoutslow, // Timer before you slowdown when getting wiped out

View file

@ -7696,6 +7696,7 @@ static const char *const KARTSTUFF_LIST[] = {
"DEATHSENTENCE", "DEATHSENTENCE",
"EGGMANHELD", "EGGMANHELD",
"EGGMANEXPLODE", "EGGMANEXPLODE",
"EGGMANBLAME",
"BANANADRAG", "BANANADRAG",
"SPINOUTTIMER", "SPINOUTTIMER",
"WIPEOUTSLOW", "WIPEOUTSLOW",

View file

@ -3180,10 +3180,11 @@ void K_KartPlayerThink(player_t *player, ticcmd_t *cmd)
player->kartstuff[k_eggmanexplode]--; player->kartstuff[k_eggmanexplode]--;
if (player->kartstuff[k_eggmanexplode] <= 0) if (player->kartstuff[k_eggmanexplode] <= 0)
{ {
/*mobj_t *eggsexplode; mobj_t *eggsexplode;
player->powers[pw_flashing] = 0;
eggsexplode = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUEEXPLOSION); eggsexplode = P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUEEXPLOSION);
P_SetTarget(&eggsexplode->target, player->mo);*/ if (&players[player->kartstuff[k_eggmanblame]] && players[player->kartstuff[k_eggmanblame]].mo)
P_SpawnMobj(player->mo->x, player->mo->y, player->mo->z, MT_BLUEEXPLOSION); P_SetTarget(&eggsexplode->target, players[player->kartstuff[k_eggmanblame]].mo);
} }
} }
@ -3600,6 +3601,8 @@ void K_StripItems(player_t *player)
player->kartstuff[k_growshrinktimer] = 0; player->kartstuff[k_growshrinktimer] = 0;
player->kartstuff[k_eggmanheld] = 0; player->kartstuff[k_eggmanheld] = 0;
player->kartstuff[k_eggmanexplode] = 0;
player->kartstuff[k_eggmanblame] = 0;
player->kartstuff[k_hyudorotimer] = 0; player->kartstuff[k_hyudorotimer] = 0;
player->kartstuff[k_stealingtimer] = 0; player->kartstuff[k_stealingtimer] = 0;

View file

@ -166,6 +166,7 @@ boolean P_CanPickupItem(player_t *player, UINT8 weapon)
return false; return false;
if ((player->kartstuff[k_itemroulette] && weapon != 2) if ((player->kartstuff[k_itemroulette] && weapon != 2)
|| (player->kartstuff[k_roulettetype] == 2 && weapon == 2)
|| player->kartstuff[k_itemamount] || player->kartstuff[k_itemamount]
|| player->kartstuff[k_itemheld]) // Item slot already taken up || player->kartstuff[k_itemheld]) // Item slot already taken up
return false; return false;

View file

@ -1046,6 +1046,8 @@ static boolean PIT_CheckThing(mobj_t *thing)
if (thing->player->kartstuff[k_itemroulette] <= 0) if (thing->player->kartstuff[k_itemroulette] <= 0)
thing->player->kartstuff[k_itemroulette] = 1; thing->player->kartstuff[k_itemroulette] = 1;
thing->player->kartstuff[k_roulettetype] = 2; thing->player->kartstuff[k_roulettetype] = 2;
if (tmthing->target && tmthing->target->player)
thing->player->kartstuff[k_eggmanblame] = tmthing->target->player-players;
} }
// This Item Damage // This Item Damage
@ -1169,6 +1171,8 @@ static boolean PIT_CheckThing(mobj_t *thing)
if (tmthing->player->kartstuff[k_itemroulette] <= 0) if (tmthing->player->kartstuff[k_itemroulette] <= 0)
tmthing->player->kartstuff[k_itemroulette] = 1; tmthing->player->kartstuff[k_itemroulette] = 1;
tmthing->player->kartstuff[k_roulettetype] = 2; tmthing->player->kartstuff[k_roulettetype] = 2;
if (thing->target && thing->target->player)
tmthing->player->kartstuff[k_eggmanblame] = thing->target->player-players;
} }
// Other Item Damage // Other Item Damage