diff --git a/scene/mode_select.lua b/scene/mode_select.lua index 0dfb268..c54d8a7 100644 --- a/scene/mode_select.lua +++ b/scene/mode_select.lua @@ -8,10 +8,10 @@ current_ruleset = 1 game_modes = { require 'tetris.modes.marathon_2020', require 'tetris.modes.survival_2020', - require 'tetris.modes.demon_mode', require 'tetris.modes.strategy', require 'tetris.modes.interval_training', require 'tetris.modes.pacer_test', + require 'tetris.modes.demon_mode', require 'tetris.modes.phantom_mania', require 'tetris.modes.phantom_mania2', require 'tetris.modes.phantom_mania_n', diff --git a/tetris/modes/marathon_2020.lua b/tetris/modes/marathon_2020.lua index c8a0770..5d49793 100644 --- a/tetris/modes/marathon_2020.lua +++ b/tetris/modes/marathon_2020.lua @@ -165,7 +165,9 @@ function Marathon2020Game:onPieceEnter() end function Marathon2020Game:whilePieceActive() - self.grade_point_decay_counter = self.grade_point_decay_counter + self.grade + 2 + if not self.clear then + self.grade_point_decay_counter = self.grade_point_decay_counter + self.grade + 2 + end if self.grade_point_decay_counter > 240 then self.grade_point_decay_counter = 0 self.grade_points = math.max(0, self.grade_points - 1) @@ -375,19 +377,29 @@ function Marathon2020Game:updateScore(level, drop_bonus, cleared_lines) end end -Marathon2020Game.mRollOpacityFunction = function(age) +Marathon2020Game.rollOpacityFunction = function(age) if age > 300 then return 0 elseif age < 240 then return 1 else return (300 - age) / 60 end end -Marathon2020Game.rollOpacityFunction = function(age) +Marathon2020Game.mRollOpacityFunction = function(age) if age > 4 then return 0 else return 1 - age / 4 end end function Marathon2020Game:qualifiesForMRoll() return false -- until I actually have grading working +--[[ + +GM-roll requirements + +You qualify for the GM roll if you: +- Reach level 2020 +- with a grade of 50 +- in less than 13:30.00 total. + +]]-- end function Marathon2020Game:drawGrid() diff --git a/tetris/modes/survival_2020.lua b/tetris/modes/survival_2020.lua index 2573f30..5c44381 100644 --- a/tetris/modes/survival_2020.lua +++ b/tetris/modes/survival_2020.lua @@ -36,8 +36,8 @@ function Survival2020Game:getARE() elseif self.level < 300 then return 10 elseif self.level < 500 then return 6 elseif self.level < 1000 then return 4 - elseif self.level < 1500 then return 3 - else return 2 end + elseif self.level < 1500 then return 5 + else return 6 end end function Survival2020Game:getLineARE() @@ -71,12 +71,12 @@ end function Survival2020Game:getTotalDelay() if self.level < 500 then return 60 - elseif self.level < 600 then return 45 -- lock delay: 15 + elseif self.level < 600 then return 45 -- lock delay: 13 elseif self.level < 700 then return 36 elseif self.level < 800 then return 27 elseif self.level < 900 then return 21 elseif self.level < 1000 then return 15 - elseif self.level < 1100 then return 36 -- lock delay: 11 + elseif self.level < 1100 then return 36 -- lock delay: 10 elseif self.level < 1200 then return 27 elseif self.level < 1300 then return 21 elseif self.level < 1400 then return 15