Compare commits

..

No commits in common. "90cf2ebef55c5c5544a500e2176f4417311f828b" and "b5db5bbdc3959086e5d09dd64d630480d24d7451" have entirely different histories.

View File

@ -127,6 +127,9 @@ function GameMode:update(inputs, ruleset)
inputs["up"] = false inputs["up"] = false
inputs["down"] = false inputs["down"] = false
end end
if inputs["up"] then
inputs["down"] = false
end
end end
-- advance one frame -- advance one frame
@ -495,7 +498,14 @@ function GameMode:initializeOrHold(inputs, ruleset)
self:initializeNextPiece(inputs, ruleset, self.next_queue[1]) self:initializeNextPiece(inputs, ruleset, self.next_queue[1])
end end
self:onPieceEnter() self:onPieceEnter()
self:onEnterOrHold(inputs, ruleset) if not self.grid:canPlacePiece(self.piece) then
self.game_over = true
return
end
ruleset:dropPiece(
inputs, self.piece, self.grid, self:getGravity(),
self:getDropSpeed(), self.drop_locked, self.hard_drop_locked
)
end end
function GameMode:hold(inputs, ruleset, ihs) function GameMode:hold(inputs, ruleset, ihs)
@ -520,18 +530,9 @@ function GameMode:hold(inputs, ruleset, ihs)
if ihs then playSE("ihs") if ihs then playSE("ihs")
else playSE("hold") end else playSE("hold") end
self:onHold() self:onHold()
self:onEnterOrHold(inputs, ruleset)
end
function GameMode:onEnterOrHold(inputs, ruleset)
if not self.grid:canPlacePiece(self.piece) then if not self.grid:canPlacePiece(self.piece) then
self.game_over = true self.game_over = true
return
end end
ruleset:dropPiece(
inputs, self.piece, self.grid, self:getGravity(),
self:getDropSpeed(), self.drop_locked, self.hard_drop_locked
)
end end
function GameMode:initializeNextPiece( function GameMode:initializeNextPiece(