mirror of
https://github.com/Anuken/Mindustry.git
synced 2026-01-25 05:51:47 -08:00
Add search option for mod browser (#4391)
* add search option * mods.browser.sortdate * mods.browser * Update bundle_ko.properties * oopsie * clearPartiali * half of my brain cells failed to boot
This commit is contained in:
parent
d393230add
commit
65f97edbc5
3 changed files with 17 additions and 1 deletions
|
|
@ -45,6 +45,8 @@ mod.featured.dialog.title = Mod Browser (WIP)
|
|||
mods.browser.selected = Selected mod
|
||||
mods.browser.add = Install
|
||||
mods.github.open = View
|
||||
mods.browser.sortdate = Sort by recent
|
||||
mods.browser.sortstars = Sort by stars
|
||||
|
||||
schematic = Schematic
|
||||
schematic.add = Save Schematic...
|
||||
|
|
|
|||
|
|
@ -45,6 +45,8 @@ mod.featured.dialog.title = 모드 탐색 (WIP)
|
|||
mods.browser.selected = 선택된 모드
|
||||
mods.browser.add = 모드 설치
|
||||
mods.github.open = 깃허브 사이트 열기
|
||||
mods.browser.sortdate = 최근 업데이트
|
||||
mods.browser.sortstars = 추천(스타) 수
|
||||
|
||||
schematic = 설계도
|
||||
schematic.add = 설계도 저장하기
|
||||
|
|
|
|||
|
|
@ -8,6 +8,7 @@ import arc.graphics.*;
|
|||
import arc.graphics.g2d.*;
|
||||
import arc.input.*;
|
||||
import arc.scene.style.*;
|
||||
import arc.scene.ui.*;
|
||||
import arc.scene.ui.TextButton.*;
|
||||
import arc.struct.*;
|
||||
import arc.util.*;
|
||||
|
|
@ -31,6 +32,7 @@ import static mindustry.Vars.*;
|
|||
public class ModsDialog extends BaseDialog{
|
||||
private String searchtxt = "";
|
||||
private @Nullable Seq<ModListing> modList;
|
||||
private boolean orderDate = true;
|
||||
|
||||
public ModsDialog(){
|
||||
super("@mods");
|
||||
|
|
@ -176,6 +178,10 @@ public class ModsDialog extends BaseDialog{
|
|||
searchtxt = res;
|
||||
rebuildBrowser[0].run();
|
||||
}).growX().get();
|
||||
table.button(Icon.list, Styles.clearPartiali, 32f, () -> {
|
||||
orderDate = !orderDate;
|
||||
rebuildBrowser[0].run();
|
||||
}).update(b -> b.getStyle().imageUp = (orderDate? Icon.list : Icon.star)).size(40f).get().addListener(new Tooltip(tip -> tip.label(() -> orderDate? "$mods.browser.sortdate" : "$mods.browser.sortstars").left()));
|
||||
}).fillX().padBottom(4);
|
||||
|
||||
browser.cont.row();
|
||||
|
|
@ -186,8 +192,14 @@ public class ModsDialog extends BaseDialog{
|
|||
tablebrow.clear();
|
||||
tablebrow.add("@loading");
|
||||
|
||||
getModList(listings -> {
|
||||
getModList(rlistings -> {
|
||||
tablebrow.clear();
|
||||
|
||||
Seq<ModListing> listings = rlistings;
|
||||
if(!orderDate){
|
||||
listings = rlistings.copy();
|
||||
listings.sort((m1, m2) -> Integer.compare(m2.stars, m1.stars));
|
||||
}
|
||||
|
||||
for(ModListing mod : listings){
|
||||
if(mod.hasJava || !searchtxt.isEmpty() && !mod.repo.toLowerCase().contains(searchtxt.toLowerCase()) || (Vars.ios && mod.hasScripts)) continue;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue