import click from flask.cli import AppGroup from ..models import db npc_cli = AppGroup('npc') @npc_cli.command('create classes') def create_classes(): from .models import CharacterClass classes = [] classes.append(CharacterClass( name = 'Elven Nightblade', bucket = 'Demi-Human', prime_requisite = 'D+I', hit_die_size = 6, maximum_level = 11, armour_modifier = -4, melee_light = 1, melee_medium = 2, melee_heavy = 0, ranged_light = 0, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Elven Spellsword', bucket = 'Demi-Human', prime_requisite = 'S+I', hit_die_size = 6, maximum_level = 10, armour_modifier = -4, melee_light = 0, melee_medium = 1, melee_heavy = 0, ranged_light = 0, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Explorer', bucket = 'Campaign', prime_requisite = 'S+D', hit_die_size = 6, maximum_level = 14, armour_modifier = -3, melee_light = 1, melee_medium = 1, melee_heavy = 0, ranged_light = 0, ranged_heavy = 1 )) classes.append(CharacterClass( name = 'Bladedancer', bucket = 'Campaign', prime_requisite = 'W+D', hit_die_size = 6, maximum_level = 14, armour_modifier = -2, melee_light = 0, melee_medium = 1, melee_heavy = 0, ranged_light = 0, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Cleric', bucket = 'Core', prime_requisite = 'WIS', hit_die_size = 6, maximum_level = 14, armour_modifier = 0, melee_light = 1, melee_medium = 3, melee_heavy = 1, ranged_light = 1, ranged_heavy = 3 )) classes.append(CharacterClass( name = 'Fighter', bucket = 'Core', prime_requisite = 'STR', hit_die_size = 8, maximum_level = 14, armour_modifier = 1, melee_light = 1, melee_medium = 4, melee_heavy = 1, ranged_light = 1, ranged_heavy = 1 )) classes.append(CharacterClass( name = 'Thief', bucket = 'Core', prime_requisite = 'DEX', hit_die_size = 4, maximum_level = 14, armour_modifier = -6, melee_light = 1, melee_medium = 1, melee_heavy = 0, ranged_light = 1, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Mage', bucket = 'Core', prime_requisite = 'INT', hit_die_size = 4, maximum_level = 14, armour_modifier = -8, melee_light = 1, melee_medium = 0, melee_heavy = 0, ranged_light = 0, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Assassin', bucket = 'Campaign', prime_requisite = 'S+D', hit_die_size = 6, maximum_level = 14, armour_modifier = -6, melee_light = 1, melee_medium = 2, melee_heavy = 0, ranged_light = 1, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Bard', bucket = 'Campaign', prime_requisite = 'D+H', hit_die_size = 6, maximum_level = 14, armour_modifier = -3, melee_light = 1, melee_medium = 2, melee_heavy = 0, ranged_light = 1, ranged_heavy = 0 )) classes.append(CharacterClass( name = 'Dwarven Vaultguard', bucket = 'Demi-Human', prime_requisite = 'STR', hit_die_size = 8, maximum_level = 13, armour_modifier = -1, melee_light = 0, melee_medium = 3, melee_heavy = 1, ranged_light = 1, ranged_heavy = 1 )) classes.append(CharacterClass( name = 'Dwarven Craftpriest', bucket = 'Demi-Human', prime_requisite = 'WIS', hit_die_size = 6, maximum_level = 10, armour_modifier = -2, melee_light = 0, melee_medium = 1, melee_heavy = 0, ranged_light = 1, ranged_heavy = 0 )) db.session.bulk_save_objects(classes) db.session.commit()