UNPKG

osr-generators

Version:

Generators for OSR-style tabletop roleplaying games

54 lines (51 loc) 1.39 kB
type GearItem = { count: number; name: string; slots: number; type: 'food' | 'tool' | 'light' | 'armor' | 'weapon'; }; type ArmorItem = GearItem & { quality: number; defense: number; type: 'armor'; }; type WeaponItem = GearItem & { damage: string; hand: number; quality: number; type: 'weapon'; }; type Noun = 'physique' | 'face' | 'skin' | 'hair' | 'clothing' | 'virtue' | 'vice' | 'speech' | 'background' | 'misfortune'; type Traits = Record<Noun, string>; type Abilities = Record<AbilityName, Ability>; type AbilityName = 'charisma' | 'constitution' | 'dexterity' | 'intelligence' | 'strength' | 'wisdom'; type Ability = { bonus: number; defense: number; }; declare class Character { armor: ArmorItem; copperPieces: number; items: GearItem[]; itemSlots: number; level: number; maxHp: number; traits: Traits; weapon: WeaponItem; private abilities; constructor(); generate: () => void; get abilityScores(): Abilities; get charisma(): Ability; get constitution(): Ability; get dexterity(): Ability; get intelligence(): Ability; get strength(): Ability; get wisdom(): Ability; private rollForCopperPieces; private rollHitPoints; private generateAbilities; private rollAbilityScore; private generateTraits; } export { Character as KnaveCharacter };