Fix Prisons difficulty to respond to GP settings

This commit is contained in:
AJ Martinez 2023-10-23 19:55:54 -07:00
parent 5cdedd53ba
commit dbe25d8be4
3 changed files with 31 additions and 11 deletions

View file

@ -41,17 +41,21 @@ INT32 K_StartingBumperCount(void)
{
if (battleprisons)
{
if (grandprixinfo.gp == true && grandprixinfo.masterbots == true)
return 0;
switch (gamespeed)
if (grandprixinfo.gp)
{
case KARTSPEED_HARD:
return 1;
case KARTSPEED_NORMAL:
return 2;
case KARTSPEED_EASY:
return 3;
switch (grandprixinfo.gamespeed)
{
case KARTSPEED_HARD:
return (grandprixinfo.masterbots == true) ? 0 : 1;
case KARTSPEED_NORMAL:
return 2;
case KARTSPEED_EASY:
return 3;
}
}
return 2; // Normal
}
return cv_kartbumpers.value;

View file

@ -12445,7 +12445,14 @@ tic_t K_TimeLimitForGametype(void)
{
if (battleprisons)
{
return (gamespeed == KARTSPEED_EASY) ? 30*TICRATE : 20*TICRATE;
if (grandprixinfo.gp)
{
if (grandprixinfo.masterbots)
return 15*TICRATE;
else if (grandprixinfo.gamespeed == KARTSPEED_EASY)
return 30*TICRATE;
}
return 20*TICRATE;
}
return gametypeDefault;

View file

@ -1082,7 +1082,16 @@ static void P_AddBrokenPrison(mobj_t *target, mobj_t *inflictor, mobj_t *source)
S_StartSound(NULL, sfx_s221);
if (timelimitintics)
{
extratimeintics += (gamespeed == KARTSPEED_EASY) ? 15*TICRATE : 10*TICRATE;
extratimeintics = 10*TICRATE;
if (grandprixinfo.gp)
{
if (grandprixinfo.masterbots)
extratimeintics = 8*TICRATE;
else if (grandprixinfo.gamespeed == KARTSPEED_EASY)
extratimeintics = 15*TICRATE;
}
secretextratime = TICRATE/2;
}