-
Notifications
You must be signed in to change notification settings - Fork 28
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Item update #157
base: master
Are you sure you want to change the base?
Item update #157
Conversation
Fix Triple pair (Crystalwarrior#147)
Update master
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I feel like in its current form the items can only fulfill 1 specific narrow purpose and nothing else. This design is super rigid and would also be annoying to overhaul long-term.
Let's start splitting things up into a more flexible design and start using classes
@@ -2243,6 +2243,7 @@ def __init__(self, client, fighter_name, fighter): | |||
self.current_client = client | |||
self.guild = None | |||
self.moves = [ClientManager.Move(move) for move in fighter["Moves"]] | |||
self.bag = [] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think inventory
is more descriptive
client.send_ooc("Item not found in your bag") | ||
return | ||
item = client.area.battle_items[arg] | ||
if item["stat"] == "hp": |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why can an item can only modify a single stat?
What about items that trade your HP for Mana? Increase attack but reduce defense?
client.area.battle_items[f"{args[0]}"] = {} | ||
client.area.battle_items[f"{args[0]}"]["stat"] = args[1].lower() | ||
client.area.battle_items[f"{args[0]}"]["operation"] = args[2][0] | ||
client.area.battle_items[f"{args[0]}"]["number"] = num | ||
client.send_ooc(f"{args[0]} has been created!") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a nightmare, please start using classes
effect="statup", | ||
) | ||
client.battle.bag.remove(arg) | ||
send_stats_fighter(client) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there no way to set for how long is a stat modified? Status effect system also seems to be hard-coded to moves only.
No description provided.