refactor freshBlockDelay
This commit is contained in:
@@ -980,33 +980,23 @@ function Player:freshBlockGhost()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
function Player:freshBlockDelay(keepFreshTime)
|
function Player:freshBlockDelay(keepFreshTimeInEasyFresh)
|
||||||
local ENV=self.gameEnv
|
local ENV=self.gameEnv
|
||||||
local d0,l0=ENV.drop,ENV.lock
|
local d0,l0=ENV.drop,ENV.lock
|
||||||
local C=self.cur
|
local C=self.cur
|
||||||
local sc=C.RS.centerPos[C.id][C.dir]
|
local sc=C.RS.centerPos[C.id][C.dir]
|
||||||
if ENV.easyFresh then
|
local goDown=self.curY+sc[1]<self.minY
|
||||||
if self.lockDelay<l0 and self.freshTime>0 then
|
if goDown then
|
||||||
if not keepFreshTime then
|
self.minY=self.curY+sc[1]
|
||||||
self.freshTime=self.freshTime-1
|
end
|
||||||
end
|
local shouldRefresh=self.lockDelay<l0 and self.freshTime>0
|
||||||
self.lockDelay=l0
|
local easyFresh=ENV.easyFresh
|
||||||
self.dropDelay=d0
|
if easyFresh and (shouldRefresh or goDown) or goDown and shouldRefresh then
|
||||||
end
|
self.dropDelay=d0
|
||||||
if self.curY+sc[1]<self.minY then
|
self.lockDelay=l0
|
||||||
self.minY=self.curY+sc[1]
|
end
|
||||||
self.dropDelay=d0
|
if shouldRefresh and (easyFresh and not keepFreshTimeInEasyFresh or not easyFresh and goDown) then
|
||||||
self.lockDelay=l0
|
self.freshTime=self.freshTime-1
|
||||||
end
|
|
||||||
else
|
|
||||||
if self.curY+sc[1]<self.minY then
|
|
||||||
self.minY=self.curY+sc[1]
|
|
||||||
if self.lockDelay<l0 and self.freshTime>0 then
|
|
||||||
self.freshTime=self.freshTime-1
|
|
||||||
self.dropDelay=d0
|
|
||||||
self.lockDelay=l0
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
function Player:freshMoveBlock(ifTele)
|
function Player:freshMoveBlock(ifTele)
|
||||||
|
|||||||
Reference in New Issue
Block a user