cleaning up code

This commit is contained in:
Zachary Watts
2026-05-03 22:46:33 -04:00
parent fbe69be2ac
commit d1829184cd
3 changed files with 13 additions and 14 deletions

View File

@@ -137,7 +137,7 @@ class Adventurer:
# return highest, found this at https://stackoverflow.com/a/280156
return max(prime_attributes, key=prime_attributes.get)
def set_equipment(self):
def set_equipment(self) -> list:
equipment = [ 'backpack', 'tinderbox', 'waterskin' ]
for i in range(2):
item = ""
@@ -147,7 +147,7 @@ class Adventurer:
equipment.append(item)
return equipment
def select_spells(self, spell_list) -> list:
def select_spells(self, spell_list: dict) -> list:
spell_book = []
for spell_level, count in self.spells.items():
if count != "-":
@@ -178,7 +178,7 @@ class Adventurer:
def get_class_progression_for_level(self) -> list:
return list(filter(lambda d: d['level'] == self.level, self.__class__.progression))[0]
def set_level(self, new_level) -> None:
def set_level(self, new_level: int) -> None:
self.level = new_level
self.hp = sum(self.hp_rolls[:self.level])
if self.player_class in [ "magic user", "elf" ]:

5
app.py
View File

@@ -87,6 +87,7 @@ def character():
level = request.args.get("level", default=1, type=int)
role = request.args.get("role", default="fighter", type=str)
cache = request.args.get("cache", default='true', type=str)
# control inputs to prevent abuse
if cache not in [ "true", "false" ]:
cache = 'true'
if not c_id.startswith('adv-'):
@@ -95,12 +96,12 @@ def character():
level = 1
if role not in [ 'fighter','magic-user','cleric', 'thief', 'dwarf', 'elf', 'halfling']:
role = 'fighter'
# check cookies for characters
if request.cookies and cache != "false":
character = return_character_from_cookie(request.cookies[c_id])
print(character.player_class)
if character.level != level:
character.set_level(level)
# reroll until we get our class
# reroll until we get the class from the cookie, if it doesn't match
while character.player_class != role.replace("-"," "):
new_char = Adventurer(c_id, level)
selected_class = AdventurerGen(new_char).selection()

16
main.py
View File

@@ -59,7 +59,7 @@ class PartyGen():
self.adventurers = []
self.adventurer_types = []
def gen_party(self):
def gen_party(self) -> None:
c_id = 1
while len(self.adventurers) < self.size:
identifier = "adv-" + str(c_id)
@@ -75,13 +75,13 @@ class PartyGen():
self.adventurers.append(new_player)
self.adventurer_types.append(new_player.player_class)
def set_party(self, adventurers, count, level):
def set_party(self, adventurers: list, count: int, level: int):
self.size = count
self.level = level
self.adventurers = adventurers
self.adventurer_types = []
def get_new_party(party_size, party_level):
def get_new_party(party_size: int, party_level: int):
# keep variables within expected ranges
if party_size <= 0 or party_size > 5:
party_size = 1
@@ -94,30 +94,28 @@ class PartyGen():
# return the created adventurer party
return new_party
def get_character(self, identifer):
def get_character(self, identifer: str) -> Adventurer:
for adv in self.adventurers:
if adv.identifier == identifier:
return adv
def get_character_sheets(self):
def get_character_sheets(self) -> list:
sheet_string = ""
character_sheets = []
for c in self.adventurers:
character_sheets.append(c.vertical_sheet())
return character_sheets
def get_json(self):
def get_json(self) -> str:
party_list = []
for c in self.adventurers:
party_list.append(c.get_json())
party_json = json.dumps(party_list)
return party_json
def __str__(self):
def __str__(self) -> str:
return f"{self.adventurers}"
# used for local testing
def main():
adv_dict = Adventurer.get_subclass_dict()