discord-multipurpose-bot/commands/games/rock-paper-scissors.js
Ayden cb5a906850
Some checks are pending
Docker / build (push) Waiting to run
Feat/Add Music Commands (#1)
* add simple music functionality

* update workflow

* update Dockerfile

* update Dockerfile

* update Dockerfile

* update Dockerfile

* add few more music commands

* add lyrics command

* update lyrics command

* add loop, and add categories to all commands

* change discord status

* seperate distube and change startup console theme

* Update README

* UPDATE LICENSE file

* fix docker compose image, add better error handling for distube and update tagging workflow

* switch to node-alpine image for docker

* switch to node-alpine image for docker

* update ascii

* music commands imporvements, implement live lyrics, some guards and bot leaving on empty

* use ffmpeg package rather than ffmpeg-static
2025-09-21 01:26:18 +01:00

42 lines
1.2 KiB
JavaScript

const { SlashCommandBuilder } = require("discord.js");
module.exports = {
data: new SlashCommandBuilder()
.setName("rps")
.setDescription("Play Rock Paper Scissors!")
.addStringOption((option) =>
option
.setName("choice")
.setDescription("Choose rock, paper, or scissors")
.setRequired(true)
.addChoices(
{ name: "Rock", value: "rock" },
{ name: "Paper", value: "paper" },
{ name: "Scissors", value: "scissors" }
)
),
category: "Games",
async execute(interaction) {
const userChoice = interaction.options.getString("choice");
const choices = ["rock", "paper", "scissors"];
const botChoice = choices[Math.floor(Math.random() * choices.length)];
let result;
if (userChoice === botChoice) {
result = "It's a draw!";
} else if (
(userChoice === "rock" && botChoice === "scissors") ||
(userChoice === "paper" && botChoice === "rock") ||
(userChoice === "scissors" && botChoice === "paper")
) {
result = "You win!";
} else {
result = "You lose!";
}
await interaction.reply(
`You chose ${userChoice}. I chose ${botChoice}. ${result}`
);
},
};