新功能:音效室(初版)

This commit is contained in:
MrZ626
2020-10-26 00:38:13 +08:00
parent ec23f8f420
commit cc4b9b3b91
4 changed files with 402 additions and 2 deletions

View File

@@ -172,6 +172,7 @@ local langList={
lang="言/A",
music="音乐室",
account="账户",
sound="音效室",
minigame="小游戏",
quit="退出",
},
@@ -441,6 +442,64 @@ local langList={
account={
title="账户",
},
sound={
title="音效室",
move="移动",
lock="锁定",
drop="硬降",
fall="行落下",
rotate="旋转",
rotatekick="旋转进洞",
hold="Hold",
prerotate="提前旋转",
prehold="提前Hold",
_1="消1",
_2="消2",
_3="消3",
_4="消4",
spin0="spin 0",
spin1="spin 1",
spin2="spin 2",
spin3="spin 3",
z0="Z-spin",
z1="Z-spin 1",
z2="Z-spin 2",
z3="Z-spin 3",
s0="S-spin",
s1="S-spin 1",
s2="S-spin 2",
s3="S-spin 3",
j0="J-spin",
j1="J-spin 1",
j2="J-spin 2",
j3="J-spin 3",
l0="L-spin",
l1="L-spin 1",
l2="L-spin 2",
l3="L-spin 3",
t0="T-spin",
t1="T-spin 1",
t2="T-spin 2",
t3="T-spin 3",
o0="O-spin",
o1="O-spin 1",
o2="O-spin 2",
o3="O-spin 3",
i0="I-spin",
i1="I-spin 1",
i2="I-spin 2",
i3="I-spin 3",
mini="Mini",
b2b="B2B",
b3b="B3B",
pc="PC",
},
minigame={
p15="15 Puzzle",
schulte_G="舒尔特方格",
@@ -731,6 +790,7 @@ local langList={
lang="言/A",
music="音乐室",
account="账户",
sound="音效室",
minigame="小游戏",
quit="退出",
},
@@ -1004,6 +1064,64 @@ local langList={
account={
title="账户",
},
sound={
title="音效室",
move="移动",
lock="锁定",
drop="硬降",
fall="行落下",
rotate="旋转",
rotatekick="旋转进洞",
hold="暂存",
prerotate="提前旋转",
prehold="提前暂存",
_1="消一",
_2="消二",
_3="消三",
_4="消四",
spin0="空旋转",
spin1="旋转消一",
spin2="旋转消二",
spin3="旋转消三",
z0="Z旋",
z1="Z旋消一",
z2="Z旋消二",
z3="Z旋消三",
s0="S旋",
s1="S旋消一",
s2="S旋消二",
s3="S旋消三",
j0="J旋",
j1="J旋消一",
j2="J旋消二",
j3="J旋消三",
l0="L旋",
l1="L旋消一",
l2="L旋消二",
l3="L旋消三",
t0="T旋",
t1="T旋消一",
t2="T旋消二",
t3="T旋消三",
o0="O旋",
o1="O旋消一",
o2="O旋消二",
o3="O旋消三",
i0="I旋",
i1="I旋消一",
i2="I旋消二",
i3="I旋消三",
mini="迷你",
b2b="满贯",
b3b="大满贯",
pc="全清",
},
minigame={
p15="15 Puzzle",
schulte_G="舒尔特方格",
@@ -1291,6 +1409,7 @@ local langList={
lang="言/A",
music="Music Room",
account="Account",
sound="SE Room",
minigame="Mini Games",
quit="Exit",
},
@@ -1564,6 +1683,64 @@ local langList={
account={
title="Account",
},
sound={
title="SE Room",
move="Move",
lock="Lock",
drop="Drop",
fall="Fall",
rotate="Rotate",
rotatekick="Rotatekick",
hold="Hold",
prerotate="Prerotate",
prehold="Prehold",
_1="Clear 1",
_2="Clear 2",
_3="Clear 3",
_4="Clear 4",
spin0="spin 0",
spin1="spin 1",
spin2="spin 2",
spin3="spin 3",
z0="Z-spin",
z1="Z-spin 1",
z2="Z-spin 2",
z3="Z-spin 3",
s0="S-spin",
s1="S-spin 1",
s2="S-spin 2",
s3="S-spin 3",
j0="J-spin",
j1="J-spin 1",
j2="J-spin 2",
j3="J-spin 3",
l0="L-spin",
l1="L-spin 1",
l2="L-spin 2",
l3="L-spin 3",
t0="T-spin",
t1="T-spin 1",
t2="T-spin 2",
t3="T-spin 3",
o0="O-spin",
o1="O-spin 1",
o2="O-spin 2",
o3="O-spin 3",
i0="I-spin",
i1="I-spin 1",
i2="I-spin 2",
i3="I-spin 3",
mini="Mini",
b2b="B2B",
b3b="B3B",
pc="PC",
},
minigame={
p15="15 Puzzle",
schulte_G="Schulte Grid",
@@ -1850,6 +2027,7 @@ local langList={
lang="言/A",
music="~~~",
account="Account",
sound="=><=",
minigame="^_^",
quit="X",
},
@@ -2123,6 +2301,64 @@ local langList={
account={
title="@_@",
},
sound={
title="SE Room",
move="←→",
lock="Lock",
drop="Drop",
fall="Fall",
rotate="''",
rotatekick="''_",
hold="[ ]",
prerotate="!''",
prehold="![ ]",
_1="1",
_2="2",
_3="3",
_4="4",
spin0="~0",
spin1="~1",
spin2="~2",
spin3="~3",
z0="Z ~",
z1="Z ~ 1",
z2="Z ~ 2",
z3="Z ~ 3",
s0="S ~",
s1="S ~ 1",
s2="S ~ 2",
s3="S ~ 3",
j0="J ~",
j1="J ~ 1",
j2="J ~ 2",
j3="J ~ 3",
l0="L ~",
l1="L ~ 1",
l2="L ~ 2",
l3="L ~ 3",
t0="T ~",
t1="T ~ 1",
t2="T ~ 2",
t3="T ~ 3",
o0="O ~",
o1="O ~ 1",
o2="O ~ 2",
o3="O ~ 3",
i0="I ~",
i1="I ~ 1",
i2="I ~ 2",
i3="I ~ 3",
mini="v",
b2b="^",
b3b="^^",
pc="#<>#",
},
minigame={
p15="15 Puzzle",
schulte_G="Schulte Grid",
@@ -2412,6 +2648,7 @@ local langList={
lang="言/A",
music="音乐室",
account="账户",
sound="音效室",
minigame="小游戏",
quit="退出",
},
@@ -2685,6 +2922,64 @@ local langList={
account={
title="账户",
},
sound={
title="音效室",
move="移动",
lock="锁定",
drop="硬降",
fall="行落下",
rotate="旋转",
rotatekick="旋转进洞",
hold="暂存",
prerotate="提前旋转",
prehold="提前暂存",
_1="消一",
_2="消二",
_3="消三",
_4="消四",
spin0="空旋转",
spin1="旋转消一",
spin2="旋转消二",
spin3="旋转消三",
z0="Z旋",
z1="Z旋消一",
z2="Z旋消二",
z3="Z旋消三",
s0="S旋",
s1="S旋消一",
s2="S旋消二",
s3="S旋消三",
j0="J旋",
j1="J旋消一",
j2="J旋消二",
j3="J旋消三",
l0="L旋",
l1="L旋消一",
l2="L旋消二",
l3="L旋消三",
t0="T旋",
t1="T旋消一",
t2="T旋消二",
t3="T旋消三",
o0="O旋",
o1="O旋消一",
o2="O旋消二",
o3="O旋消三",
i0="I旋",
i1="I旋消一",
i2="I旋消二",
i3="I旋消三",
mini="",
b2b="牛逼",
b3b="很牛逼",
pc="消干净了",
},
minigame={
p15="15 Puzzle",
schulte_G="舒尔特方格",

View File

@@ -703,7 +703,6 @@ function WIDGET.press(x,y)
SFX.play("button")
elseif W.type=="key"then
W.code()
SFX.play("lock")
elseif W.type=="switch"then
W.code()
SFX.play("move")

View File

@@ -168,7 +168,8 @@ local Widgets={
newButton({name="music", x=370,y=555,w=200,h=90,color="dGreen", font=30,code=goScene("music")}),
newButton({name="quit", x=590,y=555,w=200,h=90,color="grey", font=45,code=function()VOC.play("bye")SCN.swapTo("quit","slowFade")end}),
newKey({name="account", x=150,y=650,w=200,h=60,color="red", code=function()SCN.go(LOGIN and"account"or"login")end}),
newKey({name="minigame", x=370,y=650,w=200,h=60,color="blue", code=goScene("minigame")}),
newKey({name="sound", x=370,y=650,w=200,h=60,color="green", code=goScene("sound")}),
newKey({name="minigame", x=590,y=650,w=200,h=60,color="blue", code=goScene("minigame")}),
},
mode={
newButton({name="start", x=1040, y=655,w=180,h=80, font=40,code=pressKey("return"),hide=function()return not mapCam.sel end}),
@@ -679,6 +680,67 @@ local Widgets={
newText({name="title", x=80, y=50,font=70,align="L"}),
newButton({name="back", x=1140, y=640,w=170,h=80,font=40,code=BACK}),
},
sound={
newText({name="title", x=30, y=15,font=70,align="L"}),
newKey({name="move", x=100, y=140,w=140,h=50,code=function()SFX.play("move")end}),
newKey({name="lock", x=100, y=205,w=140,h=50,code=function()SFX.play("lock")end}),
newKey({name="drop", x=100, y=270,w=140,h=50,code=function()SFX.play("drop")end}),
newKey({name="fall", x=100, y=335,w=140,h=50,code=function()SFX.play("fall")end}),
newKey({name="rotate", x=100, y=400,w=140,h=50,code=function()SFX.play("rotate")end}),
newKey({name="rotatekick", x=100, y=465,w=140,h=50,code=function()SFX.play("rotatekick")end}),
newKey({name="hold", x=100, y=530,w=140,h=50,code=function()SFX.play("hold")end}),
newKey({name="prerotate", x=100, y=595,w=140,h=50,code=function()SFX.play("prerotate")end}),
newKey({name="prehold", x=100, y=660,w=140,h=50,code=function()SFX.play("prehold")end}),
newKey({name="_1", x=260, y=140,w=140,h=50,code=function()SFX.play("clear_1")end}),
newKey({name="_2", x=260, y=205,w=140,h=50,code=function()SFX.play("clear_2")end}),
newKey({name="_3", x=260, y=270,w=140,h=50,code=function()SFX.play("clear_3")end}),
newKey({name="_4", x=260, y=335,w=140,h=50,code=function()SFX.play("clear_4")end}),
newKey({name="spin0", x=260, y=400,w=140,h=50,code=function()SFX.play("spin_0")end}),
newKey({name="spin1", x=260, y=465,w=140,h=50,code=function()SFX.play("spin_1")end}),
newKey({name="spin2", x=260, y=530,w=140,h=50,code=function()SFX.play("spin_2")end}),
newKey({name="spin3", x=260, y=595,w=140,h=50,code=function()SFX.play("spin_3")end}),
newKey({name="z0", x=660, y=80,w=140,h=50,code=pressKey(10)}),
newKey({name="z1", x=660, y=145,w=140,h=50,code=pressKey(11)}),
newKey({name="z2", x=660, y=210,w=140,h=50,code=pressKey(12)}),
newKey({name="z3", x=660, y=275,w=140,h=50,code=pressKey(13)}),
newKey({name="t0", x=660, y=340,w=140,h=50,code=pressKey(50)}),
newKey({name="t1", x=660, y=405,w=140,h=50,code=pressKey(51)}),
newKey({name="t2", x=660, y=470,w=140,h=50,code=pressKey(52)}),
newKey({name="t3", x=660, y=535,w=140,h=50,code=pressKey(53)}),
newKey({name="s0", x=820, y=80,w=140,h=50,code=pressKey(20)}),
newKey({name="s1", x=820, y=145,w=140,h=50,code=pressKey(21)}),
newKey({name="s2", x=820, y=210,w=140,h=50,code=pressKey(22)}),
newKey({name="s3", x=820, y=275,w=140,h=50,code=pressKey(23)}),
newKey({name="o0", x=820, y=340,w=140,h=50,code=pressKey(60)}),
newKey({name="o1", x=820, y=405,w=140,h=50,code=pressKey(61)}),
newKey({name="o2", x=820, y=470,w=140,h=50,code=pressKey(62)}),
newKey({name="o3", x=820, y=535,w=140,h=50,code=pressKey(63)}),
newKey({name="j0", x=980, y=80,w=140,h=50,code=pressKey(30)}),
newKey({name="j1", x=980, y=145,w=140,h=50,code=pressKey(31)}),
newKey({name="j2", x=980, y=210,w=140,h=50,code=pressKey(32)}),
newKey({name="j3", x=980, y=275,w=140,h=50,code=pressKey(33)}),
newKey({name="i0", x=980, y=340,w=140,h=50,code=pressKey(70)}),
newKey({name="i1", x=980, y=405,w=140,h=50,code=pressKey(71)}),
newKey({name="i2", x=980, y=470,w=140,h=50,code=pressKey(72)}),
newKey({name="i3", x=980, y=535,w=140,h=50,code=pressKey(73)}),
newKey({name="l0", x=1140, y=80,w=140,h=50,code=pressKey(40)}),
newKey({name="l1", x=1140, y=145,w=140,h=50,code=pressKey(41)}),
newKey({name="l2", x=1140, y=210,w=140,h=50,code=pressKey(42)}),
newKey({name="l3", x=1140, y=275,w=140,h=50,code=pressKey(43)}),
newSwitch({name="mini", x=380, y=660,disp=STPval("mini"),code=pressKey("1")}),
newSwitch({name="b2b", x=560, y=660,disp=STPval("b2b"),code=pressKey("2")}),
newSwitch({name="b3b", x=740, y=660,disp=STPval("b3b"),code=pressKey("3")}),
newSwitch({name="pc", x=940, y=660,disp=STPval("pc"),code=pressKey("4")}),
newButton({name="back", x=1140, y=640,w=170,h=80,font=40,code=BACK}),
},
minigame={
newButton({name="p15", x=240, y=250,w=350,h=120,font=40,code=goScene("p15")}),
newButton({name="schulte_G",x=640, y=250,w=350,h=120,font=40,code=goScene("schulte_G")}),

View File

@@ -2011,6 +2011,7 @@ do--custom_sequence
while BAG[p]==key do p=p+1 end
ins(BAG,p,key)
S.cur=p
SFX.play("lock")
end
end
end
@@ -2363,6 +2364,7 @@ do--custom_mission
if missionEnum[input]then
S.cur=S.cur+1
ins(MISSION,S.cur,missionEnum[input])
SFX.play("lock")
input=""
elseif #input>1 or not legalInput[input]then
input=""
@@ -2902,6 +2904,48 @@ do--login
end
do--account
end
do--sound
function sceneInit.sound()
sceneTemp={
mini=false,
b2b=false,
b3b=false,
pc=false,
}
end
local blockName={"z","s","j","l","t","o","i"}
local lineCount={
"single",
"double",
"triple",
}
function keyDown.sound(key)
local S=sceneTemp
if key=="1"then
S.mini=not S.mini
elseif key=="2"then
S.b2b=not S.b2b
if S.b2b then S.b3b=false end
elseif key=="3"then
S.b3b=not S.b3b
if S.b3b then S.b2b=false end
elseif key=="4"then
S.pc=not S.pc
elseif type(key)=="number"then
local CHN=VOC.getFreeChannel()
if S.mini then VOC.play("mini",CHN)end
if S.b2b then VOC.play("b2b",CHN)
elseif S.b3b then VOC.play("b3b",CHN)
end
VOC.play(blockName[int(key/10)].."spin",CHN)
if key%10>0 then VOC.play(lineCount[key%10],CHN)end
if S.pc then VOC.play("perfect_clear",CHN)end
elseif key=="escape"then
SCN.back()
end
end
end
do--minigame
function sceneInit.minigame()
BG.set("space")