노영우

Merge branch 'translator' into 'master'

1 const { MessageActionRow, MessageButton, Interaction } = require('discord.js'); 1 const { MessageActionRow, MessageButton, Interaction } = require('discord.js');
2 2
3 -// var trans = require('./translate'); 3 +var disabled_var={
4 + en:true,
5 + ko:false,
6 + jp:false
7 +};
8 +var label_var={
9 + en:'😛', // 초기값 영어(disabled), 버튼 선택시 함수가 돌아가는 것이므로 처음엔 X표시
10 + ko:'한국어',
11 + jp:'일본어',
12 +};
13 +var current_country='영어' // 초기값 영어
14 +
15 +function trans_disabled_var(input_str){
16 + if (input_str == "en"){
17 + disabled_var.en=true;
18 + disabled_var.ko=false;
19 + disabled_var.jp=false;
20 +
21 + label_var.en = '😛';
22 + label_var.ko = '한국어';
23 + label_var.jp = '일본어';
24 +
25 + current_country = '영어';
26 + }
27 + else if (input_str == "ko"){
28 + disabled_var.en=false;
29 + disabled_var.ko=true;
30 + disabled_var.jp=false;
31 +
32 + label_var.en = '영어';
33 + label_var.ko = '😛';
34 + label_var.jp = '일본어';
35 +
36 + current_country = '한국어';
37 + }
38 + else if (input_str == "jp"){
39 + disabled_var.en=false;
40 + disabled_var.ko=false;
41 + disabled_var.jp=true;
42 +
43 + label_var.en = '영어';
44 + label_var.ko = '한국어';
45 + label_var.jp = '😛';
46 +
47 + current_country = '일본어';
48 + }
49 + // 변수가 3개밖에 안되니깐, 가시성위해서 / 어느 언어로부터 바뀌었는지 모르기 때문에, 편하게 변수에 일일이 할당함.
50 +
51 + // 변수가 100개였다면, 임시 변수 만들고 추적해서 어느 언어에서 바뀌었는지 확인하고, if(임시변수)써서 이모지 할당하고,
52 + // 그전꺼, 바뀌어야 할 국가변수 바꿈(받은 str값 label_var 배열(?) for 문 돌려서 찾음)
53 +}
4 54
5 exports.run = async (client, msg, args, prefix) => { 55 exports.run = async (client, msg, args, prefix) => {
6 56
...@@ -8,21 +58,24 @@ exports.run = async (client, msg, args, prefix) => { ...@@ -8,21 +58,24 @@ exports.run = async (client, msg, args, prefix) => {
8 .addComponents( 58 .addComponents(
9 new MessageButton() 59 new MessageButton()
10 .setCustomId('korean') 60 .setCustomId('korean')
11 - .setLabel('한국어') 61 + .setLabel(label_var.ko)
12 - .setStyle('PRIMARY'), 62 + .setStyle('PRIMARY')
63 + .setDisabled(disabled_var.ko),
13 64
14 new MessageButton() 65 new MessageButton()
15 .setCustomId('japanese') 66 .setCustomId('japanese')
16 - .setLabel('일본어') 67 + .setLabel(label_var.jp)
17 - .setStyle('PRIMARY'), 68 + .setStyle('PRIMARY')
69 + .setDisabled(disabled_var.jp),
18 70
19 new MessageButton() 71 new MessageButton()
20 .setCustomId('english') 72 .setCustomId('english')
21 - .setLabel('영어') 73 + .setLabel(label_var.en)
22 - .setStyle('PRIMARY'), 74 + .setStyle('PRIMARY')
75 + .setDisabled(disabled_var.en),
23 ); //버튼 생성 76 ); //버튼 생성
24 77
25 - await msg.reply({ content: '번역할 나라를 골라주세요.', components: [row] }); 78 + await msg.reply({ content: '번역하고 싶은 언어를 골라주세요. 현재 언어는 '+ current_country+ '입니다.', components: [row] });
26 //버튼 출력 79 //버튼 출력
27 80
28 client.on('interactionCreate', interaction => { 81 client.on('interactionCreate', interaction => {
...@@ -30,14 +83,17 @@ exports.run = async (client, msg, args, prefix) => { ...@@ -30,14 +83,17 @@ exports.run = async (client, msg, args, prefix) => {
30 83
31 if(interaction.customId === 'korean'){ 84 if(interaction.customId === 'korean'){
32 global.trans_var ='ko'; 85 global.trans_var ='ko';
86 + trans_disabled_var('ko');
33 } 87 }
34 88
35 else if(interaction.customId === 'japanese'){ 89 else if(interaction.customId === 'japanese'){
36 global.trans_var ='jp'; 90 global.trans_var ='jp';
91 + trans_disabled_var('jp');
37 } 92 }
38 93
39 else if(interaction.customId === 'english'){ 94 else if(interaction.customId === 'english'){
40 global.trans_var ='en'; 95 global.trans_var ='en';
96 + trans_disabled_var('en');
41 } 97 }
42 98
43 }); 99 });
......
...@@ -21,10 +21,7 @@ exports.run = async (client, msg, args, prefix) => { ...@@ -21,10 +21,7 @@ exports.run = async (client, msg, args, prefix) => {
21 } 21 }
22 }; 22 };
23 23
24 -<<<<<<< HEAD
25 -=======
26 24
27 ->>>>>>> d5a6b9b3343c77c3e74f6ccaeaf88b75094c368c
28 function en_translate(distext){ 25 function en_translate(distext){
29 return translatte(String(distext), {to: 'en'}) 26 return translatte(String(distext), {to: 'en'})
30 .then(res => { 27 .then(res => {
...@@ -65,9 +62,3 @@ exports.config = { ...@@ -65,9 +62,3 @@ exports.config = {
65 des: ['채팅 내용에 대한 검색결과를 보여줍니다.'], 62 des: ['채팅 내용에 대한 검색결과를 보여줍니다.'],
66 use: ['!번역 <채팅>'] 63 use: ['!번역 <채팅>']
67 }; 64 };
...\ No newline at end of file ...\ No newline at end of file
68 -
69 -/*고칠 것
70 -1. 상호작용 실패 알림 뜨는거
71 -2. !번역, 영어상태에서 영어 번역하면 에러 떠서 멈춰버림
72 -3. 꾸미기(?)
73 -*/
...\ No newline at end of file ...\ No newline at end of file
......