UNPKG

@ffxiv-teamcraft/simulator

Version:
26 lines (25 loc) 1.2 kB
import { Simulation } from '../../simulation/simulation'; import { ActionType } from './action-type'; import { Buff } from '../buff.enum'; import { CraftingAction } from './crafting-action'; export declare abstract class BuffAction extends CraftingAction { getType(): ActionType; abstract getDuration(simulation: Simulation): number; canBeClipped(): boolean; execute(simulation: Simulation): void; _canBeUsed(simulationState: Simulation): boolean; getDurabilityCost(simulationState: Simulation): number; _getSuccessRate(simulationState: Simulation): number; skipOnFail(): boolean; /** * Override this method if the buff overrides other buffs (steady hands for instance). * Don't forget to add super.getOverrides() to the array you'll return * @returns {Buff | null} */ getOverrides(): Buff[]; abstract getBuff(): Buff; abstract getInitialStacks(): number; protected abstract getTick(): ((simulation: Simulation, linear?: boolean, action?: CraftingAction) => void) | undefined; protected getOnExpire(): ((simulation: Simulation, linear?: boolean) => void) | undefined; private getAppliedBuff; }