warscript 0.0.1-dev.697548e → 0.0.1-dev.69b6655
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/core/types/frame.d.ts +1 -0
- package/core/types/frame.lua +112 -37
- package/core/types/handle.lua +6 -9
- package/core/types/item.d.ts +1 -0
- package/core/types/item.lua +1 -0
- package/core/types/player.d.ts +2 -1
- package/core/types/player.lua +18 -13
- package/core/types/playerColor.lua +4 -3
- package/core/types/sound.d.ts +1 -1
- package/core/types/sound.lua +13 -8
- package/core/types/unit.d.ts +4 -0
- package/core/types/unit.lua +4 -0
- package/decl/native.d.ts +705 -7
- package/engine/behaviour/ability/damage.lua +11 -14
- package/engine/behaviour/ability/emulate-impact.lua +5 -4
- package/engine/behaviour/ability.d.ts +1 -0
- package/engine/behaviour/ability.lua +11 -0
- package/engine/behaviour/unit.d.ts +1 -0
- package/engine/behaviour/unit.lua +1 -0
- package/engine/buff.d.ts +13 -10
- package/engine/buff.lua +66 -17
- package/engine/index.d.ts +2 -1
- package/engine/internal/ability.d.ts +4 -0
- package/engine/internal/ability.lua +52 -33
- package/engine/internal/item/fields.d.ts +12 -0
- package/engine/internal/item/fields.lua +33 -0
- package/engine/internal/item+owner.d.ts +1 -0
- package/engine/internal/item+owner.lua +7 -0
- package/engine/internal/item.d.ts +16 -5
- package/engine/internal/item.lua +130 -57
- package/engine/internal/unit/ability.lua +15 -3
- package/engine/internal/unit/appearance.d.ts +15 -0
- package/engine/internal/unit/appearance.lua +85 -0
- package/engine/internal/unit/bag.d.ts +18 -0
- package/engine/internal/unit/bag.lua +63 -0
- package/engine/internal/unit/buff.d.ts +2 -2
- package/engine/internal/unit/buff.lua +34 -19
- package/engine/internal/unit/equipment.d.ts +36 -0
- package/engine/internal/unit/equipment.lua +169 -0
- package/engine/internal/unit/{item.d.ts → inventory.d.ts} +3 -3
- package/engine/internal/unit/{item.lua → inventory.lua} +25 -26
- package/engine/internal/unit/pseudo-passive-abilities.d.ts +2 -0
- package/engine/internal/unit/pseudo-passive-abilities.lua +11 -0
- package/engine/internal/unit+damage.d.ts +9 -0
- package/engine/internal/unit+damage.lua +33 -0
- package/engine/internal/unit-missile-data.lua +58 -32
- package/engine/internal/unit.d.ts +0 -1
- package/engine/internal/unit.lua +2 -7
- package/engine/local-client.d.ts +25 -0
- package/engine/local-client.lua +364 -54
- package/engine/object-data/auxiliary/equipment-slot.d.ts +12 -0
- package/engine/object-data/auxiliary/equipment-slot.lua +2 -0
- package/engine/object-data/auxiliary/equipment-type.d.ts +13 -0
- package/engine/object-data/auxiliary/equipment-type.lua +2 -0
- package/engine/object-data/auxiliary/item-tag.d.ts +12 -0
- package/engine/object-data/auxiliary/item-tag.lua +2 -0
- package/engine/object-data/auxiliary/sound-set-name.d.ts +14 -3
- package/engine/object-data/entry/ability-type/apprehend.d.ts +22 -0
- package/engine/object-data/entry/ability-type/apprehend.lua +66 -0
- package/engine/object-data/entry/ability-type/banshee.d.ts +8 -0
- package/engine/object-data/entry/ability-type/banshee.lua +13 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/banshees-wail-damage-amp.lua +27 -0
- package/engine/object-data/entry/ability-type/banshees-wail.d.ts +31 -0
- package/engine/object-data/entry/ability-type/banshees-wail.lua +117 -0
- package/engine/object-data/entry/ability-type/battering-ram.d.ts +33 -0
- package/engine/object-data/entry/ability-type/battering-ram.lua +130 -0
- package/engine/object-data/entry/ability-type/blank-configurable.d.ts +3 -0
- package/engine/object-data/entry/ability-type/blank-configurable.lua +30 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.d.ts +27 -0
- package/engine/object-data/entry/ability-type/cleansing-fire.lua +104 -0
- package/engine/object-data/entry/ability-type/consecration.d.ts +15 -0
- package/engine/object-data/entry/ability-type/consecration.lua +52 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.d.ts +12 -0
- package/engine/object-data/entry/ability-type/cooldown-reduction.lua +39 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.d.ts +18 -0
- package/engine/object-data/entry/ability-type/critical-strike-system.lua +65 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.d.ts +21 -0
- package/engine/object-data/entry/ability-type/deathseeker-arrows.lua +78 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.d.ts +8 -0
- package/engine/object-data/entry/ability-type/equipment-inventory-interface.lua +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment-inventory.lua +27 -0
- package/engine/object-data/entry/ability-type/equipment.d.ts +13 -0
- package/engine/object-data/entry/ability-type/equipment.lua +27 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.d.ts +8 -0
- package/engine/object-data/entry/ability-type/grant-talent-point.lua +13 -0
- package/engine/object-data/entry/ability-type/grim-conviction.d.ts +36 -0
- package/engine/object-data/entry/ability-type/grim-conviction.lua +131 -0
- package/engine/object-data/entry/ability-type/grit.d.ts +18 -0
- package/engine/object-data/entry/ability-type/grit.lua +65 -0
- package/engine/object-data/entry/ability-type/guiding-hand.d.ts +27 -0
- package/engine/object-data/entry/ability-type/guiding-hand.lua +104 -0
- package/engine/object-data/entry/ability-type/headsplitter.d.ts +27 -0
- package/engine/object-data/entry/ability-type/headsplitter.lua +104 -0
- package/engine/object-data/entry/ability-type/healing-modifier.d.ts +9 -0
- package/engine/object-data/entry/ability-type/healing-modifier.lua +26 -0
- package/engine/object-data/entry/ability-type/heroic-slash.d.ts +18 -0
- package/engine/object-data/entry/ability-type/heroic-slash.lua +65 -0
- package/engine/object-data/entry/ability-type/holy-wrath.d.ts +30 -0
- package/engine/object-data/entry/ability-type/holy-wrath.lua +117 -0
- package/engine/object-data/entry/ability-type/inspire-courage.d.ts +18 -0
- package/engine/object-data/entry/ability-type/inspire-courage.lua +65 -0
- package/engine/object-data/entry/ability-type/lights-mercy.d.ts +27 -0
- package/engine/object-data/entry/ability-type/lights-mercy.lua +104 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.d.ts +12 -0
- package/engine/object-data/entry/ability-type/mana-efficiency.lua +39 -0
- package/engine/object-data/entry/ability-type/mind-control.d.ts +21 -0
- package/engine/object-data/entry/ability-type/mind-control.lua +78 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.d.ts +21 -0
- package/engine/object-data/entry/ability-type/on-attack-cast-spell.lua +52 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.d.ts +19 -0
- package/engine/object-data/entry/ability-type/on-basic-attack-cast-spell.lua +65 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.d.ts +15 -0
- package/engine/object-data/entry/ability-type/on-hit-cast-spell.lua +26 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.d.ts +6 -0
- package/engine/object-data/entry/ability-type/on-magic-attack-cast-spell.lua +12 -0
- package/engine/object-data/entry/ability-type/provoke.d.ts +21 -0
- package/engine/object-data/entry/ability-type/provoke.lua +66 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.d.ts +9 -0
- package/engine/object-data/entry/ability-type/raise-the-banner.lua +26 -0
- package/engine/object-data/entry/ability-type/resolve.d.ts +12 -0
- package/engine/object-data/entry/ability-type/resolve.lua +39 -0
- package/engine/object-data/entry/ability-type/righteous-fury.d.ts +33 -0
- package/engine/object-data/entry/ability-type/righteous-fury.lua +130 -0
- package/engine/object-data/entry/ability-type/sacred-aura.d.ts +27 -0
- package/engine/object-data/entry/ability-type/sacred-aura.lua +104 -0
- package/engine/object-data/entry/ability-type/soul-lantern.d.ts +30 -0
- package/engine/object-data/entry/ability-type/soul-lantern.lua +117 -0
- package/engine/object-data/entry/ability-type/spell-amp.d.ts +15 -0
- package/engine/object-data/entry/ability-type/spell-amp.lua +52 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-critical-strike.lua +39 -0
- package/engine/object-data/entry/ability-type/spell-vamp.d.ts +12 -0
- package/engine/object-data/entry/ability-type/spell-vamp.lua +39 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-evasion.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.d.ts +21 -0
- package/engine/object-data/entry/ability-type/stackable-hardened-skin.lua +78 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-life-steal.lua +26 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-spell-damage-reduction.lua +13 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.d.ts +9 -0
- package/engine/object-data/entry/ability-type/stackable-thorn-shield.lua +13 -0
- package/engine/object-data/entry/ability-type/stat-details.d.ts +12 -0
- package/engine/object-data/entry/ability-type/stat-details.lua +27 -0
- package/engine/object-data/entry/ability-type/surge-of-light.d.ts +33 -0
- package/engine/object-data/entry/ability-type/surge-of-light.lua +130 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.d.ts +57 -0
- package/engine/object-data/entry/ability-type/sweeping-strike.lua +234 -0
- package/engine/object-data/entry/ability-type/talents.d.ts +12 -0
- package/engine/object-data/entry/ability-type/talents.lua +27 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.d.ts +30 -0
- package/engine/object-data/entry/ability-type/unyielding-guard.lua +117 -0
- package/engine/object-data/entry/ability-type/valiant-charge.d.ts +27 -0
- package/engine/object-data/entry/ability-type/valiant-charge.lua +104 -0
- package/engine/object-data/entry/ability-type/warcry.d.ts +9 -0
- package/engine/object-data/entry/ability-type/warcry.lua +26 -0
- package/engine/object-data/entry/ability-type/withering-fire.d.ts +21 -0
- package/engine/object-data/entry/ability-type/withering-fire.lua +78 -0
- package/engine/object-data/entry/ability-type.d.ts +10 -3
- package/engine/object-data/entry/ability-type.lua +53 -0
- package/engine/object-data/entry/buff-type.d.ts +6 -2
- package/engine/object-data/entry/buff-type.lua +26 -0
- package/engine/object-data/entry/destructible-type.d.ts +6 -2
- package/engine/object-data/entry/destructible-type.lua +26 -0
- package/engine/object-data/entry/item-type.d.ts +12 -3
- package/engine/object-data/entry/item-type.lua +52 -0
- package/engine/object-data/entry/lightning-type.d.ts +2 -2
- package/engine/object-data/entry/sound-preset.d.ts +2 -2
- package/engine/object-data/entry/unit-type.d.ts +47 -2
- package/engine/object-data/entry/unit-type.lua +383 -49
- package/engine/object-data/entry/upgrade.d.ts +2 -2
- package/engine/object-data/entry.d.ts +4 -1
- package/engine/object-field/item.d.ts +22 -0
- package/engine/object-field/item.lua +118 -0
- package/engine/standard/entries/ability-type.d.ts +3102 -7
- package/engine/standard/entries/ability-type.lua +0 -6
- package/engine/standard/entries/item-type.d.ts +1299 -0
- package/engine/standard/entries/item-type.lua +2 -0
- package/engine/standard/entries/unit-type.d.ts +5 -0
- package/engine/standard/entries/unit-type.lua +5 -0
- package/engine/standard/fields/item.d.ts +4 -0
- package/engine/standard/fields/item.lua +6 -0
- package/engine/unit.d.ts +4 -1
- package/engine/unit.lua +4 -1
- package/event.d.ts +1 -1
- package/lualib_bundle.lua +46 -117
- package/math.d.ts +2 -0
- package/math.lua +14 -0
- package/network.lua +25 -1
- package/operation.d.ts +8 -1
- package/operation.lua +49 -35
- package/package.json +3 -23
- package/utility/linked-map.d.ts +2 -1
- package/utility/linked-map.lua +6 -0
- package/utility/linked-set.d.ts +1 -0
- package/utility/linked-set.lua +6 -0
- package/utility/random.d.ts +102 -0
- package/utility/random.lua +273 -0
- package/utility/unordered-map.d.ts +27 -0
- package/utility/unordered-map.lua +99 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/** @noSelfInFile */
|
|
2
|
+
import { ObjectField } from "../object-field";
|
|
3
|
+
import { Item } from "../internal/item";
|
|
4
|
+
import { ItemType, ItemTypeId } from "../object-data/entry/item-type";
|
|
5
|
+
export declare abstract class ItemField<ValueType extends number | string | boolean = number | string | boolean, NativeFieldType = any> extends ObjectField<ItemType, Item, ValueType, NativeFieldType> {
|
|
6
|
+
protected get instanceClass(): typeof Item;
|
|
7
|
+
protected getObjectDataEntryId(instance: Item): ItemTypeId;
|
|
8
|
+
}
|
|
9
|
+
export declare class ItemBooleanField extends ItemField<boolean, jitembooleanfield> {
|
|
10
|
+
protected get defaultValue(): boolean;
|
|
11
|
+
protected getNativeFieldById(id: number): jitembooleanfield;
|
|
12
|
+
protected hasNativeFieldValue(): boolean;
|
|
13
|
+
protected getNativeFieldValue(instance: Item): boolean;
|
|
14
|
+
protected setNativeFieldValue(instance: Item, value: boolean): boolean;
|
|
15
|
+
}
|
|
16
|
+
export declare class ItemIntegerField extends ItemField<number, jitemintegerfield> {
|
|
17
|
+
protected get defaultValue(): number;
|
|
18
|
+
protected getNativeFieldById(id: number): jitemintegerfield;
|
|
19
|
+
protected hasNativeFieldValue(): boolean;
|
|
20
|
+
protected getNativeFieldValue(instance: Item): number;
|
|
21
|
+
protected setNativeFieldValue(instance: Item, value: number): boolean;
|
|
22
|
+
}
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
local ____lualib = require("lualib_bundle")
|
|
2
|
+
local __TS__Class = ____lualib.__TS__Class
|
|
3
|
+
local __TS__ClassExtends = ____lualib.__TS__ClassExtends
|
|
4
|
+
local __TS__SetDescriptor = ____lualib.__TS__SetDescriptor
|
|
5
|
+
local ____exports = {}
|
|
6
|
+
local ____object_2Dfield = require("engine.object-field")
|
|
7
|
+
local ObjectField = ____object_2Dfield.ObjectField
|
|
8
|
+
local ____item = require("engine.internal.item")
|
|
9
|
+
local Item = ____item.Item
|
|
10
|
+
local ____lua_2Dsets = require("utility.lua-sets")
|
|
11
|
+
local luaSetOf = ____lua_2Dsets.luaSetOf
|
|
12
|
+
local convertItemBooleanField = ConvertItemBooleanField
|
|
13
|
+
local convertItemIntegerField = ConvertItemIntegerField
|
|
14
|
+
local getItemBooleanField = BlzGetItemBooleanField
|
|
15
|
+
local getItemIntegerField = BlzGetItemIntegerField
|
|
16
|
+
local isItemPawnable = IsItemPawnable
|
|
17
|
+
local isItemPowerup = IsItemPowerup
|
|
18
|
+
local setItemBooleanField = BlzSetItemBooleanField
|
|
19
|
+
local setItemDropOnDeath = SetItemDropOnDeath
|
|
20
|
+
local setItemDroppable = SetItemDroppable
|
|
21
|
+
local setItemPawnable = SetItemPawnable
|
|
22
|
+
local setItemIntegerField = BlzSetItemIntegerField
|
|
23
|
+
____exports.ItemField = __TS__Class()
|
|
24
|
+
local ItemField = ____exports.ItemField
|
|
25
|
+
ItemField.name = "ItemField"
|
|
26
|
+
__TS__ClassExtends(ItemField, ObjectField)
|
|
27
|
+
function ItemField.prototype.getObjectDataEntryId(self, instance)
|
|
28
|
+
return instance.typeId
|
|
29
|
+
end
|
|
30
|
+
__TS__SetDescriptor(
|
|
31
|
+
ItemField.prototype,
|
|
32
|
+
"instanceClass",
|
|
33
|
+
{get = function(self)
|
|
34
|
+
return Item
|
|
35
|
+
end},
|
|
36
|
+
true
|
|
37
|
+
)
|
|
38
|
+
local nativeItemBooleanFieldIds = luaSetOf(
|
|
39
|
+
fourCC("ipaw"),
|
|
40
|
+
fourCC("iusa")
|
|
41
|
+
)
|
|
42
|
+
____exports.ItemBooleanField = __TS__Class()
|
|
43
|
+
local ItemBooleanField = ____exports.ItemBooleanField
|
|
44
|
+
ItemBooleanField.name = "ItemBooleanField"
|
|
45
|
+
__TS__ClassExtends(ItemBooleanField, ____exports.ItemField)
|
|
46
|
+
function ItemBooleanField.prototype.getNativeFieldById(self, id)
|
|
47
|
+
return convertItemBooleanField(id)
|
|
48
|
+
end
|
|
49
|
+
function ItemBooleanField.prototype.hasNativeFieldValue(self)
|
|
50
|
+
return nativeItemBooleanFieldIds[self.id] ~= nil
|
|
51
|
+
end
|
|
52
|
+
function ItemBooleanField.prototype.getNativeFieldValue(self, instance)
|
|
53
|
+
return getItemBooleanField(instance.handle, self.nativeField)
|
|
54
|
+
end
|
|
55
|
+
function ItemBooleanField.prototype.setNativeFieldValue(self, instance, value)
|
|
56
|
+
if self.id == fourCC("iusa") then
|
|
57
|
+
local handle = instance.handle
|
|
58
|
+
local powerUp = isItemPowerup(handle)
|
|
59
|
+
local perishes = getItemBooleanField(handle, ITEM_BF_PERISHABLE)
|
|
60
|
+
local dropsOnDeath = getItemBooleanField(handle, ITEM_BF_DROPPED_WHEN_CARRIER_DIES)
|
|
61
|
+
local canBeDropped = getItemBooleanField(handle, ITEM_BF_CAN_BE_DROPPED)
|
|
62
|
+
local canBeSold = isItemPawnable(handle)
|
|
63
|
+
local result = setItemBooleanField(handle, ITEM_BF_ACTIVELY_USED, value)
|
|
64
|
+
setItemPawnable(handle, canBeSold)
|
|
65
|
+
setItemDroppable(handle, canBeDropped)
|
|
66
|
+
setItemDropOnDeath(handle, dropsOnDeath)
|
|
67
|
+
setItemBooleanField(handle, ITEM_BF_PERISHABLE, perishes)
|
|
68
|
+
setItemBooleanField(handle, ITEM_BF_USE_AUTOMATICALLY_WHEN_ACQUIRED, powerUp)
|
|
69
|
+
return result
|
|
70
|
+
end
|
|
71
|
+
return setItemBooleanField(instance.handle, self.nativeField, value)
|
|
72
|
+
end
|
|
73
|
+
__TS__SetDescriptor(
|
|
74
|
+
ItemBooleanField.prototype,
|
|
75
|
+
"defaultValue",
|
|
76
|
+
{get = function(self)
|
|
77
|
+
return false
|
|
78
|
+
end},
|
|
79
|
+
true
|
|
80
|
+
)
|
|
81
|
+
local nativeItemIntegerFieldIds = luaSetOf(
|
|
82
|
+
fourCC("ilev"),
|
|
83
|
+
fourCC("iuse"),
|
|
84
|
+
fourCC("icid"),
|
|
85
|
+
fourCC("ihtp"),
|
|
86
|
+
fourCC("ihpc"),
|
|
87
|
+
fourCC("ipri"),
|
|
88
|
+
fourCC("iarm"),
|
|
89
|
+
fourCC("iclr"),
|
|
90
|
+
fourCC("iclg"),
|
|
91
|
+
fourCC("iclb"),
|
|
92
|
+
fourCC("ical")
|
|
93
|
+
)
|
|
94
|
+
____exports.ItemIntegerField = __TS__Class()
|
|
95
|
+
local ItemIntegerField = ____exports.ItemIntegerField
|
|
96
|
+
ItemIntegerField.name = "ItemIntegerField"
|
|
97
|
+
__TS__ClassExtends(ItemIntegerField, ____exports.ItemField)
|
|
98
|
+
function ItemIntegerField.prototype.getNativeFieldById(self, id)
|
|
99
|
+
return convertItemIntegerField(id)
|
|
100
|
+
end
|
|
101
|
+
function ItemIntegerField.prototype.hasNativeFieldValue(self)
|
|
102
|
+
return nativeItemIntegerFieldIds[self.id] ~= nil
|
|
103
|
+
end
|
|
104
|
+
function ItemIntegerField.prototype.getNativeFieldValue(self, instance)
|
|
105
|
+
return getItemIntegerField(instance.handle, self.nativeField)
|
|
106
|
+
end
|
|
107
|
+
function ItemIntegerField.prototype.setNativeFieldValue(self, instance, value)
|
|
108
|
+
return setItemIntegerField(instance.handle, self.nativeField, value)
|
|
109
|
+
end
|
|
110
|
+
__TS__SetDescriptor(
|
|
111
|
+
ItemIntegerField.prototype,
|
|
112
|
+
"defaultValue",
|
|
113
|
+
{get = function(self)
|
|
114
|
+
return 0
|
|
115
|
+
end},
|
|
116
|
+
true
|
|
117
|
+
)
|
|
118
|
+
return ____exports
|