From 5fe7a6966a79bfb2d6f7119fca8c1485dd996ff8 Mon Sep 17 00:00:00 2001 From: Not Date: Sun, 4 Sep 2022 18:00:02 +0200 Subject: [PATCH] toggle encore with item button --- browser.lua | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/browser.lua b/browser.lua index 03695f5..9235916 100644 --- a/browser.lua +++ b/browser.lua @@ -12,6 +12,8 @@ local ZoneAct = lb_ZoneAct local TicsToTime = lb_TicsToTime ----------------------------- +local cv_kartencore + local function mapIndexOffset(n) return (mapIndex + n + #maps - 1) % #maps + 1 end @@ -53,6 +55,7 @@ local mappY = 26 local ttlY = mappY + FixedMul(30, FRACUNIT / scalar) local scoresY = ttlY + 16 +local sin = sin local function drawMapPatch(v, offset) local scale = FRACUNIT / (abs(offset) + scalar) local mapName = G_BuildMapName(getMap(offset)) @@ -68,6 +71,26 @@ local function drawMapPatch(v, offset) scale, mapp ) + +end + +local function drawEncore(v) + if not cv_kartencore then + cv_kartencore = CV_FindVar("kartencore") + end + + if not cv_kartencore.value then + return + end + + local rubyp = v.cachePatch("RUBYICON") + local bob = sin(leveltime * ANG10) * 2 + v.drawScaled( + hlfScrnWdth * FRACUNIT, + mappY * FRACUNIT + bob, + FRACUNIT, + rubyp + ) end local colors = { @@ -319,6 +342,7 @@ local function drawBrowser(v) -- current map drawMapPatch(v, 0) + drawEncore(v) drawMapStrings(v) drawGamemode(v) @@ -395,7 +419,8 @@ local function resetKeyRepeat() repeatCount = 0 end -local ValidButtons = BT_ACCELERATE | BT_BRAKE | BT_FORWARD | BT_BACKWARD | BT_DRIFT +local ValidButtons = BT_ACCELERATE | BT_BRAKE | BT_FORWARD | BT_BACKWARD | BT_DRIFT | BT_ATTACK + -- return value indicates we want to exit the browser local function controller(player) keyRepeat = max(0, $ - 1) @@ -418,6 +443,8 @@ local function controller(player) elseif cmd.buttons & BT_ACCELERATE then COM_BufInsertText(player, "changelevel "..G_BuildMapName(maps[mapIndex])) return true + elseif cmd.buttons & BT_ATTACK then + COM_BufInsertText(player, "encore") elseif cmd.driftturn then local dir = cmd.driftturn > 0 and -1 or 1