Gutted BJBot - /bj doesn't work

This commit is contained in:
2022-11-22 11:55:25 +10:00
parent 0d145f03a3
commit 501f73e8c2
5 changed files with 29 additions and 6 deletions

View File

@@ -1,9 +1,9 @@
import discord
from discord import app_commands
from BlackJack import BlackJack
botIntents = discord.Intents.all()
client = discord.Client(intents=botIntents)
tree = app_commands.CommandTree(client)
@@ -42,6 +42,20 @@ class Buttons(discord.ui.View):
child.disabled = True
await interaction.response.edit_message(content=f"Ouch!", view=self)
@tree.command(description="Play Black Jack!")
async def bj(interaction: discord.Interaction):
discinput = lambda m: discordInput(interaction, m)
discoutput = lambda m: discordOutput(interaction, m)
blackJack = BlackJack(discinput, discoutput)
blackJack.play_game(100)
async def discordInput(interaction: discord.Interaction, message:str):
await interaction.response.send_message(message)
def check(m):
return m.content in ["h", "s"] and m.channel == interaction.channel
msg = await client.wait_for('message', check=check)
async def discordOutput(interaction, message):
await interaction.response.send_message(message)
client.run('NzgwNzg4NDIwMjkzMDM0MDA0.GEKkUB.Bbl09D3lWMGea_mcIESPMLUyGlkW-6N53BPFjI')

View File

@@ -263,6 +263,7 @@ class BlackJack:
with open("ledger.txt", "a") as ledger:
ledger.write("{ID}:{Money}:0:0\n".format(ID=ID, Money=starterCash))
def main():
terminput = lambda message: input(message)
termoutput = lambda message: print(message)

View File

@@ -1,10 +1,17 @@
from discord import *
from discord.ext import commands
import discord
from BlackJack import *
client = commands.Bot(command_prefix='~~')
async def discordInput(interaction: discord.Interaction, message:str):
await interaction.response.send_message(message)
def check(m):
return m.content in ["h", "s"] and m.channel == interaction.channel
msg = await client.wait_for('message', check=check)
async def discordOutput(ctx, message):
await ctx.send(message)
@client.event
async def on_ready():
@@ -12,6 +19,8 @@ async def on_ready():
@client.command()
async def play_game(ctx, arg):
await ctx.send("Players hand = " + str(getHandTotal(bj.playerHand)) + ": " + handNumbersToCards(
bj.playerHand) + "\n" + "Dealers hand = ??: " + convertNumberToCard(bj.dealerHand[0]) + "??")
bj = BlackJack()
gameOver = False
playerStood = False
@@ -32,8 +41,7 @@ async def play_game(ctx, arg):
gameOver = bj.checkGameOver(dealerWinState)
if gameOver:
continue
await ctx.send("Players hand = " + str(getHandTotal(bj.playerHand)) + ": " + handNumbersToCards(
bj.playerHand) + "\n" + "Dealers hand = ??: " + convertNumberToCard(bj.dealerHand[0]) + "??")
await ctx.send("Hit or Stand? (h/s)")

Binary file not shown.

Binary file not shown.