Documentation
¶
Index ¶
- func CompanyTerminalSettings(options ...terminal.Option) terminal.Settings
- func DisplayGroupTerminal(groups []Group) string
- func GroupMarkdownTable(groups ...Group) string
- func GroupTerminalSettings(options ...pterm.Option) (settings *pterm.Settings)
- func TraitMarkdownTable(traits ...Trait)
- func TraitTerminalSettings(options ...terminal.Option) terminal.Settings
- type ApplicableRequirement
- type Company
- func (company *Company) Initialize(availableProfiles []Profile, availableTraits []Trait) error
- func (company Company) Points() (points int)
- func (company *Company) ToJson(options ...json.Option) string
- func (company *Company) ToMarkdown()
- func (company *Company) ToTerminal()
- func (company Company) WithSource(source string) Company
- type FightingStrength
- type Group
- func (group *Group) DemoteFromCaptain()
- func (group *Group) Initialize(availableProfiles []Profile) error
- func (group *Group) MarkdownHeader() string
- func (group *Group) PromoteToCaptain(trait *Trait, availableTraits ...Trait) error
- func (group *Group) TableHeaderTerminal(options ...pterm.Option) string
- func (group *Group) ToJson(options ...pjson.Option) string
- func (group *Group) ToMarkdownTableEntry() string
- func (group Group) ToSlice() (groups []Group)
- func (group *Group) ToTerminalTableEntry(options ...pterm.Option) string
- type Grouper
- type Melee
- type Missile
- type Move
- type Profile
- type Profiler
- type Spell
- type Trait
- func FilterTraitsBySource(sourceName string, traitList []Trait) []Trait
- func FilterTraitsByType(typeName string, traitList []Trait) []Trait
- func GetProfileTraits(profile Profile, traitList []Trait) []Trait
- func GetTraitByName(name string, traitList []Trait) Trait
- func RollForCaptainTrait(availableTraits []Trait) (captainsTrait Trait, err error)
- func (trait Trait) AddToGroup(group *Group, engine *scripting.Engine) (updatedGroup *Group, err error)
- func (trait Trait) Applicable(group Group, baseProfile Group, engine *scripting.Engine, ...) (bool, error)
- func (trait Trait) DisplayEffectBlock(style lipgloss.Style, width int) string
- func (trait *Trait) MarkdownHeader()
- func (trait Trait) OnAddScriptBody() string
- func (trait Trait) OnRemoveScriptBody() string
- func (trait Trait) RemoveFromGroup(group *Group, engine *scripting.Engine) (updatedGroup *Group, err error)
- func (trait Trait) RequirementsScriptBody() string
- func (trait *Trait) ToJson(options ...json.Option) string
- func (trait *Trait) ToMarkdownTableEntry()
- func (trait *Trait) ToTerminalChoice(selected bool, leadWidth int, options ...terminal.Option) string
- func (trait Trait) TraitWithChoiceUpdatedName() *Trait
- func (trait Trait) WithSource(source string) Trait
- func (trait Trait) WithSubtype(subtype string) Trait
- type TraitChoice
- type TraitScripting
- type TraitScriptingInPlay
- type TraitUses
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CompanyTerminalSettings ¶
func DisplayGroupTerminal ¶
func GroupMarkdownTable ¶
func GroupTerminalSettings ¶
func TraitMarkdownTable ¶
func TraitMarkdownTable(traits ...Trait)
Types ¶
type ApplicableRequirement ¶
func WithCompanyMaxPoints ¶
func WithCompanyMaxPoints(max int, current int) ApplicableRequirement
func WithGroupMaxPoints ¶
func WithGroupMaxPoints(max int) ApplicableRequirement
type Company ¶
func (*Company) Initialize ¶
func (*Company) ToMarkdown ¶
func (company *Company) ToMarkdown()
func (*Company) ToTerminal ¶
func (company *Company) ToTerminal()
func (Company) WithSource ¶
type FightingStrength ¶
func (*FightingStrength) String ¶
func (fightingStrength *FightingStrength) String() string
type Group ¶
type Group struct { Name string Id string ProfileName string Melee Melee Move Move Missile Missile FightingStrength FightingStrength `mapstructure:"fighting_strength"` Resolve int Toughness int Traits []string Points int Captain Trait Addenda map[string]any }
func (*Group) DemoteFromCaptain ¶
func (group *Group) DemoteFromCaptain()
func (*Group) Initialize ¶
func (*Group) MarkdownHeader ¶
func (*Group) PromoteToCaptain ¶
func (*Group) TableHeaderTerminal ¶
func (*Group) ToMarkdownTableEntry ¶
type Melee ¶
type Profile ¶
type Profile struct { Source string Type string Category string Melee Melee Move Move Missile Missile FightingStrength FightingStrength `mapstructure:"fighting_strength"` Resolve int Toughness int Traits []string Points int }
func (Profile) WithSource ¶
type Spell ¶
type Spell struct { Source string Name string Check int Range int Target string Duration string Effect string }
func (Spell) WithSource ¶
type Trait ¶
type Trait struct { Name string Type string Source string Roll int Effect string Points int Scripting TraitScripting Choices []*TraitChoice }
func FilterTraitsBySource ¶
func FilterTraitsByType ¶
func GetProfileTraits ¶
func GetTraitByName ¶
func RollForCaptainTrait ¶
func (Trait) AddToGroup ¶
func (Trait) Applicable ¶
func (Trait) DisplayEffectBlock ¶
func (*Trait) MarkdownHeader ¶
func (trait *Trait) MarkdownHeader()
func (Trait) OnAddScriptBody ¶
func (Trait) OnRemoveScriptBody ¶
func (Trait) RemoveFromGroup ¶
func (Trait) RequirementsScriptBody ¶
func (*Trait) ToMarkdownTableEntry ¶
func (trait *Trait) ToMarkdownTableEntry()
func (*Trait) ToTerminalChoice ¶
func (Trait) TraitWithChoiceUpdatedName ¶
func (Trait) WithSource ¶
func (Trait) WithSubtype ¶
type TraitChoice ¶
type TraitScripting ¶
type TraitScripting struct { Requirements []string OnAdd []string `mapstructure:"on_add"` OnRemove []string `mapstructure:"on_remove"` InPlay []TraitScriptingInPlay `mapstructure:"in_play"` }
type TraitScriptingInPlay ¶
Click to show internal directories.
Click to hide internal directories.