warscript
Version:
A typescript library for Warcraft III using Warpack.
135 lines (134 loc) • 5.12 kB
TypeScript
/// <reference types="warpack-types/warpack" />
/** @noSelfInFile */
import { ObjectDefinition } from "./object";
import { AbilityDefinition } from "./ability";
import Classification = UnitDefinition.Classification;
export declare namespace UnitWeaponDefinition {
type AttackType = "unknown" | "normal" | "pierce" | "siege" | "spells" | "chaos" | "magic" | "hero";
type WeaponType = "none" | "normal" | "instant" | "artillery" | "aline" | "missile" | "msplash" | "mbounce" | "mline";
}
export declare namespace UnitDefinition {
type Classification = "ancient" | "giant" | "mechanical" | "neutral" | "peon" | "sapper" | "standon" | "summoned" | "tauren" | "townhall" | "tree" | "undead" | "ward";
}
export declare class UnitWeaponDefinition extends ObjectDefinition {
private readonly idx;
constructor(object: WarObject, idx: 1 | 2);
set enabled(v: boolean);
get enabled(): boolean;
set attackBackswing(v: number);
get attackBackswing(): number;
set attackPoint(v: number);
get attackPoint(): number;
set cooldown(v: number);
get cooldown(): number;
set attackType(v: UnitWeaponDefinition.AttackType);
get attackType(): UnitWeaponDefinition.AttackType;
set weaponType(v: UnitWeaponDefinition.WeaponType);
get weaponType(): UnitWeaponDefinition.WeaponType;
set baseDamage(v: number);
get baseDamage(): number;
set diceNumber(v: number);
get diceNumber(): number;
set diceSides(v: number);
get diceSides(): number;
set range(v: number);
get range(): number;
set missileArt(v: string);
get missileArt(): string;
set missileArc(v: number);
get missileArc(): number;
set missileSpeed(v: number);
get missileSpeed(): number;
set missileHoming(v: boolean);
get missileHoming(): boolean;
set targetsAllowed(v: AbilityDefinition.TargetType[]);
get targetsAllowed(): AbilityDefinition.TargetType[];
}
export declare class UnitDefinition extends ObjectDefinition {
readonly id: string;
readonly weapons: readonly [UnitWeaponDefinition, UnitWeaponDefinition];
constructor(baseId: string, id?: string, ctor?: Readonly<Partial<Omit<UnitDefinition, "id">>>);
set name(v: string);
get name(): string;
set tooltip(v: string);
get tooltip(): string;
set tooltipExtended(v: string);
get tooltipExtended(): string;
set foodCost(v: number);
get foodCost(): number;
set foodProduced(v: number);
get foodProduced(): number;
set missileLaunchX(v: number);
get missileLaunchX(): number;
set missileLaunchY(v: number);
get missileLaunchY(): number;
set missileLaunchZ(v: number);
get missileLaunchZ(): number;
set movementHeight(v: number);
get movementHeight(): number;
set movementHeightMinimum(v: number);
get movementHeightMinimum(): number;
set speed(v: number);
get speed(): number;
set speedMaximum(v: number);
get speedMaximum(): number;
set speedMinimum(v: number);
get speedMinimum(): number;
set turnRate(v: number);
get turnRate(): number;
set movementType(v: "none" | "foot" | "horse" | "fly" | "hover" | "float" | "amph");
get movementType(): "none" | "foot" | "horse" | "fly" | "hover" | "float" | "amph";
get armorSound(): "ethereal" | "flesh" | "metal" | "stone" | "wood";
set armorSound(v: "ethereal" | "flesh" | "metal" | "stone" | "wood");
set sightRadiusDay(v: number);
get sightRadiusDay(): number;
set sightRadiusNight(v: number);
get sightRadiusNight(): number;
get icon(): string;
set icon(v: string);
get iconHD(): string;
set iconHD(v: string | undefined);
get model(): string;
set model(v: string);
get modelHD(): string;
set modelHD(v: string | undefined);
get selectionScale(): number;
set selectionScale(v: number);
get collisionSize(): number;
set collisionSize(v: number);
get scale(): number;
set scale(v: number);
get scaleMissiles(): boolean;
set scaleMissiles(v: boolean);
get deathTime(): number;
set deathTime(v: number);
set blendTime(v: number);
get blendTime(): number;
set castBackswing(v: number);
get castBackswing(): number;
set castPoint(v: number);
get castPoint(): number;
set abilitiesNormal(v: (string | number)[]);
get abilitiesNormal(): string[];
set maxHealth(v: number);
get maxHealth(): number;
set maxMana(v: number);
get maxMana(): number;
get soundSet(): string;
set soundSet(soundSet: string);
get specialArt(): string;
set specialArt(specialArt: string);
get raisable(): boolean;
set raisable(raisable: boolean);
get decayable(): boolean;
set decayable(decayable: boolean);
get classifications(): Classification[];
set classifications(classifications: Classification[]);
}
export declare class HeroDefinition extends UnitDefinition {
constructor(baseId: string, id?: string);
set properNames(v: string[]);
get properNames(): string[];
set abilitiesHero(v: (string | number)[]);
get abilitiesHero(): string[];
}