新增漫画购买功能

This commit is contained in:
2022-04-08 12:59:47 +08:00
parent c04ada610f
commit 4cc5567568
4 changed files with 245 additions and 24 deletions

View File

@@ -39,12 +39,13 @@ public abstract class Model implements ModelInterface {
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 final String ROUTER_ADD = "!添加设备";
public static final String ROUTER_DEL = "!删除设备";
public static final String BT_DOWNLOAD = "下载bt";
public static final String BILI_MANGA_SIGN="!b站漫画签到";
public static final String BILI_MANGA_PAY="!b站漫画积分兑换";
public static final String BILI_MANGA_PAY_STOP="!b站漫画积分兑换取消";
}
@@ -65,7 +66,7 @@ public abstract class Model implements ModelInterface {
public void onMessage(Long qq, MessageEvent event, boolean isGroup) {
msg = event.getMessage().contentToString();
msg = msg.replace("", "!");
msg = msg.replace("", "!").trim();
this.isGroup = isGroup;
if (isGroup) {
user=event.getSource().getFromId();

View File

@@ -3,13 +3,14 @@ package com.yutou.qqbot.models.WebSign;
import com.yutou.qqbot.QQBotManager;
import com.yutou.qqbot.bilibili.BiliBiliManga;
import com.yutou.qqbot.bilibili.BiliLogin;
import com.yutou.qqbot.interfaces.ObjectInterface;
import com.yutou.qqbot.models.Model;
import com.yutou.qqbot.utlis.QRCodeUtils;
import net.mamoe.mirai.event.events.MessageEvent;
import java.io.File;
public class BiliBiliMangeSign extends Model {
public class BiliBiliMangeSign extends Model {
@Override
public boolean isUserPublic() {
return false;
@@ -18,40 +19,98 @@ public class BiliBiliMangeSign extends Model {
@Override
public String[] getUsePowers() {
return new String[]{
QQFromCommands.BILI_MANGA_SIGN
QQFromCommands.BILI_MANGA_SIGN,
QQFromCommands.BILI_MANGA_PAY,
QQFromCommands.BILI_MANGA_PAY_STOP
};
}
@Override
public void onMessage(Long qq, MessageEvent event, boolean isGroup) {
super.onMessage(qq, event, isGroup);
if(msg.equals(QQFromCommands.BILI_MANGA_SIGN)){
if (msg.equals(QQFromCommands.BILI_MANGA_SIGN)) {
String msg;
if(new BiliLogin().testLogin()){
if(BiliBiliManga.sign()==null){
msg="B站漫画已经签到过了";
}else{
msg="B站漫画签到完成";
if (new BiliLogin().testLogin()) {
if (BiliBiliManga.sign() == null) {
msg = "B站漫画已经签到过了";
} else {
msg = "B站漫画签到完成";
}
QQBotManager.getInstance().sendMessage(qq,msg);
}else{
QQBotManager.getInstance().sendMessage(qq, msg);
} else {
String url = new BiliLogin().login().getString("url");
File code = QRCodeUtils.createQRCode("bili_login",url);
QQBotManager.getInstance().sendMessage(code,qq,"B站未登录,请扫码登陆后再试");
File code = QRCodeUtils.createQRCode("bili_login", url);
QQBotManager.getInstance().sendMessage(code, qq, "B站未登录,请扫码登陆后再试");
}
} else if (msg.equals(QQFromCommands.BILI_MANGA_PAY)) {
StringBuilder builder = new StringBuilder();
if (BiliBiliManga.isPayMission()) {
builder.append("当前已有执行任务:").append(BiliBiliManga.getMission());
QQBotManager.getInstance().sendMessage(qq, builder.toString());
return;
}
builder.append("-------商城列表-------").append("\n");
for (BiliBiliManga.Product product : BiliBiliManga.getListProduct()) {
builder.append(product).append("\n");
}
builder.append("-------------------").append("\n");
builder.append("使用方法:")
.append(QQFromCommands.BILI_MANGA_PAY)
.append(" id 数量[num]")
.append("\n");
builder.append("参数说明:")
.append("\n")
.append("id=物品id")
.append("\n")
.append("num=物品数量,缺省或-1为全部")
.append("\n");
QQBotManager.getInstance().sendMessage(qq, builder.toString());
}else if(msg.equals(QQFromCommands.BILI_MANGA_PAY_STOP)){
new BiliBiliManga().stopPayMission();
} else if (msg.startsWith(QQFromCommands.BILI_MANGA_PAY)) {
msg = msg.replace(QQFromCommands.BILI_MANGA_PAY, "");
String[] message = msg.split(" ");
int num = 0;
int id = 0;
if (message.length < 2) {
try {
id = Integer.parseInt(message[0]);
} catch (Exception e) {
QQBotManager.getInstance().sendMessage(qq, "商城id错误");
return;
}
} else {
num = Integer.parseInt(message[1]);
}
if (id == 0) {
QQBotManager.getInstance().sendMessage(qq, "商城id错误");
return;
}
BiliBiliManga manga = new BiliBiliManga();
manga.addInterface(new ObjectInterface() {
@Override
public void out(String data) {
super.out(data);
if(!data.startsWith("[2]")||!data.startsWith("[4]")){
QQBotManager.getInstance().sendMessage(qq,"任务异常:"+data);
manga.stopPayMission();
}
}
});
QQBotManager.getInstance().sendMessage(qq, manga.startPayMission(id, num).getString("msg"));
}
}
@Override
public void onTime(String time) {
super.onTime(time);
if("00:01:00".equals(time)){
if(new BiliLogin().testLogin()){
if ("00:01:00".equals(time)) {
if (new BiliLogin().testLogin()) {
String msg;
if(BiliBiliManga.sign()==null){
msg="B站漫画已经签到过了";
}else{
msg="B站漫画签到完成";
if (BiliBiliManga.sign() == null) {
msg = "B站漫画已经签到过了";
} else {
msg = "B站漫画签到完成";
}
QQBotManager.getInstance().sendMessage(msg);
}