web-dev-qa-db-ja.com

Discord.js setGame()が機能しなくなった

私は約2か月間、Discord.JSを使用してDiscordボットをコーディングしており、ボットが私が言っていることを再生していると言っていないことに最近気づきました。私が最近までボットを最初にコーディングしたとき、それはうまくいきました。今、私が持っている3つの不調和なボットは彼らのゲームを見せていません。

これは私が使用しているコードです:

const Discord = require("discord.js");
const bot = new Discord.Client();
bot.on("ready", () => {
  console.log("Ready");
  bot.user.setGame("Type !help");
}
3
PMCJohn

.setGame()は現在廃止されていますが、.setPresence()を使用することも、.setActivity()と同じ形式で.setGame()を使用することもできます。例.

const Discord = require('discord.js');
const bot = new Discord.Client();
bot.user.setActivity('YouTube', { type: 'WATCHING' });

ここ は、'Watching''Playing'のような何かに変更したい場合のドキュメントへのリンクです。

4
NintendoZaedus

setGame()は非推奨になり、discord.jsはsetActivity()を使用するように要求します。

const Discord = require("discord.js");
const bot = new Discord.Client();
bot.on("ready", () => {
  console.log("Ready");
  bot.user.setActivity("Type !help");
})

これがお役に立てば幸いです。

3

SetGame()メソッドが機能しなくなったため、次のことができます。

  • 最新の11.1-devまたは
  • 代わりに.setPresence({ game: { name: 'nameGoesHere', type: 0 } });を回避策として使用してください

ソース: https://github.com/hydrabolt/discord.js/issues/1807#issuecomment-323578919

2
LW001

LW001がリンクした.setPresenceを使用する短い例を次に示します。

var Discord = require('discord.js');
var bot = new Discord.Client();

bot.on('ready', () => {
    bot.user.setStatus('available') // Can be 'available', 'idle', 'dnd', or 'invisible'
    bot.user.setPresence({
        game: {
            name: 'Type !help',
            type: 0
        }
    });
});

https://discord.js.org/#/docs/main/stable/class/ClientUser?scrollTo=setGame

1
koubi