Add Classic Lunatic mode (#619)

This commit is contained in:
NOT_A_ROBOT
2022-01-20 11:09:50 -08:00
committed by GitHub
parent a7a2124bb6
commit 3956d1d7bc
3 changed files with 41 additions and 5 deletions

View File

@@ -1,3 +1,4 @@
local gc_setColor=love.graphics.setColor
return{
das=16,arr=6,
sddas=2,sdarr=2,
@@ -15,16 +16,28 @@ return{
keyCancel={5,6},
mesDisp=function(P)
setFont(75)
local r=P.modeData.target*.1
mStr(r<11 and 19 or r<22 and r+8 or("%02x"):format(r*10-220),63,210)
mText(drawableText.speedLV,63,290)
local r=P.modeData.target/10
mStr(r<11 and 19 or r<22 and r+9 or("%02x"):format(r*10-220),63,210)
mText(TEXTOBJ.speedLV,63,290)
PLY.draw.drawProgress(P.stat.row,P.modeData.target)
if P.modeData.drought>7 then
if P.modeData.drought<=14 then
gc_setColor(1,1,1,P.modeData.drought/7-1)
else
local gb=P.modeData.drought<=21 and 2-P.modeData.drought/14 or .5
gc_setColor(1,gb,gb)
end
setFont(50)
mStr(P.modeData.drought,63,130)
mDraw(MODES.drought_l.icon,63,200,nil,.5)
end
end,
task=function(P)
P.modeData.target=10
end,
dropPiece=function(P)
hook_drop=function(P)
local D=P.modeData
D.drought=P.lastPiece.id==7 and 0 or D.drought+1
if P.stat.row>=D.target then
D.target=D.target+10
if D.target==200 then

View File

@@ -327,7 +327,7 @@ EVENTSETS={
'backfire_120','backfire_60','backfire_30','backfire_0',
'checkAttack_100',
'checkLine_10','checkLine_20','checkLine_40','checkLine_100','checkLine_200','checkLine_400','checkLine_1000',
'classic_e','classic_h','classic_u',
'classic_e','classic_h','classic_l','classic_u',
'defender_n','defender_l',
'dig_10l','dig_40l','dig_100l','dig_400l',
'dig_h','dig_u',

23
parts/modes/classic_l.lua Normal file
View File

@@ -0,0 +1,23 @@
return{
env={
center=0,ghost=0,
smooth=false,
face={0,0,2,2,2,0,0},
eventSet='classic_l',
bg='rgb',bgm='1980s',
},
slowMark=true,
score=function(P)return{P.stat.score,P.stat.row}end,
scoreDisp=function(D)return D[1].." "..D[2].." Lines"end,
comp=function(a,b)return a[1]>b[1]or a[1]==b[1]and a[2]<b[2]end,
getRank=function(P)
local L=P.stat.row
return
L>=200 and 5 or
L>=140 and 4 or
L>=100 and 3 or
L>=60 and 2 or
L>=30 and 1 or
L>=1 and 0
end,
}