koishi-plugin-toram 2.0.8 → 2.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/function/player.d.ts +4 -6
- package/lib/index.d.ts +3 -2
- package/lib/index.js +99 -236
- package/package.json +3 -2
package/lib/function/player.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export interface PlayerData {
|
|
|
6
6
|
dishes: string;
|
|
7
7
|
path: number;
|
|
8
8
|
qqOpenId: string;
|
|
9
|
+
chatId: string;
|
|
10
|
+
chatStartTime: number;
|
|
9
11
|
}
|
|
10
12
|
export declare class Player {
|
|
11
13
|
id: number;
|
|
@@ -13,15 +15,11 @@ export declare class Player {
|
|
|
13
15
|
dishes: Dish[];
|
|
14
16
|
path: number;
|
|
15
17
|
qqOpenId: string;
|
|
18
|
+
chatId: string;
|
|
19
|
+
chatStartTime: number;
|
|
16
20
|
constructor(playerData: PlayerData);
|
|
17
21
|
reName(name: string): void;
|
|
18
22
|
getData(): PlayerData;
|
|
19
23
|
}
|
|
20
|
-
export interface BanData {
|
|
21
|
-
qqOpenId: string;
|
|
22
|
-
reason: string;
|
|
23
|
-
startTime: number;
|
|
24
|
-
banTime: number;
|
|
25
|
-
}
|
|
26
24
|
export declare function getPlayerName(event: Event): Promise<string>;
|
|
27
25
|
export declare function getPlayer(event: Event, name?: string): Promise<PlayerData>;
|
package/lib/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Context, Logger, Schema, Session } from 'koishi';
|
|
2
2
|
import { Cache } from './function/cache';
|
|
3
|
-
import {
|
|
3
|
+
import { PlayerData } from './function/player';
|
|
4
4
|
import { MonsterData } from './function/monster';
|
|
5
5
|
export declare const name = "toram";
|
|
6
6
|
export declare const inject: string[];
|
|
@@ -8,11 +8,11 @@ declare module 'koishi' {
|
|
|
8
8
|
interface Tables {
|
|
9
9
|
monster: MonsterData;
|
|
10
10
|
player: PlayerData;
|
|
11
|
-
ban: BanData;
|
|
12
11
|
}
|
|
13
12
|
}
|
|
14
13
|
export interface Config {
|
|
15
14
|
account_qq: string;
|
|
15
|
+
auditing: boolean;
|
|
16
16
|
maxLevel: number;
|
|
17
17
|
dishes_return: number;
|
|
18
18
|
levelUP_player_recommend: number;
|
|
@@ -29,3 +29,4 @@ export interface Event {
|
|
|
29
29
|
}
|
|
30
30
|
export declare function apply(ctx: Context, config: Config): Promise<void>;
|
|
31
31
|
export declare function useCommand(event: Event, command: string, args?: string[]): Promise<void>;
|
|
32
|
+
export declare function sendBack(event: Event, text: string): Promise<void>;
|
package/lib/index.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
1
2
|
var __defProp = Object.defineProperty;
|
|
2
3
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
3
4
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
4
6
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
5
7
|
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
|
|
6
8
|
var __commonJS = (cb, mod) => function __require() {
|
|
@@ -18,14 +20,22 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
18
20
|
}
|
|
19
21
|
return to;
|
|
20
22
|
};
|
|
23
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
24
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
25
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
26
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
27
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
28
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
29
|
+
mod
|
|
30
|
+
));
|
|
21
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
22
32
|
|
|
23
33
|
// src/data/replys.json
|
|
24
34
|
var require_replys = __commonJS({
|
|
25
35
|
"src/data/replys.json"(exports, module2) {
|
|
26
36
|
module2.exports = {
|
|
27
|
-
|
|
28
|
-
"
|
|
37
|
+
auditing: [
|
|
38
|
+
"魔导书现在提供这些功能哦:\n1.升级 等级【查询升级头目】\n2.料理 料理种类 (料理等级)【查询料理名单】\n3.料理 玩家部分名称【查询玩家料理】"
|
|
29
39
|
],
|
|
30
40
|
ask: [
|
|
31
41
|
"找魔导书有什么事呢?",
|
|
@@ -39,7 +49,7 @@ var require_replys = __commonJS({
|
|
|
39
49
|
"锵锵!"
|
|
40
50
|
],
|
|
41
51
|
help: [
|
|
42
|
-
"魔导书现在提供这些功能哦:\n1
|
|
52
|
+
"魔导书现在提供这些功能哦:\n1.升级 等级【查询升级头目】\n2.料理 料理种类 (料理等级)【查询料理名单】\n3.料理 玩家部分名称【查询玩家料理】\n4.提交【查看向魔导书提交资料的相关功能】\n5.提问 提问内容【提问和法师攻略相关的问题】"
|
|
43
53
|
],
|
|
44
54
|
needRegister: [
|
|
45
55
|
'只有登记后才能使用魔导书哦!输入"登记 游戏内昵称"来进行登记~\n魔导书友情提示:不正确的登记可能会被青灯从书里擦去哦!'
|
|
@@ -72,6 +82,12 @@ var require_replys = __commonJS({
|
|
|
72
82
|
levelUP_level_error: [
|
|
73
83
|
"输入的等级有误,请输入1-@_0_@之间的整数作为等级噢?"
|
|
74
84
|
],
|
|
85
|
+
memberAt: [
|
|
86
|
+
"魔导书现在提供这些功能哦:\n1.登记 游戏内昵称【进行登记以使用魔导书其他功能】\n2.升级 等级【查询升级头目】\n3.料理 料理种类 (料理等级)【查询料理名单】\n4.料理 玩家部分名称【查询玩家料理】"
|
|
87
|
+
],
|
|
88
|
+
playerAt: [
|
|
89
|
+
"@_sayHi_@@_ask_@\n@_help_@"
|
|
90
|
+
],
|
|
75
91
|
register_name_undefined: [
|
|
76
92
|
'如果你要进行登记的话,请输入"登记 游戏内昵称"来进行登记哦?'
|
|
77
93
|
],
|
|
@@ -401,190 +417,19 @@ var require_dishesTypeNames = __commonJS({
|
|
|
401
417
|
}
|
|
402
418
|
});
|
|
403
419
|
|
|
404
|
-
// src/data/recommend.json
|
|
405
|
-
var require_recommend = __commonJS({
|
|
406
|
-
"src/data/recommend.json"(exports, module2) {
|
|
407
|
-
module2.exports = {
|
|
408
|
-
科隆老大: 3,
|
|
409
|
-
出土魔像: 3,
|
|
410
|
-
幽灵兵甲: 3,
|
|
411
|
-
诡谲的结晶: 3,
|
|
412
|
-
森林巨狼: 3,
|
|
413
|
-
米诺陶斯: 3,
|
|
414
|
-
哥布林老大: 3,
|
|
415
|
-
迪赛尔蛮龙: 3,
|
|
416
|
-
毛咕噜: 3,
|
|
417
|
-
遗迹魔像: 3,
|
|
418
|
-
弗雷迪亚: 3,
|
|
419
|
-
焰狼火各: 3,
|
|
420
|
-
亚斯托: 3,
|
|
421
|
-
黏液怪: 3,
|
|
422
|
-
马维兹: 3,
|
|
423
|
-
甘瑞夫: 3,
|
|
424
|
-
狂暴龙: 3,
|
|
425
|
-
恶魔之门: 3,
|
|
426
|
-
獠牙王: 4,
|
|
427
|
-
上古女帝: 3,
|
|
428
|
-
蒙面战士: 5,
|
|
429
|
-
哥布林大哥: 3,
|
|
430
|
-
石柱魔像: 3,
|
|
431
|
-
草龙耶夫: 4,
|
|
432
|
-
奴雷德斯: 3,
|
|
433
|
-
翡翠鸟: 4,
|
|
434
|
-
葛瓦: 3,
|
|
435
|
-
魔形机壳: 4,
|
|
436
|
-
虚假黑骑士: 5,
|
|
437
|
-
魔晶兽: 3,
|
|
438
|
-
黑暗骑士因扎尼奥: 3,
|
|
439
|
-
地狱三头犬: 5,
|
|
440
|
-
风魔兵长佐尔邦: 3,
|
|
441
|
-
薄暮巨龙: 3,
|
|
442
|
-
红晶魔蛛: 3,
|
|
443
|
-
噬人蝎狮: 3,
|
|
444
|
-
魔晶炮手: 4,
|
|
445
|
-
战将复制体: 3,
|
|
446
|
-
伊科诺斯: 3,
|
|
447
|
-
格雷西亚复制体: 4,
|
|
448
|
-
合成魔兽: 4,
|
|
449
|
-
机甲狮匠: 4,
|
|
450
|
-
约克: 3,
|
|
451
|
-
热带梦貘: 3,
|
|
452
|
-
半魔像暴君: 4,
|
|
453
|
-
龙兽半魔像: 3,
|
|
454
|
-
妖精魔兽拉瓦达: 3,
|
|
455
|
-
扎哈克半魔像: 3,
|
|
456
|
-
重装魔偶: 3,
|
|
457
|
-
怪穆尔: 4,
|
|
458
|
-
终极半魔像: 3,
|
|
459
|
-
奥恩拉夫: 3,
|
|
460
|
-
剑型曼特恩: 3,
|
|
461
|
-
香菇咪: 3,
|
|
462
|
-
结晶泰坦: 4,
|
|
463
|
-
"薇芮娜·柯尔连生体": 5,
|
|
464
|
-
漂漂妈: 3,
|
|
465
|
-
齐尔布兹: 4,
|
|
466
|
-
马尔杜拉: 3,
|
|
467
|
-
泽雷萨乌伽: 4,
|
|
468
|
-
皮多大王: 3,
|
|
469
|
-
暗龙芬斯坦: 5,
|
|
470
|
-
休斯古巨兽: 2,
|
|
471
|
-
魔蚀皮鲁兹: 3,
|
|
472
|
-
结晶兽: 3,
|
|
473
|
-
库斯特: 5,
|
|
474
|
-
扎菲洛加: 3,
|
|
475
|
-
弗拉布喇: 4,
|
|
476
|
-
魔人库维扎: 2,
|
|
477
|
-
伏地蛇: 3,
|
|
478
|
-
魔晶鹫: 3,
|
|
479
|
-
皮斯泰乌鱼: 3,
|
|
480
|
-
"薇芮娜·超柯尔连生体": 4,
|
|
481
|
-
恶灵巨蛛: 4,
|
|
482
|
-
黑影: 4,
|
|
483
|
-
塔利结晶兽: 4,
|
|
484
|
-
移儡原生质体: 3,
|
|
485
|
-
雷莉莎: 2,
|
|
486
|
-
晶玛体: 4,
|
|
487
|
-
岩龙菲尔岑: 4,
|
|
488
|
-
卒龙灾比欧: 3,
|
|
489
|
-
兵龙达鲁巴: 4,
|
|
490
|
-
炎龙布兰玛: 4,
|
|
491
|
-
威琉魔: 3,
|
|
492
|
-
奥克拉辛: 3,
|
|
493
|
-
犰尔达: 3,
|
|
494
|
-
护卫魔像: 3,
|
|
495
|
-
灼龙伊戈涅乌斯: 5,
|
|
496
|
-
欺龙米缪加: 5,
|
|
497
|
-
黑魔菇: 3,
|
|
498
|
-
科隆长官: 3,
|
|
499
|
-
深红魔蛙: 3,
|
|
500
|
-
巨壳龟: 3,
|
|
501
|
-
银色洛尔: 3,
|
|
502
|
-
奇迹波多姆: 3,
|
|
503
|
-
波多姆大王: 3,
|
|
504
|
-
沙地鼹鼠: 3,
|
|
505
|
-
巨型野猪: 3,
|
|
506
|
-
黄金骨: 3,
|
|
507
|
-
石动魔兵: 3,
|
|
508
|
-
大果怪: 3,
|
|
509
|
-
赛提罗: 3,
|
|
510
|
-
彩云兽: 3,
|
|
511
|
-
肥籽: 3,
|
|
512
|
-
异界之门犬: 3,
|
|
513
|
-
月光波多姆: 3,
|
|
514
|
-
巨型兵: 3,
|
|
515
|
-
幽灵王: 3,
|
|
516
|
-
小浣熊: 3,
|
|
517
|
-
闪灵绅士: 3,
|
|
518
|
-
金属刺蝎: 4,
|
|
519
|
-
死灵科隆: 3,
|
|
520
|
-
老妪: 3,
|
|
521
|
-
自走炮: 3,
|
|
522
|
-
严寒雪怪: 3,
|
|
523
|
-
暗夜波多姆: 4,
|
|
524
|
-
菱纹企鹅老爹: 3,
|
|
525
|
-
死灵魔兔: 4,
|
|
526
|
-
蚀变骑士团长: 3,
|
|
527
|
-
火蜥蜴: 3,
|
|
528
|
-
邪恶魔剑: 3,
|
|
529
|
-
魔像铸工: 3,
|
|
530
|
-
巨指半魔像: 3,
|
|
531
|
-
奥狄隆半魔像: 4,
|
|
532
|
-
超级病死菇: 4,
|
|
533
|
-
魔像指挥官: 3,
|
|
534
|
-
激进派专业兵长: 4,
|
|
535
|
-
阿米巴半魔像: 3,
|
|
536
|
-
无头恶魔处刑者: 3,
|
|
537
|
-
放浪魔轮: 4,
|
|
538
|
-
炽天半魔像: 3,
|
|
539
|
-
兹露咪: 3,
|
|
540
|
-
怪蜥狂信徒: 3,
|
|
541
|
-
低音牦牛: 5,
|
|
542
|
-
米斯尔那大山猫: 4,
|
|
543
|
-
堕天泡泡: 4,
|
|
544
|
-
宝石兽: 3,
|
|
545
|
-
金拳角兽: 3,
|
|
546
|
-
邦卫魔像: 3,
|
|
547
|
-
污浊泥怪: 5,
|
|
548
|
-
凶暴花魔: 4,
|
|
549
|
-
寄生甲兽: 4,
|
|
550
|
-
大绵羊驼: 3,
|
|
551
|
-
血染结晶: 3,
|
|
552
|
-
小丑牙鱼: 5,
|
|
553
|
-
魔人之眼: 1,
|
|
554
|
-
鬼熊虫: 3,
|
|
555
|
-
沙盗团首领: 3,
|
|
556
|
-
压钉机: 3,
|
|
557
|
-
变异幽灵牛: 3,
|
|
558
|
-
死灵: 4,
|
|
559
|
-
死神稻草人: 3,
|
|
560
|
-
内吉木之主: 4,
|
|
561
|
-
担轮原生质幼体: 3,
|
|
562
|
-
雷诺莱犀: 5,
|
|
563
|
-
树毒羚: 4,
|
|
564
|
-
布拉米斯: 5,
|
|
565
|
-
戈尔多: 1,
|
|
566
|
-
炎咕噜: 3,
|
|
567
|
-
格劳斯: 5,
|
|
568
|
-
喷出岩: 4,
|
|
569
|
-
盖蜥蜴: 1,
|
|
570
|
-
月霞猫: 3,
|
|
571
|
-
暴风龙: 5,
|
|
572
|
-
拉加布拉索: 4
|
|
573
|
-
};
|
|
574
|
-
}
|
|
575
|
-
});
|
|
576
|
-
|
|
577
420
|
// src/index.ts
|
|
578
421
|
var src_exports = {};
|
|
579
422
|
__export(src_exports, {
|
|
580
|
-
Config: () =>
|
|
423
|
+
Config: () => Config2,
|
|
581
424
|
apply: () => apply,
|
|
582
425
|
inject: () => inject,
|
|
583
426
|
name: () => name,
|
|
427
|
+
sendBack: () => sendBack,
|
|
584
428
|
useCommand: () => useCommand
|
|
585
429
|
});
|
|
586
430
|
module.exports = __toCommonJS(src_exports);
|
|
587
431
|
var import_koishi = require("koishi");
|
|
432
|
+
var import_plugin_http = __toESM(require("@cordisjs/plugin-http"));
|
|
588
433
|
|
|
589
434
|
// src/function/cache.ts
|
|
590
435
|
var _Cache = class _Cache {
|
|
@@ -597,7 +442,7 @@ var Cache = _Cache;
|
|
|
597
442
|
|
|
598
443
|
// src/function/player.ts
|
|
599
444
|
var _Player = class _Player {
|
|
600
|
-
//
|
|
445
|
+
// 对话开始时间
|
|
601
446
|
constructor(playerData) {
|
|
602
447
|
this.id = 0;
|
|
603
448
|
// 唯一标识
|
|
@@ -624,7 +469,9 @@ var _Player = class _Player {
|
|
|
624
469
|
name: this.name,
|
|
625
470
|
dishes: JSON.stringify(this.dishes),
|
|
626
471
|
path: this.path,
|
|
627
|
-
qqOpenId: this.qqOpenId
|
|
472
|
+
qqOpenId: this.qqOpenId,
|
|
473
|
+
chatId: this.chatId,
|
|
474
|
+
chatStartTime: this.chatStartTime
|
|
628
475
|
};
|
|
629
476
|
}
|
|
630
477
|
};
|
|
@@ -677,16 +524,6 @@ function getTime() {
|
|
|
677
524
|
}
|
|
678
525
|
}
|
|
679
526
|
__name(getTime, "getTime");
|
|
680
|
-
function formatDate(date) {
|
|
681
|
-
const year = date.getFullYear();
|
|
682
|
-
const month = String(date.getMonth() + 1).padStart(2, "0");
|
|
683
|
-
const day = String(date.getDate()).padStart(2, "0");
|
|
684
|
-
const hours = String(date.getHours()).padStart(2, "0");
|
|
685
|
-
const minutes = String(date.getMinutes()).padStart(2, "0");
|
|
686
|
-
const seconds = String(date.getSeconds()).padStart(2, "0");
|
|
687
|
-
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
|
|
688
|
-
}
|
|
689
|
-
__name(formatDate, "formatDate");
|
|
690
527
|
|
|
691
528
|
// src/function/reply.ts
|
|
692
529
|
var replys = require_replys();
|
|
@@ -749,7 +586,8 @@ async function command_dishes(event, args) {
|
|
|
749
586
|
session.send(await getFilterNamePlayerDishesInfo(event, args[0]));
|
|
750
587
|
return;
|
|
751
588
|
}
|
|
752
|
-
|
|
589
|
+
const text = await getFilterDishesPlayerInfo(event, args[0], type, args[1] ? toDishLevel(args[1]) : -1);
|
|
590
|
+
await sendBack(event, text);
|
|
753
591
|
}
|
|
754
592
|
__name(command_dishes, "command_dishes");
|
|
755
593
|
function checkArgs(args) {
|
|
@@ -900,7 +738,8 @@ async function command_levelUP(event, args) {
|
|
|
900
738
|
return;
|
|
901
739
|
}
|
|
902
740
|
const level = checkResult.data;
|
|
903
|
-
|
|
741
|
+
const text = getUpgradeExp(level, event.config) + await getInfo(event, level);
|
|
742
|
+
await sendBack(event, text);
|
|
904
743
|
}
|
|
905
744
|
__name(command_levelUP, "command_levelUP");
|
|
906
745
|
function checkArgs2(args, config) {
|
|
@@ -1164,22 +1003,23 @@ __name(checkArgs5, "checkArgs");
|
|
|
1164
1003
|
|
|
1165
1004
|
// src/index.ts
|
|
1166
1005
|
var name = "toram";
|
|
1167
|
-
var inject = ["database"];
|
|
1168
|
-
var
|
|
1006
|
+
var inject = ["database", "markdownToImage", "http"];
|
|
1007
|
+
var http = new import_plugin_http.default();
|
|
1008
|
+
var Config2 = import_koishi.Schema.intersect([
|
|
1169
1009
|
import_koishi.Schema.object({
|
|
1170
|
-
account_qq: import_koishi.Schema.string().description("机器人使用的QQ号【通过发送 account_qq 获得】")
|
|
1010
|
+
account_qq: import_koishi.Schema.string().description("机器人使用的QQ号【通过发送 account_qq 获得】"),
|
|
1011
|
+
auditing: import_koishi.Schema.boolean().description("机器人提审时打开").default(false)
|
|
1171
1012
|
}).description("机器人"),
|
|
1172
1013
|
import_koishi.Schema.object({
|
|
1173
1014
|
maxLevel: import_koishi.Schema.number().description("当前版本的最大等级").required().min(270).max(500).step(5)
|
|
1174
1015
|
}).description("游戏信息"),
|
|
1175
1016
|
import_koishi.Schema.object({
|
|
1176
|
-
dishes_return: import_koishi.Schema.number().min(1).step(1).default(15)
|
|
1177
|
-
levelUP_player_recommend: import_koishi.Schema.number().min(0).step(5).default(30)
|
|
1178
|
-
levelUP_player_fixedBossReturn: import_koishi.Schema.number().min(1).step(1).default(6)
|
|
1179
|
-
levelUP_player_wildBossReturn: import_koishi.Schema.number().min(1).step(1).default(4)
|
|
1017
|
+
dishes_return: import_koishi.Schema.number().description("使用料理指令且不指定等级时最少返回的玩家昵称数量").min(1).step(1).default(15),
|
|
1018
|
+
levelUP_player_recommend: import_koishi.Schema.number().description("使用升级指令时推荐系数的影响幅度").min(0).step(5).default(30),
|
|
1019
|
+
levelUP_player_fixedBossReturn: import_koishi.Schema.number().description("使用升级指令时返回的定点王数量").min(1).step(1).default(6),
|
|
1020
|
+
levelUP_player_wildBossReturn: import_koishi.Schema.number().description("使用升级指令时返回的野王数量").min(1).step(1).default(4)
|
|
1180
1021
|
}).description("指令管理")
|
|
1181
1022
|
]);
|
|
1182
|
-
var json = require_recommend();
|
|
1183
1023
|
async function apply(ctx, config) {
|
|
1184
1024
|
const logger = ctx.logger("toram");
|
|
1185
1025
|
const cache = new Cache();
|
|
@@ -1215,26 +1055,16 @@ async function apply(ctx, config) {
|
|
|
1215
1055
|
// 料理JSON
|
|
1216
1056
|
path: "integer",
|
|
1217
1057
|
// 等级
|
|
1218
|
-
qqOpenId: "string"
|
|
1219
|
-
// QQ
|
|
1220
|
-
}, {
|
|
1221
|
-
primary: "id"
|
|
1222
|
-
});
|
|
1223
|
-
ctx.model.extend("ban", {
|
|
1224
1058
|
qqOpenId: "string",
|
|
1225
1059
|
// QQ
|
|
1226
|
-
|
|
1227
|
-
//
|
|
1228
|
-
|
|
1229
|
-
// 开始时间
|
|
1230
|
-
banTime: "integer"
|
|
1231
|
-
// 持续时间
|
|
1060
|
+
chatId: "string",
|
|
1061
|
+
// 对话ID
|
|
1062
|
+
chatStartTime: "integer"
|
|
1232
1063
|
}, {
|
|
1233
|
-
primary: "
|
|
1064
|
+
primary: "id"
|
|
1234
1065
|
});
|
|
1235
1066
|
ctx.middleware(async (session, next) => {
|
|
1236
1067
|
event.session = session;
|
|
1237
|
-
event.logger.info(event.session);
|
|
1238
1068
|
const message = session.event.message;
|
|
1239
1069
|
let needHelp = false;
|
|
1240
1070
|
for (const element of message.elements) {
|
|
@@ -1242,18 +1072,18 @@ async function apply(ctx, config) {
|
|
|
1242
1072
|
needHelp = true;
|
|
1243
1073
|
}
|
|
1244
1074
|
if (needHelp) {
|
|
1245
|
-
if (getPlayer(event)) {
|
|
1246
|
-
session.send(await makeReply(event, "
|
|
1075
|
+
if (await getPlayer(event)) {
|
|
1076
|
+
session.send(await makeReply(event, "playerAt"));
|
|
1247
1077
|
} else {
|
|
1248
|
-
|
|
1078
|
+
if (event.config.auditing) {
|
|
1079
|
+
session.send(await makeReply(event, "auditing"));
|
|
1080
|
+
} else {
|
|
1081
|
+
session.send(await makeReply(event, "memberAt"));
|
|
1082
|
+
}
|
|
1249
1083
|
}
|
|
1250
1084
|
}
|
|
1251
1085
|
return next();
|
|
1252
1086
|
});
|
|
1253
|
-
ctx.command("ban <qqOpenId> <reason> <days>").action(async ({ session }, ...args) => {
|
|
1254
|
-
const time = (/* @__PURE__ */ new Date()).getTime();
|
|
1255
|
-
await ctx.database.create("ban", { qqOpenId: args[0], reason: args[1], startTime: time, banTime: 864e5 * Number(args[2]) });
|
|
1256
|
-
});
|
|
1257
1087
|
ctx.command("登记 <游戏内昵称>").action(async ({ session }, ...args) => {
|
|
1258
1088
|
event.session = session;
|
|
1259
1089
|
await useCommand(event, "register", args);
|
|
@@ -1278,27 +1108,18 @@ async function apply(ctx, config) {
|
|
|
1278
1108
|
event.session = session;
|
|
1279
1109
|
await useCommand(event, "updateBoss", args);
|
|
1280
1110
|
});
|
|
1111
|
+
ctx.command("提问 <提问内容>").action(async ({ session }, ...args) => {
|
|
1112
|
+
event.session = session;
|
|
1113
|
+
await useCommand(event, "chat", args);
|
|
1114
|
+
});
|
|
1281
1115
|
}
|
|
1282
1116
|
__name(apply, "apply");
|
|
1283
1117
|
async function useCommand(event, command, args = []) {
|
|
1284
1118
|
const session = event.session;
|
|
1119
|
+
const time = (/* @__PURE__ */ new Date()).getTime();
|
|
1120
|
+
let player;
|
|
1285
1121
|
if (command !== "register") {
|
|
1286
|
-
|
|
1287
|
-
if (banPlayerList.length) {
|
|
1288
|
-
const banPlayer = banPlayerList[0];
|
|
1289
|
-
const endTime = new Date(banPlayer.startTime + banPlayer.banTime);
|
|
1290
|
-
const time = /* @__PURE__ */ new Date();
|
|
1291
|
-
if (time > endTime) {
|
|
1292
|
-
await event.ctx.database.remove("ban", { qqOpenId: session.event.user.id });
|
|
1293
|
-
} else {
|
|
1294
|
-
session.send(await makeReply(event, banPlayer.reason, { this: [formatDate(endTime)] }));
|
|
1295
|
-
const reasons = banPlayer.reason.split("_");
|
|
1296
|
-
if (reasons[0] === "warning")
|
|
1297
|
-
await event.ctx.database.remove("ban", { qqOpenId: session.event.user.id });
|
|
1298
|
-
return;
|
|
1299
|
-
}
|
|
1300
|
-
}
|
|
1301
|
-
const player = await getPlayer(event);
|
|
1122
|
+
player = await getPlayer(event);
|
|
1302
1123
|
if (!player) {
|
|
1303
1124
|
session.send(await makeReply(event, "needRegister"));
|
|
1304
1125
|
return;
|
|
@@ -1323,14 +1144,56 @@ async function useCommand(event, command, args = []) {
|
|
|
1323
1144
|
case "updateDishes":
|
|
1324
1145
|
await command_updateDishes(event, args);
|
|
1325
1146
|
break;
|
|
1147
|
+
case "chat":
|
|
1148
|
+
if (time > player.chatStartTime + 6 * 864e5) {
|
|
1149
|
+
player.chatId = "";
|
|
1150
|
+
}
|
|
1151
|
+
const text = await main(http, event, args, player);
|
|
1152
|
+
if (time > player.chatStartTime + 6 * 864e5) {
|
|
1153
|
+
await event.ctx.database.set("player", { id: player.id }, { chatId: player.chatId, chatStartTime: time });
|
|
1154
|
+
}
|
|
1155
|
+
await sendBack(event, text);
|
|
1326
1156
|
}
|
|
1327
1157
|
}
|
|
1328
1158
|
__name(useCommand, "useCommand");
|
|
1159
|
+
async function sendBack(event, text) {
|
|
1160
|
+
const imageBuffer = await event.ctx.markdownToImage.convertToImage(text);
|
|
1161
|
+
event.session.send(import_koishi.h.image(imageBuffer, "image/png"));
|
|
1162
|
+
}
|
|
1163
|
+
__name(sendBack, "sendBack");
|
|
1164
|
+
async function main(http2, event, args, player) {
|
|
1165
|
+
const options = {
|
|
1166
|
+
method: "POST",
|
|
1167
|
+
headers: {
|
|
1168
|
+
"Content-Type": "application/json",
|
|
1169
|
+
"X-Appbuilder-Authorization": "Bearer bce-v3/ALTAK-OdjZ3yieFoLp6nPzyobY0/c23f498023cf68bc6b496250984b8c02ac3227e7"
|
|
1170
|
+
},
|
|
1171
|
+
data: {
|
|
1172
|
+
"app_id": "da8975a8-1316-412b-b59d-0bd9ebcd8111",
|
|
1173
|
+
"query": JSON.stringify(args),
|
|
1174
|
+
"stream": false,
|
|
1175
|
+
"conversation_id": player.chatId
|
|
1176
|
+
}
|
|
1177
|
+
};
|
|
1178
|
+
try {
|
|
1179
|
+
const response = await http2.post(`https://qianfan.baidubce.com/v2/app/conversation${player.chatId ? "/runs" : ""}`, options.data, options);
|
|
1180
|
+
if (!player.chatId) {
|
|
1181
|
+
player.chatId = response.conversation_id;
|
|
1182
|
+
const data = await main(http2, event, args, player);
|
|
1183
|
+
return data;
|
|
1184
|
+
}
|
|
1185
|
+
return response.answer;
|
|
1186
|
+
} catch (error) {
|
|
1187
|
+
event.logger.info("Error:", error);
|
|
1188
|
+
}
|
|
1189
|
+
}
|
|
1190
|
+
__name(main, "main");
|
|
1329
1191
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1330
1192
|
0 && (module.exports = {
|
|
1331
1193
|
Config,
|
|
1332
1194
|
apply,
|
|
1333
1195
|
inject,
|
|
1334
1196
|
name,
|
|
1197
|
+
sendBack,
|
|
1335
1198
|
useCommand
|
|
1336
1199
|
});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "koishi-plugin-toram",
|
|
3
3
|
"description": "托拉姆物语小工具",
|
|
4
|
-
"version": "2.0
|
|
4
|
+
"version": "2.1.0",
|
|
5
5
|
"contributors": [
|
|
6
6
|
"青灯 <1874053520@qq.com>"
|
|
7
7
|
],
|
|
@@ -23,6 +23,7 @@
|
|
|
23
23
|
]
|
|
24
24
|
},
|
|
25
25
|
"peerDependencies": {
|
|
26
|
-
"koishi": "^4.17.9"
|
|
26
|
+
"koishi": "^4.17.9",
|
|
27
|
+
"@cordisjs/plugin-http": "^1.1.0"
|
|
27
28
|
}
|
|
28
29
|
}
|