From 3004bcc94f97b81dabd89cbc38588e49f99334ab Mon Sep 17 00:00:00 2001 From: payonel Date: Tue, 27 Nov 2018 14:47:14 -0800 Subject: [PATCH] kb event code reduc --- .../loot/openos/boot/92_keyboard.lua | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/src/main/resources/assets/opencomputers/loot/openos/boot/92_keyboard.lua b/src/main/resources/assets/opencomputers/loot/openos/boot/92_keyboard.lua index 5028d85e7..2cce8c1ff 100644 --- a/src/main/resources/assets/opencomputers/loot/openos/boot/92_keyboard.lua +++ b/src/main/resources/assets/opencomputers/loot/openos/boot/92_keyboard.lua @@ -1,15 +1,12 @@ local event = require("event") local keyboard = require("keyboard") -local function onKeyDown(_, _, char, code) - keyboard.pressedChars[char] = true - keyboard.pressedCodes[code] = true +local function onKeyChange(ev, _, char, code) + -- nil might be slightly more mem friendly during runtime + -- and `or nil` appears to only cost 30 bytes + keyboard.pressedChars[char] = ev == "key_down" or nil + keyboard.pressedCodes[code] = ev == "key_down" or nil end -local function onKeyUp(_, _, char, code) - keyboard.pressedChars[char] = nil - keyboard.pressedCodes[code] = nil -end - -event.listen("key_down", onKeyDown) -event.listen("key_up", onKeyUp) +event.listen("key_down", onKeyChange) +event.listen("key_up", onKeyChange)