diff --git a/tetris/modes/survival_a2.lua b/tetris/modes/survival_a2.lua index 6d2f2c3..c2995fe 100644 --- a/tetris/modes/survival_a2.lua +++ b/tetris/modes/survival_a2.lua @@ -98,6 +98,9 @@ function SurvivalA2Game:onLineClear(cleared_row_count) local new_level = math.min(self.level + cleared_row_count, 999) if self.level == 999 or self:hitTorikan(self.level, new_level) then self.clear = true + if self.level < 999 then + self.game_over = true + end else self.level = new_level end @@ -121,7 +124,8 @@ end function SurvivalA2Game:getLetterGrade() if self.level >= 999 then return "GM" - elseif self.level >= 500 then return "M" + elseif self.level > 500 then return "M" + elseif self.level == 500 and not self.clear then return "M" else return "" end end diff --git a/tetris/modes/survival_a3.lua b/tetris/modes/survival_a3.lua index 860f2d8..6233782 100644 --- a/tetris/modes/survival_a3.lua +++ b/tetris/modes/survival_a3.lua @@ -147,13 +147,15 @@ function SurvivalA3Game:onLineClear(cleared_row_count) local new_level = self.level + cleared_row_levels[cleared_row_count] self:updateSectionTimes(self.level, new_level) if new_level >= 1300 or self:hitTorikan(self.level, new_level) then + self.clear = true if new_level >= 1300 then self.level = 1300 + self.grid:clear() + self.big_mode = true + self.roll_frames = -150 + else + self.game_over = true end - self.clear = true - self.grid:clear() - self.big_mode = true - self.roll_frames = -150 else self.level = math.min(new_level, 1300) end