koishi-plugin-toram 0.1.3 → 0.1.4-alpha.2

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.
Files changed (2) hide show
  1. package/lib/index.js +95 -19
  2. package/package.json +1 -1
package/lib/index.js CHANGED
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.apply = exports.name = void 0;
4
+ const koishi_1 = require("koishi");
4
5
  exports.name = 'toram';
5
6
  async function apply(ctx) {
6
7
  //新建托拉姆boss表
@@ -11,10 +12,7 @@ async function apply(ctx) {
11
12
  level: 'number',
12
13
  map: 'string',
13
14
  baseEXP: 'number',
14
- element: 'string',
15
- /*
16
- type: 'string',
17
- */
15
+ element: 'string'
18
16
  }, {
19
17
  // 使用自增的主键值
20
18
  primary: 'id'
@@ -27,17 +25,21 @@ async function apply(ctx) {
27
25
  var text;
28
26
  let arr1;
29
27
  let arr2;
28
+ var 版本等级 = 240;
29
+ var 升级_定点王数量 = 8;
30
+ var 升级_野王数量 = 2;
30
31
  ctx.command('升级 <等级数:number>').action(async ({ session }, ...args) => {
31
32
  {
32
33
  let 等级 = args[0];
33
- if (等级 >= 240 || 等级 <= 0) {
34
- let 回复语句 = Math.floor(Math.random() * 5) + 1;
34
+ if (等级 >= 版本等级 || 等级 <= 0) {
35
+ let 回复语句 = Math.floor(Math.random() * 6) + 1;
35
36
  switch (回复语句) {
36
37
  case 1: return '团长!团长你在干什么呀团长!';
37
38
  case 2: return '鸮鸮的眼里有大大的疑惑.jpg';
38
- case 3: return '打飞你的医保卡哦!';
39
+ case 3: return '认真的吗?小心我打飞你的医保卡哦!';
39
40
  case 4: return '你要不要看看你自己在说些什么?';
40
41
  case 5: return '没救了,别练了,埋了罢【无慈悲】';
42
+ case 6: return (String((0, koishi_1.h)('at', { id: (session.userId) } + ' 查询你的精神状态')));
41
43
  }
42
44
  }
43
45
  ;
@@ -53,12 +55,12 @@ async function apply(ctx) {
53
55
  return '去女帝陵墓打只因骨龙吧~';
54
56
  }
55
57
  ;
56
- const rows = await ctx.database.get('toram_boss', { level: { $gte: 等级 - 8, $lte: Math.min(等级 + 8, 243) }, });
57
- n = rows.length - 1;
58
- text = '';
58
+ const rows1 = await ctx.database.get('toram_boss', { level: { $gte: 等级 - 8, $lte: Math.min(等级 + 8, 版本等级 + 3) }, name: { $or: [{ $regex: /^1星/ }, { $regex: /^2星/ }, { $regex: /^3星/ }, { $regex: /^4星/ }] } });
59
+ n = rows1.length - 1;
60
+ text = '定点王:\n';
59
61
  arr1 = [];
60
62
  for (i = 0; i <= n; i++) {
61
- switch (Math.abs(等级 - rows[i]?.level)) {
63
+ switch (Math.abs(等级 - rows1[i]?.level)) {
62
64
  case 0:
63
65
  case 1:
64
66
  case 2:
@@ -80,19 +82,19 @@ async function apply(ctx) {
80
82
  break;
81
83
  }
82
84
  ;
83
- arr1.push(rows[i]?.baseEXP * x);
85
+ arr1.push(rows1[i]?.baseEXP * x);
84
86
  }
85
87
  ;
86
88
  arr2 = [];
87
- for (i = 0; i <= Math.min(n, 9); i++) {
89
+ for (i = 0; i <= Math.min(n, 升级_定点王数量 - 1); i++) {
88
90
  y = arr1.indexOf(Math.max(...arr1));
89
91
  arr1[y] = 0;
90
92
  arr2.push(y);
91
93
  }
92
94
  ;
93
- for (i = 0; i <= Math.min(n, 9); i++) {
95
+ for (i = 0; i <= Math.min(n, 升级_定点王数量 - 1); i++) {
94
96
  y = arr2[i];
95
- switch (Math.abs(等级 - rows[y]?.level)) {
97
+ switch (Math.abs(等级 - rows1[y]?.level)) {
96
98
  case 0:
97
99
  case 1:
98
100
  case 2:
@@ -114,8 +116,73 @@ async function apply(ctx) {
114
116
  break;
115
117
  }
116
118
  ;
117
- text += [rows[y]?.name, ' 等级', rows[y]?.level, ' ', rows[y]?.map, ' 经验值', rows[y]?.baseEXP * x, ' ', rows[y]?.element, '属性'].join('');
118
- if (i != n) {
119
+ text += [rows1[y]?.name, ' 等级', rows1[y]?.level, ' ', rows1[y]?.map, ' 经验值', rows1[y]?.baseEXP * x, ' ', rows1[y]?.element, '属性'].join('');
120
+ text += '\n';
121
+ }
122
+ ;
123
+ const rows2 = await ctx.database.get('toram_boss', { level: { $gte: 等级 - 8, $lte: Math.min(等级 + 8, 版本等级 + 3) }, name: { $regex: /^\D/ } });
124
+ n = rows2.length - 1;
125
+ text += '\n野王:\n';
126
+ arr1 = [];
127
+ for (i = 0; i <= n; i++) {
128
+ switch (Math.abs(等级 - rows2[i]?.level)) {
129
+ case 0:
130
+ case 1:
131
+ case 2:
132
+ case 3:
133
+ case 4:
134
+ x = 11;
135
+ break;
136
+ case 5:
137
+ x = 10;
138
+ break;
139
+ case 6:
140
+ x = 9;
141
+ break;
142
+ case 7:
143
+ x = 7;
144
+ break;
145
+ case 8:
146
+ x = 3;
147
+ break;
148
+ }
149
+ ;
150
+ arr1.push(rows2[i]?.baseEXP * x);
151
+ }
152
+ ;
153
+ arr2 = [];
154
+ for (i = 0; i <= Math.min(n, 升级_野王数量 - 1); i++) {
155
+ y = arr1.indexOf(Math.max(...arr1));
156
+ arr1[y] = 0;
157
+ arr2.push(y);
158
+ }
159
+ ;
160
+ for (i = 0; i <= Math.min(n, 升级_野王数量 - 1); i++) {
161
+ y = arr2[i];
162
+ switch (Math.abs(等级 - rows2[y]?.level)) {
163
+ case 0:
164
+ case 1:
165
+ case 2:
166
+ case 3:
167
+ case 4:
168
+ x = 11;
169
+ break;
170
+ case 5:
171
+ x = 10;
172
+ break;
173
+ case 6:
174
+ x = 9;
175
+ break;
176
+ case 7:
177
+ x = 7;
178
+ break;
179
+ case 8:
180
+ x = 3;
181
+ break;
182
+ }
183
+ ;
184
+ text += [rows2[y]?.name, ' 等级', rows2[y]?.level, ' ', rows2[y]?.map, ' 经验值', rows2[y]?.baseEXP * x, ' ', rows2[y]?.element, '属性'].join('');
185
+ if (i != Math.min(n, 升级_野王数量 - 1)) {
119
186
  text += '\n';
120
187
  }
121
188
  }
@@ -191,9 +258,18 @@ async function apply(ctx) {
191
258
  return '修改定点王数据成功!';
192
259
  }
193
260
  });
261
+ ctx.command('写入野王 <名称:string> <基础等级:number> <地图:string> <基础经验:number> <属性:string>').action(async ({ session }, ...args) => {
262
+ {
263
+ let 野王名称 = args[0], 野王等级 = args[1], 野王地图 = args[2], 野王基础经验 = args[3], 野王属性 = args[4];
264
+ const rows = await ctx.database.get('toram_boss', { id: { $gte: 1, $lte: 1000 }, });
265
+ n = rows.length;
266
+ await ctx.database.upsert('toram_boss', [{ id: n + 1, name: 野王名称, level: 野王等级, map: 野王地图, baseEXP: 野王基础经验, element: 野王属性 }]);
267
+ return '写入野王成功!';
268
+ }
269
+ });
194
270
  ctx.middleware(async (session, next) => {
195
- if ((session.content) == '@青灯的魔法书' || (session.content) == '@青灯的魔法书 ') {
196
- return '魔法书现有的功能:\n1.查询指定等级的练级定点王';
271
+ if ((session.content) == String((0, koishi_1.h)('at', { id: (session.bot) })) + String((0, koishi_1.h)('text'))) {
272
+ return '1';
197
273
  }
198
274
  });
199
275
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "koishi-plugin-toram",
3
3
  "description": "托拉姆物语工具捏",
4
- "version": "0.1.3",
4
+ "version": "0.1.4-alpha.2",
5
5
  "main": "lib/index.js",
6
6
  "typings": "lib/index.d.ts",
7
7
  "files": [