新模式:backfire

This commit is contained in:
MrZ626
2021-03-16 18:31:44 +08:00
parent 15a24b40de
commit 03a1b5ccd4
14 changed files with 209 additions and 4 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View File

@@ -743,6 +743,10 @@ return{
["tsd_e"]= {"TSD Challenge", "EASY", "T-spin-doubles only!"},
["tsd_h"]= {"TSD Challenge", "HARD", "T-spin-doubles only!"},
["tsd_u"]= {"TSD Challenge", "ULTIMATE", "T-spin-doubles only!"},
["backfire_n"]= {"Backfire", "NORMAL", "Self-send garbages"},
["backfire_h"]= {"Backfire", "HARD", "Self-send garbages"},
["backfire_l"]= {"Backfire", "LUNATIC", "Self-send garbages"},
["backfire_u"]= {"Backfire", "ULTIMATE", "Self-send garbages"},
["zen"]= {"Zen", "200", "200 lines without a time limit."},
["ultra"]= {"Ultra", "EXTRA", "Get the highest score within 2 min."},
["infinite"]= {"Infinite", "", "Sandbox mode."},

View File

@@ -659,6 +659,10 @@ return{
["tsd_e"]= {"TSD Challenge", "FACILE", "T-spin doubles uniquement !"},
["tsd_h"]= {"TSD Challenge", "DIFFICILE", "T-spin doubles uniquement !"},
["tsd_u"]= {"TSD Challenge", "ULTIME", "T-spin doubles uniquement !"},
-- ["backfire_n"]= {"Backfire", "NORMAL", "Self-send garbages"},
-- ["backfire_h"]= {"Backfire", "HARD", "Self-send garbages"},
-- ["backfire_l"]= {"Backfire", "LUNATIC", "Self-send garbages"},
-- ["backfire_u"]= {"Backfire", "ULTIMATE", "Self-send garbages"},
["zen"]= {"Zen", "200", "200 lignes sans limites de temps."},
["ultra"]= {"Ultra", "EXTRA", "2 minutes pour avoir le meilleur score."},
["infinite"]= {"Infini", "", "Mode tranquile."},

View File

@@ -742,6 +742,10 @@ return{
["tsd_e"]= {"Desafio TSD", "FÁCIL", "Apenas T-spin-doubles!"},
["tsd_h"]= {"Desafio TSD", "DIFÍCIL", "Apenas T-spin-doubles!"},
["tsd_u"]= {"Desafio TSD", "ULTIMATE", "Apenas T-spin-doubles!"},
-- ["backfire_n"]= {"Backfire", "NORMAL", "Self-send garbages"},
-- ["backfire_h"]= {"Backfire", "HARD", "Self-send garbages"},
-- ["backfire_l"]= {"Backfire", "LUNATIC", "Self-send garbages"},
-- ["backfire_u"]= {"Backfire", "ULTIMATE", "Self-send garbages"},
["zen"]= {"Zen", "200", "200 linhas sem um limite de tempo."},
["ultra"]= {"Ultra", "EXTRA", "Pegue a maior pontuação em 2 minutos."},
["infinite"]= {"Infinito", "", "Modo Sandbox."},

View File

@@ -656,6 +656,10 @@ return{
["tsd_e"]= {"Desafío de TSD", "Fácil", "¡Sólo se permiten T-Spin Dobles!"},
["tsd_h"]= {"Desafío de TSD", "Difícil", "¡Sólo se permiten T-Spin Dobles!"},
["tsd_u"]= {"Desafío de TSD", "Supremo", "¡Sólo se permiten T-Spin Dobles!"},
-- ["backfire_n"]= {"Backfire", "NORMAL", "Self-send garbages"},
-- ["backfire_h"]= {"Backfire", "HARD", "Self-send garbages"},
-- ["backfire_l"]= {"Backfire", "LUNATIC", "Self-send garbages"},
-- ["backfire_u"]= {"Backfire", "ULTIMATE", "Self-send garbages"},
["zen"]= {"Zen", "200L", "200 líneas sin límite de tiempo."},
["ultra"]= {"Ultra", "Extra", "¡Consigue el mayor puntaje posible en 2 minutos!"},
["infinite"]= {"Infinito", "", "Modo Sandbox."},

View File

@@ -267,6 +267,10 @@ return{
["tsd_e"]= {"TSD挑战", "简单", "刷T2"},
["tsd_h"]= {"TSD挑战", "困难", "刷T2"},
["tsd_u"]= {"TSD挑战", "极限", "刷T2"},
["backfire_n"]= {"自攻自受", "普通", "200攻击很少的,冲冲冲"},
["backfire_h"]= {"自攻自受", "困难", "你在害怕什么"},
["backfire_l"]= {"自攻自受", "疯狂", "别怂啊,打攻击呀"},
["backfire_u"]= {"自攻自受", "极限", "能把自己玩死,不会吧"},
["zen"]= {"", "200", "不限时200行"},
["ultra"]= {"限时打分", "挑战", "2分钟刷分"},
["infinite"]= {"无尽", "", "真的有人会玩这个?"},

View File

@@ -745,6 +745,10 @@ return{
["tsd_e"]= {"TSD挑战", "简单", "你能连续做几个TSD?"},
["tsd_h"]= {"TSD挑战", "困难", "你能连续做几个TSD?"},
["tsd_u"]= {"TSD挑战", "极限", "你能连续做几个TSD?"},
["backfire_n"]= {"自攻自受", "普通", "打出200攻击"},
["backfire_h"]= {"自攻自受", "困难", "打出200攻击"},
["backfire_l"]= {"自攻自受", "疯狂", "打出200攻击"},
["backfire_u"]= {"自攻自受", "极限", "打出200攻击"},
["zen"]= {"", "200", "不限时200行"},
["ultra"]= {"限时打分", "挑战", "在两分钟内尽可能拿到最多的分数"},
["infinite"]= {"无尽", "", "沙盒"},

View File

@@ -220,6 +220,10 @@ return{
["tsd_e"]= {"T2挑战", "简单", "你能连续做几个T旋双清?"},
["tsd_h"]= {"T2挑战", "困难", "你能连续做几个T旋双清?"},
["tsd_u"]= {"T2挑战", "极限", "你能连续做几个T旋双清?"},
["backfire_n"]= {"自攻自受", "普通", "见模式名"},
["backfire_h"]= {"自攻自受", "困难", "见模式名"},
["backfire_l"]= {"自攻自受", "疯狂", "见模式名"},
["backfire_u"]= {"自攻自受", "极限", "见模式名"},
["zen"]= {"", "200", "不限时200行"},
["ultra"]= {"限时打分", "挑战", "在两分钟内尽可能拿到最多的分数"},
["infinite"]= {"无尽", "", "沙盒"},

View File

@@ -85,7 +85,7 @@ return{
{name="pc_l", x=1200, y=-100, size=40,shape=2,icon="pc"},
{name="tech_n", x=400, y=-150, size=40,shape=1,icon="tech", unlock={"tech_n_plus","tech_h","tech_finesse"}},
{name="tech_n_plus", x=650, y=150, size=40,shape=3,icon="tech", unlock={"tsd_e"}},
{name="tech_n_plus", x=600, y=160, size=40,shape=3,icon="tech", unlock={"tsd_e","backfire_n"}},
{name="tech_h", x=400, y=40, size=40,shape=1,icon="tech", unlock={"tech_h_plus","tech_l"}},
{name="tech_h_plus", x=200, y=70, size=35,shape=3,icon="tech"},
{name="tech_l", x=400, y=200, size=40,shape=1,icon="tech", unlock={"tech_l_plus"}},
@@ -94,9 +94,14 @@ return{
{name="tech_finesse", x=800, y=50, size=40,shape=1,icon="tech", unlock={"tech_finesse_f"}},
{name="tech_finesse_f", x=1000, y=50, size=40,shape=1,icon="tech"},
{name="tsd_e", x=800, y=250, size=40,shape=1,icon="tsd", unlock={"tsd_h"}},
{name="tsd_h", x=1000, y=250, size=40,shape=1,icon="tsd", unlock={"tsd_u"}},
{name="tsd_u", x=1200, y=250, size=40,shape=1,icon="tsd"},
{name="tsd_e", x=800, y=200, size=40,shape=1,icon="tsd", unlock={"tsd_h"}},
{name="tsd_h", x=1000, y=200, size=40,shape=1,icon="tsd", unlock={"tsd_u"}},
{name="tsd_u", x=1200, y=200, size=40,shape=1,icon="tsd"},
{name="backfire_n", x=800, y=350, size=40,shape=1,icon="backfire",unlock={"backfire_h"}},
{name="backfire_h", x=950, y=350, size=40,shape=1,icon="backfire",unlock={"backfire_l"}},
{name="backfire_l", x=1100, y=350, size=40,shape=3,icon="backfire",unlock={"backfire_u"}},
{name="backfire_u", x=1250, y=350, size=35,shape=2,icon="backfire"},
{name="zen", x=-800, y=-600, size=40,shape=1,icon="zen", unlock={"ultra","infinite","infinite_dig"}},
{name="ultra", x=-1000,y=-400, size=40,shape=1,icon="ultra"},

View File

@@ -0,0 +1,43 @@
local format=string.format
return{
color=COLOR.lGrey,
env={
drop=30,lock=60,
dropPiece=function(P)
if P.lastPiece.atk>0 then
P:receive(nil,P.lastPiece.atk,60,generateLine(P:RND(2,9)))
if P.stat.atk>=200 then
P:win("finish")
end
end
end,
bg="tunnel",bgm="warped",
},
pauseLimit=true,
load=function()
PLY.newPlayer(1)
end,
mesDisp=function(P)
setFont(45)
mStr(format("%.1f",P.stat.atk),69,247)
mText(drawableText.atk,69,300)
end,
score=function(P)return{P.stat.atk<=200 and math.floor(P.stat.atk)or 200,P.stat.time}end,
scoreDisp=function(D)return D[1].." Attack "..TIMESTR(D[2])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.atk
if L>=200 then
local T=P.stat.time
return
T<120 and 5 or
T<150 and 4 or
T<200 and 3 or
2
else
return
L>=126 and 1 or
L>=30 and 0
end
end,
}

View File

@@ -0,0 +1,43 @@
local format=string.format
return{
color=COLOR.lGrey,
env={
drop=30,lock=60,
dropPiece=function(P)
if P.lastPiece.atk>0 then
P:receive(nil,P.lastPiece.atk,30,generateLine(P:RND(10)))
if P.stat.atk>=200 then
P:win("finish")
end
end
end,
bg="blackhole",bgm="echo",
},
pauseLimit=true,
load=function()
PLY.newPlayer(1)
end,
mesDisp=function(P)
setFont(45)
mStr(format("%.1f",P.stat.atk),69,247)
mText(drawableText.atk,69,300)
end,
score=function(P)return{P.stat.atk<=200 and math.floor(P.stat.atk)or 200,P.stat.time}end,
scoreDisp=function(D)return D[1].." Attack "..TIMESTR(D[2])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.atk
if L>=200 then
local T=P.stat.time
return
T<120 and 5 or
T<150 and 4 or
T<200 and 3 or
2
else
return
L>=126 and 1 or
L>=30 and 0
end
end,
}

View File

@@ -0,0 +1,43 @@
local format=string.format
return{
color=COLOR.lGrey,
env={
drop=30,lock=60,
dropPiece=function(P)
if P.lastPiece.atk>0 then
P:receive(nil,P.lastPiece.atk,120,generateLine(P:RND(3,8)))
if P.stat.atk>=200 then
P:win("finish")
end
end
end,
bg="tunnel",bgm="warped",
},
pauseLimit=true,
load=function()
PLY.newPlayer(1)
end,
mesDisp=function(P)
setFont(45)
mStr(format("%.1f",P.stat.atk),69,247)
mText(drawableText.atk,69,300)
end,
score=function(P)return{P.stat.atk<=200 and math.floor(P.stat.atk)or 200,P.stat.time}end,
scoreDisp=function(D)return D[1].." Attack "..TIMESTR(D[2])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.atk
if L>=200 then
local T=P.stat.time
return
T<120 and 5 or
T<150 and 4 or
T<200 and 3 or
2
else
return
L>=126 and 1 or
L>=30 and 0
end
end,
}

View File

@@ -0,0 +1,43 @@
local format=string.format
return{
color=COLOR.lGrey,
env={
drop=30,lock=60,
dropPiece=function(P)
if P.lastPiece.atk>0 then
P:receive(nil,math.floor(P.lastPiece.atk*1.5),0,generateLine(P:RND(10)))
if P.stat.atk>=200 then
P:win("finish")
end
end
end,
bg="blackhole",bgm="echo",
},
pauseLimit=true,
load=function()
PLY.newPlayer(1)
end,
mesDisp=function(P)
setFont(45)
mStr(format("%.1f",P.stat.atk),69,247)
mText(drawableText.atk,69,300)
end,
score=function(P)return{P.stat.atk<=200 and math.floor(P.stat.atk)or 200,P.stat.time}end,
scoreDisp=function(D)return D[1].." Attack "..TIMESTR(D[2])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.atk
if L>=200 then
local T=P.stat.time
return
T<120 and 5 or
T<150 and 4 or
T<200 and 3 or
2
else
return
L>=126 and 1 or
L>=30 and 0
end
end,
}