Black Trigram (흑괘) - API Documentation - v0.2.10
    Preparing search index...

    Interface CombatSystemInterface

    interface CombatSystemInterface {
        applyCombatResult: (
            result: CombatResult,
            attacker: PlayerState,
            defender: PlayerState,
        ) => { updatedAttacker: PlayerState; updatedDefender: PlayerState };
        calculateDamage: (
            technique: KoreanTechnique,
            attacker: PlayerState,
            defender: PlayerState,
            hitResult: VitalPointHitResult,
        ) => {
            baseDamage: number;
            effectsApplied: readonly StatusEffect[];
            finalDefenderState?: Partial<PlayerState>;
            modifierDamage: number;
            totalDamage: number;
        };
        getAvailableTechniques: (player: PlayerState) => readonly KoreanTechnique[];
        resolveAttack: (
            attacker: PlayerState,
            defender: PlayerState,
            technique: KoreanTechnique,
            targetedVitalPointId?: string,
        ) => CombatResult;
    }

    Implemented by

    Index

    Properties

    applyCombatResult: (
        result: CombatResult,
        attacker: PlayerState,
        defender: PlayerState,
    ) => { updatedAttacker: PlayerState; updatedDefender: PlayerState }
    calculateDamage: (
        technique: KoreanTechnique,
        attacker: PlayerState,
        defender: PlayerState,
        hitResult: VitalPointHitResult,
    ) => {
        baseDamage: number;
        effectsApplied: readonly StatusEffect[];
        finalDefenderState?: Partial<PlayerState>;
        modifierDamage: number;
        totalDamage: number;
    }
    getAvailableTechniques: (player: PlayerState) => readonly KoreanTechnique[]
    resolveAttack: (
        attacker: PlayerState,
        defender: PlayerState,
        technique: KoreanTechnique,
        targetedVitalPointId?: string,
    ) => CombatResult