2025-08-28 13:49:55 +08:00
|
|
|
package com.coloryr.allmusic.server.core.command.sub;
|
2023-10-22 10:14:55 +08:00
|
|
|
|
2024-04-19 09:46:54 +08:00
|
|
|
import com.coloryr.allmusic.server.core.AllMusic;
|
2026-02-26 20:18:57 +08:00
|
|
|
import com.coloryr.allmusic.server.core.IMusicApi;
|
2025-08-28 13:49:55 +08:00
|
|
|
import com.coloryr.allmusic.server.core.command.ACommand;
|
2026-02-26 20:18:57 +08:00
|
|
|
import com.coloryr.allmusic.server.core.music.PlayMusic;
|
2024-04-19 09:46:54 +08:00
|
|
|
import com.coloryr.allmusic.server.core.objs.music.SongInfoObj;
|
2025-03-24 18:20:45 +08:00
|
|
|
import com.coloryr.allmusic.server.core.sql.DataSql;
|
2023-10-22 10:14:55 +08:00
|
|
|
|
2024-04-17 22:15:12 +08:00
|
|
|
import java.util.ArrayList;
|
|
|
|
|
import java.util.Collections;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
public class CommandBan extends ACommand {
|
2023-10-22 10:14:55 +08:00
|
|
|
@Override
|
2025-01-19 22:51:01 +08:00
|
|
|
public void execute(Object sender, String name, String[] args) {
|
2026-02-26 20:18:57 +08:00
|
|
|
if (args.length < 2) {
|
2024-04-17 22:15:12 +08:00
|
|
|
AllMusic.side.sendMessage(sender, AllMusic.getMessage().command.error);
|
2023-10-22 10:14:55 +08:00
|
|
|
return;
|
|
|
|
|
}
|
2026-02-26 20:18:57 +08:00
|
|
|
|
|
|
|
|
String musicID = null;
|
|
|
|
|
IMusicApi api = null;
|
|
|
|
|
|
|
|
|
|
if (args.length == 2) {
|
|
|
|
|
api = AllMusic.MUSIC_APIS.get(AllMusic.getConfig().defaultApi);
|
|
|
|
|
musicID = args[1];
|
|
|
|
|
} else if (args.length == 3) {
|
|
|
|
|
api = AllMusic.MUSIC_APIS.get(args[1]);
|
|
|
|
|
musicID = args[2];
|
|
|
|
|
} else {
|
2026-03-04 13:57:59 +08:00
|
|
|
AllMusic.side.sendMessage(sender, "<light_purple>[AllMusic3]<dark_green>错误的指令");
|
2026-02-26 20:18:57 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (api == null) {
|
|
|
|
|
AllMusic.side.sendMessage(sender, AllMusic.getMessage().musicPlay.error2);
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (api.checkId(musicID)) {
|
|
|
|
|
DataSql.addBanMusic(musicID, api.getId());
|
2026-03-04 13:57:59 +08:00
|
|
|
AllMusic.side.sendMessage(sender, "<light_purple>[AllMusic3]<dark_green>音乐API " + api.getId() + " 已禁止点歌" + musicID);
|
2023-10-22 10:14:55 +08:00
|
|
|
} else {
|
2026-03-04 13:57:59 +08:00
|
|
|
AllMusic.side.sendMessage(sender, "<light_purple>[AllMusic3]<dark_green>请输入有效的ID");
|
2023-10-22 10:14:55 +08:00
|
|
|
}
|
|
|
|
|
}
|
2024-04-17 22:15:12 +08:00
|
|
|
|
|
|
|
|
@Override
|
2025-03-09 21:24:18 +08:00
|
|
|
public List<String> tab(Object player, String name, String[] args, int index) {
|
2026-01-31 19:06:53 +08:00
|
|
|
if (args.length == index || (args.length == index + 1)) {
|
2024-04-17 22:15:12 +08:00
|
|
|
List<String> list = new ArrayList<>();
|
|
|
|
|
if (PlayMusic.nowPlayMusic != null) {
|
|
|
|
|
list.add(PlayMusic.nowPlayMusic.getID());
|
|
|
|
|
}
|
|
|
|
|
for (SongInfoObj item : PlayMusic.getList()) {
|
|
|
|
|
list.add(item.getID());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return list;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return Collections.emptyList();
|
|
|
|
|
}
|
2023-10-22 10:14:55 +08:00
|
|
|
}
|