require "lib/GameState" QUIT_KEY = "q" SAVE_KEY = "s" LOAD_KEY = "l" HALF_SPEED = "lshift" MOVE_RIGHT = "right" MOVE_LEFT = "left" SAVE_FILE = "testing.lua" function love.keyreleased(key) if key == QUIT_KEY then love.event.quit() -- save elseif key == SAVE_KEY then --love.filesystem.write(saveFile, Tserial.pack(player, false, true)) love.filesystem.write(SAVE_FILE, GameState.save(actors, "actors")) -- Load elseif key == LOAD_KEY then save_exists = love.filesystem.exists(SAVE_FILE) if save_exists then --player = Tserial.unpack( love.filesystem.read( saveFile ) ) actors = GameState.load(SAVE_FILE) end end end function half_speed(object_speed) if love.keyboard.isDown(HALF_SPEED) then return object_speed/2 else return object_speed end end function check_keys(object, screen, dt) local newObject = {} newObject.x = object.x newObject.y = object.y newObject.width = object.width newObject.height = object.height newObject.speed = object.speed if love.keyboard.isDown(MOVE_RIGHT) then newObject.x = newObject.x + half_speed(newObject.speed * dt) end if love.keyboard.isDown(MOVE_LEFT) then newObject.x = newObject.x - half_speed(newObject.speed * dt) end if screen_col_detect(newObject, screen) then return newObject else return object end end --Inspired by https://love2d.org/wiki/BoundingBox.lua --Returns true if boxes overlap