Как я могу изменить название канала по времени, затем вернуть имя к исходному и выполнить цикл с этим? - PullRequest
0 голосов
/ 04 мая 2019

Итак, как я могу изменить название канала по времени, затем вернуть имя к исходному и выполнить цикл с этим? Пожалуйста, покажи мне пример. Спасибо.

Ответы [ 2 ]

1 голос
/ 04 мая 2019

Чтобы изменить название канала, вы должны использовать GuildChannel.setName().
Чтобы сделать это в цикле, я буду использовать setInterval().

Вы можете сделать что-то вроде этого:

// Assuming 'channel' is the channel you want to change
const altName = 'Your other channel name',
  originalName = channel.name,
  timer = 30000; // 30 seconds in this example (30*1000)

function change() {
  if (channel.name == originalName) channel.setName(altName);
  else channel.setName(originalName);
}

change();
const channelInterval = setInterval(change, timer);

Вам решать, реализовать это в команде или при запуске бота.

0 голосов
/ 04 мая 2019

Вы можете использовать функцию JavaScript setTimeout. С помощью этой функции вы можете передать обратный вызов в первом параметре и интервал времени (в миллисекундах) в качестве второго параметра, то есть время, которое он задержит для вызова вашей функции. Так будет примерно так:

function changeChannelName(name) {
  // Code to change channel name
}

setTimeout(changeChannelName, 10000, 'New channel name');

Таким образом, через 10 секунд будет вызвана ваша функция. Третий параметр setTimeout, это ваш функциональный параметр

Надеюсь, это поможет вам.

...