Fixed GTE spawn logic

This commit is contained in:
Ishaan Bhardwaj 2021-11-27 16:09:41 -05:00
parent d837b14c53
commit bc50d75b9a

View File

@ -56,6 +56,25 @@ function SurvivalGTEGame:onLineClear(cleared_row_count)
self.completed = self.lines >= 300 self.completed = self.lines >= 300
end end
local function getLowestBlockY(offsets)
local res = -math.huge
for _, o in pairs(offsets) do
if o.y > res then
res = o.y
end
end
return res
end
function SurvivalGTEGame:onEnterOrHold(...)
while (
getLowestBlockY(self.piece:getBlockOffsets()) + self.piece.position.y
) < 4 do
self.piece.position.y = self.piece.position.y + 1
end
self.super.onEnterOrHold(self, ...)
end
function SurvivalGTEGame:advanceOneFrame() function SurvivalGTEGame:advanceOneFrame()
if self.ready_frames == 0 then if self.ready_frames == 0 then
self.frames = self.frames + 1 self.frames = self.frames + 1