UNPKG

homm3-parsers

Version:

Collection of binary parsers able to parse various file formats related to Heroes of Might and Magic III

62 lines (61 loc) 1.49 kB
import { Hero } from './enums/Hero'; import { FlaggedProp, Omit } from '../../../helpers/types'; import { Behavior } from '../constants'; export declare type StartingHero = { isRandom: boolean; hero: Hero.NONE; face: number; name: string; } | { isRandom: boolean; hero: Hero; face: number; name: string; additionaInfo: { heroesCount: number; heroes: { hero: Hero; name: string; }[]; }; }; export declare type StartingHeroRoE = { isRandom: boolean; hero: Hero.NONE; } | { isRandom: boolean; hero: Hero; face: number; name: string; }; export declare type MainTown = FlaggedProp<'hasMainTown', 'mainTown', { createHero: number; type: number; x: number; y: number; z: number; }>; export declare type MainTownRoE = FlaggedProp<'hasMainTown', 'mainTown', { x: number; y: number; z: number; }>; export declare type PlayerData = { canBeHuman: boolean; canBeComputer: boolean; behavior: Behavior; allowedAlignments: number; townTypes: number; townConflux: number; hasRandomTown: boolean; startingHero: StartingHero; } & MainTown; export declare type PlayerDataRoE = { canBeHuman: boolean; canBeComputer: boolean; behavior: Behavior; townTypes: number; hasRandomTown: boolean; startingHero: StartingHeroRoE; } & MainTownRoE; export declare type PlayerDataAb = Omit<PlayerData, 'allowedAlignments'>;