TeamBattle handles team battle simulation

Hierarchy

  • BaseBattle
    • TeamBattle

Constructors

  • Parameters

    • i: CommandInteraction<CacheType>

      Discord.js CommandInteraction

    • teamA: Team

      team

    • teamB: Team

      team

    Returns TeamBattle

Properties

fighters: Fighter[]
gameStats: Map<string, PlayerGameStat> = ...
i: CommandInteraction<CacheType>
interval: number = 1000
logBattle: boolean = false

Logs battle to stdout

playerDiedText?: ((fighter) => string)

Type declaration

    • (fighter): string
    • Parameters

      Returns string

round: number = 0
showBattle: boolean = true

Show battle embed

teamA: Team
teamB: Team

Methods

  • Gets total damage dealt for a particular fighter

    Parameters

    • id: string

    Returns undefined | number

  • Get remaining HP for a particular fighter

    Parameters

    • id: string

    Returns undefined | number

  • adds progress bar to battleEmbed

    Parameters

    • embed: EmbedBuilder
    • name: string
    • hp: number
    • maxHP: number

    Returns void

  • Parameters

    • options: string | EmbedBuilder

    Returns Promise<void>

  • Starts the battle simulation. It will throw error if the array of Fighters is less than 2. This method will return the Fighter object who won the battle.

    Returns Promise<Team>

    Team

  • Sets the battle scene interval.

    Parameters

    • ms: number

      {number} - time in milliseconds

    Returns TeamBattle

  • Changes the discord.js message sent when player dies in the battle.

    Parameters

    • text: ((fighter) => string)
        • (fighter): string
        • Parameters

          Returns string

    Returns void

  • Returns Promise<unknown>

  • Updates embed and log if enabled.

    Parameters

    • embed: EmbedBuilder

    Returns Promise<void>

Generated using TypeDoc