Skip to content Skip to sidebar Skip to footer

How To Make Random Colors For Embeds Discord.js

I want my Discord bot's embeds to appear in red or green (random between those two) so I want to create something that will make this possible. I have the following code: const ran

Solution 1:

If you want to pick a colour from an array of values, you can create a helper function and use that:

functionrandom(colors) {
  return colors[Math.floor(Math.random() * colors.length)];
};

random(['#008000', '#E50000']);
// => "#E50000" or "#008000"

In your example:

const embed = newDiscord
  .MessageEmbed()
  .setColor(random(['#008000', '#E50000']));

If you want to pick a totally random colour value, the .setColor() method accepts specific colour strings. One of them is 'RANDOM`, which sets the colour to a random value:

const embed = newDiscord
  .MessageEmbed()
  .setColor('RANDOM');

Solution 2:

There is no need to write something complex all by yourself. Instead, you can use:

Embed.setColor('RANDOM')

This is an inbuilt feature of the discord.js library.

Solution 3:

From the docs:

The .setColor() method accepts an integer, HEX color string, an array of RGB values or specific color strings.

This means that we simply can generate an array of type [R, G, B] where each R, G and B are integer values between 0 and 255.

constrandomBetween = (min, max) => Math.floor(Math.random()*(max-min+1)+min);

const color = [
  randomBetween(0, 255),
  randomBetween(0, 255),
  randomBetween(0, 255),
];

console.log(color);
document.body.style.background = `rgb(${color[0]}, ${color[1]}, ${color[2]})`;

Post a Comment for "How To Make Random Colors For Embeds Discord.js"