def from_json(json_data): x = json_data.get('x') y = json_data.get('y') char = json_data.get('char') colour = lc.Color( json_data.get('colour')[0], json_data.get('colour')[1], json_data.get('colour')[2]) name = json_data.get('name') blocks = json_data.get('blocks') render_order = RenderOrder(json_data.get('render_order')) fighter = Fighter.from_json( json_data.get('fighter')) if json_data.get('fighter') else None ai = ai_from_json(json_data.get('ai')) if json_data.get('ai') else None item = Item.from_json( json_data.get('item')) if json_data.get('item') else None inventory = Inventory.from_json( json_data.get('inventory')) if json_data.get('inventory') else None stairs = Stairs.from_json( json_data.get('stairs')) if json_data.get('stairs') else None equipment = Equipment.from_json( json_data.get('equipment')) if json_data.get('equipment') else None level = Level.from_json( json_data.get('level')) if json_data.get('level') else None equip = Equip.from_json( json_data.get('equip')) if json_data.get('equip') else None return Entity(x, y, char, colour, name, blocks, render_order, fighter, ai, item, inventory, stairs, level, equipment, equip)
def from_json(cls, json_data): x = json_data.get('x') y = json_data.get('y') char = json_data.get('char') color = json_data.get('color') name = json_data.get('name') blocks = json_data.get('blocks') render_order_value = json_data.get('render_order') ai_json = json_data.get('ai') equipment_json = json_data.get('equipment') equippable_json = json_data.get('equippable') fighter_json = json_data.get('fighter') inventory_json = json_data.get('inventory') item_json = json_data.get('item') if equipment_json: equipment = Equipment.from_json(json_data=equipment_json) else: equipment = None if equippable_json: equippable = Equippable.from_json(json_data=equippable_json) else: equippable = None if fighter_json: fighter = Fighter.from_json(json_data=fighter_json) else: fighter = None if inventory_json: inventory = Inventory.from_json(json_data=inventory_json) else: inventory = None if item_json: item = Item.from_json(json_data=item_json) else: item = None entity = cls(x=x, y=y, char=char, color=color, name=name, blocks=blocks, render_order=RenderOrder(render_order_value), ai=None, equipment=equipment, equippable=equippable, fighter=fighter, inventory=inventory, item=item) if ai_json: name = ai_json.get('name') if name == BasicMonster.__name__: ai = BasicMonster.from_json(json_data=ai_json, owner=entity) elif name == ConfusedMonster.__name__: ai = ConfusedMonster.from_json(json_data=ai_json['ai_data'], owner=entity) else: ai = None entity.ai = ai return entity
def from_json(json_data): x = json_data.get('x') y = json_data.get('y') char = json_data.get('char') color_o = json_data.get('color') color = libtcod.Color(color_o[0], color_o[1], color_o[2]) name = json_data.get('name') blocks = json_data.get('blocks', False) render_order = RenderOrder(json_data.get('render_order')) fighter_json = json_data.get('fighter') ai_json = json_data.get('ai') item_json = json_data.get('item') inventory_json = json_data.get('inventory') stairs_json = json_data.get('stairs') level_json = json_data.get('level') equipment_json = json_data.get('equipment') equippable_json = json_data.get('equippable') uID_data = json_data.get('uID') quickuse_json = json_data.get('quick_use') entity = Entity(x, y, char, color, name, blocks, render_order, uID=uID_data) if fighter_json: entity.fighter = Fighter.from_json(fighter_json) entity.fighter.owner = entity if ai_json: name = ai_json.get('name') if name == BasicMonster.__name__: ai = BasicMonster.from_json() elif name == ConfusedMonster.__name__: ai = ConfusedMonster.from_json(ai_json, entity) else: ai = None if ai: entity.ai = ai entity.ai.owner = entity if item_json: entity.item = Item.from_json(item_json) entity.item.owner = entity if inventory_json: entity.inventory = Inventory.from_json(inventory_json) entity.inventory.owner = entity if stairs_json: entity.stairs = Stairs.from_json(stairs_json) entity.stairs.owner = entity if level_json: entity.level = Level.from_json(level_json) entity.level.owner = entity if equipment_json: entity.equipment = Equipment.from_json(equipment_json) entity.equipment.owner = entity if equippable_json: entity.equippable = Equippable.from_json(equippable_json) entity.equippable.owner = entity if quickuse_json: entity.quick_use = Quickuse.from_json(quickuse_json) entity.quick_use.owner = entity return entity