Alpha V0.7.11

This commit is contained in:
MrZ_26
2020-02-04 19:32:26 +08:00
parent 42d7b1be94
commit 4af2126254
22 changed files with 1249 additions and 1177 deletions

587
list.lua
View File

@@ -10,33 +10,13 @@
Techmino
Tequéno
]]
PCbase={
{3,3,3,0,0,0,0,0,2,2},
{3,6,6,0,0,0,0,2,2,5},
{4,6,6,0,0,0,1,1,5,5},
{4,4,4,0,0,0,0,1,1,5},
{1,1,0,0,0,0,0,3,3,3},
{5,1,1,0,0,0,0,6,6,3},
{5,5,2,2,0,0,0,6,6,4},
{5,2,2,0,0,0,0,4,4,4},
}
PClist={
{7,7,4,5},{7,7,6,4},{7,7,2,4},{7,7,1,3},{7,7,5,6},{7,7,5,2},{7,7,5,4},{7,7,5,3},
{7,4,1,2},{7,3,5,7},{7,5,4,3},{7,5,1,2},{7,1,4,2},{7,4,2,5},{7,6,4,5},{7,5,4,2},
{7,5,6,4},{7,5,3,6},{7,2,5,6},{7,2,6,4},{7,2,1,3},{7,5,2,7},{7,5,7,2},{7,5,2,3},
{7,5,3,2},{7,6,5,4},{7,3,1,5},{7,3,2,5},{7,4,1,5},{7,4,5,2},{7,7,3,6},{7,3,7,6},
{7,3,6,2},{7,3,7,1},{7,6,4,2},{3,2,7,6},{3,2,6,7},{7,7,4,5},{7,5,3,4},{7,3,6,5},
{7,3,2,5},{7,4,6,5},{7,5,2,3},{7,3,5,7},{7,3,2,5},{7,3,5,1},{7,5,2,3},{3,6,2,5},
{3,1,2,5},{3,1,1,5},{3,1,5,2},{3,1,5,1},{3,5,1,2},{4,5,3,2},{4,2,6,5},{6,5,3,2},
{1,4,2,5},{1,5,3,6},{5,2,6,3},{5,2,1,3},{5,2,7,4},{2,4,1,5},{2,4,5,1},{2,1,4,5},
{2,5,4,3},{2,5,6,7},{7,5,4,2},{4,5,3,5},
}
color={
red={1,0,0},
green={0,1,0},
blue={.2,.2,1},
yellow={1,1,0},
purple={1,0,1},
magenta={1,0,1},
cyan={0,1,1},
grey={.6,.6,.6},
@@ -44,7 +24,7 @@ color={
lightGreen={.5,1,.5},
lightBlue={.6,.6,1},
lightYellow={1,1,.5},
lightPurple={1,.5,1},
lightMagenta={1,.5,1},
lightCyan={.5,1,1},
lightGrey={.8,.8,.8},
@@ -52,42 +32,36 @@ color={
darkGreen={0,.6,0},
darkBlue={0,0,.6},
darkYellow={.6,.6,0},
darkPurple={.6,0,.6},
darkMagenta={.6,0,.6},
darkCyan={0,.6,.6},
darkGrey={.3,.3,.3},
white={1,1,1},
orange={1,.6,0},
lightOrange={1,.7,.3},
purple={.5,0,1},
lightPurple={.7,.3,1},
}
attackColor={
{color.red,color.yellow},
{color.purple,color.white},
{color.blue,color.white},
animate={
function(t)
gc.setColor(1,t,0)
end,
function(t)
gc.setColor(1,.5+t*.5,1)
end,
function(t)
gc.setColor(.2+t*.8,.2+t*.8,1)
end,
}--3 animation-colorsets of attack buffer bar
{color.darkGrey,color.lightGrey},
{color.grey,color.white},
{color.lightPurple,color.white},
{color.lightRed,color.white},
{color.darkGreen,color.cyan},
}
frameColor={
[0]=color.white,
color.green,
color.blue,
color.purple,
color.orange,
color.lightGreen,
color.lightBlue,
color.lightPurple,
color.lightOrange,
}
blockColor={
color.red,
color.green,
color.orange,
color.blue,
color.purple,
color.magenta,
color.yellow,
color.cyan,
}
@@ -105,7 +79,7 @@ miniTitle_rect={
sfx={
"button",
"ready","start","win","fail",
"ready","start","win","fail","collect",
"move","rotate","rotatekick","hold",
"prerotate","prehold",
"drop","fall",
@@ -172,7 +146,7 @@ customRange={
next={0,1,2,3,4,5,6},
hold={true,false},
sequence={"bag7","his4","rnd"},
visible={1,2,3},
visible={"show","time","fast","none"},
target={10,20,40,100,200,500,1000,1e99},
freshLimit={0,8,15,1e99},
opponent={0,60,30,20,15,10,7,5,4,3,2,1},
@@ -183,435 +157,23 @@ langID={"chi","eng"}
actName={"moveLeft","moveRight","rotRight","rotLeft","rotFlip","hardDrop","softDrop","hold","swap","restart","insLeft","insRight","insDown"}
blockPos={4,4,4,4,4,5,4}
renATK={[0]=0,0,0,1,1,2,2,3,3,4,4}--3 else
b2bPoint={50,90,150}
b2bPoint={50,120,200}
b2bATK={3,5,8}
testScore={[0]=0,[-1]=1,[-2]=0,[-3]=1,2,2,2}
testScore={[-1]=1,[-2]=0,[-3]=1,2,2,2}
visible_opt={show=1e99,time=300,fast=20,none=5}
spin_n={"spin_1","spin_2","spin_3"}
clear_n={"clear_1","clear_2","clear_3","clear_4"}
ren_n={"ren_1","ren_2","ren_3","ren_4","ren_5","ren_6","ren_7","ren_8","ren_9","ren_10","ren_11"}
vibrateLevel={0,.02,.03,.04,.06,.08,.1}
ren_n={}for i=1,11 do ren_n[i]="ren_"..i end
vibrateLevel={0,0,.03,.04,.05,.07,.9}
snapLevelValue={1,10,20,40,60,80}
reAtk={0,0,1,1,1,2,2,3,3}
reDef={0,1,1,2,3,3,4,4,5}
marathon_drop={[0]=60,48,40,30,24,18,15,12,10,8,7,6,5,4,3,2,1,1,0,0}
rush_lock={20,18,16,14,12}
rush_wait={12,10,9,8,7}
rush_fall={12,11,10,9,8}
death_lock={12,11,10,9,8}
death_wait={9,8,7,6,5}
death_fall={10,9,8,7,6}
pc_drop={50,45,40,35,30,26,22,18,15,12}
pc_lock={55,50,45,40,36,32,30}
pc_fall={18,16,14,12,10,9,8,7,6}
atkModeName={"Random","Badges","K.O.s","Counters"}
up0to4={[0]="000%UP","025%UP","050%UP","075%UP","100%UP",}
percent0to5={[0]="0%","20%","40%","60%","80%","100%",}
defaultModeEnv={
sprint={
{
drop=60,
target=10,
reach=Event.gameover.win,
bg="strap",
bgm="race",
},
{
drop=60,
target=20,
reach=Event.gameover.win,
bg="strap",
bgm="race",
},
{
drop=60,
target=40,
reach=Event.gameover.win,
bg="strap",
bgm="race",
},
{
drop=60,
target=100,
reach=Event.gameover.win,
bg="strap",
bgm="race",
},
{
drop=60,
target=400,
reach=Event.gameover.win,
bg="strap",
bgm="push",
},
{
drop=60,
target=1000,
reach=Event.gameover.win,
bg="strap",
bgm="push",
},
},
marathon={
{
drop=60,
lock=60,
fall=30,
target=200,
reach=Event.marathon_reach,
bg="strap",
bgm="way",
},
{
drop=60,
fall=20,
target=10,
reach=Event.marathon_reach,
bg="strap",
bgm="way",
},
{
_20G=true,
fall=15,
target=200,
reach=Event.marathon_reach,
bg="strap",
bgm="race",
},
{
_20G=true,
drop=0,
lock=rush_lock[1],
wait=rush_wait[1],
fall=rush_fall[1],
target=50,
reach=Event.marathon_reach_lunatic,
arr=2,
bg="game2",
bgm="secret8th",
},
{
_20G=true,
drop=0,
lock=death_lock[1],
wait=death_wait[1],
fall=death_fall[1],
target=50,
reach=Event.marathon_reach_ultimate,
arr=1,
bg="game2",
bgm="secret7th",
},
},
classic={
{
das=15,arr=3,
sddas=2,sdarr=2,
ghost=false,center=false,
drop=1,lock=1,
wait=10,fall=25,
next=6,hold=false,
sequence="rnd",
freshLimit=0,
target=10,
reach=Event.classic_reach,
bg="rgb",
bgm="rockblock",
},
},
zen={
{
drop=1e99,
lock=1e99,
target=200,
reach=Event.gameover.win,
bg="strap",
bgm="infinite",
},
},
infinite={
{
drop=1e99,
lock=1e99,
oncehold=false,
bg="glow",
bgm="infinite",
},
},
solo={
{
bg="game2",
bgm="race",
},
},
tsd={
{
oncehold=false,
drop=1e99,
lock=1e99,
target=1,
reach=Event.tsd_reach,
ospin=false,
bg="matrix",
bgm="reason",
},
{
drop=60,
lock=60,
target=1,
reach=Event.tsd_reach,
ospin=false,
bg="matrix",
bgm="reason",
},
},
blind={
{
drop=30,
lock=60,
visible=2,
bg="glow",
bgm="newera",
},
{
drop=15,
lock=60,
visible=0,
freshLimit=10,
bg="glow",
bgm="reason",
},
{
_20G=true,
lock=60,
visible=0,
freshLimit=15,
bg="glow",
bgm="reason",
},
{
_20G=true,
drop=0,
lock=15,
wait=10,
fall=15,
visible=0,
arr=1,
bg="game3",
bgm="secret8th",
},
},
dig={
{
drop=60,
lock=120,
fall=20,
bg="game2",
bgm="push",
},
{
drop=10,
lock=30,
bg="game2",
bgm="secret7th",
},
},
survivor={
{
drop=60,
lock=120,
fall=30,
bg="game2",
bgm="push",
},
{
drop=30,
lock=60,
fall=20,
bg="game2",
bgm="newera",
},
{
drop=10,
lock=60,
fall=15,
bg="game2",
bgm="secret8th",
},
{
drop=5,
lock=60,
fall=10,
bg="game3",
bgm="secret7th",
},
},
tech={
{
oncehold=false,
drop=1e99,
lock=1e99,
target=0,
reach=Event.tech_reach,
bg="matrix",
bgm="way",
},
{
drop=30,
lock=60,
target=0,
reach=Event.tech_reach,
bg="matrix",
bgm="way",
},
{
drop=15,
lock=60,
target=0,
reach=Event.tech_reach_hard,
bg="matrix",
bgm="way",
},
{
drop=5,
lock=40,
target=0,
reach=Event.tech_reach_hard,
bg="matrix",
bgm="way",
},
{
drop=1,
lock=40,
target=0,
reach=Event.tech_reach_hard,
bg="matrix",
bgm="secret7th",
},
},
pctrain={
{
next=4,
hold=false,
drop=120,
lock=120,
fall=20,
sequence="pc",
target=0,
freshLimit=1e99,
reach=Event.newPC,
ospin=false,
bg="rgb",
bgm="newera",
},
{
next=4,
hold=false,
drop=60,
lock=60,
fall=20,
sequence="pc",
target=0,
reach=Event.newPC,
ospin=false,
bg="rgb",
bgm="newera",
},
},
pcchallenge={
{
oncehold=false,
drop=300,
lock=1e99,
target=100,
reach=Event.gameover.win,
freshLimit=1e99,
ospin=false,
bg="rgb",
bgm="newera",
},
{
drop=60,
lock=120,
fall=10,
target=100,
reach=Event.gameover.win,
ospin=false,
bg="rgb",
bgm="infinite",
},
{
drop=20,
lock=60,
fall=20,
target=100,
reach=Event.gameover.win,
ospin=false,
bg="rgb",
bgm="infinite",
},
},
techmino41={
{
fall=20,
royaleMode=true,
royalePowerup={2,5,10,20},
royaleRemain={30,20,15,10,5},
pushSpeed=2,
bg="game3",
bgm="race",
},
},
techmino99={
{
fall=20,
royaleMode=true,
royalePowerup={2,6,14,30},
royaleRemain={75,50,35,20,10},
pushSpeed=2,
bg="game3",
bgm="race",
},
},
drought={
{
drop=20,
lock=60,
sequence="drought1",
target=100,
reach=Event.gameover.win,
ospin=false,
bg="glow",
bgm="reason",
},
{
drop=20,
lock=60,
sequence="drought2",
target=100,
reach=Event.gameover.win,
ospin=false,
bg="glow",
bgm="reason",
},
},
hotseat={
{
bg="none",
bgm="way",
},
},
custom={
{
bg="none",
bgm="reason",
reach=Event.gameover.win,
},
},
}
modeID={
[0]="custom",
"sprint","marathon","classic","zen","infinite","solo","tsd","blind","dig","survivor","tech",
@@ -625,7 +187,7 @@ modeLevel={
infinite={"NORMAL"},
solo={"EASY","NORMAL","HARD","LUNATIC"},
tsd={"NORMAL","HARD"},
blind={"EASY","HARD","LUNATIC","GM"},
blind={"EASY","HARD","LUNATIC","ULTIMATE","GM"},
dig={"NORMAL","LUNATIC"},
survivor={"EASY","NORMAL","HARD","LUNATIC"},
tech={"EASY","NORMAL","HARD","LUNATIC","ULTIMATE"},
@@ -640,9 +202,9 @@ modeLevel={
modeLevelColor={
EASY=color.cyan,
NORMAL=color.green,
HARD=color.purple,
HARD=color.magenta,
LUNATIC=color.red,
EXTRA=color.lightPurple,
EXTRA=color.lightMagenta,
ULTIMATE=color.lightYellow,
MESS=color.lightGrey,
@@ -657,78 +219,17 @@ modeLevelColor={
["1000L"]=color.darkRed,
}
freshMethod={
bag7=function()
if #P.nxt<6 then
local bag={1,2,3,4,5,6,7}
for i=1,7 do
ins(P.nxt,rem(bag,rnd(8-i)))
ins(P.nb,blocks[P.nxt[#P.nxt]][0])
end
end
end,
his4=function()
if #P.nxt<6 then
local j,i=0
::L::
i,j=rnd(7),j+1
if(i==P.his[1]or i==P.his[2]or i==P.his[3]or i==P.his[4])then goto L end
P.nxt[6],P.nb[6]=i,blocks[i][0]
rem(P.his,1)ins(P.his,i)
end
end,
rnd=function()
local i
::L::
i=rnd(7)
if i==P.nxt[5]then goto L end
P.nxt[6],P.nb[6]=i,blocks[i][0]
end,--random
pc=function()
if P.cstat.piece%4==0 then
local r=rnd(#PClist)
local f=P.cstat.event==1
for i=1,4 do
local b=PClist[r][i]
if f then
if b<3 then b=3-b
elseif b<5 then b=7-b
end
end
ins(P.nxt,b)
ins(P.nb,blocks[b][0])
end
P.cstat.event=(P.cstat.event+1)%2
end
end,
drought1=function()
if #P.nxt<6 then
local bag={1,2,3,4,5,6}
for i=1,6 do
ins(P.nxt,rem(bag,rnd(7-i)))
ins(P.nb,blocks[P.nxt[#P.nxt]][0])
end
end
end,
drought2=function()
if #P.nxt<6 then
local bag={1,1,1,2,2,2,3,3,3,4,4,4,6,6,6,5,7}
::L::
ins(P.nxt,rem(bag,rnd(#bag)))
ins(P.nb,blocks[P.nxt[#P.nxt]][0])
if bag[1]then goto L end
end
end,
}
blocks={
{[0]={{0,1,1},{1,1,0}},{{1,0},{1,1},{0,1}},{{0,1,1},{1,1,0}},{{1,0},{1,1},{0,1}}},
{[0]={{1,1,0},{0,1,1}},{{0,1},{1,1},{1,0}},{{1,1,0},{0,1,1}},{{0,1},{1,1},{1,0}}},
{[0]={{0,1,1},{1,1,0}},{{1,0},{1,1},{0,1}}},
{[0]={{1,1,0},{0,1,1}},{{0,1},{1,1},{1,0}}},
{[0]={{1,1,1},{0,0,1}},{{1,1},{1,0},{1,0}},{{1,0,0},{1,1,1}},{{0,1},{0,1},{1,1}}},
{[0]={{1,1,1},{1,0,0}},{{1,0},{1,0},{1,1}},{{0,0,1},{1,1,1}},{{1,1},{0,1},{0,1}}},
{[0]={{1,1,1},{0,1,0}},{{1,0},{1,1},{1,0}},{{0,1,0},{1,1,1}},{{0,1},{1,1},{0,1}}},
{[0]={{1,1},{1,1}},{{1,1},{1,1}},{{1,1},{1,1}},{{1,1},{1,1}}},
{[0]={{1,1,1,1}},{{1},{1},{1},{1}},{{1,1,1,1}},{{1},{1},{1},{1}}},
{[0]={{1,1},{1,1}},{{1,1},{1,1}}},
{[0]={{1,1,1,1}},{{1},{1},{1},{1}}},
}
local l={1,2,6,7}for i=1,4 do blocks[l[i]][2],blocks[l[i]][3]=blocks[l[i]][0],blocks[l[i]][1]end
for i=1,7 do blocks[i+7]=blocks[i]end
scs={
{[0]={1,2},{2,1},{2,2},{2,2}},
{[0]={1,2},{2,1},{2,2},{2,2}},
@@ -863,11 +364,11 @@ Buttons={
load={},
intro={},
main={
{x=250,y=250,w=350,h=100,rgb=color.red,f=55,code=function()gotoScene("mode")end,down=2},
{x=250,y=360,w=350,h=100,rgb=color.blue,f=55,code=function()gotoScene("setting")end,up=1,down=3},
{x=160,y=470,w=170,h=100,rgb=color.yellow,f=55,code=function()gotoScene("help")end,up=2,down=5,right=4},
{x=340,y=470,w=170,h=100,rgb=color.cyan,f=40,code=function()gotoScene("stat")end,up=2,down=5,left=3},
{x=250,y=580,w=350,h=100,rgb=color.grey,f=50,code=function()gotoScene("quit")end,up=3},
{x=640,y=290,w=220,h=220,rgb=color.red,f=60,code=function()gotoScene("mode")end,down=4,left=3,right=2},
{x=880,y=290,w=220,h=220,rgb=color.blue,f=60,code=function()gotoScene("setting")end,down=5,left=1,right=2},
{x=400,y=290,w=220,h=220,rgb=color.cyan,f=60,code=function()gotoScene("stat")end,down=4,right=1},
{x=640,y=530,w=220,h=220,rgb=color.yellow,f=60,code=function()gotoScene("help")end,up=1,down=5,left=3,right=5},
{x=1180,y=620,w=120,h=120,rgb=color.grey,f=50,code=function()gotoScene("quit")end,up=2,left=4},
},
mode={
{x=1000,y=210,w=200,h=140,rgb=color.white,hide=function()return modeSel==1 end,f=64,code=function()keyDown.mode("up")end},
@@ -879,7 +380,7 @@ Buttons={
{x=640,y=630,w=230,h=90,rgb=color.white,f=45,code=back},
},
custom={
{x=1000,y=200,w=100,h=100,rgb=color.white,f=40,code=function()optSel=(optSel-2)%#customID+1 end},
{x=1000,y=200,w=100,h=100,rgb=color.white,code=function()optSel=(optSel-2)%#customID+1 end},
{x=1000,y=440,w=100,h=100,rgb=color.white,f=50,code=function()optSel=optSel%#customID+1 end},
{x=880,y=320,w=100,h=100,rgb=color.white,f=50,code=function()local k=customID[optSel]customSel[k]=(customSel[k]-2)%#customRange[k]+1 end},
{x=1120,y=320,w=100,h=100,rgb=color.white,f=50,code=function()local k=customID[optSel]customSel[k]=customSel[k]%#customRange[k]+1 end},
@@ -890,17 +391,17 @@ Buttons={
},
setting={--Normal setting
{x=285,y=90,w=210,h=60,rgb=color.white,code=function()setting.ghost=not setting.ghost end,down=3,right=2},
{x=505,y=90,w=210,h=60,rgb=color.white,code=function()setting.center=not setting.center end,down=5,left=1,right=11},
{x=510,y=90,w=210,h=60,rgb=color.white,code=function()setting.center=not setting.center end,down=5,left=1,right=11},
--1,2
{x=205,y=180,w=50,h=50,rgb=color.white,code=function()setting.das=(setting.das-1)%31 end,up=1,down=7,right=4},
{x=370,y=180,w=50,h=50,rgb=color.white,code=function()setting.das=(setting.das+1)%31 end,up=1,down=8,left=3,right=5},
{x=420,y=180,w=50,h=50,rgb=color.white,code=function()setting.arr=(setting.arr-1)%16 end,up=2,down=9,left=4,right=6},
{x=585,y=180,w=50,h=50,rgb=color.white,code=function()setting.arr=(setting.arr+1)%16 end,up=2,down=10,left=5,right=13},
{x=425,y=180,w=50,h=50,rgb=color.white,code=function()setting.arr=(setting.arr-1)%16 end,up=2,down=9,left=4,right=6},
{x=590,y=180,w=50,h=50,rgb=color.white,code=function()setting.arr=(setting.arr+1)%16 end,up=2,down=10,left=5,right=13},
--3~6
{x=205,y=260,w=50,h=50,rgb=color.white,code=function()setting.sddas=(setting.sddas-1)%11 end,up=3,down=19,right=8},
{x=370,y=260,w=50,h=50,rgb=color.white,code=function()setting.sddas=(setting.sddas+1)%11 end,up=4,down=19,left=7,right=9},
{x=420,y=260,w=50,h=50,rgb=color.white,code=function()setting.sdarr=(setting.sdarr-1)%4 end,up=5,down=19,left=8,right=10},
{x=585,y=260,w=50,h=50,rgb=color.white,code=function()setting.sdarr=(setting.sdarr+1)%4 end,up=6,down=19,left=9,right=14},
{x=425,y=260,w=50,h=50,rgb=color.white,code=function()setting.sdarr=(setting.sdarr-1)%4 end,up=5,down=19,left=8,right=10},
{x=590,y=260,w=50,h=50,rgb=color.white,code=function()setting.sdarr=(setting.sdarr+1)%4 end,up=6,down=19,left=9,right=14},
--7~10
{x=760,y=90,w=160,h=60,rgb=color.white,code=function()setting.sfx=not setting.sfx end,down=13,left=2,right=12},
{x=940,y=90,w=160,h=60,rgb=color.white,code=function()