Evena
Evena
DIAdiscord.js - Imagine an app
Created by Evena on 12/30/2024 in #djs-questions
Trying to detect emojis added to messages
I am attempting to detect when emojis are added to messages and do different things based on the emoji however currently it isn't doing anything. I found a thing mentioning doing it this way so I tried it, I also looked into event handling and tried putting it into its own file, below, and that didn't work either. Neither of them give errors they simply don't print anything. inside of index.js:
client.on(Events.MessageReactionAdd, (reaction) => {
console.log("event entered");
if (reaction.emoji.identifier == 'gold') {
console.log("Reaction emoji gold!");
}
else {
console.log(reaction.emoji.identifier);
}
})
client.on(Events.MessageReactionAdd, (reaction) => {
console.log("event entered");
if (reaction.emoji.identifier == 'gold') {
console.log("Reaction emoji gold!");
}
else {
console.log(reaction.emoji.identifier);
}
})
events/messageReactionAdd.js:
const { Events, MessageFlags } = require('discord.js');

module.exports = {
name: Events.MessageReactionAdd,
async execute(reaction) {
console.log("event entered");
if (reaction.emoji.identifier == 'gold') {
console.log("Reaction emoji gold!");
} else {
console.log(reaction.emoji.identifier);
}
}
};
const { Events, MessageFlags } = require('discord.js');

module.exports = {
name: Events.MessageReactionAdd,
async execute(reaction) {
console.log("event entered");
if (reaction.emoji.identifier == 'gold') {
console.log("Reaction emoji gold!");
} else {
console.log(reaction.emoji.identifier);
}
}
};
17 replies
DIAdiscord.js - Imagine an app
Created by Evena on 12/28/2024 in #djs-questions
Can't find json file in correct path.
I'm trying to get values from 2 separate json files but cannot find the files.
async function processMembers(members) {
let unityJSON;
let commerceJSON;

// Constructing absolute paths
const unityFilePath = path.resolve(__dirname, "res", "json", "unity_credits.json");
const commerceFilePath = path.resolve(__dirname, "res", "json", "commerce_credits.json");

console.log(`Attempting to read Unity credits JSON from: ${unityFilePath}`);
try {
const unityData = await fs.readFile(unityFilePath, "utf8");
unityJSON = JSON.parse(unityData);
} catch {
console.warn('Unity credits JSON not found!');
}

console.log(`Attempting to read Commerce credits JSON from: ${commerceFilePath}`);
try {
const commerceData = await fs.readFile(commerceFilePath, "utf8");
commerceJSON = JSON.parse(commerceData);
} catch {
console.warn('Commerce credits JSON not found!');
}
async function processMembers(members) {
let unityJSON;
let commerceJSON;

// Constructing absolute paths
const unityFilePath = path.resolve(__dirname, "res", "json", "unity_credits.json");
const commerceFilePath = path.resolve(__dirname, "res", "json", "commerce_credits.json");

console.log(`Attempting to read Unity credits JSON from: ${unityFilePath}`);
try {
const unityData = await fs.readFile(unityFilePath, "utf8");
unityJSON = JSON.parse(unityData);
} catch {
console.warn('Unity credits JSON not found!');
}

console.log(`Attempting to read Commerce credits JSON from: ${commerceFilePath}`);
try {
const commerceData = await fs.readFile(commerceFilePath, "utf8");
commerceJSON = JSON.parse(commerceData);
} catch {
console.warn('Commerce credits JSON not found!');
}
Attempting to read Unity credits JSON from: [path of __dirname]\res\json\unity_credits.json
Unity credits JSON not found!
Attempting to read Commerce credits JSON from: [path of __dirname]\res\json\commerce_credits.json
Commerce credits JSON not found!
Attempting to read Unity credits JSON from: [path of __dirname]\res\json\unity_credits.json
Unity credits JSON not found!
Attempting to read Commerce credits JSON from: [path of __dirname]\res\json\commerce_credits.json
Commerce credits JSON not found!
3 replies
DIAdiscord.js - Imagine an app
Created by Evena on 12/28/2024 in #djs-questions
bot not seeing users
I have the following code which I'm using to attempt to add 2 separate currencies to users, however my bot is only seeing itself. I have a feeling it's because I don't fully understand how the redirect works. The bot is in my server with administrator permissions, and has Server Members Intent, Presence Intent, and Message Intent. Additionally, the oauth url I generated had bot, identify, messages.read, and all guilds permissions.
//Attempting to call processMembers for all members in order to add members currency to tables.
client.once('ready', () => {
const guild = client.guilds.cache.get(guildId);
if (guild) {
console.log('Using cached members.');
const members = guild.members.cache;

if (members.size === 1) {
console.log('No cached members found. Fetching members...');
guild.members.fetch()
.then(fetchedMembers => {
console.log(`Fetched ${fetchedMembers.size} members.`);
processMembers(fetchedMembers);
})
.catch(err => console.error('Failed to fetch members:', err));
} else {
console.log(`Cached members found: ${members.size}`);
processMembers(members);
}
} else {
console.error(`No guild found with ID: ${guildId}`);
}
console.log(`Ready! Logged in as ${client.user.tag}`);
});

function processMembers(members) {
members.forEach(member => {
console.log('Processing for each member.');
unity_credits.set(member.user.id, 60);
commerce_credits.set(member.user.id, 60);
console.log(`Unity credits for ${member.user.username}: ${unity_credits.get(member.user.id)}`);
console.log(`Commerce credits for ${member.user.username}: ${commerce_credits.get(member.user.id)}`);
});
}
//Attempting to call processMembers for all members in order to add members currency to tables.
client.once('ready', () => {
const guild = client.guilds.cache.get(guildId);
if (guild) {
console.log('Using cached members.');
const members = guild.members.cache;

if (members.size === 1) {
console.log('No cached members found. Fetching members...');
guild.members.fetch()
.then(fetchedMembers => {
console.log(`Fetched ${fetchedMembers.size} members.`);
processMembers(fetchedMembers);
})
.catch(err => console.error('Failed to fetch members:', err));
} else {
console.log(`Cached members found: ${members.size}`);
processMembers(members);
}
} else {
console.error(`No guild found with ID: ${guildId}`);
}
console.log(`Ready! Logged in as ${client.user.tag}`);
});

function processMembers(members) {
members.forEach(member => {
console.log('Processing for each member.');
unity_credits.set(member.user.id, 60);
commerce_credits.set(member.user.id, 60);
console.log(`Unity credits for ${member.user.username}: ${unity_credits.get(member.user.id)}`);
console.log(`Commerce credits for ${member.user.username}: ${commerce_credits.get(member.user.id)}`);
});
}
Current output is as follows:
Using cached members.
No cached members found. Fetching members...
Ready! Logged in as The Arbiter#4578
Using cached members.
No cached members found. Fetching members...
Ready! Logged in as The Arbiter#4578
7 replies