pissbot-9000/labscore/utils/message.js
2024-04-01 01:55:09 +02:00

37 lines
No EOL
2.3 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

const { Permissions } = require("detritus-client/lib/constants")
const { basecamp } = require("../logging")
const { STATICS } = require("./statics")
module.exports.editOrReply = function(context, message, disableReference = false){
// Apply message_reference
if(!message.content && !message.embed && !message.embeds && !message.components && !message.files) message = {embeds: [message]}
if(!message.message_reference && !disableReference) message.reference = true
// Disable mentions
if(!message.allowedMentions) message.allowedMentions = {parse: [], repliedUser: false}
// you can figure out what this does on your own time
//message.nonce = Math.floor(Math.random() * 9999 + 1000)
// fools2024
if(message.embeds?.length){
for (let i = 0; i < message.embeds.length; i++) {
const embed = message.embeds[i];
console.log(embed)
if(embed.footer) {
message.embeds[i].footer.text = message.embeds[i].footer.text.replace('labsCore', '𝕃 - the everything bot')
if(embed.footer.iconUrl = STATICS.labscore) message.embeds[i].footer.iconUrl = "https://cdn.discordapp.com/attachments/839367089801527306/1224142999207022822/everything.png?ex=661c6b02&is=6609f602&hm=62ae387bafcc85a4e9c9a1fd3f4ad1839d19881f3d915ab442b4cb8cbba2adcf&"
}
}
}
// Handle responses for interaction context
if(context.editOrRespond){
return context.editOrRespond(message).catch((e)=>{
basecamp(`<:ico_w3:1086624963047460874>\`[${process.env.HOSTNAME}]\` **\` SHARD_MESSAGE_ERROR \`** \`[Shard ${context.client.shardId}]\` Command \`${context.command.name}\` failed to respond: @ \`${Date.now()}\`\nGuild: \`${context.guild.id}\`\nChannel: \`${context.channel.id}\`\nUser: \`${context.user.id}\`\`\`\`js\n${e}\`\`\``, message)
})
}
// Only respond if the command is still available and we have permissions to respond.
if(!context.message.deleted && context.channel.can(Permissions.SEND_MESSAGES)) return context.editOrReply(message).catch((e)=>
basecamp(`<:ico_w3:1086624963047460874>\`[${process.env.HOSTNAME}]\` **\` SHARD_MESSAGE_ERROR \`** \`[Shard ${context.client.shardId}]\` Command \`${context.message.content}\` failed to reply: @ \`${Date.now()}\`\nGuild: \`${context.guild.id}\`\nChannel: \`${context.channel.id}\`\nUser: \`${context.user.id}\`\`\`\`js\n${e}\`\`\``, message)
)
}