Skip to content
Snippets Groups Projects
Verified Commit 225804b5 authored by João Magalhães's avatar João Magalhães :rocket:
Browse files

refactor: arrow keys prevent

parent 70d1134f
No related branches found
No related tags found
1 merge request!9Version 0.4.0 🍾
Pipeline #1375 passed
......@@ -53,6 +53,13 @@ const KEYS: Record<string, number> = {
s: PadKey.B
};
const ARROW_KEYS: Record<string, boolean> = {
ArrowUp: true,
ArrowDown: true,
ArrowLeft: true,
ArrowRight: true
};
const ROM_PATH = require("../../res/roms/20y.gb");
/**
......@@ -399,6 +406,8 @@ class GameboyEmulator extends Observable implements Emulator {
registerKeys() {
document.addEventListener("keydown", (event) => {
const keyCode = KEYS[event.key];
const isArrow = KEYS[event.key] ?? false;
if (isArrow) event.preventDefault();
if (keyCode !== undefined) {
this.gameBoy!.key_press(keyCode);
return;
......@@ -421,6 +430,8 @@ class GameboyEmulator extends Observable implements Emulator {
document.addEventListener("keyup", (event) => {
const keyCode = KEYS[event.key];
const isArrow = KEYS[event.key] ?? false;
if (isArrow) event.preventDefault();
if (keyCode !== undefined) {
this.gameBoy!.key_lift(keyCode);
return;
......
......@@ -136,6 +136,9 @@ export const App: FC<AppProps> = ({ emulator, backgrounds = ["264653"] }) => {
await handler(undefined, require("../res/storm.png"), 0.2);
});
};
const onKeyDown = (event: KeyboardEvent) => {
}
useEffect(() => {
document.body.style.backgroundColor = `#${getBackground()}`;
});
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment