Spaces:
Building
Building
File size: 2,606 Bytes
102c16b 2d0f69d 102c16b d41192d 102c16b 2d0f69d 102c16b 2d0f69d d41192d 2d0f69d 102c16b 2d0f69d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
import discord
from discord import app_commands
import random
from cash import user_cash
@app_commands.command(name="dice", description="Roll the dice and bet")
async def dice(interaction: discord.Interaction, bet: int):
await roll_dice(interaction, bet)
async def roll_dice(interaction: discord.Interaction, bet: int):
user_id = interaction.user.id
balance = user_cash.get(user_id, 0)
if bet <= 0:
await interaction.response.send_message("Bet Higher than 0 Idiot.")
return
if bet > balance:
await interaction.response.send_message(f"You don't have enough cash. Your current balance is ${balance:.2f}")
return
embed = discord.Embed(title="Dice Roll", description=f"{interaction.user.name} is betting ${bet:.2f}", color=0x787878)
embed.add_field(name="Current Balance", value=f"${balance:.2f}", inline=False)
roll_button = discord.ui.Button(style=discord.ButtonStyle.primary, label="Roll the Dice", custom_id="roll_dice")
async def roll_dice_callback(interaction: discord.Interaction):
nonlocal balance
result = random.choice(["win", "lose"])
if result == "win":
winnings = bet
balance += winnings
result_text = f"You won ${winnings:.2f}!"
else:
balance -= bet
result_text = f"You lost ${bet:.2f}."
user_cash[user_id] = balance
embed.clear_fields()
embed.add_field(name="Result", value=result_text, inline=False)
embed.add_field(name="New Balance", value=f"${balance:.2f}", inline=False)
roll_again_button = discord.ui.Button(style=discord.ButtonStyle.primary, label="Roll Again", custom_id="roll_again")
async def roll_again_callback(interaction: discord.Interaction):
if interaction.user.id == user_id:
await roll_dice(interaction, bet)
else:
await interaction.response.send_message("you cant roll this", ephemeral=True)
roll_again_button.callback = roll_again_callback
new_view = discord.ui.View()
new_view.add_item(roll_again_button)
await interaction.response.edit_message(embed=embed, view=new_view)
roll_button.callback = roll_dice_callback
view = discord.ui.View()
view.add_item(roll_button)
if interaction.response.is_done():
await interaction.followup.send(embed=embed, view=view)
else:
await interaction.response.send_message(embed=embed, view=view) |