From a0ed6ded41c0ef242040d6dda40b5c220d98d15f Mon Sep 17 00:00:00 2001 From: w Date: Sun, 1 Jun 2025 22:03:37 -0300 Subject: [PATCH] adding signup command --- bot/response.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/bot/response.py b/bot/response.py index ea0abe5..3d0a348 100644 --- a/bot/response.py +++ b/bot/response.py @@ -1,12 +1,14 @@ from datetime import datetime, timedelta, timezone -from db_utils import get_or_create_user, insert_pull, get_last_rolled_at, get_random_character +from db_utils import get_player, insert_player, insert_pull, get_last_rolled_at, get_random_character from add_character import add_character from config import GACHA_ROLL_INTERVAL def do_roll(full_user): '''Determines whether the user can roll, then pulls a random character''' - user_id = get_or_create_user(full_user) + user_id = get_player(full_user) + if not user_id: + return f'@{full_user} 🛑 You haven’t signed up yet! Use the `signup` command to start playing.' # Get date of user's last roll date = get_last_rolled_at(user_id) @@ -43,6 +45,16 @@ def do_roll(full_user): return([f"@{full_user} 🎲 Congrats! You rolled {stars} **{character_name}**\n\ She's all yours now~ 💖✨",[file_id]]) +def do_signup(full_user): + '''Registers a new user if they haven’t signed up yet.''' + user_id = get_player(full_user) + + if user_id: + return f'@{full_user} 👀 You’re already signed up! Let the rolling begin~ 🎲' + + new_user_id = insert_player(full_user) + return f'@{full_user} ✅ Signed up successfully! Your gacha destiny begins now... ✨ Use the roll command to start!' + def is_float(val): '''Returns true if `val` can be converted to a float''' try: @@ -96,5 +108,7 @@ def generate_response(parsed_command): return do_create(full_user, arguments, note_obj) case 'help': return do_help(command) + case 'signup': + return do_signup(full_user) case _: return None