From 3956d1d7bccf8f1cc7ee15973a7b1add49487884 Mon Sep 17 00:00:00 2001 From: NOT_A_ROBOT <76723917+Not-A-Normal-Robot@users.noreply.github.com> Date: Thu, 20 Jan 2022 11:09:50 -0800 Subject: [PATCH] Add Classic Lunatic mode (#619) --- parts/eventsets/classic_l.lua | 21 +++++++++++++++++---- parts/gameTables.lua | 2 +- parts/modes/classic_l.lua | 23 +++++++++++++++++++++++ 3 files changed, 41 insertions(+), 5 deletions(-) create mode 100644 parts/modes/classic_l.lua diff --git a/parts/eventsets/classic_l.lua b/parts/eventsets/classic_l.lua index db616de6..3a815da1 100644 --- a/parts/eventsets/classic_l.lua +++ b/parts/eventsets/classic_l.lua @@ -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 diff --git a/parts/gameTables.lua b/parts/gameTables.lua index 97af692b..7dd51770 100644 --- a/parts/gameTables.lua +++ b/parts/gameTables.lua @@ -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', diff --git a/parts/modes/classic_l.lua b/parts/modes/classic_l.lua new file mode 100644 index 00000000..5c360c46 --- /dev/null +++ b/parts/modes/classic_l.lua @@ -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]=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, +} \ No newline at end of file