local Players = game:GetService('Players') local UserInputService = game:GetService('UserInputService') local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild('PlayerGui') local QTE_UI = { ['Normal'] = PlayerGui.Main.QTE, ['Toma'] = PlayerGui.Main.QTEToma, ['XSaw'] = PlayerGui.Main.QTEXSaw, } -- felt like adding console support -- not tested btw local UI_TO_CONSOLEVK = { ['rbxassetid://13352945562'] = 0xC3, ['rbxassetid://15106210189'] = 0xC3, ['rbxassetid://13352947210'] = 0xC4, ['rbxassetid://15106208667'] = 0xC4, ['rbxassetid://13352956569'] = 0xC6, ['rbxassetid://15106213231'] = 0xC6, ['rbxassetid://13352960244'] = 0xC5, ['rbxassetid://15106212286'] = 0xC5, ['rbxassetid://13352968794'] = 0xCB, ['rbxassetid://15106217179'] = 0xCB, } local KEYCODE_TO_VK = { ['R'] = 0x52, ['E'] = 0x45, ['T'] = 0x54, ['G'] = 0x47, ['F'] = 0x46, } local function init(ui) local button = ui.ImageButton ui:GetPropertyChangedSignal('Visible'):Connect(function() -- reason why im doing this becaust just incase YOU plug in a keyboard port or gamepad port -- to your phone or tablet idk if UserInputService.TouchEnabled then repeat firesignal(button.MouseButton1Click) task.wait(0.07) until not ui.Visible else local key if not UserInputService.GamepadEnabled then key = button.PC elseif UserInputService:GetStringForKeyCode(Enum.KeyCode.ButtonA) == 'ButtonCross' then key = button.Playstation else key = button.Xbox end repeat if not key then break end if key.Name == 'PC' then local keycode = KEYCODE_TO_VK[key.Text] if keycode then keytap(keycode) end else local keycode = UI_TO_CONSOLEVK[key.Image] if keycode then keytap(keycode) end end task.wait(0.07) until not ui.Visible end end) end for _, ui in QTE_UI do task.spawn(init, ui) end