Implement pet nicknames system - database, IRC command, validation
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
parent
4de0c1a124
commit
3098be7f36
3 changed files with 101 additions and 2 deletions
|
|
@ -7,7 +7,7 @@ class PetManagement(BaseModule):
|
|||
"""Handles team, pets, and future pet management commands"""
|
||||
|
||||
def get_commands(self):
|
||||
return ["team", "pets", "activate", "deactivate", "swap"]
|
||||
return ["team", "pets", "activate", "deactivate", "swap", "nickname"]
|
||||
|
||||
async def handle_command(self, channel, nickname, command, args):
|
||||
if command == "team":
|
||||
|
|
@ -20,6 +20,8 @@ class PetManagement(BaseModule):
|
|||
await self.cmd_deactivate(channel, nickname, args)
|
||||
elif command == "swap":
|
||||
await self.cmd_swap(channel, nickname, args)
|
||||
elif command == "nickname":
|
||||
await self.cmd_nickname(channel, nickname, args)
|
||||
|
||||
async def cmd_team(self, channel, nickname):
|
||||
"""Show active pets (channel display)"""
|
||||
|
|
@ -158,4 +160,28 @@ class PetManagement(BaseModule):
|
|||
self.send_message(channel, f"{nickname}: Pet swap completed!")
|
||||
else:
|
||||
self.send_pm(nickname, f"❌ {result['error']}")
|
||||
self.send_message(channel, f"{nickname}: Pet swap failed - check PM for details!")
|
||||
self.send_message(channel, f"{nickname}: Pet swap failed - check PM for details!")
|
||||
|
||||
async def cmd_nickname(self, channel, nickname, args):
|
||||
"""Set a nickname for a pet"""
|
||||
if len(args) < 2:
|
||||
self.send_message(channel, f"{nickname}: Usage: !nickname <pet> <new_nickname>")
|
||||
self.send_message(channel, f"Example: !nickname Charmander Flamey")
|
||||
return
|
||||
|
||||
player = await self.require_player(channel, nickname)
|
||||
if not player:
|
||||
return
|
||||
|
||||
# Split args into pet identifier and new nickname
|
||||
pet_identifier = args[0]
|
||||
new_nickname = " ".join(args[1:])
|
||||
|
||||
result = await self.database.set_pet_nickname(player["id"], pet_identifier, new_nickname)
|
||||
|
||||
if result["success"]:
|
||||
old_name = result["old_name"]
|
||||
new_name = result["new_nickname"]
|
||||
self.send_message(channel, f"✨ {nickname}: {old_name} is now nicknamed '{new_name}'!")
|
||||
else:
|
||||
self.send_message(channel, f"❌ {nickname}: {result['error']}")
|
||||
Loading…
Add table
Add a link
Reference in a new issue