(bot: Client)
| 113 | |
| 114 | // set activity (a.k.a. the gamer code) |
| 115 | export async function activityChanger(bot: Client) { |
| 116 | if (!broadcast) { |
| 117 | let message: (BotActivity & { status: string }) | string = random(messagesConfig.messages); |
| 118 | if (typeof message === "string") { |
| 119 | message = { |
| 120 | name: message, |
| 121 | status: "dnd", |
| 122 | type: ActivityTypes.GAME, |
| 123 | }; |
| 124 | } |
| 125 | if (!activityTypes.includes(message.status)) message.status = "dnd"; |
| 126 | if (message.type < 0 || message.type > 5) message.type = 0; |
| 127 | const text = message.name + (commandsConfig.types.classic ? ` | @${bot.user.username} help` : ""); |
| 128 | await bot.editStatus(message.status as SendStatuses, [ |
| 129 | { |
| 130 | ...message, |
| 131 | name: text, |
| 132 | // @ts-expect-error It mistakenly thinks there's no overlap here |
| 133 | state: message.type === ActivityTypes.CUSTOM ? text : undefined, |
| 134 | }, |
| 135 | ]); |
| 136 | } |
| 137 | } |
| 138 | |
| 139 | export async function checkBroadcast(bot: Client, db: DatabasePlugin | undefined) { |
| 140 | if (!db) { |
no test coverage detected