diff --git a/parts/language/lang_en.lua b/parts/language/lang_en.lua index 97504ed8..76457187 100644 --- a/parts/language/lang_en.lua +++ b/parts/language/lang_en.lua @@ -171,7 +171,6 @@ return{ "FnsErrs./FnsRate:", }, help={ - "I'd assume you wouldn't need any \"help\" thus far?", "This is just an *ordinary* block stacker. Really. That's it.", "With inspirations from TO/C2/KOS/TGM3 etc.", "", @@ -213,15 +212,16 @@ return{ WidgetText={ main={ offline="Single Player", - qplay="Quick Play", + qplay="Last Play", online="Multiplayer", custom="Custom Game", setting="Settings", stat="Statistics", music="Music & SE", - help="Help", + about="About", dict="Zictionary", lang="言/A", + manual="Manual", quit="Exit", }, main_simple={ @@ -493,8 +493,7 @@ return{ paste="Paste", mission="Force Mission", }, - help={ - manual="Manual", + about={ staff="Staff", his="History", qq="Author's qq", diff --git a/parts/language/lang_fr.lua b/parts/language/lang_fr.lua index cf6653ed..a1ebce95 100644 --- a/parts/language/lang_fr.lua +++ b/parts/language/lang_fr.lua @@ -149,7 +149,6 @@ return{ "Errs. Finesse/Finesse :", }, help={ - "Vous pouvez jouer à ceci, vous n'avez probablement pas besoin d'\"aide\"?", "Ceci est un simple jeu de blocs.", "On y joue comme sur TO/C2/KOS/TGM3 et autres.", "", @@ -190,15 +189,16 @@ return{ WidgetText={ main={ -- offline="Solo", - qplay="Partie rapide", + -- qplay="Last Play", -- online="Multi", -- custom="Mode perso.", setting="Paramètres", stat="Statistiques", -- music="Music & SE", - help="Aide", + -- about="About", dict="Zictionary", lang="言/A", + manual="Manuel", quit="Quitter", }, mode={ @@ -556,8 +556,7 @@ return{ reset="Réinitialiser", -- mode="Mode", }, - help={ - manual="Manuel", + about={ staff="Staff", his="History", qq="QQ du créateur", diff --git a/parts/language/lang_pt.lua b/parts/language/lang_pt.lua index 7a7a43a2..f5af1282 100644 --- a/parts/language/lang_pt.lua +++ b/parts/language/lang_pt.lua @@ -171,7 +171,6 @@ return{ "FalhaDestreza/TaxaDestreza:", }, help={ - "Agora você pode jogar - você provavelmente nao precisa de \"ajuda\"?", "Isso é apenas um jogo de blocos, nada de especial.", "Joga como TO/C2/KOS/TGM3 e outros.", "", @@ -213,15 +212,16 @@ return{ WidgetText={ main={ offline="Solo", - qplay="Jogo R.", + -- qplay="Last Play", online="Multi", custom="Custom", setting="Config.", stat="Stats", -- music="Music & SE", - help="Ajuda", + -- about="About", dict="Zictionary", lang="言/A", + manual="Manual", quit="Saída", }, main_simple={ @@ -493,8 +493,7 @@ return{ paste="Colar", mission="Forçar Missão", }, - help={ - manual="Manual", + about={ staff="Staff", his="History", qq="Author's qq", diff --git a/parts/language/lang_sp.lua b/parts/language/lang_sp.lua index 2987b910..01ad9267 100644 --- a/parts/language/lang_sp.lua +++ b/parts/language/lang_sp.lua @@ -150,7 +150,6 @@ return{ "Err.Fns./RatioFns:", }, help={ - "Ahora que sabes jugar a este juego, no necesitas ayuda, ¿o sí?", "Este es simplemente un juego de puzzle ordinario, no pienses de él como un juego promedio.", "Está inspirado en otros como TO/C2/KoS/TGM3/JS.", "", @@ -192,15 +191,16 @@ return{ WidgetText={ main={ -- offline="Single", - qplay="P. Rápida", + -- qplay="Last Play", -- online="Multi", -- custom="Person.", setting="Opciones", stat="Estadísticas", -- music="Music & SE", - help="Ayuda", + -- about="About", dict="Zictionary", lang="言/A", + manual="Manual", quit="Salir", }, main_simple={ @@ -454,8 +454,7 @@ return{ paste="Pegar", mission="Forzar misión", }, - help={ - manual="Manual", + about={ staff="Staff", his="Hist. de Acts.", qq="QQ del Autor", diff --git a/parts/language/lang_symbol.lua b/parts/language/lang_symbol.lua index 37136cc6..69cbea11 100644 --- a/parts/language/lang_symbol.lua +++ b/parts/language/lang_symbol.lua @@ -80,7 +80,6 @@ return{ "!#!X/%:", }, help={ - "□□□□~~~, ?_?x ?", "□!!~~~,□□□□X", "□!!==*/*/*/*~", "", @@ -93,15 +92,16 @@ return{ WidgetText={ main={ offline="!", - qplay="!", + qplay="(!)", online="!!!", custom="_?!", setting="_?_", stat="=___", music="~~~ & =><=", - help="???", + about="?", dict="z", lang="言/A", + manual="???", quit="X", }, mode={ @@ -337,8 +337,7 @@ return{ paste="__→", mission="Force mission", }, - help={ - manual="?", + about={ staff="Orz", his="_&_", qq="_@_", diff --git a/parts/language/lang_yygq.lua b/parts/language/lang_yygq.lua index 8cc6e37e..8661e2c3 100644 --- a/parts/language/lang_yygq.lua +++ b/parts/language/lang_yygq.lua @@ -107,8 +107,7 @@ return{ basic="阳间", pro="阴间", }, - help={ - manual="聪明人不用看", + about={ staff="游戏谁做的", his="黑历史", qq="QQ对线", diff --git a/parts/language/lang_zh.lua b/parts/language/lang_zh.lua index 39c9516a..7b60d2b9 100644 --- a/parts/language/lang_zh.lua +++ b/parts/language/lang_zh.lua @@ -171,7 +171,6 @@ return{ "多余操作/极简率:", }, help={ - "既然你能玩到这个游戏,应该也不需要什么帮助吧?", "这只是一个普通的方块游戏,请勿称此游戏为某某某方块", "从TO/C2/KOS/TGM3/JS等方块获得过灵感", "", @@ -219,9 +218,10 @@ return{ setting="设置", stat="统计信息", music="音乐&音效", - help="帮助", + about="关于", dict="小Z词典", lang="言/A", + manual="说明书", quit="退出", }, main_simple={ @@ -570,8 +570,7 @@ return{ pc="PC", music="音乐", }, - help={ - manual="说明书", + about={ staff="制作人员", his="更新历史", qq="作者QQ", diff --git a/parts/scenes/help.lua b/parts/scenes/about.lua similarity index 79% rename from parts/scenes/help.lua rename to parts/scenes/about.lua index 04faf767..6ec7cbd3 100644 --- a/parts/scenes/help.lua +++ b/parts/scenes/about.lua @@ -41,10 +41,9 @@ end scene.widgetList={ WIDGET.newImage{name="pay1", x=20, y=20}, WIDGET.newImage{name="pay2", x=1014, y=20}, - WIDGET.newButton{name="manual", x=1140, y=400,w=220,h=70,font=35,code=goScene"manual"}, - WIDGET.newButton{name="staff", x=1140, y=490,w=220,h=70,font=35,code=goScene"staff"}, - WIDGET.newButton{name="his", x=1140, y=580,w=220,h=70,font=35,code=goScene"history"}, - WIDGET.newButton{name="qq", x=1140, y=670,w=220,h=70,font=35,code=function()love.system.openURL("tencent://message/?uin=1046101471&Site=&Menu=yes")end,hide=MOBILE}, + WIDGET.newButton{name="staff", x=1140, y=400,w=220,h=80,font=35,code=goScene"staff"}, + WIDGET.newButton{name="his", x=1140, y=500,w=220,h=80,font=35,code=goScene"history"}, + WIDGET.newButton{name="qq", x=1140, y=600,w=220,h=80,font=35,code=function()love.system.openURL("tencent://message/?uin=1046101471&Site=&Menu=yes")end,hide=MOBILE}, WIDGET.newButton{name="back", x=640, y=600,w=170,h=80,font=35,code=backScene}, } diff --git a/parts/scenes/main.lua b/parts/scenes/main.lua index a21e28ee..c3894882 100644 --- a/parts/scenes/main.lua +++ b/parts/scenes/main.lua @@ -3,10 +3,17 @@ local gc=love.graphics local scene={} local verName=SYSTEM.." "..VERSION_NAME -local tipLength=540 +local tipLength=760 local tip=gc.newText(getFont(30),"") local scrollX--Tip scroll position +local quickSure + +local widgetX0={ + -10,-10,-10,-10, + 1290,1290,1290,1290, +} + local cmdEntryThread=coroutine.create(function() while true do while true do @@ -28,7 +35,8 @@ function scene.sceneInit() coroutine.resume(cmdEntryThread) --Set quick-play-button text - scene.widgetList[2].text=text.modes[STAT.lastPlay][1].."-"..text.modes[STAT.lastPlay][2] + scene.widgetList[2].text=text.WidgetText.main.qplay + quickSure=false --Create demo player destroyPlayers() @@ -52,52 +60,88 @@ function scene.mouseDown(x,y) ) end end +scene.touchDown=scene.mouseDown +local function testButton(n) + if WIDGET.sel==scene.widgetList[n]then + return true + else + WIDGET.sel=scene.widgetList[n] + end +end function scene.keyDown(key) if key=="1"then - SCN.go("mode") + if testButton(1)then + SCN.go("mode") + end elseif key=="q"then - loadGame(STAT.lastPlay,true) + if not quickSure then + scene.widgetList[2].text=text.modes[STAT.lastPlay][1].."-"..text.modes[STAT.lastPlay][2] + quickSure=true + testButton(2) + elseif testButton(2)then + loadGame(STAT.lastPlay,true) + end elseif key=="a"then - if not LATEST_VERSION then - TEXT.show(text.notFinished,640,450,60,"flicker") - SFX.play("finesseError") - elseif LOGIN then - --[[TODO - if USER.accessToken then - WS.send("app",JSON.encode{ - opration="access", - email=USER.email, - accessToken=USER.accessToken, - }) + if testButton(3)then + if not LATEST_VERSION then + TEXT.show(text.notFinished,640,450,60,"flicker") + SFX.play("finesseError") + elseif LOGIN then + --[[TODO + if USER.accessToken then + WS.send("app",JSON.encode{ + opration="access", + email=USER.email, + accessToken=USER.accessToken, + }) + else + WS.send("app",JSON.encode{ + opration="access", + email=USER.email, + authToken=USER.authToken, + }) + end + ]] else - WS.send("app",JSON.encode{ - opration="access", - email=USER.email, - authToken=USER.authToken, - }) + SCN.go("login") end - ]] - else - SCN.go("login") end elseif key=="z"then - SCN.go("customGame") + if testButton(4)then + SCN.go("customGame") + end elseif key=="-"then - SCN.go("setting_game") + if testButton(5)then + SCN.go("setting_game") + end elseif key=="p"then - SCN.go("stat") + if testButton(6)then + SCN.go("stat") + end elseif key=="l"then - SCN.go("music") + if testButton(7)then + SCN.go("dict") + end elseif key==","then - SCN.go("help") - elseif key=="application"then - SCN.go("dict") - elseif key=="ralt"then - SCN.go("lang") + if testButton(8)then + SCN.go("manual") + end elseif key=="f1"then - SCN.go("manual") + if testButton(11)then + SCN.go("about") + end + elseif key=="f2"then + if testButton(9)then + SCN.go("music") + end + elseif key=="f3"then + if testButton(10)then + SCN.go("lang") + end elseif key=="escape"then - SCN.back() + if testButton(12)then + SCN.back() + end else coroutine.resume(cmdEntryThread,key) end @@ -113,7 +157,7 @@ function scene.update(dt) end local L=scene.widgetList for i=1,8 do - L[i].x=L[i].x*.9+((i<5 and 40 or 1240)-350+(WIDGET.sel==L[i]and(i<5 and 100 or -100)or 0))*.1 + L[i].x=L[i].x*.9+(widgetX0[i]-400+(WIDGET.sel==L[i]and(i<5 and 100 or -100)or 0))*.1 end end @@ -132,7 +176,7 @@ function scene.draw() --Tip gc.push("transform") - gc.translate(40,650) + gc.translate(260,650) gc.setLineWidth(2) gc.rectangle("line",0,0,tipLength,42) gc.stencil(tipStencil,"replace",1) @@ -147,19 +191,20 @@ function scene.draw() end scene.widgetList={ - WIDGET.newButton{name="offline",x=-1200,y=210,w=700,h=100, color="lR", font=45,align="R",edge=30, code=pressKey"1"}, - WIDGET.newButton{name="qplay", x=-1200,y=330,w=700,h=100, color="lM", font=40,align="R",edge=30, code=pressKey"q"}, - WIDGET.newButton{name="online", x=-1200,y=450,w=700,h=100, color="lPurple",font=45,align="R",edge=30, code=pressKey"a"}, - WIDGET.newButton{name="custom", x=-1200,y=570,w=700,h=100, color="lSea", font=45,align="R",edge=30, code=pressKey"z"}, + WIDGET.newButton{name="offline",x=-1200,y=210,w=800,h=100, color="lR", font=45,align="R",edge=30, code=pressKey"1"}, + WIDGET.newButton{name="qplay", x=-1200,y=330,w=800,h=100, color="lM", font=40,align="R",edge=30, code=pressKey"q"}, + WIDGET.newButton{name="online", x=-1200,y=450,w=800,h=100, color="lPurple",font=45,align="R",edge=30, code=pressKey"a"}, + WIDGET.newButton{name="custom", x=-1200,y=570,w=800,h=100, color="lSea", font=45,align="R",edge=30, code=pressKey"z"}, - WIDGET.newButton{name="setting",x=2480,y=210,w=700,h=100, color="lOrange",font=40,align="L",edge=30, code=pressKey"-"}, - WIDGET.newButton{name="stat", x=2480,y=330,w=700,h=100, color="lLame", font=40,align="L",edge=30, code=pressKey"p"}, - WIDGET.newButton{name="music", x=2480,y=450,w=700,h=100, color="lGreen", font=40,align="L",edge=30, code=pressKey"l"}, - WIDGET.newButton{name="help", x=2480,y=570,w=700,h=100, color="lC", font=40,align="L",edge=30, code=pressKey","}, + WIDGET.newButton{name="setting",x=2480,y=210,w=800,h=100, color="lOrange",font=40,align="L",edge=30, code=pressKey"-"}, + WIDGET.newButton{name="stat", x=2480,y=330,w=800,h=100, color="lLame", font=40,align="L",edge=30, code=pressKey"p"}, + WIDGET.newButton{name="dict", x=2480,y=450,w=800,h=100, color="lGreen", font=40,align="L",edge=30, code=pressKey"l"}, + WIDGET.newButton{name="manual", x=2480,y=570,w=800,h=100, color="lC", font=40,align="L",edge=30, code=pressKey","}, - WIDGET.newButton{name="lang", x=720,y=680,w=200,h=100, color="Y", font=40, code=goScene"lang"}, - WIDGET.newButton{name="dict", x=940,y=680,w=200,h=100, color="orange", font=35, code=goScene"dict"}, - WIDGET.newButton{name="quit", x=1160,y=680,w=200,h=100, color="R", font=40, code=function()VOC.play("bye")SCN.swapTo("quit","slowFade")end}, + WIDGET.newButton{name="music", x=160,y=80,w=200,h=90, color="lOrange",font=35, code=pressKey"f2"}, + WIDGET.newButton{name="lang", x=1120,y=80,w=200,h=90, color="lY", font=40, code=pressKey"f3"}, + WIDGET.newButton{name="about", x=-110,y=670,w=600,h=70, color="B", font=35,align="R",edge=30, code=pressKey"f1"}, + WIDGET.newButton{name="quit", x=1390,y=670,w=600,h=70, color="R", font=40,align="L",edge=30, code=function()VOC.play("bye")SCN.swapTo("quit","slowFade")end}, } return scene \ No newline at end of file