虚拟按键显示开关移至菜单第一页

修改部分不常用设置时会显示警告
This commit is contained in:
MrZ626
2021-11-24 19:33:08 +08:00
parent 63f69d712b
commit c92f15156b
13 changed files with 52 additions and 22 deletions

View File

@@ -297,6 +297,15 @@ function legalGameTime()--Check if today's playtime is legal
end
return true
end
do--function trySettingWarn()
local lastWarnTime=0
function trySettingWarn()
if TIME()-lastWarnTime>2.6 then
MES.new('warn',text.settingWarn,5)
end
lastWarnTime=TIME()
end
end
function mergeStat(stat,delta)--Merge delta stat. to global stat.
for k,v in next,delta do
@@ -818,13 +827,17 @@ do--function pressKey(k)
end
do--CUS/SETXXX(k)
local CUSTOMENV=CUSTOMENV
local warnList={
'ims','RS','FTLock','frameMul','highCam',
'VKSwitch','VKIcon','VKTrack','VKDodge',
}
function CUSval(k)return function()return CUSTOMENV[k]end end
function ROOMval(k)return function()return ROOMENV[k]end end
function SETval(k)return function()return SETTING[k]end end
function CUSrev(k)return function()CUSTOMENV[k]=not CUSTOMENV[k]end end
function ROOMrev(k)return function()ROOMENV[k]=not ROOMENV[k]end end
function SETrev(k)return function()SETTING[k]=not SETTING[k]end end
function SETrev(k)return function()if TABLE.find(warnList,k)then trySettingWarn()end SETTING[k]=not SETTING[k]end end
function CUSsto(k)return function(i)CUSTOMENV[k]=i end end
function ROOMsto(k)return function(i)ROOMENV[k]=i end end
function SETsto(k)return function(i)SETTING[k]=i end end
function SETsto(k)return function(i)if TABLE.find(warnList,k)then trySettingWarn()end SETTING[k]=i end end
end

View File

@@ -15,6 +15,7 @@ return{
newDay="A new day, a new beginning!",
playedLong="You have been playing for a long time. Time to a break!",
playedTooMuch="You have been playing for far too long! Techmino is fun, but remember to have some rests!",
settingWarn="Modifing uncommon setting, be careful!",
atkModeName={"Random","Badges","K.O.s","Attackers"},
royale_remain="$1 Players Remains",
@@ -332,6 +333,7 @@ return{
ctrl="Control Settings",
key="Key Mappings",
touch="Touch Settings",
showVK="Show Virtual Keys",
reTime="Start Delay",
RS="Rotation System",
menuPos="Menu Button Pos.",
@@ -463,7 +465,6 @@ return{
norm="Normal",
pro="Advanced",
hide="Show Virtual Keys",
icon="Icon",
sfx="SFX",
vib="VIB",

View File

@@ -5,6 +5,7 @@ return{
newDay="[Anti-adicción] ¡Nuevo día, nuevo comienzo!",
playedLong="[Anti-adicción] Estuviste jugando un buen rato hoy. Recuerda descansar de vez en cuando.",
playedTooMuch="[Anti-adicción] ¡Has jugado mucho por hoy! No puedes jugar más.",
-- settingWarn="Modifing uncommon setting, be careful!",
atkModeName={"Al azar","Medallas","KOs","Atacantes"},
royale_remain="$1 Jugadores Restantes",
@@ -298,6 +299,7 @@ return{
ctrl="Sensibilidad",
key="Teclas",
touch="Controles Táctiles",
showVK="Mostrar Tec. Virtual",
reTime="Retraso de Inicio",
RS="Sistema de Rotación",
menuPos="Pos. del Botón de Menú",
@@ -428,7 +430,6 @@ return{
norm="Normal",
pro="Profesional",
hide="Mostrar Tec. Virtual",
icon="Ícono",
sfx="SFX",
vib="Vibr.",

View File

@@ -5,6 +5,7 @@ return{
newDay="[Anti-addiction] Nouveau jour, nouveau commencement !",
playedLong="[Anti-addiction] Vous avez joué pendant un bon bout de temps aujourd'hui. Faites des pauses.",
playedTooMuch="[Anti-addiction] Vous avez joué trop longtemps ! Vous ne pouvez plus jouer.",
-- settingWarn="Modifing uncommon setting, be careful!",
atkModeName={"Aléatoire","Badges","K.O.s faciles","Attaquants"},
royale_remain="$1 Joueurs restants",
@@ -295,6 +296,7 @@ return{
ctrl="Paramètres de contrôle",
key="Touches",
touch="Boutons virtuels",
showVK="Montrer les touches virtuelles",
reTime="Délai de démarrage",
RS="Système de rotation",
-- menuPos="Menu button pos.",
@@ -429,7 +431,6 @@ return{
norm="Normal",
pro="Professionel",
hide="Montrer les touches virtuelles",
icon="Icône",
sfx="Sons",
vib="Vib.",

View File

@@ -6,6 +6,7 @@ return{
newDay="[Anti-vício] Novo dia, um começo novo!",
playedLong="[Anti-vício] Você andou jogando bastante hoje. Certifique-se de fazer pausas.",
playedTooMuch="[Anti-vício] Você esteve jogando demais hoje! Você não pode jogar mais.",
-- settingWarn="Modifing uncommon setting, be careful!",
atkModeName={"Aleatório","Emblemas","K.O.s","Atacantes"},
royale_remain="$1 Jogadores restantes",
@@ -320,6 +321,7 @@ return{
ctrl="Config. controle",
key="Map. teclas",
touch="Config. toque",
showVK="Mostrar tecla virtual",
reTime="Demora iniciação",
RS="Sistema de rotação",
-- menuPos="Menu button pos.",
@@ -451,7 +453,6 @@ return{
norm="Normal",
pro="Professional",
hide="Mostrar tecla virtual",
icon="Icone",
sfx="SFX",
vib="VIB",

View File

@@ -227,6 +227,7 @@ return{
ctrl="=?=",
key="=?",
touch="_?",
showVK="--?",
reTime="3-2-1",
RS="''?",
menuPos="←M→?",
@@ -356,7 +357,6 @@ return{
norm="-",
pro="+",
hide="--?",
icon="@?",
sfx="#!#",
vib="=~=",

View File

@@ -11,6 +11,7 @@ return{fallback='zh',
},
playedLong="玩很久了, 给我注意点",
playedTooMuch="特么再敢玩眼睛瞎掉, 爬!",
settingWarn="别乱动,小心点",
royale_remain="剩 $1 人",
cmb={nil,"1连","2连","3连","4连","5连","6连","7连","8连","9连","10连!","11连!","12连!","13连!","14连!","15连!","16连!","17连!","18连!","19连!","Very 连"},

View File

@@ -15,6 +15,7 @@ return{
newDay="新的一天,新的开始~",
playedLong="已经玩很久了!注意休息!",
playedTooMuch="今天玩太久啦!打块好玩但也要适可而止哦~",
settingWarn="正在修改不常用设置,小心操作!",
atkModeName={"随机","徽章","击杀","反击"},
royale_remain="剩余 $1 名玩家",
@@ -332,6 +333,7 @@ return{
ctrl="控制设置",
key="键位设置",
touch="触屏设置",
showVK="显示虚拟按键",
reTime="开局等待时间",
RS="旋转系统",
menuPos="菜单按钮位置",
@@ -462,7 +464,6 @@ return{
norm="标准",
pro="专业",
hide="显示虚拟按键",
icon="图标",
sfx="按键音效",
vib="按键振动",

View File

@@ -15,6 +15,7 @@ return{
newDay="新的一天,新的开始!",
playedLong="你已经玩了很长时间了。一定要好好休息!",
playedTooMuch="你玩得太久了!玩方块游戏很有趣,但现在是休息的时候了。",
settingWarn="修改设置时,请小心!",
atkModeName={"随机的","徽章","击败","攻击者"},
royale_remain="剩余$1球员",
@@ -330,6 +331,7 @@ return{
ctrl="控制设置",
key="键映射",
touch="触摸设置",
showVK="显示虚拟密钥",
reTime="启动延迟",
RS="轮换制",
menuPos="菜单按钮位置",
@@ -460,7 +462,6 @@ return{
norm="正常",
pro="专业的",
hide="显示虚拟密钥",
icon="偶像",
sfx="特技效果",
vib="振动",

View File

@@ -15,6 +15,7 @@ return{
newDay="新的一天,新的開始~",
playedLong="你玩太久了!注意休息!",
playedTooMuch="今天玩得太久啦Techmino好玩但也要注意休息哦~",
settingWarn="正在修改不常用設定,小心操作!",
atkModeName={"隨機","徽章","K.O.","反擊"},
royale_remain="剩下 $1 名玩家",
@@ -331,6 +332,7 @@ return{
ctrl="控制設置",
key="鍵位設置",
touch="觸控設置",
showVK="顯示虛擬擊鍵",
reTime="開局等待時間",
RS="旋轉系統",
menuPos="菜單按鈕位置",
@@ -461,7 +463,6 @@ return{
norm="標準",
pro="專業",
hide="顯示虛擬擊鍵",
icon="圖標",
sfx="擊鍵音效",
vib="擊鍵振動",

View File

@@ -39,8 +39,9 @@ scene.widgetList={
WIDGET.newButton{name='layout', x=250, y=540, w=200,h=70,font=35,code=goScene'setting_skin'},
WIDGET.newButton{name='ctrl', x=290, y=220, w=320,h=80,font=35,code=goScene'setting_control'},
WIDGET.newButton{name='key', x=640, y=220, w=320,h=80,color=MOBILE and'dH',font=35,code=goScene'setting_key'},
WIDGET.newButton{name='touch', x=990, y=220, w=320,h=80,color=not MOBILE and'dH',font=35,code=goScene'setting_touch'},
WIDGET.newButton{name='key', x=640, y=220, w=320,h=80,color=MOBILE and'dH',font=35, code=goScene'setting_key'},
WIDGET.newButton{name='touch', x=990, y=220, w=320,h=80,color=not MOBILE and'dH',font=35, code=goScene'setting_touch',hideF=function()return not SETTING.VKSwitch end},
WIDGET.newSwitch{name='showVK', x=1100, y=150, lim=400, disp=SETval('VKSwitch'), code=SETrev('VKSwitch')},
WIDGET.newSlider{name='reTime', x=330, y=320, w=300,lim=180,unit=10,disp=SETval('reTime'), code=SETsto('reTime'),show=function(S)return(.5+S.disp()*.25).."s"end},
WIDGET.newSelector{name='RS', x=300, y=420, w=300,color='S', disp=SETval('RS'), code=SETsto('RS'),list={'TRS','SRS','SRS_plus','SRS_X','BiRS','ARS_Z','ASC','ASC_plus','C2','C2_sym','Classic','Classic_plus','None','None_plus'}},
WIDGET.newSelector{name='menuPos',x=980, y=320, w=300,color='O', disp=SETval('menuPos'), code=SETsto('menuPos'),list={'left','middle','right'}},

View File

@@ -62,6 +62,7 @@ local function _nextSkin(i)
SETTING.skin[i]=SETTING.skin[i]%16+1
end
local function _nextDir(i)
trySettingWarn()
SETTING.face[i]=(SETTING.face[i]+1)%4
minoRot0[i]=minoRot0[i]+1.5707963
if not selEggMode and not GAME.playing then

View File

@@ -5,7 +5,7 @@ function scene.sceneInit()
end
function scene.draw()
if SETTING.VKSwitch and SETTING.VKTrack then
if SETTING.VKTrack then
love.graphics.setColor(1,1,1)
setFont(30)
mStr(text.VKTchW,140+500*SETTING.VKTchW,800-WIDGET.scrollPos)
@@ -15,9 +15,17 @@ function scene.draw()
end
local function _VKAdisp(n)return function()return VK_ORG[n].ava end end
local function _VKAcode(n)return function()VK_ORG[n].ava=not VK_ORG[n].ava end end
local function _notShow()return not SETTING.VKSwitch end
local function _notTrack()return not(SETTING.VKSwitch and SETTING.VKTrack)end
local function _VKAcode(n)
return n<10 and
function()
VK_ORG[n].ava=not VK_ORG[n].ava
trySettingWarn()
end or
function()
VK_ORG[n].ava=not VK_ORG[n].ava
end
end
local function _notTrack()return not SETTING.VKTrack end
scene.widgetScrollHeight=340
scene.widgetList={
@@ -44,13 +52,12 @@ scene.widgetList={
WIDGET.newButton{name='norm', x=840, y=80, w=240,h=80, font=35,code=function()for i=1,20 do VK_ORG[i].ava=i<11 end end},
WIDGET.newButton{name='pro', x=1120, y=80, w=240,h=80, font=35,code=function()for i=1,20 do VK_ORG[i].ava=true end end},
WIDGET.newSwitch{name='hide', x=1150, y=200, lim=400, font=40,disp=SETval('VKSwitch'),code=SETrev('VKSwitch')},
WIDGET.newSwitch{name='icon', x=1150, y=300, lim=400, font=40,disp=SETval('VKIcon'),code=SETrev('VKIcon'),hideF=_notShow},
WIDGET.newSlider{name='sfx', x=830, y=380, lim=160,w=400, font=35,change=function()SFX.play('virtualKey',SETTING.VKSFX)end,disp=SETval('VKSFX'),code=SETsto('VKSFX'),hideF=_notShow},
WIDGET.newSlider{name='vib', x=830, y=450, lim=160,w=400,unit=6, font=35,change=function()if SETTING.vib>0 then VIB(SETTING.vib+SETTING.VKVIB)end end,disp=SETval('VKVIB'),code=SETsto('VKVIB'),hideF=_notShow},
WIDGET.newSlider{name='alpha', x=830, y=520, lim=160,w=400, font=40,disp=SETval('VKAlpha'),code=SETsto('VKAlpha'),hideF=_notShow},
WIDGET.newSwitch{name='icon', x=1150, y=240, lim=400, font=35,disp=SETval('VKIcon'),code=SETrev('VKIcon')},
WIDGET.newSlider{name='sfx', x=830, y=320, lim=160,w=400, font=35,change=function()SFX.play('virtualKey',SETTING.VKSFX)end,disp=SETval('VKSFX'),code=SETsto('VKSFX')},
WIDGET.newSlider{name='vib', x=830, y=390, lim=160,w=400,unit=6, font=35,change=function()if SETTING.vib>0 then VIB(SETTING.vib+SETTING.VKVIB)end end,disp=SETval('VKVIB'),code=SETsto('VKVIB')},
WIDGET.newSlider{name='alpha', x=830, y=460, lim=160,w=400, font=35,disp=SETval('VKAlpha'),code=SETsto('VKAlpha')},
WIDGET.newSwitch{name='track', x=360, y=720, lim=250, font=35,disp=SETval('VKTrack'),code=SETrev('VKTrack'),hideF=_notShow},
WIDGET.newSwitch{name='track', x=360, y=720, lim=250, font=35,disp=SETval('VKTrack'),code=SETrev('VKTrack')},
WIDGET.newSwitch{name='dodge', x=800, y=720, lim=250, font=35,disp=SETval('VKDodge'),code=SETrev('VKDodge'),hideF=_notTrack},
WIDGET.newSlider{name='tchW', x=140, y=860, w=1000, font=35,disp=SETval('VKTchW'),code=function(i)SETTING.VKTchW=i SETTING.VKCurW=math.max(SETTING.VKCurW,i)end,hideF=_notTrack},
WIDGET.newSlider{name='curW', x=140, y=930, w=1000, font=35,disp=SETval('VKCurW'),code=function(i)SETTING.VKCurW=i SETTING.VKTchW=math.min(SETTING.VKTchW,i)end,hideF=_notTrack},