今天我要來寫骰子機器人2.0,骰子遊戲除了猜數字還可以數字單雙、豹子、總和等等,所以今天我打算將單雙跟豹子加入到我的程式中
1.大小跟前一天的一樣那單雙就可以用一樣的概念來寫
2.豹子是指3個骰子點數相同所以要在昨天的程式上多加一個骰子
3.總和就是玩家輸入他的答案去跟三個骰子點數相加想比較就可以了
4.其他東西就跟昨天的一模一樣
import random
import discord
from discord.ext import commands
intents = discord.Intents.all()
bot = commands.Bot(command_prefix=‘!’,intents=intents)
def roll_dice():
return random.randint(1, 6)
@bot.command()
async def dice(ctx, bet_type: str, bet_value: str):
if bet_type not in ['豹子','總和','單雙','大小'] :
await ctx.send('無效的猜測,請輸入 "豹子"、 "總和"、"單雙"或"大小"。')
return
if bet_type in ['總和'] not in ['3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18']:
await ctx.send('無效的猜測,請輸入"總和"及3~18其中一數字。')
return
if bet_type in ['豹子'] not in ['1','2','3','4','5','6']:
await ctx.send('無效的猜測,請輸入"豹子"及1~6其中一數字。')
return
if bet_type in ['單雙'] not in ['單','雙']:
await ctx.send('無效的猜測,請輸入"單雙"及"單"或"雙"。')
return
if bet_type in ['大小'] not in ['大','小']:
await ctx.send('無效的猜測,請輸入"大小"及"大"或"小"。')
return
dice_roll = [roll_dice(), roll_dice(), roll_dice()]
total = sum(dice_roll)
await ctx.send(f"骰子點數為:{dice_roll},總點數為:{total}")
if dice_roll[0] == dice_roll[1] == dice_roll[2]:
if bet_type == '豹子' and bet_value == str(dice_roll[0]):
await ctx.send("恭喜,你贏了!")
else:
await ctx.send("很遺憾,你輸了。")
else:
if bet_type == '總和' and bet_value == str(total):
await ctx.send("恭喜,你贏了!")
elif bet_type == '大小':
if total >= 4 and total <= 10 and bet_value == '小':
await ctx.send("恭喜,你贏了!")
elif total >= 11 and total <= 17 and bet_value == '大':
await ctx.send("恭喜,你贏了!")
else:
await ctx.send("很遺憾,你輸了。")
elif bet_type == '單雙':
if total % 2 == 0 and bet_value == '雙':
await ctx.send("恭喜,你贏了!")
elif total % 2 == 1 and bet_value == '單':
await ctx.send("恭喜,你贏了!")
else:
await ctx.send("很遺憾,你輸了。")
else:
await ctx.send("很遺憾,你輸了。")
bot.run('token')
豹子我一直沒有成功(玩到想哭
所以先不放執行結果