import { Creature } from "../creature" import { Vigor, Stats, Vigors, CompositionAction } from '../combat' import { Noun, Pronoun, ImproperNoun } from '../language' import { VoreType } from '../vore' import { StatusConsequence } from '../combat/consequences' import { SurrenderEffect } from '../combat/effects' import { SoloCondition } from '../combat/conditions' export class Human extends Creature { constructor (name: Noun, pronouns: Pronoun, options: { vigors?: Vigor; stats?: Stats; } = {}) { let vigors: Vigors let stats: Stats if (options.vigors === undefined) { vigors = { Health: 100, Stamina: 100, Resolve: 100 } } if (options.stats === undefined) { stats = { Toughness: 20, Power: 20, Speed: 20, Willpower: 20, Charm: 20 } } else { stats = options.stats } super(name, new ImproperNoun('human', 'humans'), pronouns, stats, new Set([VoreType.Oral, VoreType.Anal, VoreType.Cock, VoreType.Unbirth]), new Set([VoreType.Oral, VoreType.Anal]), 25) this.title = "Snack" this.desc = "Definitely going on an adventure" this.actions.push(new CompositionAction( "Surrender", "uwu", { consequences: [ new StatusConsequence( (user, target) => new SurrenderEffect() ) ], conditions: [ new SoloCondition() ] } )) } }