const fn = require('../functions.js'); const { emoji } = require('../strings.json'); module.exports = { name: 'joint', description: 'Send a random weed-themed phrase.', usage: '.joint', alias: ['bong', 'blunt', 'bowl', 'pipe', 'dab', 'vape', 'dabs', 'shatter', 'edible', 'edibles', 'doobie', 'spliff', 'gummy', 'gummies', 'hash', 'toke', 'big doinks', 'drink', 'shot', 'shots', 'beer', 'beers', 'brew', 'brews', 'liquor', 'cocktail', 'cocktails', 'wine', 'wines', 'whiskey', 'whiskies', 'vodka', 'vodkas', 'rum', 'rums', 'cider', 'ciders', ], execute(message, commandData) { let joints = []; // Create a simple array of the joint texts for (const entry of message.client.joints.map(joint => joint.content)) { joints.push(entry); } // Generate a random number between 0 and the length of the joints array let randIndex = Math.floor(Math.random() * joints.length); // Grab the joint text from the array let joint = joints[randIndex]; // Check if the joint has already been smoked while (message.client.roaches.has(joint)) { // Regenerate a random number and recheck randIndex = Math.floor(Math.random() * joints.length); joint = joints[randIndex]; } // Send the joint message.channel.send(`${joints[randIndex]} ${emoji.joint}`); // Check how full the roach collection is if (message.client.roaches.size / joints.length >= 0.85) { // If the roach collection is 85% of the joints collection // Empty it out message.client.roaches.clear(); } // Add the joint to the roach collection message.client.roaches.set(joint, "baked"); } }