from app.utils.logging import get_logger from dataclasses import asdict import json logger = get_logger(__file__) from app.game.generators.weapons_factory import WeaponGenerator from app.game.generators.entity_factory import build_char from app.game.generators.level_progression import DEFAULT_LEVEL_PROGRESSION from app.game.systems.leveling import grant_xp player = build_char( name="Philbert", origin_story="I came from a place", race_id="terran", profession_id="arcanist", ability_pathway="Frostbinder", level=4 ) old, new = grant_xp(player,(156),DEFAULT_LEVEL_PROGRESSION) # Generate a weapon based on char level weapon_gen = WeaponGenerator() weapon = weapon_gen.generate(char_level=player.level) player.weapons.append(weapon) player_dict = asdict(player) print(json.dumps(player_dict,indent=True)) exit() # MOVE HIT DICE TO WEAPONS! # ADD DEFENSE STAT # ADD ATTACK STAT - this will help with combat! # import json # player_dict = asdict(player) # print(json.dumps(player_dict,indent=True)) # serialize / deserialize # to json # player_dict = asdict(player) # from json to dataclass # from app.game.utils.loaders import from_dict # from app.game.models.entities import Entity # player_e = from_dict(Entity,player_dict) # print(player_e)