from flask_restx import fields # Common fields chartype_field = fields.String( required=False, default="human", description='Character type. Allowed values: "human", "mutant", "android", "robot"') # Dice model dice_model = { 'quantity': fields.Integer(required=True, description='The number of dice to roll'), 'geometry': fields.Integer(required=True, description='The number of sides on each die'), 'discard_lowest': fields.Boolean(required=False, default=False, description='Drop the lowest score') } # Ability model ability_model = { 'chartype': chartype_field } # Hp model hp_model = { 'chartype': chartype_field, 'conscore': fields.Integer(required=True, description='Conscore') } ma_model = { 'ams': fields.Integer(required=True, description='Attacker Mental Strength'), 'dms': fields.Integer(required=True, description='Defender Mental Strength'), 'modifier': fields.Integer(required=True, description='Modifier For Mental Strength'), } character_model = { 'chartype': chartype_field, 'emphasis': fields.String( required=False, default="random", description='The attribute emphasis of your character. Choices: "physical", "mental", "random"') } encounter_model = { 'terrain': fields.String( required=True, default="clear", description='The terrain being traversed by the party when the encounter roll is made' ) }