package com.yutou.qqbot.models; import com.yutou.qqbot.QQNumberManager; import com.yutou.qqbot.interfaces.ModelInterface; import net.mamoe.mirai.event.events.GroupMessageEvent; import net.mamoe.mirai.event.events.MessageEvent; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.List; public abstract class Model implements ModelInterface { public static class QQGroupCommands { public final static String QQ_HELP = "!help"; public final static String QQ_SYSTEM_RESTART = "!restart"; public final static String QQ_UPDATE_IP = "!更新ip"; public final static String QQ_GET_IP = "!ip"; public final static String QQ_OPEN_PC = "!开机"; public final static String QQ_GET_VERSION = "!version"; public final static String QQ_CMD = "!cmd"; public final static String QQ_BANGUMI_TODAY = "!今日动画"; public final static String QQ_BANGUMI_LIST = "!新番"; public final static String QQ_BANGUMI_SUB = "!查动画"; public final static String QQ_AUDIO = "!语音"; public final static String QQ_AUDIO_OPEN_LAMP = "!开灯"; public final static String QQ_AUDIO_OPEN_AIR = "!开空调"; public final static String QQ_BT_RELOAD = "!刷bt"; public final static String QQ_TOOLS_IDEA = "!idea"; public final static String QQ_TOOLS_IDEA_FILE = "!idea>"; public final static String QQ_TOOLS_IDEA_URL = "!idea_url"; public final static String QQ_BANGUMI_INFO = "!保存动画信息>"; } public static class QQFromCommands { public static final String TURNIP_PROPHET = "大头菜"; public static final String TSDM_PAY = "!tsdm"; public static final String TSDM_SIGN = "!tsdm签到"; public static final String BAIDU_DOWN = "!bd"; } public static List> classList = new ArrayList<>(); long group; public Model() { if (!classList.contains(getClass())) { classList.add(getClass()); } } public String msg; protected boolean isGroupPower = false; public void onMessage(Long qq, MessageEvent event, boolean isGroup) { msg = event.getMessage().contentToString(); msg = msg.replace("!", "!"); if(isGroup) { GroupMessageEvent groupEvent = (GroupMessageEvent) event; group = groupEvent.getGroup().getId(); if (QQNumberManager.getManager().isExistsPower(group, msg.split(" ")[0])) { isGroupPower = true; } } } public void onTime(String time) { } public static StringBuilder getCommands(Class commands) { StringBuilder builder = new StringBuilder(); for (Field field : commands.getDeclaredFields()) { try { field.setAccessible(true); builder.append(field.get(null)).append("\n"); } catch (IllegalAccessException e) { e.printStackTrace(); } } return builder; } }