Files
AllMusic/core/command/TabCommand.java
T

101 lines
2.6 KiB
Java
Raw Normal View History

2023-03-02 08:42:34 +08:00
package coloryr.allmusic.core.command;
2020-02-26 22:04:53 +08:00
2023-03-02 08:42:34 +08:00
import coloryr.allmusic.core.AllMusic;
2020-02-26 22:04:53 +08:00
import java.util.ArrayList;
import java.util.List;
public class TabCommand {
2023-01-06 17:27:35 +08:00
/**
* 个人的指令
*/
2022-01-03 15:27:38 +08:00
private static final List<String> normal = new ArrayList<String>() {{
2021-06-08 23:28:03 +08:00
this.add("stop");
this.add("list");
this.add("vote");
this.add("nomusic");
this.add("search");
this.add("hud");
}};
2023-01-06 17:27:35 +08:00
/**
* 搜歌的指令
*/
2022-01-03 15:27:38 +08:00
private static final List<String> search = new ArrayList<String>() {{
2021-06-08 23:28:03 +08:00
this.add("select");
this.add("nextpage");
this.add("lastpage");
}};
2023-01-06 17:27:35 +08:00
/**
* 管理员的指令
*/
2022-01-03 15:27:38 +08:00
private static final List<String> admin = new ArrayList<String>() {{
2021-06-08 23:28:03 +08:00
this.add("reload");
this.add("next");
this.add("ban");
this.add("delete");
this.add("addlist");
this.add("clearlist");
this.add("login");
}};
2023-01-06 17:27:35 +08:00
/**
* Hud的指令
*/
2022-01-03 15:27:38 +08:00
private static final List<String> hudlist = new ArrayList<String>() {{
2021-06-08 23:28:03 +08:00
this.add("info");
this.add("list");
this.add("lyric");
this.add("pic");
}};
2023-01-06 17:27:35 +08:00
/**
* Hud的指令
*/
2022-01-03 15:27:38 +08:00
private static final List<String> hud = new ArrayList<String>() {{
2021-06-08 23:28:03 +08:00
this.add("info");
this.add("list");
this.add("lyric");
2021-06-08 23:46:06 +08:00
this.add("pic");
2022-12-27 10:31:41 +08:00
this.add("picsize");
2023-01-09 15:56:26 +08:00
this.add("picrotate");
this.add("picrotatespeed");
2021-06-08 23:28:03 +08:00
this.add("enable");
this.add("reset");
}};
2022-01-03 15:27:38 +08:00
2023-01-06 17:27:35 +08:00
/**
* 获取Tab指令列表
2023-01-08 20:55:21 +08:00
*
2023-01-06 17:27:35 +08:00
* @param name 用户名
2023-01-08 20:55:21 +08:00
* @param arg 参数
2023-01-06 17:27:35 +08:00
* @return 指令列表
*/
2021-06-21 22:25:17 +08:00
public static List<String> getTabList(String name, String[] arg) {
2020-02-26 22:04:53 +08:00
List<String> arguments = new ArrayList<>();
2023-03-02 13:58:07 +08:00
if (arg.length == 0 || arg.length == 1) {
2021-06-08 23:28:03 +08:00
arguments.addAll(normal);
2020-04-19 20:36:12 +08:00
if (AllMusic.getSearch(name) != null) {
2021-06-08 23:28:03 +08:00
arguments.addAll(search);
2020-03-05 19:27:39 +08:00
}
2023-01-06 17:03:07 +08:00
if (AllMusic.getConfig().Admin.contains(name)) {
2021-06-08 23:28:03 +08:00
arguments.addAll(admin);
2020-03-02 21:25:31 +08:00
}
2023-03-02 13:58:07 +08:00
} else if (arg.length == 2) {
if ("hud".equalsIgnoreCase(arg[0]) &&
"enable".equalsIgnoreCase(arg[1])) {
arguments.addAll(hudlist);
}
else if ("hud".equalsIgnoreCase(arg[0])) {
2021-06-08 23:28:03 +08:00
arguments.addAll(hud);
2023-03-02 13:58:07 +08:00
}
} else if (arg.length == 3) {
if ("hud".equalsIgnoreCase(arg[0]) &&
"enable".equalsIgnoreCase(arg[1])) {
arguments.addAll(hudlist);
2020-03-02 21:25:31 +08:00
}
2020-02-26 22:04:53 +08:00
}
return arguments;
}
}