From c3b967468a49fdc33884262353747242b6004e7f Mon Sep 17 00:00:00 2001 From: James R Date: Sat, 21 Mar 2020 15:56:40 -0700 Subject: [PATCH] Revert "Remove kartdebugitem" This reverts commit 803884c55a87fe72348e625017307671a1d238f4. --- src/d_netcmd.c | 1 + src/d_netcmd.h | 2 +- src/k_kart.c | 20 ++++++++++++++++++-- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/d_netcmd.c b/src/d_netcmd.c index c35d492fd..378bf9fb6 100644 --- a/src/d_netcmd.c +++ b/src/d_netcmd.c @@ -388,6 +388,7 @@ static CV_PossibleValue_t kartdebugitem_cons_t[] = #undef X {0} }; +consvar_t cv_kartdebugitem = {"kartdebugitem", "0", CV_NETVAR|CV_CHEAT|CV_NOSHOWHELP, kartdebugitem_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; static CV_PossibleValue_t kartdebugamount_cons_t[] = {{1, "MIN"}, {255, "MAX"}, {0, NULL}}; consvar_t cv_kartdebugamount = {"kartdebugamount", "1", CV_NETVAR|CV_CHEAT|CV_NOSHOWHELP, kartdebugamount_cons_t, NULL, 0, NULL, NULL, 0, 0, NULL}; consvar_t cv_kartallowgiveitem = { diff --git a/src/d_netcmd.h b/src/d_netcmd.h index f3efd12ea..e6be9296d 100644 --- a/src/d_netcmd.h +++ b/src/d_netcmd.h @@ -125,7 +125,7 @@ extern consvar_t cv_kartusepwrlv; extern consvar_t cv_votetime; -extern consvar_t cv_kartdebugamount, cv_kartallowgiveitem, cv_kartdebugshrink, cv_kartdebugdistribution, cv_kartdebughuddrop; +extern consvar_t cv_kartdebugitem, cv_kartdebugamount, cv_kartallowgiveitem, cv_kartdebugshrink, cv_kartdebugdistribution, cv_kartdebughuddrop; extern consvar_t cv_kartdebugcheckpoint, cv_kartdebugnodes, cv_kartdebugcolorize; extern consvar_t cv_itemfinder; diff --git a/src/k_kart.c b/src/k_kart.c index 196fbaecb..a7e94dcbc 100644 --- a/src/k_kart.c +++ b/src/k_kart.c @@ -582,6 +582,7 @@ void K_RegisterKartStuff(void) CV_RegisterVar(&cv_kartusepwrlv); CV_RegisterVar(&cv_votetime); + CV_RegisterVar(&cv_kartdebugitem); CV_RegisterVar(&cv_kartdebugamount); CV_RegisterVar(&cv_kartdebugshrink); CV_RegisterVar(&cv_kartallowgiveitem); @@ -1120,6 +1121,21 @@ static void K_KartItemRoulette(player_t *player, ticcmd_t *cmd) } // SPECIAL CASE No. 2: + // Give a debug item instead if specified + if (cv_kartdebugitem.value != 0 && !modeattacking) + { + K_KartGetItemResult(player, cv_kartdebugitem.value); + player->kartstuff[k_itemamount] = cv_kartdebugamount.value; + player->karthud[khud_itemblink] = TICRATE; + player->karthud[khud_itemblinkmode] = 2; + player->kartstuff[k_itemroulette] = 0; + player->kartstuff[k_roulettetype] = 0; + if (P_IsDisplayPlayer(player)) + S_StartSound(NULL, sfx_dbgsal); + return; + } + + // SPECIAL CASE No. 3: // Record Attack / alone mashing behavior if (modeattacking || pingame == 1) { @@ -1170,7 +1186,7 @@ static void K_KartItemRoulette(player_t *player, ticcmd_t *cmd) return; } - // SPECIAL CASE No. 3: + // SPECIAL CASE No. 4: // Being in ring debt occasionally forces Super Ring on you if you mashed if (mashed && player->kartstuff[k_rings] < 0 && cv_superring.value) { @@ -1188,7 +1204,7 @@ static void K_KartItemRoulette(player_t *player, ticcmd_t *cmd) } } - // SPECIAL CASE No. 4: + // SPECIAL CASE No. 5: // Force SPB onto 2nd if they get too far behind if (player->kartstuff[k_position] == 2 && pdis > (DISTVAR*6) && spbplace == -1 && !indirectitemcooldown && !dontforcespb