From 242416a25d75319ad4fb1a691c3a7cdc029dd019 Mon Sep 17 00:00:00 2001 From: MrZ626 <1046101471@qq.com> Date: Sun, 26 Sep 2021 18:58:40 +0800 Subject: [PATCH] =?UTF-8?q?=E9=9F=B3=E4=B9=90=E5=AE=A4=E6=94=B9=E4=B8=BAla?= =?UTF-8?q?unchpad=EF=BC=88=E6=9A=82=E6=97=B6=E5=8F=AA=E6=9C=89=E4=B8=A4?= =?UTF-8?q?=E9=A1=B5=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- parts/language/lang_en.lua | 67 +------- parts/language/lang_es.lua | 18 +-- parts/language/lang_fr.lua | 17 +-- parts/language/lang_pt.lua | 64 +------- parts/language/lang_symbol.lua | 64 +------- parts/language/lang_yygq.lua | 51 ------- parts/language/lang_zh.lua | 66 +------- parts/language/lang_zh2.lua | 51 ------- parts/language/lang_zh3.lua | 67 +------- parts/scenes/sound.lua | 271 +++++++++++++++++++++------------ 10 files changed, 185 insertions(+), 551 deletions(-) diff --git a/parts/language/lang_en.lua b/parts/language/lang_en.lua index 2d96db47..c4589242 100644 --- a/parts/language/lang_en.lua +++ b/parts/language/lang_en.lua @@ -587,70 +587,9 @@ return{ }, sound={ title="SFX Room", - sfx="SFXs", - voc="Voices", - - move="Movement", - lock="Lock", - drop="Drop", - fall="Fall", - rotate="Rotation", - rotatekick="Rotation (kick)", - hold="Hold", - prerotate="Initial Rotation", - prehold="Initial Hold", - _pc="Clear & PC", - - clear1="clear 1", - clear2="clear 2", - clear3="clear 3", - clear4="clear 4", - spin0="spin 0", - spin1="spin 1", - spin2="spin 2", - spin3="spin 3", - - _1="Single", - _2="Double", - _3="Triple", - _4="Techrash", - 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", - + bgm="BGM", + sfx="SFX", + voc="VOC", music="BGMs", }, login={ diff --git a/parts/language/lang_es.lua b/parts/language/lang_es.lua index a2dfa04b..d73c07fc 100644 --- a/parts/language/lang_es.lua +++ b/parts/language/lang_es.lua @@ -537,30 +537,14 @@ return{ now="Reproduciendo:", bgm="BGM", - up="↑", play="Reprod.", - down="↓", sound="SFXs", }, sound={ title="Sala de SFX", + bgm="BGM", sfx="SFX", voc="Voces", - - move="Mover", - lock="Traba", - drop="Drop", - fall="Caída", - rotate="Rotación", - rotatekick="Rot. con Kickeo", - hold="Reserva", - prerotate="Rot. Inicial", - prehold="Resv. Inicial", - - _1="Single", - _2="Doble", - _3="Triple", - _4="Techrash", music="BGMs", }, login={ diff --git a/parts/language/lang_fr.lua b/parts/language/lang_fr.lua index ad68a50a..46d6b852 100644 --- a/parts/language/lang_fr.lua +++ b/parts/language/lang_fr.lua @@ -540,24 +540,9 @@ return{ }, sound={ title="Salon SE", + bgm="Musique", sfx="Sons", voc="Voix", - - move="Déplacement", - lock="Verrouillage", - drop="Chute", - fall="Tombée", - rotate="Rotation", - rotatekick="Rot+kick", - hold="Réserve", - prerotate="Prérotation", - prehold="Préréserve", - _pc="PC", - - _1="Simple", - _2="Double", - _3="Triple", - _4="Techrash", music="Musique", }, login={ diff --git a/parts/language/lang_pt.lua b/parts/language/lang_pt.lua index d5c116c5..e5112a44 100644 --- a/parts/language/lang_pt.lua +++ b/parts/language/lang_pt.lua @@ -575,76 +575,14 @@ return{ now="Now Playing:", bgm="BGM", - up="↑", play="Jogar", - down="↓", -- sound="SFXs", }, sound={ title="Efeito Sonoros", + bgm="BGM", sfx="SFX", voc="VOZ", - - move="Movimento", - lock="Trava", - drop="Derrubar", - fall="Queda", - rotate="Rotação", - rotatekick="Rotação (Chute)", - hold="Segurar", - prerotate="Rotação Inicial", - prehold="Segurar Inicial", - _pc="Limpar E PC", - - clear1="clear 1", - clear2="clear 2", - clear3="clear 3", - clear4="clear 4", - spin0="spin 0", - spin1="spin 1", - spin2="spin 2", - spin3="spin 3", - - _1="Single", - _2="Double", - _3="Triple", - _4="Techrash", - 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", -- music="BGMs", }, login={ diff --git a/parts/language/lang_symbol.lua b/parts/language/lang_symbol.lua index 0f15c8c1..4ce94270 100644 --- a/parts/language/lang_symbol.lua +++ b/parts/language/lang_symbol.lua @@ -455,70 +455,10 @@ return{ sound="=><=", }, sound={ - title="SE Room", + title="SFX Room", + bgm="#~#", sfx="#!#", voc="~~~", - - move="←→", - lock="Lock", - drop="Drop", - fall="Fall", - rotate="''", - rotatekick="''_", - hold="[ ]", - prerotate="!''", - prehold="![ ]", - _pc="#<>#", - - clear1="1", - clear2="2", - clear3="3", - clear4="4", - spin0="~0", - spin1="~1", - spin2="~2", - spin3="~3", - - _1="1", - _2="2", - _3="3", - _4="4", - 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="#<>#", music="~~~", }, login={ diff --git a/parts/language/lang_yygq.lua b/parts/language/lang_yygq.lua index 803f41d2..ec6f20c9 100644 --- a/parts/language/lang_yygq.lua +++ b/parts/language/lang_yygq.lua @@ -129,57 +129,6 @@ return{ password2="你懂的", registering="等", }, - sound={ - title="音效室", - sfx="音效", - voc="语音", - - hold="暂存", - prehold="提前暂存", - _pc="消干净了", - - 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="消干净了", - }, app_15p={ reset="打乱", color="彩", diff --git a/parts/language/lang_zh.lua b/parts/language/lang_zh.lua index 4e329c74..d9c8ca97 100644 --- a/parts/language/lang_zh.lua +++ b/parts/language/lang_zh.lua @@ -573,74 +573,14 @@ return{ now="正在播放:", bgm="BGM", - sound="音效", + sound="音效室", }, sound={ title="音效室", + bgm="音乐", sfx="音效", voc="语音", - - move="移动", - lock="锁定", - drop="硬降", - fall="行落下", - rotate="旋转", - rotatekick="旋转进洞", - hold="Hold", - prerotate="提前旋转", - prehold="提前Hold", - _pc="全消", - - clear1="Single", - clear2="Double", - clear3="Triple", - clear4="Techrash", - spin0="spin 0", - spin1="spin 1", - spin2="spin 2", - spin3="spin 3", - - _1="Single", - _2="Double", - _3="Triple", - _4="Techrash", - 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", - music="音乐", + music="音乐室", }, about={ staff="制作人员", diff --git a/parts/language/lang_zh2.lua b/parts/language/lang_zh2.lua index 59f90ad5..9f1b519d 100644 --- a/parts/language/lang_zh2.lua +++ b/parts/language/lang_zh2.lua @@ -82,57 +82,6 @@ return{ infHold="无限暂存", phyHold="物理暂存", }, - sound={ - clear1="消一", - clear2="消二", - clear3="消三", - clear4="消四", - spin0="空旋转", - spin1="旋转消一", - spin2="旋转消二", - spin3="旋转消三", - - _1="消一", - _2="消二", - _3="消三", - _4="消四", - 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="全清", - }, }, modes={ ['sprint_10l']= {"竞速", "10行", "消除10行"}, diff --git a/parts/language/lang_zh3.lua b/parts/language/lang_zh3.lua index 82dbe8ea..62d711be 100644 --- a/parts/language/lang_zh3.lua +++ b/parts/language/lang_zh3.lua @@ -590,72 +590,11 @@ return{ sound="特技效果", }, sound={ - title="休息室", + title="特技效果", + bgm="背景音乐", sfx="特技效果", voc="声音", - - move="移动", - lock="锁", - drop="滴", - fall="落下", - rotate="轮换", - rotatekick="旋转(踢)", - hold="持有", - prerotate="初始旋转", - prehold="初始持有", - _pc="清除和个人电脑", - - clear1="清除1", - clear2="清除2", - clear3="清除3", - clear4="清除4", - spin0="旋转0", - spin1="旋转1", - spin2="旋转2", - spin3="旋转3", - - _1="单身", - _2="双重的", - _3="三倍的", - _4="技术崩溃", - 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="迷你", - b2b="商对商", - b3b="B3B", - pc="个人电脑", - - music="背景音乐", + music="音乐培训室", }, login={ title="登录", diff --git a/parts/scenes/sound.lua b/parts/scenes/sound.lua index e694a82f..515f7349 100644 --- a/parts/scenes/sound.lua +++ b/parts/scenes/sound.lua @@ -1,44 +1,123 @@ +local gc=love.graphics +local gc_push,gc_pop=gc.push,gc.pop +local gc_translate,gc_scale=gc.translate,gc.scale +local gc_setColor,gc_setLineWidth=gc.setColor,gc.setLineWidth +local gc_rectangle,gc_circle=gc.rectangle,gc.circle + +local int,max=math.floor,math.max + local scene={} -local mini,b2b,b3b,pc +local pad={x=140,y=65,k=1,page=1, + func={'page1','page2','page3','page4','page5','page6','play','stop'}, + funcTime={0,0,0,0,0,0,0,0}, + time={ + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0}, + }, + { + {{sfx='ready'}, {sfx='start'}, {}, {}, {sfx='move'}, {sfx='lock'}, {sfx='drop'}, {sfx='fall'},}, + {{sfx='hold'}, {sfx='prehold'}, {}, {}, {sfx='clear_1'},{sfx='clear_2'},{sfx='clear_3'},{sfx='clear_4'}}, + {{sfx='prerotate'}, {sfx='rotate'}, {sfx='rotatekick'}, {}, {voc='single'}, {voc='double'}, {voc='triple'}, {voc='techrash'}}, + {{sfx='finesseError'},{sfx='finesseError_long'},{sfx='drop_cancel'},{}, {sfx='spin_0'}, {sfx='spin_1'}, {sfx='spin_2'}, {sfx='spin_3'}}, + {{sfx='ren_1'}, {sfx='ren_2'}, {sfx='ren_3'}, {sfx='ren_4'}, {}, {sfx='warning'},{sfx='reach'}, {sfx='pc'}}, + {{sfx='ren_5'}, {sfx='ren_6'}, {sfx='ren_7'}, {sfx='ren_8'}, {}, {sfx='collect'},{sfx='emit'}, {sfx='blip_1'}}, + {{sfx='ren_9'}, {sfx='ren_10'}, {sfx='ren_11'}, {sfx='ren_mega'},{voc='win'}, {voc='lose'}, {sfx='win'}, {sfx='fail'}}, + {{sfx='spawn_1'}, {sfx='spawn_2'}, {sfx='spawn_3'}, {sfx='spawn_4'}, {sfx='spawn_5'},{sfx='spawn_6'},{sfx='spawn_7'},{}}, + }, + { + {{voc='mini'}, {voc='b2b'}, {voc='b3b'}, {voc='perfect_clear'},{voc='half_clear'},{}, {}, {}}, + {{voc='zspin'}, {voc='sspin'}, {voc='jspin'}, {voc='lspin'}, {voc='tspin'}, {voc='ospin'}, {voc='ispin'},{}}, + {{voc='pspin'}, {voc='qspin'}, {voc='fspin'}, {voc='espin'}, {voc='uspin'}, {voc='vspin'}, {voc='wspin'},{voc='xspin'}}, + {{voc='rspin'}, {voc='yspin'}, {voc='nspin'}, {voc='hspin'}, {voc='cspin'}, {}, {}, {}}, + {{voc='single'}, {voc='double'},{voc='triple'},{voc='techrash'}, {voc='pentacrash'},{voc='hexacrash'},{}, {}}, + {{voc='win'}, {voc='lose'}, {}, {}, {}, {}, {}, {}}, + {{voc='welcome'},{voc='bye'}, {}, {}, {}, {}, {}, {}}, + {{}, {}, {}, {}, {}, {}, {}, {}}, + }, + { + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + }, + { + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + }, + { + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + }, + { + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + {{},{},{},{},{},{},{},{}}, + }, +} -function scene.sceneInit() - mini,b2b,b3b,pc=false,false,false,false +function scene.mouseDown(x,y) + scene.touchDown(x,y) +end +function scene.touchDown(x,y) + x,y=int((x-pad.x)*pad.k/80),int((y-pad.y)*pad.k/80+1) + print(x,y) + if y>=1 and y<=8 then + if x==0 then + local k=pad.func[y] + if k:find('page')then + pad.page=tonumber(k:sub(5)) + elseif k=="play"then + BGM.seek(0) + BGM.play(BGM.nowPlay) + elseif k=="stop"then + BGM.stop() + end + pad.funcTime[y]=1 + elseif x>=1 and x<=8 then + local k=pad[pad.page][y][x] + if k.sfx then + SFX.play(k.sfx) + elseif k.voc then + VOC.play(k.voc) + end + pad.time[y][x]=1 + end + end end - -local blockName={'z','s','j','l','t','o','i'} -local lineCount={'single','double','triple','techrash'} function scene.keyDown(key,isRep) if isRep then return end if key=="1"then - mini=not mini elseif key=="2"then - b2b=not b2b - if b2b then b3b=false end elseif key=="3"then - b3b=not b3b - if b3b then b2b=false end - elseif key=="4"then - pc=not pc - elseif type(key)=='number'then - local CHN=VOC.getFreeChannel() - if b2b then - VOC.play('b2b',CHN) - elseif b3b then - VOC.play('b3b',CHN) - end - if mini then - VOC.play('mini',CHN) - end - if key>=10 then - VOC.play(blockName[math.floor(key/10)].."spin",CHN) - end - if lineCount[key%10]then - VOC.play(lineCount[key%10],CHN) - end - if pc then - VOC.play('perfect_clear',CHN) - end elseif key=="tab"then SCN.swapTo('music','none') elseif key=="escape"then @@ -46,75 +125,67 @@ function scene.keyDown(key,isRep) end end +function scene.update(dt) + for y=1,8 do + if pad.funcTime[y]>0 then + pad.funcTime[y]=max(pad.funcTime[y]-dt*2,0) + end + end + for y=1,8 do + for x=1,8 do + if pad.time[y][x]>0 then + pad.time[y][x]=max(pad.time[y][x]-dt*4,0) + end + end + end +end + +function scene.draw() + local white=COLOR.Z + gc_push('transform') + gc_translate(pad.x,pad.y) + gc_scale(pad.k) + gc_setLineWidth(2) + + --Pad frame + gc_setColor(white) + gc_rectangle('line',-3,-3,726,646,2) + + --Buttons + for y=1,8 do + gc_setColor(white) + gc_circle('line',40,(y-1)*80+40,34) + if pad.funcTime[y]>0 then + gc_setColor(1,1,1,pad.funcTime[y]*.7) + gc_circle('fill',40,(y-1)*80+40,34) + end + end + for y=1,8 do + for x=1,8 do + gc_setColor(white) + gc_rectangle('line',x*80+2,(y-1)*80+2,76,76,5) + local k=pad[pad.page][y][x] + if k.sfx then + gc_rectangle('line',x*80+40-10,(y-1)*80+40-10,20,20,2) + elseif k.voc then + gc_circle('line',x*80+40,(y-1)*80+40,6) + end + if pad.time[y][x]>0 then + gc_setColor(1,1,1,pad.time[y][x]*.7) + gc_rectangle('fill',x*80+2,(y-1)*80+2,76,76,5) + end + end + end + gc_pop() +end + scene.widgetList={ - WIDGET.newText{name="title", x=30, y=15,font=70,align='L'}, - WIDGET.newSlider{name="sfx", x=510, y=60,w=330,font=35,change=function()SFX.play('blip_1')end,disp=SETval('sfx'),sound=false,code=SETsto('sfx')}, - WIDGET.newSlider{name="voc", x=510, y=120,w=330,font=35,change=function()VOC.play('test')end,disp=SETval('voc'),sound=false,code=SETsto('voc')}, - - WIDGET.newKey{name="move", x=110, y=140,w=160,h=50,font=20,sound=false,code=function()SFX.play('move')end}, - WIDGET.newKey{name="lock", x=110, y=205,w=160,h=50,font=20,sound=false,code=function()SFX.play('lock')end}, - WIDGET.newKey{name="drop", x=110, y=270,w=160,h=50,font=20,sound=false,code=function()SFX.play('drop')end}, - WIDGET.newKey{name="fall", x=110, y=335,w=160,h=50,font=20,sound=false,code=function()SFX.play('fall')end}, - WIDGET.newKey{name="rotate", x=110, y=400,w=160,h=50,font=20,sound=false,code=function()SFX.play('rotate')end}, - WIDGET.newKey{name="rotatekick",x=110, y=465,w=160,h=50,font=20,sound=false,code=function()SFX.play('rotatekick')end}, - WIDGET.newKey{name="hold", x=110, y=530,w=160,h=50,font=20,sound=false,code=function()SFX.play('hold')end}, - WIDGET.newKey{name="prerotate", x=110, y=595,w=160,h=50,font=20,sound=false,code=function()SFX.play('prerotate')end}, - WIDGET.newKey{name="prehold", x=110, y=660,w=160,h=50,font=20,sound=false,code=function()SFX.play('prehold')end}, - - WIDGET.newKey{name="clear1", x=280, y=140,w=160,h=50,font=20,sound=false,code=function()SFX.play('clear_1')end}, - WIDGET.newKey{name="clear2", x=280, y=205,w=160,h=50,font=20,sound=false,code=function()SFX.play('clear_2')end}, - WIDGET.newKey{name="clear3", x=280, y=270,w=160,h=50,font=20,sound=false,code=function()SFX.play('clear_3')end}, - WIDGET.newKey{name="clear4", x=280, y=335,w=160,h=50,font=20,sound=false,code=function()SFX.play('clear_4')end}, - WIDGET.newKey{name="spin0", x=280, y=400,w=160,h=50,font=20,sound=false,code=function()SFX.play('spin_0')end}, - WIDGET.newKey{name="spin1", x=280, y=465,w=160,h=50,font=20,sound=false,code=function()SFX.play('spin_1')end}, - WIDGET.newKey{name="spin2", x=280, y=530,w=160,h=50,font=20,sound=false,code=function()SFX.play('spin_2')end}, - WIDGET.newKey{name="spin3", x=280, y=595,w=160,h=50,font=20,sound=false,code=function()SFX.play('spin_3')end}, - WIDGET.newKey{name="_pc", x=280, y=660,w=160,h=50,font=20,sound=false,code=function()SFX.play('clear')end}, - - WIDGET.newKey{name="_1", x=970, y=75,w=140,h=50,font=20,sound=false,code=pressKey(1)}, - WIDGET.newKey{name="_2", x=1130, y=75,w=140,h=50,font=20,sound=false,code=pressKey(2)}, - WIDGET.newKey{name="_3", x=970, y=140,w=140,h=50,font=20,sound=false,code=pressKey(3)}, - WIDGET.newKey{name="_4", x=1130, y=140,w=140,h=50,font=20,sound=false,code=pressKey(4)}, - - WIDGET.newKey{name="z0", x=650, y=205,w=140,h=50,font=20,sound=false,code=pressKey(10)}, - WIDGET.newKey{name="z1", x=650, y=270,w=140,h=50,font=20,sound=false,code=pressKey(11)}, - WIDGET.newKey{name="z2", x=650, y=335,w=140,h=50,font=20,sound=false,code=pressKey(12)}, - WIDGET.newKey{name="z3", x=650, y=400,w=140,h=50,font=20,sound=false,code=pressKey(13)}, - WIDGET.newKey{name="t0", x=650, y=465,w=140,h=50,font=20,sound=false,code=pressKey(50)}, - WIDGET.newKey{name="t1", x=650, y=530,w=140,h=50,font=20,sound=false,code=pressKey(51)}, - WIDGET.newKey{name="t2", x=650, y=595,w=140,h=50,font=20,sound=false,code=pressKey(52)}, - WIDGET.newKey{name="t3", x=650, y=660,w=140,h=50,font=20,sound=false,code=pressKey(53)}, - - WIDGET.newKey{name="s0", x=810, y=205,w=140,h=50,font=20,sound=false,code=pressKey(20)}, - WIDGET.newKey{name="s1", x=810, y=270,w=140,h=50,font=20,sound=false,code=pressKey(21)}, - WIDGET.newKey{name="s2", x=810, y=335,w=140,h=50,font=20,sound=false,code=pressKey(22)}, - WIDGET.newKey{name="s3", x=810, y=400,w=140,h=50,font=20,sound=false,code=pressKey(23)}, - WIDGET.newKey{name="o0", x=810, y=465,w=140,h=50,font=20,sound=false,code=pressKey(60)}, - WIDGET.newKey{name="o1", x=810, y=530,w=140,h=50,font=20,sound=false,code=pressKey(61)}, - WIDGET.newKey{name="o2", x=810, y=595,w=140,h=50,font=20,sound=false,code=pressKey(62)}, - WIDGET.newKey{name="o3", x=810, y=660,w=140,h=50,font=20,sound=false,code=pressKey(63)}, - - WIDGET.newKey{name="j0", x=970, y=205,w=140,h=50,font=20,sound=false,code=pressKey(30)}, - WIDGET.newKey{name="j1", x=970, y=270,w=140,h=50,font=20,sound=false,code=pressKey(31)}, - WIDGET.newKey{name="j2", x=970, y=335,w=140,h=50,font=20,sound=false,code=pressKey(32)}, - WIDGET.newKey{name="j3", x=970, y=400,w=140,h=50,font=20,sound=false,code=pressKey(33)}, - WIDGET.newKey{name="i0", x=970, y=465,w=140,h=50,font=20,sound=false,code=pressKey(70)}, - WIDGET.newKey{name="i1", x=970, y=530,w=140,h=50,font=20,sound=false,code=pressKey(71)}, - WIDGET.newKey{name="i2", x=970, y=595,w=140,h=50,font=20,sound=false,code=pressKey(72)}, - WIDGET.newKey{name="i3", x=970, y=660,w=140,h=50,font=20,sound=false,code=pressKey(73)}, - - WIDGET.newKey{name="l0", x=1130, y=205,w=140,h=50,font=20,sound=false,code=pressKey(40)}, - WIDGET.newKey{name="l1", x=1130, y=270,w=140,h=50,font=20,sound=false,code=pressKey(41)}, - WIDGET.newKey{name="l2", x=1130, y=335,w=140,h=50,font=20,sound=false,code=pressKey(42)}, - WIDGET.newKey{name="l3", x=1130, y=400,w=140,h=50,font=20,sound=false,code=pressKey(43)}, - - WIDGET.newSwitch{name="mini", x=515, y=465,font=25,disp=function()return mini end,sound=false,code=pressKey"1"}, - WIDGET.newSwitch{name="b2b", x=515, y=530,font=25,disp=function()return b2b end,sound=false,code=pressKey"2"}, - WIDGET.newSwitch{name="b3b", x=515, y=595,font=25,disp=function()return b3b end,sound=false,code=pressKey"3"}, - WIDGET.newSwitch{name="pc", x=515, y=660,font=25,disp=function()return pc end,sound=false,code=pressKey"4"}, - - WIDGET.newButton{name="music", x=1140, y=540,w=170,h=80,font=40,code=pressKey"tab"}, - WIDGET.newButton{name="back", x=1140, y=640,w=170,h=80,fText=TEXTURE.back,code=backScene}, + WIDGET.newText{name="title", x=640, y=-5, font=50}, + WIDGET.newSlider{name="bgm", x=1000,y=80, lim=130,w=250,disp=SETval('bgm'),code=function(v)SETTING.bgm=v BGM.freshVolume()end}, + WIDGET.newSlider{name="sfx", x=1000,y=150,lim=130,w=250,disp=SETval('sfx'),code=SETsto('sfx'),change=function()SFX.play('blip_1')end}, + WIDGET.newSlider{name="voc", x=1000,y=220,lim=130,w=250,disp=SETval('voc'),code=SETsto('voc'),change=function()VOC.play('test')end}, + WIDGET.newButton{name="music",x=1140,y=540,w=170,h=80,font=40,code=pressKey"tab"}, + WIDGET.newButton{name="back", x=1140,y=640,w=170,h=80,fText=TEXTURE.back,code=backScene}, } return scene