v0.3-beta1

pull/4/head
Ishaan Bhardwaj 2021-01-03 23:20:31 -05:00
parent e93034322c
commit c59b4267f4
6 changed files with 26 additions and 28 deletions

BIN
res/bgm/non-loop.ogg Normal file

Binary file not shown.

BIN
res/bgm/non-start.ogg Normal file

Binary file not shown.

View File

@ -26,11 +26,25 @@ function JokerGame:new()
self.next_queue_length = 6 self.next_queue_length = 6
end end
function JokerGame:getARE() return 16 end function JokerGame:getARE()
if self.level < 200 then return math.ceil(20 - (self.level - 50) / 10)
else return math.max(math.ceil(20 - (self.level - 200) / 7), 5) end
end
function JokerGame:getLineARE() return self:getARE() end function JokerGame:getLineARE() return self:getARE() end
function JokerGame:getDasLimit() return 8 end function JokerGame:getDasLimit() return 6 end
function JokerGame:getLineClearDelay() return 6 end function JokerGame:getARR() return math.min(1, config.arr) end
function JokerGame:getLockDelay() return 30 end
function JokerGame:getLineClearDelay()
if self.level < 200 then return math.ceil(6 - (self.level - 50) / 50)
else return math.max(math.ceil(6 - (self.level - 200) / 33), 3) end
end
function JokerGame:getLockDelay()
if self.level < 200 then return math.ceil(30 - (self.level - 50) / 10)
else return math.max(math.ceil(30 - (self.level - 200) / 7), 15) end
end
function JokerGame:getGravity() return 20 end function JokerGame:getGravity() return 20 end
function JokerGame:advanceOneFrame() function JokerGame:advanceOneFrame()

View File

@ -25,8 +25,8 @@ function NightOfNights:new()
self.lock_drop = true self.lock_drop = true
self.lock_hard_drop = true self.lock_hard_drop = true
self.instant_soft_drop = false self.lock_on_soft_drop = false
self.instant_hard_drop = false self.lock_on_hard_drop = false
self.enable_hold = true self.enable_hold = true
self.next_queue_length = 6 self.next_queue_length = 6
end end
@ -47,6 +47,8 @@ function NightOfNights:advanceOneFrame()
end end
self.frames = self.frames + 1 self.frames = self.frames + 1
else else
self.lock_on_soft_drop = false
self.lock_on_hard_drop = false
switchBGM(nil) switchBGM(nil)
end end
end end

View File

@ -25,7 +25,8 @@ function ArcadeScoreAttack:new()
self.randomizer = History4RollsRandomizer() self.randomizer = History4RollsRandomizer()
self.lock_drop = false self.lock_drop = true
self.lock_hard_drop = true
self.enable_hard_drop = true self.enable_hard_drop = true
self.enable_hold = true self.enable_hold = true
self.next_queue_length = 5 self.next_queue_length = 5
@ -121,15 +122,12 @@ end
function ArcadeScoreAttack:onPieceEnter() function ArcadeScoreAttack:onPieceEnter()
end end
function ArcadeScoreAttack:onLineClear(cleared_row_count) function ArcadeScoreAttack:updateScore(level, drop_bonus, cleared_lines)
self.lines = self.lines + cleared_row_count self.lines = self.lines + cleared_lines
if self.lines >= levelchanges[self.level] then if self.lines >= levelchanges[self.level] then
self.level = self.level + 1 self.level = self.level + 1
self.timeleft = self.timeleft + 1800 self.timeleft = self.timeleft + 1800
end end
end
function ArcadeScoreAttack:updateScore(level, drop_bonus, cleared_lines)
local pts = 0 local pts = 0
if cleared_lines == 0 then if cleared_lines == 0 then
if not self.b2b then self.chain = 0 end if not self.b2b then self.chain = 0 end

View File

@ -1,16 +0,0 @@
local Randomizer = require 'tetris.randomizers.randomizer'
local Sequence = Randomizer:extend()
function Sequence:initialize()
self.sequence = "IJLOT"
self.counter = 0
end
function Sequence:generatePiece()
local piece = string.sub(self.sequence, self.counter + 1, self.counter + 1)
self.counter = (self.counter + 1) % string.len(self.sequence)
return piece
end
return Sequence