44 lines
1.2 KiB
Python
Executable File
44 lines
1.2 KiB
Python
Executable File
import discord
|
|
from random import randint
|
|
|
|
|
|
def roll_logic(sides):
|
|
return randint(1, sides)
|
|
|
|
|
|
def roll(number_of_die, sides, number_to_add=None):
|
|
results = list(tuple(roll_logic(int(sides)) for _ in range(int(number_of_die))))
|
|
|
|
# blue
|
|
embed_color = 3447003
|
|
if sum(results) == 1:
|
|
# Red
|
|
embed_color = 15158332
|
|
if sum(results) >= 10:
|
|
# Green
|
|
embed_color = 3066993
|
|
if sum(results) >= 15:
|
|
# Gold
|
|
embed_color = 15844367
|
|
|
|
embed = discord.Embed(description=None, color=embed_color, type="rich")
|
|
embed.set_author(name="Rolling %s, %s sided die" % (number_of_die, sides))
|
|
embed.add_field(name="Rolls", value=results, inline=False)
|
|
if number_to_add:
|
|
number_to_add = int(number_to_add)
|
|
embed.set_author(
|
|
name="Rolling %s, %s sided die, and adding %s"
|
|
% (number_of_die, sides, number_to_add)
|
|
)
|
|
embed.add_field(
|
|
name="**Total**",
|
|
value=":game_die: %d+%d = %d"
|
|
% (sum(results), number_to_add, (sum(results) + number_to_add)),
|
|
inline=False,
|
|
)
|
|
else:
|
|
embed.add_field(
|
|
name="**Total**", value=":game_die: %s" % sum(results), inline=False
|
|
)
|
|
return embed
|