From adc0d0a3fc25ff8ad721db0f89216c27e80f77aa Mon Sep 17 00:00:00 2001 From: Ethan O'Brien <77750390+ethanaobrien@users.noreply.github.com> Date: Sat, 12 Aug 2023 10:52:53 -0500 Subject: [PATCH] Add virtual Gamepad toggle to controller menu --- data/emulator.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/data/emulator.js b/data/emulator.js index 35809da..6e88cdb 100644 --- a/data/emulator.js +++ b/data/emulator.js @@ -2118,6 +2118,33 @@ class EmulatorJS { playerTitle.appendChild(gamepadTitle); playerTitle.appendChild(leftPadding); playerTitle.appendChild(aboutParent); + + if ((this.touch || navigator.maxTouchPoints > 0) && i === 0) { + const vgp = this.createElement("div"); + vgp.style = "width:25%;float:right;clear:none;padding:0;font-size: 11px;padding-left: 2.25rem;"; + vgp.classList.add("ejs_cheat_row"); + const input = this.createElement("input"); + input.type = "checkbox"; + input.checked = true; + input.value = "o"; + input.id = "ejs_vp"; + vgp.appendChild(input); + const label = this.createElement("label"); + label.for = "ejs_vp"; + label.innerText = "Virtual Gamepad"; + vgp.appendChild(label); + label.addEventListener("click", (e) => { + input.checked = !input.checked; + this.changeSettingOption('virtual-gamepad', input.checked ? 'enabled' : "disabled"); + }) + this.on("start", (e) => { + if (this.settings["virtual-gamepad"] === "disabled") { + input.checked = false; + } + }) + playerTitle.appendChild(vgp); + } + playerTitle.appendChild(headingPadding);