-
-
Notifications
You must be signed in to change notification settings - Fork 14
Expand file tree
/
Copy pathcollect_option.js
More file actions
95 lines (77 loc) · 3 KB
/
Copy pathcollect_option.js
File metadata and controls
95 lines (77 loc) · 3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
module.exports = (WDR, Functions, source, oMessage, bMessage, Member) => {
let BotMsg = bMessage;
let OriginalMsg = oMessage;
const filter = CollectedMsg => CollectedMsg.author.id == OriginalMsg.author.id;
const collector = OriginalMsg.channel.createMessageCollector(filter, {
time: 60000
});
collector.on('collect', CollectedMsg => {
if (!CollectedMsg.content.startsWith(WDR.Config.PREFIX)) {
try {
CollectedMsg.delete();
// eslint-disable-next-line no-empty
} catch (e) {
}
}
let input = CollectedMsg.content.split(' ')[0].toString().toLowerCase();
let add_words = ['ad', 'add', 'create'],
preset_words = ['preset', 'presets'],
remove_words = ['remove', 'rm'],
view_words = ['view', 'vw', 'veiw', 'viw', 'vew'],
pause_words = ['puase', 'pasue', 'pasue', 'psaue', 'paus', 'pause'],
resume_words = ['resum', 'rseume', 'reusme', 'resuem', 'resume'];
switch (true) {
case add_words.some(word => input.includes(word)):
collector.stop('add');
break;
case preset_words.some(word => input.includes(word)):
collector.stop('preset');
break;
case remove_words.some(word => input.includes(word)):
collector.stop('remove');
break;
case view_words.some(word => input.includes(word)):
collector.stop('view');
break;
case pause_words.some(word => input.includes(word)):
collector.stop('pause');
break;
case resume_words.some(word => input.includes(word)):
collector.stop('resume');
break;
default:
collector.stop('cancel');
}
});
collector.on('end', (collected, arg) => {
try {
BotMsg.delete();
// eslint-disable-next-line no-empty
} catch (e) {
}
switch (arg) {
case 'cancel':
return Functions.Cancel(WDR, Functions, OriginalMsg, Member);
case 'add':
return Functions.Create(WDR, Functions, OriginalMsg, Member);
case 'preset':
return Functions.Preset(WDR, Functions, OriginalMsg, Member);
case 'remove':
return Functions.Remove(WDR, Functions, OriginalMsg, Member);
case 'view':
return Functions.View(WDR, Functions, OriginalMsg, Member);
case 'resume':
case 'pause':
return Functions.Status(WDR, Functions, OriginalMsg, Member, arg);
case 'time':
if (source != 'complete') {
return Functions.TimedOut(WDR, Functions, OriginalMsg, Member);
}
return null;
default:
return null;
}
});
// END
return;
};