warscript 0.0.1-dev.a3723da → 0.0.1-dev.a44a461
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/attributes.d.ts +7 -0
- package/attributes.lua +8 -1
- package/binaryreader.d.ts +1 -0
- package/binaryreader.lua +3 -0
- package/config.d.ts +5 -0
- package/config.lua +10 -0
- package/core/types/effect.d.ts +14 -6
- package/core/types/effect.lua +131 -35
- package/core/types/frame.d.ts +6 -0
- package/core/types/frame.lua +91 -1
- package/core/types/sound.d.ts +17 -24
- package/core/types/sound.lua +99 -24
- package/core/types/timer.d.ts +6 -7
- package/core/types/timer.lua +18 -21
- package/core/util.d.ts +1 -1
- package/core/util.lua +18 -1
- package/decl/native.d.ts +840 -786
- package/engine/behavior.d.ts +2 -2
- package/engine/behavior.lua +6 -6
- package/engine/behaviour/ability/always-enabled.d.ts +7 -0
- package/engine/behaviour/ability/always-enabled.lua +31 -0
- package/engine/behaviour/ability/apply-buff.d.ts +8 -5
- package/engine/behaviour/ability/apply-buff.lua +32 -0
- package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
- package/engine/behaviour/ability/damage.d.ts +12 -6
- package/engine/behaviour/ability/damage.lua +37 -51
- package/engine/behaviour/ability/emulate-impact.d.ts +6 -0
- package/engine/behaviour/ability/emulate-impact.lua +35 -0
- package/engine/behaviour/ability/heal.d.ts +33 -6
- package/engine/behaviour/ability/heal.lua +89 -10
- package/engine/behaviour/ability/instant-impact.d.ts +2 -2
- package/engine/behaviour/ability/instant-impact.lua +4 -19
- package/engine/behaviour/ability/on-command-impact.d.ts +8 -0
- package/engine/behaviour/ability/on-command-impact.lua +25 -0
- package/engine/behaviour/ability/remove-buffs.d.ts +16 -0
- package/engine/behaviour/ability/remove-buffs.lua +28 -0
- package/engine/behaviour/ability.d.ts +20 -4
- package/engine/behaviour/ability.lua +111 -38
- package/engine/behaviour/unit.d.ts +7 -0
- package/engine/behaviour/unit.lua +20 -0
- package/engine/buff.d.ts +101 -39
- package/engine/buff.lua +458 -203
- package/engine/internal/ability.d.ts +16 -13
- package/engine/internal/ability.lua +80 -76
- package/engine/internal/item/ability.lua +106 -0
- package/engine/internal/item+owner.lua +2 -2
- package/engine/internal/item.d.ts +4 -3
- package/engine/internal/item.lua +56 -25
- package/engine/internal/mechanics/ability-duration.lua +1 -1
- package/engine/internal/misc/ability-disable-counter.d.ts +2 -0
- package/engine/internal/misc/ability-disable-counter.lua +13 -0
- package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
- package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
- package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
- package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
- package/engine/internal/object-data/evasion-probability.d.ts +2 -0
- package/engine/internal/object-data/evasion-probability.lua +16 -0
- package/engine/internal/unit/ability.d.ts +10 -1
- package/engine/internal/unit/ability.lua +36 -14
- package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
- package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
- package/engine/internal/unit/add-item-to-slot.lua +52 -0
- package/engine/internal/unit/bonus.d.ts +6 -2
- package/engine/internal/unit/bonus.lua +23 -1
- package/engine/internal/unit/ignore-events-items.d.ts +2 -0
- package/engine/internal/unit/ignore-events-items.lua +5 -0
- package/engine/internal/unit/item.d.ts +24 -0
- package/engine/internal/unit/item.lua +78 -0
- package/engine/internal/unit/main-selected.d.ts +13 -0
- package/engine/internal/unit/main-selected.lua +51 -0
- package/engine/internal/unit+ability.lua +2 -2
- package/engine/internal/unit+damage.d.ts +2 -11
- package/engine/internal/unit+damage.lua +10 -14
- package/engine/internal/unit+spellSteal.lua +1 -2
- package/engine/internal/unit-missile-launch.lua +24 -5
- package/engine/internal/unit.d.ts +43 -12
- package/engine/internal/unit.lua +255 -114
- package/engine/internal/utility.lua +12 -0
- package/engine/lightning.d.ts +12 -5
- package/engine/lightning.lua +48 -14
- package/engine/local-client.d.ts +7 -2
- package/engine/local-client.lua +82 -0
- package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
- package/engine/object-data/auxiliary/animation-name.lua +16 -0
- package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
- package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
- package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
- package/engine/object-data/auxiliary/attack-type.lua +42 -0
- package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
- package/engine/object-data/auxiliary/movement-type.lua +22 -0
- package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
- package/engine/object-data/auxiliary/sound-eax.lua +2 -0
- package/engine/object-data/auxiliary/sound-preset-name.d.ts +5 -1
- package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
- package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
- package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
- package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
- package/engine/object-data/entry/ability-type/berserk.lua +13 -0
- package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
- package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
- package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
- package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
- package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
- package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
- package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
- package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
- package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
- package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
- package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
- package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
- package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
- package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
- package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
- package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
- package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
- package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
- package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
- package/engine/object-data/entry/ability-type/web.d.ts +12 -0
- package/engine/object-data/entry/ability-type/web.lua +52 -0
- package/engine/object-data/entry/ability-type.d.ts +19 -17
- package/engine/object-data/entry/ability-type.lua +89 -33
- package/engine/object-data/entry/buff-type/applicable.lua +18 -37
- package/engine/object-data/entry/buff-type.d.ts +6 -12
- package/engine/object-data/entry/buff-type.lua +13 -29
- package/engine/object-data/entry/destructible-type.d.ts +1 -1
- package/engine/object-data/entry/item-type.d.ts +15 -1
- package/engine/object-data/entry/item-type.lua +93 -2
- package/engine/object-data/entry/lightning-type.d.ts +1 -1
- package/engine/object-data/entry/sound-preset.d.ts +33 -0
- package/engine/object-data/entry/sound-preset.lua +140 -0
- package/engine/object-data/entry/unit-type.d.ts +10 -3
- package/engine/object-data/entry/unit-type.lua +155 -92
- package/engine/object-data/entry/upgrade.d.ts +1 -1
- package/engine/object-data/entry/upgrade.lua +4 -4
- package/engine/object-data/entry.d.ts +16 -14
- package/engine/object-data/entry.lua +60 -32
- package/engine/object-data/utility/object-data-entry-id-generator.lua +7 -0
- package/engine/object-field/ability.d.ts +26 -3
- package/engine/object-field/ability.lua +54 -1
- package/engine/object-field/unit.d.ts +46 -3
- package/engine/object-field/unit.lua +173 -7
- package/engine/object-field.d.ts +11 -3
- package/engine/object-field.lua +162 -76
- package/engine/standard/entries/buff-type.d.ts +3 -0
- package/engine/standard/entries/buff-type.lua +3 -0
- package/engine/standard/entries/sound-preset.d.ts +10 -0
- package/engine/standard/entries/sound-preset.lua +10 -0
- package/engine/standard/fields/ability.d.ts +2 -0
- package/engine/standard/fields/ability.lua +2 -0
- package/engine/unit.d.ts +3 -0
- package/engine/unit.lua +3 -0
- package/index.d.ts +1 -0
- package/index.lua +1 -0
- package/net/socket.d.ts +7 -1
- package/net/socket.lua +45 -4
- package/network.d.ts +1 -0
- package/network.lua +3 -2
- package/objutil/buff.lua +2 -3
- package/objutil/unit.lua +8 -0
- package/package.json +2 -2
- package/patch-lua.d.ts +0 -0
- package/patch-lua.lua +10 -0
- package/property.d.ts +55 -0
- package/property.lua +374 -0
- package/utility/arrays.d.ts +9 -1
- package/utility/arrays.lua +37 -3
- package/utility/functions.d.ts +1 -0
- package/utility/functions.lua +1 -0
- package/utility/lazy.d.ts +2 -0
- package/utility/lazy.lua +14 -0
- package/utility/linked-set.d.ts +12 -2
- package/utility/linked-set.lua +8 -2
- package/utility/lua-maps.d.ts +3 -0
- package/utility/lua-maps.lua +16 -0
- package/utility/lua-sets.d.ts +1 -0
- package/utility/lua-sets.lua +3 -0
- package/utility/reflection.lua +11 -7
- package/utility/types.d.ts +1 -0
|
@@ -11,6 +11,10 @@ import { Ability, UnitAbility } from "./ability";
|
|
|
11
11
|
import { Widget } from "../../core/types/widget";
|
|
12
12
|
import type { UnitTypeId } from "../object-data/entry/unit-type";
|
|
13
13
|
import { CombatClassification, CombatClassifications } from "../object-data/auxiliary/combat-classification";
|
|
14
|
+
import { MovementType } from "../object-data/auxiliary/movement-type";
|
|
15
|
+
import { UnitAttribute } from "../object-data/auxiliary/unit-attribute";
|
|
16
|
+
import { AttackType } from "../object-data/auxiliary/attack-type";
|
|
17
|
+
import { AttributesHolder } from "../../attributes";
|
|
14
18
|
export type UnitClassification = junittype;
|
|
15
19
|
export declare namespace UnitClassification {
|
|
16
20
|
const STRUCTURE: junittype;
|
|
@@ -36,12 +40,15 @@ type AbilityDispatcherTable<T extends any[] = []> = {
|
|
|
36
40
|
readonly [id: number]: Event<[Unit, Ability, ...T]>;
|
|
37
41
|
};
|
|
38
42
|
type AbilityEventDispatcher<T extends any[] = []> = Event<[Unit, Ability, ...T]> & AbilityDispatcherTable<T>;
|
|
39
|
-
export interface DamagingEvent {
|
|
43
|
+
export interface DamagingEvent extends AttributesHolder {
|
|
40
44
|
amount: number;
|
|
41
|
-
attackType:
|
|
45
|
+
attackType: AttackType;
|
|
42
46
|
damageType: jdamagetype;
|
|
43
47
|
weaponType: jweapontype;
|
|
48
|
+
metadata: unknown;
|
|
44
49
|
readonly isAttack: boolean;
|
|
50
|
+
readonly originalAmount: number;
|
|
51
|
+
readonly originalMetadata: unknown;
|
|
45
52
|
}
|
|
46
53
|
export type DamageEvent = DamagingEvent & {
|
|
47
54
|
preventDeath<P extends any[]>(this: DamageEvent, callback: (this: void, ...parameters: P) => any, ...parameters: P): void;
|
|
@@ -93,20 +100,29 @@ export declare class UnitWeapon {
|
|
|
93
100
|
set missileSpeed(missileSpeed: number);
|
|
94
101
|
}
|
|
95
102
|
declare const enum UnitPropertyKey {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
103
|
+
SYNC_ID = 100,
|
|
104
|
+
IS_PAUSED = 101,
|
|
105
|
+
STUN_COUNTER = 102,
|
|
106
|
+
DELAY_HEALTH_CHECKS_COUNTER = 103,
|
|
107
|
+
DELAY_HEALTH_CHECKS_HEALTH_BONUS = 104,
|
|
108
|
+
PREVENT_DEATH_HEALTH_BONUS = 105,
|
|
109
|
+
IS_TEAM_GLOW_HIDDEN = 106,
|
|
110
|
+
LAST_X = 107,
|
|
111
|
+
LAST_Y = 108
|
|
102
112
|
}
|
|
113
|
+
export type UnitSyncId = number & {
|
|
114
|
+
readonly __unitSyncId: unique symbol;
|
|
115
|
+
};
|
|
103
116
|
export declare class Unit extends Handle<junit> {
|
|
117
|
+
readonly syncId: UnitSyncId;
|
|
104
118
|
private [UnitPropertyKey.IS_PAUSED]?;
|
|
105
119
|
private [UnitPropertyKey.STUN_COUNTER]?;
|
|
106
120
|
private [UnitPropertyKey.DELAY_HEALTH_CHECKS_COUNTER]?;
|
|
107
121
|
private [UnitPropertyKey.DELAY_HEALTH_CHECKS_HEALTH_BONUS]?;
|
|
108
122
|
private [UnitPropertyKey.PREVENT_DEATH_HEALTH_BONUS]?;
|
|
109
123
|
private [UnitPropertyKey.IS_TEAM_GLOW_HIDDEN]?;
|
|
124
|
+
private [UnitPropertyKey.LAST_X]?;
|
|
125
|
+
private [UnitPropertyKey.LAST_Y]?;
|
|
110
126
|
private _owner?;
|
|
111
127
|
private _timeScale?;
|
|
112
128
|
private events?;
|
|
@@ -127,6 +143,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
127
143
|
get isAlive(): boolean;
|
|
128
144
|
get isDead(): boolean;
|
|
129
145
|
get isIllusion(): boolean;
|
|
146
|
+
get isStunned(): boolean;
|
|
130
147
|
get combatClassifications(): CombatClassifications;
|
|
131
148
|
set combatClassifications(combatClassifications: CombatClassifications);
|
|
132
149
|
hasCombatClassification(combatClassification: CombatClassification): boolean;
|
|
@@ -141,6 +158,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
141
158
|
isEnemyOf(unit: Unit): boolean;
|
|
142
159
|
playAnimation(animation: string, rarity?: jraritycontrol): void;
|
|
143
160
|
playAnimation(animation: number): void;
|
|
161
|
+
resetAnimation(): void;
|
|
144
162
|
queueAnimation(animation: string): void;
|
|
145
163
|
get weapons(): [UnitWeapon, UnitWeapon];
|
|
146
164
|
get firstWeapon(): UnitWeapon;
|
|
@@ -149,6 +167,8 @@ export declare class Unit extends Handle<junit> {
|
|
|
149
167
|
set level(v: number);
|
|
150
168
|
get xp(): number;
|
|
151
169
|
set xp(v: number);
|
|
170
|
+
get primaryAttribute(): UnitAttribute;
|
|
171
|
+
set primaryAttribute(primaryAttribute: UnitAttribute);
|
|
152
172
|
get strengthBase(): number;
|
|
153
173
|
set strengthBase(strengthBase: number);
|
|
154
174
|
get strengthBonus(): number;
|
|
@@ -223,6 +243,8 @@ export declare class Unit extends Handle<junit> {
|
|
|
223
243
|
set timeScale(v: number);
|
|
224
244
|
get collisionSize(): number;
|
|
225
245
|
get pathingCollisionRange(): number;
|
|
246
|
+
get movementType(): MovementType;
|
|
247
|
+
set movementType(movementType: MovementType);
|
|
226
248
|
set pathing(v: boolean);
|
|
227
249
|
isSelected(player: Player): boolean;
|
|
228
250
|
explode(): void;
|
|
@@ -287,7 +309,7 @@ export declare class Unit extends Handle<junit> {
|
|
|
287
309
|
static getInRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
|
|
288
310
|
static getInCollisionRange(x: number, y: number, range: number, predicate?: (unit: Unit) => boolean): Unit[];
|
|
289
311
|
static getInSector(pos: Vec2, range: number, offsetAngle: number, centralAngle: number): Unit[];
|
|
290
|
-
static getSelectionOf(player: Player): Unit[];
|
|
312
|
+
static getSelectionOf(player: Player, target?: Unit[]): Unit[];
|
|
291
313
|
static readonly deathEvent: UnitTriggerEvent<[Unit]>;
|
|
292
314
|
static readonly onDecay: UnitTriggerEvent<[]>;
|
|
293
315
|
static readonly onResurrect: InitializingEvent<[Unit], void>;
|
|
@@ -322,9 +344,17 @@ export declare class Unit extends Handle<junit> {
|
|
|
322
344
|
static readonly autoAttackStartEvent: UnitTriggerEvent<[Unit]>;
|
|
323
345
|
static readonly onDamaging: Event<[source: Unit | undefined, target: Unit, event: DamagingEvent]>;
|
|
324
346
|
static readonly onDamage: InitializingEvent<[source: Unit | undefined, target: Unit, event: DamageEvent], jtrigger>;
|
|
325
|
-
static
|
|
326
|
-
static
|
|
327
|
-
static
|
|
347
|
+
static itemDroppedEvent: UnitTriggerEvent<[Item]>;
|
|
348
|
+
static itemPickedUpEvent: UnitTriggerEvent<[Item]>;
|
|
349
|
+
static itemUsedEvent: UnitTriggerEvent<[Item]>;
|
|
350
|
+
static itemStackedEvent: UnitTriggerEvent<[Item]>;
|
|
351
|
+
static get itemUseOrderEvent(): Event<[unit: Unit, item: Item]>;
|
|
352
|
+
static get itemMoveOrderEvent(): Event<[
|
|
353
|
+
unit: Unit,
|
|
354
|
+
item: Item,
|
|
355
|
+
slotFrom: 0 | 1 | 2 | 3 | 4 | 5,
|
|
356
|
+
slotTo: 0 | 1 | 2 | 3 | 4 | 5
|
|
357
|
+
]>;
|
|
328
358
|
static get onCreate(): EventDispatcher<[Unit], [Unit]>;
|
|
329
359
|
static get destroyEvent(): EventDispatcher<[Unit], [Unit]>;
|
|
330
360
|
getField(field: junitintegerfield | junitrealfield): number;
|
|
@@ -335,5 +365,6 @@ export declare class Unit extends Handle<junit> {
|
|
|
335
365
|
setField(field: junitbooleanfield, value: boolean): boolean;
|
|
336
366
|
setField(field: junitstringfield, value: string): boolean;
|
|
337
367
|
toString(): string;
|
|
368
|
+
static getBySyncId(syncId: UnitSyncId): Unit | undefined;
|
|
338
369
|
}
|
|
339
370
|
export {};
|