@lotus-tree/fg-notation 1.0.0 → 1.1.3
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/README.md +67 -0
- package/babel.config.js +6 -0
- package/dev/img/basic/1.png +0 -0
- package/dev/img/basic/12369.png +0 -0
- package/dev/img/basic/1237.png +0 -0
- package/dev/img/basic/1632143.png +0 -0
- package/dev/img/basic/2.png +0 -0
- package/dev/img/basic/21.png +0 -0
- package/dev/img/basic/214.png +0 -0
- package/dev/img/basic/21478.png +0 -0
- package/dev/img/basic/23.png +0 -0
- package/dev/img/basic/236.png +0 -0
- package/dev/img/basic/23698.png +0 -0
- package/dev/img/basic/28.png +0 -0
- package/dev/img/basic/3.png +0 -0
- package/dev/img/basic/32147.png +0 -0
- package/dev/img/basic/3219.png +0 -0
- package/dev/img/basic/341236.png +0 -0
- package/dev/img/basic/346.png +0 -0
- package/dev/img/basic/360.png +0 -0
- package/dev/img/basic/4.png +0 -0
- package/dev/img/basic/41236.png +0 -0
- package/dev/img/basic/421.png +0 -0
- package/dev/img/basic/46.png +0 -0
- package/dev/img/basic/4618346.png +0 -0
- package/dev/img/basic/47896.png +0 -0
- package/dev/img/basic/5.png +0 -0
- package/dev/img/basic/6.png +0 -0
- package/dev/img/basic/623.png +0 -0
- package/dev/img/basic/63214.png +0 -0
- package/dev/img/basic/64.png +0 -0
- package/dev/img/basic/6428.png +0 -0
- package/dev/img/basic/69874.png +0 -0
- package/dev/img/basic/7.png +0 -0
- package/dev/img/basic/7891.png +0 -0
- package/dev/img/basic/8.png +0 -0
- package/dev/img/basic/81237.png +0 -0
- package/dev/img/basic/82.png +0 -0
- package/dev/img/basic/87412.png +0 -0
- package/dev/img/basic/89632.png +0 -0
- package/dev/img/basic/9.png +0 -0
- package/dev/img/basic/[1].png +0 -0
- package/dev/img/basic/[2].png +0 -0
- package/dev/img/basic/[2]8.png +0 -0
- package/dev/img/basic/[3].png +0 -0
- package/dev/img/basic/[4].png +0 -0
- package/dev/img/basic/[6].png +0 -0
- package/dev/img/basic/[7].png +0 -0
- package/dev/img/basic/[8].png +0 -0
- package/dev/img/basic/[9].png +0 -0
- package/dev/img/basic/air.png +0 -0
- package/dev/img/basic/doubleforward.png +0 -0
- package/dev/img/credits.txt +4 -0
- package/dev/img/games/bb/a.png +0 -0
- package/dev/img/games/bb/b.png +0 -0
- package/dev/img/games/bb/c.png +0 -0
- package/dev/img/games/bb/d.png +0 -0
- package/dev/img/games/dbz/a1.png +0 -0
- package/dev/img/games/dbz/a2.png +0 -0
- package/dev/img/games/dbz/h.png +0 -0
- package/dev/img/games/dbz/l.png +0 -0
- package/dev/img/games/dbz/m.png +0 -0
- package/dev/img/games/dbz/s.png +0 -0
- package/dev/img/games/dnf/a.png +0 -0
- package/dev/img/games/dnf/as.png +0 -0
- package/dev/img/games/dnf/b.png +0 -0
- package/dev/img/games/dnf/g.png +0 -0
- package/dev/img/games/dnf/ms.png +0 -0
- package/dev/img/games/dnf/s.png +0 -0
- package/dev/img/games/gbf/g.png +0 -0
- package/dev/img/games/gbf/h.png +0 -0
- package/dev/img/games/gbf/l.png +0 -0
- package/dev/img/games/gbf/m.png +0 -0
- package/dev/img/games/gbf/s.png +0 -0
- package/dev/img/games/gg/d.png +0 -0
- package/dev/img/games/gg/hs.png +0 -0
- package/dev/img/games/gg/k.png +0 -0
- package/dev/img/games/gg/p.png +0 -0
- package/dev/img/games/gg/rc.png +0 -0
- package/dev/img/games/gg/s.png +0 -0
- package/dev/img/games/kof/a.png +0 -0
- package/dev/img/games/kof/b.png +0 -0
- package/dev/img/games/kof/c.png +0 -0
- package/dev/img/games/kof/d.png +0 -0
- package/dev/img/games/kof/max.png +0 -0
- package/dev/img/games/mk/1.png +0 -0
- package/dev/img/games/mk/2.png +0 -0
- package/dev/img/games/mk/3.png +0 -0
- package/dev/img/games/mk/4.png +0 -0
- package/dev/img/games/sc/[a].png +0 -0
- package/dev/img/games/sc/[b].png +0 -0
- package/dev/img/games/sc/[g].png +0 -0
- package/dev/img/games/sc/[k].png +0 -0
- package/dev/img/games/sc/a.png +0 -0
- package/dev/img/games/sc/b.png +0 -0
- package/dev/img/games/sc/g.png +0 -0
- package/dev/img/games/sc/k.png +0 -0
- package/dev/img/games/sf/hk.png +0 -0
- package/dev/img/games/sf/hp.png +0 -0
- package/dev/img/games/sf/j..png +0 -0
- package/dev/img/games/sf/lk.png +0 -0
- package/dev/img/games/sf/lp.png +0 -0
- package/dev/img/games/sf/max.png +0 -0
- package/dev/img/games/sf/mk.png +0 -0
- package/dev/img/games/sf/mp.png +0 -0
- package/dev/img/games/sf/tap.png +0 -0
- package/dev/img/games/sg/hk.png +0 -0
- package/dev/img/games/sg/hp.png +0 -0
- package/dev/img/games/sg/k.png +0 -0
- package/dev/img/games/sg/lk.png +0 -0
- package/dev/img/games/sg/lp.png +0 -0
- package/dev/img/games/sg/mk.png +0 -0
- package/dev/img/games/sg/mp.png +0 -0
- package/dev/img/games/sg/p.png +0 -0
- package/dev/img/games/tfh/a.png +0 -0
- package/dev/img/games/tfh/b.png +0 -0
- package/dev/img/games/tfh/c.png +0 -0
- package/dev/img/games/tfh/d.png +0 -0
- package/dev/img/games/tkn/1.png +0 -0
- package/dev/img/games/tkn/12.png +0 -0
- package/dev/img/games/tkn/1234.png +0 -0
- package/dev/img/games/tkn/13.png +0 -0
- package/dev/img/games/tkn/14.png +0 -0
- package/dev/img/games/tkn/2.png +0 -0
- package/dev/img/games/tkn/23.png +0 -0
- package/dev/img/games/tkn/24.png +0 -0
- package/dev/img/games/tkn/3.png +0 -0
- package/dev/img/games/tkn/34.png +0 -0
- package/dev/img/games/tkn/4.png +0 -0
- package/dev/img/games/tkn/b.png +0 -0
- package/dev/img/games/tkn/d-b.png +0 -0
- package/dev/img/games/tkn/d-f.png +0 -0
- package/dev/img/games/tkn/d.png +0 -0
- package/dev/img/games/tkn/f.png +0 -0
- package/dev/img/games/tkn/o.png +0 -0
- package/dev/img/games/tkn/u-b.png +0 -0
- package/dev/img/games/tkn/u-f.png +0 -0
- package/dev/img/games/tkn/u.png +0 -0
- package/dev/img/preview.png +0 -0
- package/dev/index.js +491 -0
- package/lib/img/games/gg/rc.png +0 -0
- package/lib/index.js +129 -20
- package/package.json +25 -10
- package/src/img/games/gg/rc.png +0 -0
- package/src/index.js +53 -8
package/dev/index.js
ADDED
|
@@ -0,0 +1,491 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports["default"] = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
+
|
|
14
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
15
|
+
|
|
16
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
+
|
|
18
|
+
var _sharp = _interopRequireDefault(require("sharp"));
|
|
19
|
+
|
|
20
|
+
var _path = _interopRequireDefault(require("path"));
|
|
21
|
+
|
|
22
|
+
var _glob = _interopRequireDefault(require("glob"));
|
|
23
|
+
|
|
24
|
+
var _sequelize = require("sequelize");
|
|
25
|
+
|
|
26
|
+
var _bent = _interopRequireDefault(require("bent"));
|
|
27
|
+
|
|
28
|
+
var getJSON = (0, _bent["default"])('json');
|
|
29
|
+
|
|
30
|
+
var imgPath = _path["default"].join(__dirname, 'img');
|
|
31
|
+
|
|
32
|
+
var basicInputs = new Map();
|
|
33
|
+
var gameInputs = new Map();
|
|
34
|
+
var glossary = {};
|
|
35
|
+
var terms = [];
|
|
36
|
+
getGlossary();
|
|
37
|
+
setInterval(getGlossary, 5 * 60 * 1000);
|
|
38
|
+
|
|
39
|
+
function getGlossary() {
|
|
40
|
+
return _getGlossary.apply(this, arguments);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
function _getGlossary() {
|
|
44
|
+
_getGlossary = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee6() {
|
|
45
|
+
var result, tempG, tempT;
|
|
46
|
+
return _regenerator["default"].wrap(function _callee6$(_context6) {
|
|
47
|
+
while (1) {
|
|
48
|
+
switch (_context6.prev = _context6.next) {
|
|
49
|
+
case 0:
|
|
50
|
+
_context6.next = 2;
|
|
51
|
+
return getJSON('https://glossary.infil.net/json/glossary.json');
|
|
52
|
+
|
|
53
|
+
case 2:
|
|
54
|
+
result = _context6.sent;
|
|
55
|
+
tempG = {};
|
|
56
|
+
tempT = [];
|
|
57
|
+
result.forEach(function (i) {
|
|
58
|
+
var term = i.term.toLowerCase();
|
|
59
|
+
tempG[term] = i;
|
|
60
|
+
tempT.push(term);
|
|
61
|
+
});
|
|
62
|
+
glossary = tempG;
|
|
63
|
+
terms = tempT;
|
|
64
|
+
|
|
65
|
+
case 8:
|
|
66
|
+
case "end":
|
|
67
|
+
return _context6.stop();
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}, _callee6);
|
|
71
|
+
}));
|
|
72
|
+
return _getGlossary.apply(this, arguments);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
_glob["default"].sync(_path["default"].join(imgPath, 'basic/**'), {
|
|
76
|
+
nodir: true
|
|
77
|
+
}).forEach(function (p) {
|
|
78
|
+
var input = p.split('/').pop().replace('.png', '');
|
|
79
|
+
basicInputs.set(input, p);
|
|
80
|
+
});
|
|
81
|
+
|
|
82
|
+
basicInputs.set('>>', _path["default"].join(imgPath, 'basic/doubleforward.png'));
|
|
83
|
+
|
|
84
|
+
_glob["default"].sync(_path["default"].join(imgPath, 'games/**'), {
|
|
85
|
+
nodir: true
|
|
86
|
+
}).forEach(function (p) {
|
|
87
|
+
var _path$parse = _path["default"].parse(_path["default"].relative(_path["default"].join(imgPath, 'games'), p)),
|
|
88
|
+
dir = _path$parse.dir,
|
|
89
|
+
name = _path$parse.name;
|
|
90
|
+
|
|
91
|
+
if (!gameInputs.has(dir)) gameInputs.set(dir, new Map());
|
|
92
|
+
gameInputs.get(dir).set(name, p);
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
function solveInput(inputs, input) {
|
|
96
|
+
if (inputs.has(input)) return [input];
|
|
97
|
+
|
|
98
|
+
for (var i = 0; i < input.length; i++) {
|
|
99
|
+
var s1 = input.slice(0, 0 - i);
|
|
100
|
+
if (inputs.has(s1)) return [s1].concat((0, _toConsumableArray2["default"])(solveInput(inputs, input.slice(0 - i))));
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
throw new Error("Cannot find \"".concat(input, "\" as a recognizable input"));
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
function sendInput(_x, _x2, _x3, _x4) {
|
|
107
|
+
return _sendInput.apply(this, arguments);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
function _sendInput() {
|
|
111
|
+
_sendInput = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee7(inputs, result, message, caption) {
|
|
112
|
+
var canvas;
|
|
113
|
+
return _regenerator["default"].wrap(function _callee7$(_context7) {
|
|
114
|
+
while (1) {
|
|
115
|
+
switch (_context7.prev = _context7.next) {
|
|
116
|
+
case 0:
|
|
117
|
+
_context7.next = 2;
|
|
118
|
+
return (0, _sharp["default"])({
|
|
119
|
+
create: {
|
|
120
|
+
width: 152 * result.length,
|
|
121
|
+
height: 152,
|
|
122
|
+
channels: 4,
|
|
123
|
+
background: 'transparent'
|
|
124
|
+
}
|
|
125
|
+
}).composite(result.map(function (it, index) {
|
|
126
|
+
return {
|
|
127
|
+
input: inputs.get(it),
|
|
128
|
+
left: index * 152,
|
|
129
|
+
top: 0,
|
|
130
|
+
width: 152,
|
|
131
|
+
height: 152
|
|
132
|
+
};
|
|
133
|
+
})).png().toBuffer();
|
|
134
|
+
|
|
135
|
+
case 2:
|
|
136
|
+
canvas = _context7.sent;
|
|
137
|
+
return _context7.abrupt("return", message.reply({
|
|
138
|
+
content: caption,
|
|
139
|
+
files: [canvas]
|
|
140
|
+
}));
|
|
141
|
+
|
|
142
|
+
case 4:
|
|
143
|
+
case "end":
|
|
144
|
+
return _context7.stop();
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}, _callee7);
|
|
148
|
+
}));
|
|
149
|
+
return _sendInput.apply(this, arguments);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
var builtin = {
|
|
153
|
+
37: {
|
|
154
|
+
game: 'sf',
|
|
155
|
+
caption: '***LETS GO JUSTIN!***',
|
|
156
|
+
input: '6 6 6 6 6 6 6 >> 6 6 6 6 6 6 6 >> 8 6 j. hk >> 2 mk >> 623 mp >> 236 236 lk'
|
|
157
|
+
}
|
|
158
|
+
};
|
|
159
|
+
var _default = {
|
|
160
|
+
name: 'fg-notation',
|
|
161
|
+
about: {
|
|
162
|
+
name: 'FG Notation',
|
|
163
|
+
value: '[Instructions and source code](https://lotus.chitowarlock.com/fgnotation)\n[Infil\'s Fighting Game Glossary](https://glossary.infil.net)\n[MagicianStuff\'s Fighthing Game notations emotes](https://twitter.com/MagicianStuff/status/1477931054484893697)'
|
|
164
|
+
},
|
|
165
|
+
intents: ['GUILD_MESSAGES'],
|
|
166
|
+
partials: ['MESSAGE'],
|
|
167
|
+
preload: function preload(sequelize) {
|
|
168
|
+
sequelize.define('fginput', {
|
|
169
|
+
guild: {
|
|
170
|
+
type: _sequelize.DataTypes.STRING,
|
|
171
|
+
primaryKey: true
|
|
172
|
+
},
|
|
173
|
+
name: {
|
|
174
|
+
type: _sequelize.DataTypes.STRING,
|
|
175
|
+
primaryKey: true
|
|
176
|
+
},
|
|
177
|
+
createdBy: _sequelize.DataTypes.STRING,
|
|
178
|
+
game: _sequelize.DataTypes.STRING,
|
|
179
|
+
caption: _sequelize.DataTypes.STRING,
|
|
180
|
+
input: _sequelize.DataTypes.STRING
|
|
181
|
+
});
|
|
182
|
+
},
|
|
183
|
+
events: {
|
|
184
|
+
messageCreate: function messageCreate(global, message) {
|
|
185
|
+
return (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
186
|
+
var client, config, sequelize, guildId, prefix, name, row, inputs;
|
|
187
|
+
return _regenerator["default"].wrap(function _callee$(_context) {
|
|
188
|
+
while (1) {
|
|
189
|
+
switch (_context.prev = _context.next) {
|
|
190
|
+
case 0:
|
|
191
|
+
client = global.client, config = global.config, sequelize = global.sequelize;
|
|
192
|
+
|
|
193
|
+
if (!(message.author.id === client.user.id || !message.member)) {
|
|
194
|
+
_context.next = 3;
|
|
195
|
+
break;
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
return _context.abrupt("return");
|
|
199
|
+
|
|
200
|
+
case 3:
|
|
201
|
+
guildId = message.guildId;
|
|
202
|
+
prefix = config[guildId].prefix;
|
|
203
|
+
|
|
204
|
+
if (!message.content.startsWith(prefix)) {
|
|
205
|
+
_context.next = 14;
|
|
206
|
+
break;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
name = message.content.split(' ').pop().replace(prefix, '');
|
|
210
|
+
_context.t0 = builtin[name];
|
|
211
|
+
|
|
212
|
+
if (_context.t0) {
|
|
213
|
+
_context.next = 12;
|
|
214
|
+
break;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
_context.next = 11;
|
|
218
|
+
return sequelize.models.fginput.findOne({
|
|
219
|
+
where: {
|
|
220
|
+
guild: message.guild.id,
|
|
221
|
+
name: name
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
case 11:
|
|
226
|
+
_context.t0 = _context.sent;
|
|
227
|
+
|
|
228
|
+
case 12:
|
|
229
|
+
row = _context.t0;
|
|
230
|
+
|
|
231
|
+
if (row) {
|
|
232
|
+
inputs = new Map([].concat((0, _toConsumableArray2["default"])(basicInputs), (0, _toConsumableArray2["default"])(gameInputs.get(row.game))));
|
|
233
|
+
sendInput(inputs, row.input.split(' '), message, row.caption);
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
case 14:
|
|
237
|
+
case "end":
|
|
238
|
+
return _context.stop();
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}, _callee);
|
|
242
|
+
}))();
|
|
243
|
+
}
|
|
244
|
+
},
|
|
245
|
+
commands: {
|
|
246
|
+
fgi: {
|
|
247
|
+
usage: 'fgi [game] [inputs]',
|
|
248
|
+
desc: 'Converts a list of inputs into an image',
|
|
249
|
+
example: 'fgi sf 236P 214K',
|
|
250
|
+
execute: function () {
|
|
251
|
+
var _execute = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2(_ref, _ref2) {
|
|
252
|
+
var param, message, _param, game, i1, inputs, result;
|
|
253
|
+
|
|
254
|
+
return _regenerator["default"].wrap(function _callee2$(_context2) {
|
|
255
|
+
while (1) {
|
|
256
|
+
switch (_context2.prev = _context2.next) {
|
|
257
|
+
case 0:
|
|
258
|
+
param = _ref.param;
|
|
259
|
+
message = _ref2.message;
|
|
260
|
+
_param = (0, _slicedToArray2["default"])(param, 3), game = _param[1], i1 = _param[2];
|
|
261
|
+
|
|
262
|
+
if (!(!game || !i1)) {
|
|
263
|
+
_context2.next = 5;
|
|
264
|
+
break;
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
return _context2.abrupt("return", message.reply('Missing arguments. Example: >fgi sf 236P 214K'));
|
|
268
|
+
|
|
269
|
+
case 5:
|
|
270
|
+
if (gameInputs.has(game)) {
|
|
271
|
+
_context2.next = 7;
|
|
272
|
+
break;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
return _context2.abrupt("return", message.reply("\"".concat(game, "\" is not a valid game. Available games: ").concat(Array.from(gameInputs.keys()).join(' '))));
|
|
276
|
+
|
|
277
|
+
case 7:
|
|
278
|
+
inputs = new Map([].concat((0, _toConsumableArray2["default"])(basicInputs), (0, _toConsumableArray2["default"])(gameInputs.get(game))));
|
|
279
|
+
result = param.slice(2).map(function (i) {
|
|
280
|
+
return solveInput(inputs, i.toLowerCase());
|
|
281
|
+
}).flat();
|
|
282
|
+
sendInput(inputs, result, message);
|
|
283
|
+
|
|
284
|
+
case 10:
|
|
285
|
+
case "end":
|
|
286
|
+
return _context2.stop();
|
|
287
|
+
}
|
|
288
|
+
}
|
|
289
|
+
}, _callee2);
|
|
290
|
+
}));
|
|
291
|
+
|
|
292
|
+
function execute(_x5, _x6) {
|
|
293
|
+
return _execute.apply(this, arguments);
|
|
294
|
+
}
|
|
295
|
+
|
|
296
|
+
return execute;
|
|
297
|
+
}()
|
|
298
|
+
},
|
|
299
|
+
fgsave: {
|
|
300
|
+
usage: 'fgsave [game] [name] [inputs]',
|
|
301
|
+
desc: 'Saves a list of inputs into a command',
|
|
302
|
+
example: 'fgi sf testName 236P 214K',
|
|
303
|
+
execute: function () {
|
|
304
|
+
var _execute2 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(_ref3, _ref4) {
|
|
305
|
+
var param, sequelize, message, _param2, game, name, i1, inputs, input;
|
|
306
|
+
|
|
307
|
+
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
308
|
+
while (1) {
|
|
309
|
+
switch (_context3.prev = _context3.next) {
|
|
310
|
+
case 0:
|
|
311
|
+
param = _ref3.param, sequelize = _ref3.sequelize;
|
|
312
|
+
message = _ref4.message;
|
|
313
|
+
_param2 = (0, _slicedToArray2["default"])(param, 4), game = _param2[1], name = _param2[2], i1 = _param2[3];
|
|
314
|
+
|
|
315
|
+
if (!(!game || !name || !i1)) {
|
|
316
|
+
_context3.next = 5;
|
|
317
|
+
break;
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
return _context3.abrupt("return", message.reply('Missing arguments. Example: >fgi sf testName 236P 214K'));
|
|
321
|
+
|
|
322
|
+
case 5:
|
|
323
|
+
if (gameInputs.has(game)) {
|
|
324
|
+
_context3.next = 7;
|
|
325
|
+
break;
|
|
326
|
+
}
|
|
327
|
+
|
|
328
|
+
return _context3.abrupt("return", message.reply("\"".concat(game, "\" is not a valid game. Available games: ").concat(Array.from(gameInputs.keys()).join(' '))));
|
|
329
|
+
|
|
330
|
+
case 7:
|
|
331
|
+
inputs = new Map([].concat((0, _toConsumableArray2["default"])(basicInputs), (0, _toConsumableArray2["default"])(gameInputs.get(game))));
|
|
332
|
+
input = param.slice(3).map(function (i) {
|
|
333
|
+
return solveInput(inputs, i.toLowerCase());
|
|
334
|
+
}).flat().join(' ');
|
|
335
|
+
_context3.next = 11;
|
|
336
|
+
return sequelize.models.fginput.create({
|
|
337
|
+
guild: message.guild.id,
|
|
338
|
+
name: name,
|
|
339
|
+
createdBy: message.author.id,
|
|
340
|
+
game: game,
|
|
341
|
+
input: input
|
|
342
|
+
});
|
|
343
|
+
|
|
344
|
+
case 11:
|
|
345
|
+
message.channel.send("Saved command \"".concat(input, "\" as \"").concat(name, "\""));
|
|
346
|
+
|
|
347
|
+
case 12:
|
|
348
|
+
case "end":
|
|
349
|
+
return _context3.stop();
|
|
350
|
+
}
|
|
351
|
+
}
|
|
352
|
+
}, _callee3);
|
|
353
|
+
}));
|
|
354
|
+
|
|
355
|
+
function execute(_x7, _x8) {
|
|
356
|
+
return _execute2.apply(this, arguments);
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
return execute;
|
|
360
|
+
}()
|
|
361
|
+
},
|
|
362
|
+
fgcaption: {
|
|
363
|
+
usage: 'fgcaption [name] [caption]',
|
|
364
|
+
desc: 'Adds a caption to a saved input command',
|
|
365
|
+
example: 'fgcaption testName This is a caption',
|
|
366
|
+
execute: function () {
|
|
367
|
+
var _execute3 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(_ref5, _ref6) {
|
|
368
|
+
var param, sequelize, message, _param3, name, i1, row;
|
|
369
|
+
|
|
370
|
+
return _regenerator["default"].wrap(function _callee4$(_context4) {
|
|
371
|
+
while (1) {
|
|
372
|
+
switch (_context4.prev = _context4.next) {
|
|
373
|
+
case 0:
|
|
374
|
+
param = _ref5.param, sequelize = _ref5.sequelize;
|
|
375
|
+
message = _ref6.message;
|
|
376
|
+
_param3 = (0, _slicedToArray2["default"])(param, 3), name = _param3[1], i1 = _param3[2];
|
|
377
|
+
|
|
378
|
+
if (!(!name || !i1)) {
|
|
379
|
+
_context4.next = 5;
|
|
380
|
+
break;
|
|
381
|
+
}
|
|
382
|
+
|
|
383
|
+
return _context4.abrupt("return", message.reply('Missing arguments. Example: >fgi testName This is a caption'));
|
|
384
|
+
|
|
385
|
+
case 5:
|
|
386
|
+
_context4.next = 7;
|
|
387
|
+
return sequelize.models.fginput.findOne({
|
|
388
|
+
where: {
|
|
389
|
+
guild: message.guild.id,
|
|
390
|
+
name: name
|
|
391
|
+
}
|
|
392
|
+
});
|
|
393
|
+
|
|
394
|
+
case 7:
|
|
395
|
+
row = _context4.sent;
|
|
396
|
+
|
|
397
|
+
if (row) {
|
|
398
|
+
_context4.next = 10;
|
|
399
|
+
break;
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
return _context4.abrupt("return", message.reply("\"".concat(name, "\" is not a saved input list")));
|
|
403
|
+
|
|
404
|
+
case 10:
|
|
405
|
+
row.caption = param.slice(2).join(' ');
|
|
406
|
+
_context4.next = 13;
|
|
407
|
+
return row.save();
|
|
408
|
+
|
|
409
|
+
case 13:
|
|
410
|
+
message.channel.send("Saved caption for input list \"".concat(name, "\""));
|
|
411
|
+
|
|
412
|
+
case 14:
|
|
413
|
+
case "end":
|
|
414
|
+
return _context4.stop();
|
|
415
|
+
}
|
|
416
|
+
}
|
|
417
|
+
}, _callee4);
|
|
418
|
+
}));
|
|
419
|
+
|
|
420
|
+
function execute(_x9, _x10) {
|
|
421
|
+
return _execute3.apply(this, arguments);
|
|
422
|
+
}
|
|
423
|
+
|
|
424
|
+
return execute;
|
|
425
|
+
}()
|
|
426
|
+
},
|
|
427
|
+
fgglossary: {
|
|
428
|
+
usage: 'fgglossary [search term]',
|
|
429
|
+
desc: 'Searches for a term on Infil\'s Glossary',
|
|
430
|
+
example: 'fgglossary mexican uppercut',
|
|
431
|
+
execute: function () {
|
|
432
|
+
var _execute4 = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee5(_ref7, _ref8) {
|
|
433
|
+
var param, sequelize, message, params, search, result, url;
|
|
434
|
+
return _regenerator["default"].wrap(function _callee5$(_context5) {
|
|
435
|
+
while (1) {
|
|
436
|
+
switch (_context5.prev = _context5.next) {
|
|
437
|
+
case 0:
|
|
438
|
+
param = _ref7.param, sequelize = _ref7.sequelize;
|
|
439
|
+
message = _ref8.message;
|
|
440
|
+
params = param.slice(1);
|
|
441
|
+
|
|
442
|
+
if (!(params.length === 0)) {
|
|
443
|
+
_context5.next = 5;
|
|
444
|
+
break;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
return _context5.abrupt("return", message.reply('Missing search term. Example: >fgglossary mexican uppercut'));
|
|
448
|
+
|
|
449
|
+
case 5:
|
|
450
|
+
search = params.join(' ').toLowerCase();
|
|
451
|
+
result = terms.filter(function (i) {
|
|
452
|
+
return i.includes(search);
|
|
453
|
+
});
|
|
454
|
+
url = "https://glossary.infil.net/?t=".concat(params.join('%20').toLowerCase());
|
|
455
|
+
|
|
456
|
+
if (!(result.length === 0)) {
|
|
457
|
+
_context5.next = 10;
|
|
458
|
+
break;
|
|
459
|
+
}
|
|
460
|
+
|
|
461
|
+
return _context5.abrupt("return", message.reply("Term \"".concat(search, "\" not found")));
|
|
462
|
+
|
|
463
|
+
case 10:
|
|
464
|
+
if (!(result.length === 1)) {
|
|
465
|
+
_context5.next = 12;
|
|
466
|
+
break;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
return _context5.abrupt("return", message.reply("```".concat(glossary[result[0]].def, "```Source: <").concat(url, ">")));
|
|
470
|
+
|
|
471
|
+
case 12:
|
|
472
|
+
message.reply("Multiple terms found: ".concat(url));
|
|
473
|
+
|
|
474
|
+
case 13:
|
|
475
|
+
case "end":
|
|
476
|
+
return _context5.stop();
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
}, _callee5);
|
|
480
|
+
}));
|
|
481
|
+
|
|
482
|
+
function execute(_x11, _x12) {
|
|
483
|
+
return _execute4.apply(this, arguments);
|
|
484
|
+
}
|
|
485
|
+
|
|
486
|
+
return execute;
|
|
487
|
+
}()
|
|
488
|
+
}
|
|
489
|
+
}
|
|
490
|
+
};
|
|
491
|
+
exports["default"] = _default;
|
|
Binary file
|