------------------------------------------------------------- -- Debug Text Display Functionality ------------------------------------------------------------- --- Draws debug text on the screen if debugMode is enabled. --- --- Calculates a background rectangle based on the number of text lines and renders each line on-screen. --- --- @param textTable table An array of strings to display. --- @param loc vector2 (Optional) Top-left coordinate for the text box (default: vec2(0.05, 0.65)). --- --- @usage --- ```lua ---CreateThread(function() --- while true do --- debugScaleForm({ --- "Line 1: Debug info", --- "Line 2: More info" --- }) --- Wait(0) --- end ---end) --- ``` function debugScaleForm(textTable, loc) if debugMode then loc = loc or vec2(0.05, 0.65) local lineHeight = 0.025 -- Height per line. local totalHeight = #textTable * lineHeight local boxPadding = 0.01 -- Padding around the text. local size = vec2(0.18, totalHeight + boxPadding * 2) -- Draw background rectangle. DrawRect(loc.x + size.x / 2, loc.y + size.y / 2, size.x, size.y, 0, 0, 0, 200) -- Render each line of text. for i = 1, #textTable do SetTextScale(0.30, 0.30) BeginTextCommandDisplayText("STRING") AddTextComponentSubstringKeyboardDisplay(textTable[i]) EndTextCommandDisplayText(loc.x + 0.005, loc.y + (i - 1) * lineHeight + 0.01) end end end