button.js
2.39 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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
const { MessageActionRow, MessageButton, Interaction } = require('discord.js');
// var trans = require('./translate');
var disabled_var={
en:true,
ko:false,
jp:false
};
var current_country='영어' // 초기값 영어
function trans_disabled_var(input_str){
if (input_str == "en"){
disabled_var.en=true;
disabled_var.ko=false;
disabled_var.jp=false;
label_var.en = '😛';
label_var.ko = '한국어';
label_var.jp = '일본어';
current_country = '영어';
}
else if (input_str == "ko"){
disabled_var.en=false;
disabled_var.ko=true;
disabled_var.jp=false;
label_var.en = '한국어';
label_var.ko = '😛';
label_var.jp = '일본어';
current_country = '한국어';
}
else if (input_str == "jp"){
disabled_var.en=false;
disabled_var.ko=false;
disabled_var.jp=true;
label_var.en = '영어';
label_var.ko = '한국어';
label_var.jp = '😛';
current_country = '일본어';
}
}
var label_var={
en:'😛', // 초기값 영어(disabled), 버튼 선택시 함수가 돌아가는 것이므로 처음엔 X표시
ko:'한국어',
jp:'일본어',
};
exports.run = async (client, msg, args, prefix) => {
const row = new MessageActionRow()
.addComponents(
new MessageButton()
.setCustomId('korean')
.setLabel(label_var.ko)
.setStyle('PRIMARY')
.setDisabled(disabled_var.ko),
new MessageButton()
.setCustomId('japanese')
.setLabel(label_var.jp)
.setStyle('PRIMARY')
.setDisabled(disabled_var.jp),
new MessageButton()
.setCustomId('english')
.setLabel(label_var.en)
.setStyle('PRIMARY')
.setDisabled(disabled_var.en),
); //버튼 생성
await msg.reply({ content: '번역하고 싶은 언어를 골라주세요. 현재 언어는 '+ current_country+ '입니다.', components: [row] });
//버튼 출력
client.on('interactionCreate', interaction => {
if (!interaction.isButton()) return;
if(interaction.customId === 'korean'){
global.trans_var ='ko';
trans_disabled_var('ko');
}
else if(interaction.customId === 'japanese'){
global.trans_var ='jp';
trans_disabled_var('jp');
}
else if(interaction.customId === 'english'){
global.trans_var ='en';
trans_disabled_var('en');
}
});
};
exports.config = {
name: '나라',
aliases: [' ', ' ', ' ', ' '],
category: ['translate'],
des: ['채팅 내용에 대한 검색결과를 보여줍니다.'],
use: ['!나라']
};