removed inventory and item modules and moved item

to utils. Updated imports accordingly.
decentralized entity stats-item coordination.
This commit is contained in:
2026-01-29 22:23:32 +01:00
parent fc5076d054
commit f16388dda4
7 changed files with 36 additions and 119 deletions

View File

@@ -24,27 +24,43 @@ class Entity(Serializable):
return self.id
def get_strength(self):
if self.equipped_item and "strength" in self.equipped_item.stat_modifier.keys():
return self.strength + self.equipped_item.stat_modifier["strength"]
return self.strength
def get_dexterity(self):
if self.equipped_item and "dexterity" in self.equipped_item.stat_modifier.keys():
return self.dexterity + self.equipped_item.stat_modifier["dexterity"]
return self.dexterity
def get_intelligence(self):
if self.equipped_item and "intelligence" in self.equipped_item.stat_modifier.keys():
return self.intelligence + self.equipped_item.stat_modifier["intelligence"]
return self.intelligence
def get_wisdom(self):
if self.equipped_item and "wisdom" in self.equipped_item.stat_modifier.keys():
return self.wisdom + self.equipped_item.stat_modifier["wisdom"]
return self.wisdom
def get_charisma(self):
if self.equipped_item and "charisma" in self.equipped_item.stat_modifier.keys():
return self.charisma + self.equipped_item.stat_modifier["charisma"]
return self.charisma
def get_hp(self):
if self.equipped_item and "hp" in self.equipped_item.stat_modifier.keys():
return self.hp + self.equipped_item.stat_modifier["hp"]
return self.hp
def get_armor(self):
if self.equipped_item and "armor" in self.equipped_item.stat_modifier.keys():
return self.armor + self.equipped_item.stat_modifier["armor"]
return self.armor
def get_speed(self):
if self.equipped_item and "speed" in self.equipped_item.stat_modifier.keys():
return self.speed + self.equipped_item.stat_modifier["speed"]
return self.speed
def get_equipped_item(self):
@@ -76,44 +92,4 @@ class Entity(Serializable):
def set_equipped_item(self, item):
self.equipped_item = item
if item.stat_modifier == "strength":
self.set_strength(self.get_strength() + item.stat_modifier_value)
elif item.stat_modifier == "dexterity":
self.set_dexterity(self.get_dexterity() + item.stat_modifier_value)
elif item.stat_modifier == "intelligence":
self.set_intelligence(self.get_intelligence() + item.stat_modifier_value)
elif item.stat_modifier == "wisdom":
self.set_wisdom(self.get_wisdom() + item.stat_modifier_value)
elif item.stat_modifier == "charisma":
self.set_charisma(self.get_charisma() + item.stat_modifier_value)
elif item.stat_modifier == "hp":
self.set_hp(self.get_hp() + item.stat_modifier_value)
elif item.stat_modifier == "armor":
self.set_armor(self.get_armor() + item.stat_modifier_value)
elif item.stat_modifier == "speed":
self.set_speed(self.get_speed() + item.stat_modifier_value)
else:
raise ValueError(f"Unknown stat modifier: {item.stat_modifier}")
def change_equipped_item(self, new_item):
if self.equipped_item:
# Remove the stat modifier of the currently equipped item
if self.equipped_item.stat_modifier == "strength":
self.set_strength(self.get_strength() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "dexterity":
self.set_dexterity(self.get_dexterity() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "intelligence":
self.set_intelligence(self.get_intelligence() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "wisdom":
self.set_wisdom(self.get_wisdom() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "charisma":
self.set_charisma(self.get_charisma() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "hp":
self.set_hp(self.get_hp() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "armor":
self.set_armor(self.get_armor() - self.equipped_item.stat_modifier_value)
elif self.equipped_item.stat_modifier == "speed":
self.set_speed(self.get_speed() - self.equipped_item.stat_modifier_value)
# Equip the new item
self.set_equipped_item(new_item)