summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorheav <hheav3@gmail.com>2023-03-27 03:38:28 +0000
committerheav <hheav3@gmail.com>2023-03-27 03:38:28 +0000
commite6839a9e313be5e904550308f40ac6a3ae9a500c (patch)
tree6c09ee39c11b117ce0b8eb59475063b931ec902a
parentf9d7cfc6d2555a04654ff94e7730d94eca3db7f9 (diff)
soft drops are firmer.
-rw-r--r--game/init.lua4
-rw-r--r--game/polyomino.lua4
2 files changed, 5 insertions, 3 deletions
diff --git a/game/init.lua b/game/init.lua
index fe6d25f..689da31 100644
--- a/game/init.lua
+++ b/game/init.lua
@@ -51,7 +51,9 @@ function M:input_loop()
elseif key == "right" then
self.piece:move(0, 1)
elseif key == "down" then
- self.piece:move(-1, 0)
+ local did_move = false
+ while self.piece:move(-1, 0) do did_move = true end
+ if did_move then evloop.queue "game.lock_cancel" end
elseif key == "up" then
self.piece:rotate()
evloop.queue "game.lock_cancel"
diff --git a/game/polyomino.lua b/game/polyomino.lua
index 4294c7f..eb726b3 100644
--- a/game/polyomino.lua
+++ b/game/polyomino.lua
@@ -1,9 +1,9 @@
local M = {}
M.__index = M
-function M.def(name, shape)
+function M.def(name, shape, kick_table)
local new = setmetatable({name = name}, M)
-
+ new.kick_table = kick_table or {{{0, 0}}, {{0, 0}}, {{0, 0}}, {{0, 0}}}
new.cells = {}
for l in shape:gmatch "[^%s]+" do
local line = {}