diff --git a/parts/language/lang_en.lua b/parts/language/lang_en.lua index 718880ba..399c972f 100644 --- a/parts/language/lang_en.lua +++ b/parts/language/lang_en.lua @@ -253,7 +253,6 @@ return{ }, mode={ mod="Mods (F1)", - start="Start", }, mod={ title="Mods", diff --git a/parts/language/lang_es.lua b/parts/language/lang_es.lua index 3cde050e..a6737f1d 100644 --- a/parts/language/lang_es.lua +++ b/parts/language/lang_es.lua @@ -220,7 +220,6 @@ return{ }, mode={ mod="Mods (F1)", - start="Empezar", }, mod={ title="Mods", diff --git a/parts/language/lang_fr.lua b/parts/language/lang_fr.lua index b9b8c145..ae9141d9 100644 --- a/parts/language/lang_fr.lua +++ b/parts/language/lang_fr.lua @@ -216,7 +216,6 @@ return{ }, mode={ mod="Mods (F1)", - start="Démarrer", }, mod={ title="Mods", diff --git a/parts/language/lang_id.lua b/parts/language/lang_id.lua index dc05f3cd..36105f0a 100644 --- a/parts/language/lang_id.lua +++ b/parts/language/lang_id.lua @@ -253,7 +253,6 @@ return{ }, mode={ mod="Mod (F1)", - start="Mulai", }, mod={ title="Mod", diff --git a/parts/language/lang_pt.lua b/parts/language/lang_pt.lua index 943fc4c0..3ae6de3e 100644 --- a/parts/language/lang_pt.lua +++ b/parts/language/lang_pt.lua @@ -242,7 +242,6 @@ return{ }, mode={ mod="Mods (F1)", - start="Começar", }, mod={ title="Mods", diff --git a/parts/language/lang_symbol.lua b/parts/language/lang_symbol.lua index 42687312..996b3695 100644 --- a/parts/language/lang_symbol.lua +++ b/parts/language/lang_symbol.lua @@ -144,7 +144,6 @@ return{ }, mode={ mod="?!?!?!(F1)", - start="!!!", }, mod={ title="?!?!?!", diff --git a/parts/language/lang_zh.lua b/parts/language/lang_zh.lua index 1d851fe4..0a9d24e9 100644 --- a/parts/language/lang_zh.lua +++ b/parts/language/lang_zh.lua @@ -253,7 +253,6 @@ return{ }, mode={ mod="Mods (F1)", - start="开始", }, mod={ title="Mods", diff --git a/parts/language/lang_zh_grass.lua b/parts/language/lang_zh_grass.lua index ca217959..670c8a35 100644 --- a/parts/language/lang_zh_grass.lua +++ b/parts/language/lang_zh_grass.lua @@ -251,7 +251,7 @@ return{ }, mode={ mod="多重器官衰竭(F1)", - start="开始", + sel="选择", }, mod={ title="多重器官衰竭", diff --git a/parts/language/lang_zh_trad.lua b/parts/language/lang_zh_trad.lua index ca68d2c2..a9ed8ca7 100644 --- a/parts/language/lang_zh_trad.lua +++ b/parts/language/lang_zh_trad.lua @@ -253,7 +253,6 @@ return{ }, mode={ mod="Mods (F1)", - start="開始", }, mod={ title="Mods", diff --git a/parts/scenes/mode.lua b/parts/scenes/mode.lua index 7596af71..87e917d9 100644 --- a/parts/scenes/mode.lua +++ b/parts/scenes/mode.lua @@ -27,18 +27,24 @@ local function _comp(a,b) return a.type~=b.type and a.type=='folder' end -local function _newItem(item,x0,y0) +function _setPos(self,x,y,dx,dy) + self.x0,self.y0=x,y + self.x,self.y=x+dx,y+dy +end +local function _newItem(item) return{ type=item.folder and'folder'or'mode', name=item.name, - x0=x0,y0=y0, + x0=0,y0=0, + x=0,y=0, w=160,h=160, - x=x0+rnd(-26,26),y=y0+rnd(-26,26), alpha=0, selTime=0, + setPos=_setPos, } end +local _backItem={folder=true,name='_back'} local function _freshPacks() TABLE.cut(results) local t=MODETREE @@ -52,17 +58,20 @@ local function _freshPacks() end local count=0 if path[1]then - ins(results,_newItem({folder=true,name='_back'},0,0)) + ins(results,_newItem(_backItem)) count=1 end for i=1,#t do local item=t[i] if #searchText==0 or item.name:find(searchText)then - ins(results,_newItem(item,180*(count%4),200*int(count/4))) + ins(results,_newItem(item)) count=count+1 end end table.sort(results,_comp) + for i=0,#results-1 do + results[i+1]:setPos(180*(i%4),200*int(i/4),15*i,i) + end end local scene={} @@ -73,22 +82,34 @@ function scene.sceneInit() searchTimer=0 end -function scene.mouseMove(x,y) - selectedItem=false - x,y=x-40,y-150 - if x<-40 or x>=765 or y<-40 or y>=570 then return end - for i=1,#results do - local item=results[i] - if x>item.x0 and xitem.y0 and y=765 or y<-40 or y>=570 then return end + for i=1,#results do + local item=results[i] + if x>item.x and xitem.y and y#results then + i=#results + end + selectedItem=results[i] + end elseif key=='f1'then SCN.go('mod') elseif key=='return'then if isRep then return end + print(selectedItem) if selectedItem then if selectedItem.type=='mode'then loadGame(selectedItem.name) @@ -211,8 +252,7 @@ function scene.draw() end scene.widgetList={ - WIDGET.newButton{name='mod',x=890,y=655,w=140,h=80,font=25,code=goScene'mod'}, - WIDGET.newButton{name='start',x=1040,y=655,w=140,h=80,font=40,code=pressKey'return'}, - WIDGET.newButton{name='back',x=1190,y=655,w=140,h=80,sound='back',font=60,fText=CHAR.icon.back,code=backScene}, + WIDGET.newButton{name='mod',x=930,y=655,w=180,h=80,code=goScene'mod'}, + WIDGET.newButton{name='back',x=1150,y=655,w=180,h=80,sound='back',font=60,fText=CHAR.icon.back,code=backScene}, } return scene