warscript 0.0.1-dev.ed60fea → 0.0.1-dev.eda504c

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.
Files changed (175) hide show
  1. package/attributes.d.ts +6 -0
  2. package/attributes.lua +17 -1
  3. package/config.d.ts +5 -0
  4. package/config.lua +10 -0
  5. package/core/types/effect.d.ts +1 -3
  6. package/core/types/effect.lua +26 -29
  7. package/core/types/frame.lua +24 -21
  8. package/core/types/player.lua +3 -1
  9. package/core/types/playerCamera.d.ts +2 -0
  10. package/core/types/playerCamera.lua +123 -5
  11. package/core/types/sound.d.ts +17 -24
  12. package/core/types/sound.lua +99 -24
  13. package/core/types/tileCell.d.ts +9 -0
  14. package/core/types/tileCell.lua +92 -0
  15. package/core/types/timer.d.ts +9 -8
  16. package/core/types/timer.lua +45 -23
  17. package/core/util.lua +6 -1
  18. package/decl/native.d.ts +846 -790
  19. package/engine/behavior.d.ts +5 -0
  20. package/engine/behavior.lua +106 -27
  21. package/engine/behaviour/ability/apply-buff.d.ts +5 -0
  22. package/engine/behaviour/ability/apply-buff.lua +32 -0
  23. package/engine/behaviour/ability/apply-unit-behavior.lua +1 -0
  24. package/engine/behaviour/ability/damage.d.ts +9 -3
  25. package/engine/behaviour/ability/damage.lua +26 -38
  26. package/engine/behaviour/ability/emulate-impact.d.ts +1 -1
  27. package/engine/behaviour/ability/emulate-impact.lua +18 -3
  28. package/engine/behaviour/ability/restore-mana.d.ts +1 -1
  29. package/engine/behaviour/ability/restore-mana.lua +6 -6
  30. package/engine/behaviour/ability.d.ts +7 -2
  31. package/engine/behaviour/ability.lua +42 -24
  32. package/engine/behaviour/unit/stun-immunity.d.ts +7 -3
  33. package/engine/behaviour/unit/stun-immunity.lua +52 -27
  34. package/engine/behaviour/unit.d.ts +34 -0
  35. package/engine/behaviour/unit.lua +190 -4
  36. package/engine/buff.d.ts +57 -44
  37. package/engine/buff.lua +273 -221
  38. package/engine/internal/ability.d.ts +7 -1
  39. package/engine/internal/ability.lua +49 -11
  40. package/engine/internal/item/ability.lua +82 -14
  41. package/engine/internal/item+owner.lua +12 -6
  42. package/engine/internal/item.d.ts +20 -19
  43. package/engine/internal/item.lua +191 -74
  44. package/engine/internal/mechanics/ability-duration.lua +1 -1
  45. package/engine/internal/misc/damage-metadata-by-target.d.ts +2 -0
  46. package/engine/internal/misc/damage-metadata-by-target.lua +5 -0
  47. package/engine/internal/misc/frame-coordinates.d.ts +2 -0
  48. package/engine/internal/misc/frame-coordinates.lua +21 -0
  49. package/engine/internal/misc/get-terrain-z.d.ts +2 -0
  50. package/engine/internal/misc/get-terrain-z.lua +11 -0
  51. package/engine/internal/misc/player-local-handle.d.ts +2 -0
  52. package/engine/internal/misc/player-local-handle.lua +5 -0
  53. package/engine/internal/object-data/auto-attack-speed-increase.d.ts +1 -1
  54. package/engine/internal/object-data/auto-attack-speed-increase.lua +2 -0
  55. package/engine/internal/object-data/evasion-probability.d.ts +2 -0
  56. package/engine/internal/object-data/evasion-probability.lua +16 -0
  57. package/engine/internal/unit/ability.d.ts +35 -0
  58. package/engine/internal/unit/ability.lua +98 -9
  59. package/engine/internal/unit/add-item-to-slot-init.d.ts +2 -0
  60. package/engine/internal/unit/add-item-to-slot-init.lua +23 -0
  61. package/engine/internal/unit/add-item-to-slot.d.ts +2 -0
  62. package/engine/internal/unit/add-item-to-slot.lua +52 -0
  63. package/engine/internal/unit/allowed-targets.d.ts +1 -1
  64. package/engine/internal/unit/allowed-targets.lua +9 -1
  65. package/engine/internal/unit/bonus.d.ts +2 -0
  66. package/engine/internal/unit/bonus.lua +17 -0
  67. package/engine/internal/unit/ignore-events-items.d.ts +2 -0
  68. package/engine/internal/unit/ignore-events-items.lua +5 -0
  69. package/engine/internal/unit/item.lua +3 -4
  70. package/engine/internal/unit/order.d.ts +20 -0
  71. package/engine/internal/unit/order.lua +136 -0
  72. package/engine/internal/unit+ability.lua +10 -1
  73. package/engine/internal/unit+damage.d.ts +2 -11
  74. package/engine/internal/unit+damage.lua +10 -14
  75. package/engine/internal/unit+spellSteal.lua +1 -2
  76. package/engine/internal/unit-missile-launch.lua +42 -14
  77. package/engine/internal/unit.d.ts +35 -10
  78. package/engine/internal/unit.lua +290 -119
  79. package/engine/lightning.d.ts +12 -5
  80. package/engine/lightning.lua +48 -14
  81. package/engine/object-data/auxiliary/animation-name.d.ts +1 -0
  82. package/engine/object-data/auxiliary/animation-name.lua +16 -0
  83. package/engine/object-data/auxiliary/armor-type.d.ts +11 -0
  84. package/engine/object-data/auxiliary/armor-type.lua +46 -0
  85. package/engine/object-data/auxiliary/attachment-preset.d.ts +7 -2
  86. package/engine/object-data/auxiliary/attachment-preset.lua +4 -3
  87. package/engine/object-data/auxiliary/attack-type.d.ts +7 -8
  88. package/engine/object-data/auxiliary/attack-type.lua +42 -0
  89. package/engine/object-data/auxiliary/movement-type.d.ts +7 -7
  90. package/engine/object-data/auxiliary/movement-type.lua +22 -0
  91. package/engine/object-data/auxiliary/sound-eax.d.ts +10 -0
  92. package/engine/object-data/auxiliary/sound-eax.lua +2 -0
  93. package/engine/object-data/auxiliary/tech-tree-dependency.d.ts +1 -1
  94. package/engine/object-data/auxiliary/unit-attribute.d.ts +6 -0
  95. package/engine/object-data/auxiliary/unit-attribute.lua +9 -0
  96. package/engine/object-data/entry/ability-type/berserk.d.ts +2 -0
  97. package/engine/object-data/entry/ability-type/berserk.lua +13 -0
  98. package/engine/object-data/entry/ability-type/blank-configurable.lua +12 -1
  99. package/engine/object-data/entry/ability-type/carrion-swarm.d.ts +14 -0
  100. package/engine/object-data/entry/ability-type/carrion-swarm.lua +65 -0
  101. package/engine/object-data/entry/ability-type/disease-cloud.lua +2 -2
  102. package/engine/object-data/entry/ability-type/engineering-upgrade.lua +2 -2
  103. package/engine/object-data/entry/ability-type/ensnare.d.ts +12 -0
  104. package/engine/object-data/entry/ability-type/ensnare.lua +52 -0
  105. package/engine/object-data/entry/ability-type/feral-spirit.lua +2 -2
  106. package/engine/object-data/entry/ability-type/permanent-invisibility.d.ts +8 -0
  107. package/engine/object-data/entry/ability-type/permanent-invisibility.lua +26 -0
  108. package/engine/object-data/entry/ability-type/phase-shift.d.ts +10 -0
  109. package/engine/object-data/entry/ability-type/phase-shift.lua +39 -0
  110. package/engine/object-data/entry/ability-type/phoenix-morph.lua +4 -4
  111. package/engine/object-data/entry/ability-type/raise-dead.d.ts +17 -0
  112. package/engine/object-data/entry/ability-type/raise-dead.lua +78 -0
  113. package/engine/object-data/entry/ability-type/shock-wave.d.ts +4 -0
  114. package/engine/object-data/entry/ability-type/shock-wave.lua +26 -0
  115. package/engine/object-data/entry/ability-type/slow-poison.d.ts +10 -0
  116. package/engine/object-data/entry/ability-type/slow-poison.lua +58 -0
  117. package/engine/object-data/entry/ability-type/summon-quilbeast.lua +2 -2
  118. package/engine/object-data/entry/ability-type/summon-water-elemental.lua +2 -2
  119. package/engine/object-data/entry/ability-type/web.d.ts +12 -0
  120. package/engine/object-data/entry/ability-type/web.lua +52 -0
  121. package/engine/object-data/entry/ability-type.d.ts +19 -17
  122. package/engine/object-data/entry/ability-type.lua +85 -24
  123. package/engine/object-data/entry/buff-type/applicable.lua +18 -37
  124. package/engine/object-data/entry/buff-type.d.ts +6 -12
  125. package/engine/object-data/entry/buff-type.lua +13 -29
  126. package/engine/object-data/entry/destructible-type.d.ts +1 -1
  127. package/engine/object-data/entry/item-type.d.ts +1 -1
  128. package/engine/object-data/entry/item-type.lua +4 -4
  129. package/engine/object-data/entry/lightning-type.d.ts +1 -1
  130. package/engine/object-data/entry/sound-preset.d.ts +33 -0
  131. package/engine/object-data/entry/sound-preset.lua +140 -0
  132. package/engine/object-data/entry/unit-type.d.ts +21 -5
  133. package/engine/object-data/entry/unit-type.lua +214 -93
  134. package/engine/object-data/entry/upgrade.d.ts +1 -1
  135. package/engine/object-data/entry/upgrade.lua +4 -4
  136. package/engine/object-data/entry.d.ts +16 -14
  137. package/engine/object-data/entry.lua +60 -32
  138. package/engine/object-field/ability.d.ts +4 -4
  139. package/engine/object-field/ability.lua +7 -6
  140. package/engine/object-field/unit.d.ts +57 -3
  141. package/engine/object-field/unit.lua +207 -7
  142. package/engine/object-field.d.ts +17 -6
  143. package/engine/object-field.lua +188 -92
  144. package/engine/random.d.ts +9 -0
  145. package/engine/random.lua +13 -0
  146. package/engine/standard/entries/buff-type.d.ts +3 -0
  147. package/engine/standard/entries/buff-type.lua +3 -0
  148. package/engine/standard/entries/sound-preset.d.ts +10 -0
  149. package/engine/standard/entries/sound-preset.lua +10 -0
  150. package/engine/standard/fields/unit.d.ts +4 -0
  151. package/engine/standard/fields/unit.lua +7 -0
  152. package/engine/text-tag.d.ts +36 -2
  153. package/engine/text-tag.lua +249 -10
  154. package/engine/unit.d.ts +2 -0
  155. package/engine/unit.lua +2 -0
  156. package/objutil/buff.lua +2 -3
  157. package/objutil/unit.lua +8 -0
  158. package/package.json +2 -2
  159. package/patch-lualib.lua +1 -1
  160. package/utility/arrays.d.ts +2 -0
  161. package/utility/arrays.lua +11 -0
  162. package/utility/callback-array.d.ts +17 -0
  163. package/utility/callback-array.lua +61 -0
  164. package/utility/functions.d.ts +8 -0
  165. package/utility/functions.lua +13 -0
  166. package/utility/linked-set.d.ts +1 -0
  167. package/utility/linked-set.lua +5 -1
  168. package/utility/lua-maps.d.ts +15 -2
  169. package/utility/lua-maps.lua +53 -2
  170. package/utility/lua-sets.d.ts +2 -0
  171. package/utility/lua-sets.lua +7 -0
  172. package/utility/reflection.lua +11 -7
  173. package/utility/types.d.ts +3 -0
  174. package/core/types/order.d.ts +0 -25
  175. package/core/types/order.lua +0 -55
@@ -0,0 +1,140 @@
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 ____entry = require("engine.object-data.entry")
7
+ local ObjectDataEntry = ____entry.ObjectDataEntry
8
+ ____exports.SoundPreset = __TS__Class()
9
+ local SoundPreset = ____exports.SoundPreset
10
+ SoundPreset.name = "SoundPreset"
11
+ __TS__ClassExtends(SoundPreset, ObjectDataEntry)
12
+ function SoundPreset.generateId(self)
13
+ local ____self_0, ____nextId_1 = self, "nextId"
14
+ local ____self_nextId_2 = ____self_0[____nextId_1]
15
+ ____self_0[____nextId_1] = ____self_nextId_2 + 1
16
+ return "CustomSound" .. tostring(____self_nextId_2)
17
+ end
18
+ function SoundPreset.getObjectData(self, map)
19
+ return map.objects.sound
20
+ end
21
+ SoundPreset.BASE_ID = "BlizzardWave"
22
+ SoundPreset.nextId = 0
23
+ __TS__SetDescriptor(
24
+ SoundPreset.prototype,
25
+ "filePaths",
26
+ {
27
+ get = function(self)
28
+ return self:getStringsField("FileNames")
29
+ end,
30
+ set = function(self, filePaths)
31
+ self:setStringsField("FileNames", filePaths)
32
+ end
33
+ },
34
+ true
35
+ )
36
+ __TS__SetDescriptor(
37
+ SoundPreset.prototype,
38
+ "volume",
39
+ {
40
+ get = function(self)
41
+ return self:getNumberField("Volume")
42
+ end,
43
+ set = function(self, volume)
44
+ self:setNumberField("Volume", volume)
45
+ end
46
+ },
47
+ true
48
+ )
49
+ __TS__SetDescriptor(
50
+ SoundPreset.prototype,
51
+ "pitch",
52
+ {
53
+ get = function(self)
54
+ return self:getNumberField("Pitch")
55
+ end,
56
+ set = function(self, pitch)
57
+ self:setNumberField("Pitch", pitch)
58
+ end
59
+ },
60
+ true
61
+ )
62
+ __TS__SetDescriptor(
63
+ SoundPreset.prototype,
64
+ "priority",
65
+ {
66
+ get = function(self)
67
+ return self:getNumberField("Priority")
68
+ end,
69
+ set = function(self, priority)
70
+ self:setNumberField("Priority", priority)
71
+ end
72
+ },
73
+ true
74
+ )
75
+ __TS__SetDescriptor(
76
+ SoundPreset.prototype,
77
+ "channel",
78
+ {
79
+ get = function(self)
80
+ return self:getNumberField("Channel")
81
+ end,
82
+ set = function(self, channel)
83
+ self:setNumberField("Channel", channel)
84
+ end
85
+ },
86
+ true
87
+ )
88
+ __TS__SetDescriptor(
89
+ SoundPreset.prototype,
90
+ "minimumDistance",
91
+ {
92
+ get = function(self)
93
+ return self:getNumberField("MinDistance")
94
+ end,
95
+ set = function(self, minimumDistance)
96
+ self:setNumberField("MinDistance", minimumDistance)
97
+ end
98
+ },
99
+ true
100
+ )
101
+ __TS__SetDescriptor(
102
+ SoundPreset.prototype,
103
+ "maximumDistance",
104
+ {
105
+ get = function(self)
106
+ return self:getNumberField("MaxDistance")
107
+ end,
108
+ set = function(self, maximumDistance)
109
+ self:setNumberField("MaxDistance", maximumDistance)
110
+ end
111
+ },
112
+ true
113
+ )
114
+ __TS__SetDescriptor(
115
+ SoundPreset.prototype,
116
+ "distanceCutoff",
117
+ {
118
+ get = function(self)
119
+ return self:getNumberField("DistanceCutoff")
120
+ end,
121
+ set = function(self, distanceCutoff)
122
+ self:setNumberField("DistanceCutoff", distanceCutoff)
123
+ end
124
+ },
125
+ true
126
+ )
127
+ __TS__SetDescriptor(
128
+ SoundPreset.prototype,
129
+ "eax",
130
+ {
131
+ get = function(self)
132
+ return self:getStringField("EAXFlags")
133
+ end,
134
+ set = function(self, eax)
135
+ self:setStringField("EAXFlags", eax)
136
+ end
137
+ },
138
+ true
139
+ )
140
+ return ____exports
@@ -13,7 +13,8 @@ import type { AbilityTypeId } from "./ability-type";
13
13
  import type { UpgradeId } from "./upgrade";
14
14
  import { AnimationQualifier } from "../auxiliary/animation-qualifier";
15
15
  import { AttackType } from "../auxiliary/attack-type";
16
- export type UnitTypeId = ObjectDataEntryId & {
16
+ import { ArmorType } from "../auxiliary/armor-type";
17
+ export type UnitTypeId = ObjectDataEntryId & number & {
17
18
  readonly __unitTypeId: unique symbol;
18
19
  };
19
20
  export type StandardUnitTypeId = UnitTypeId & {
@@ -23,8 +24,8 @@ export declare class UnitTypeWeapon {
23
24
  private readonly unitType;
24
25
  private readonly index;
25
26
  private constructor();
26
- get attackType(): AttackType;
27
- set attackType(attackType: AttackType);
27
+ get attackType(): AttackType | undefined;
28
+ set attackType(attackType: AttackType | undefined);
28
29
  get backSwingDuration(): number;
29
30
  set backSwingDuration(backSwingDuration: number);
30
31
  get cooldown(): number;
@@ -55,6 +56,7 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
55
56
  protected static readonly idGenerator: ObjectDataEntryIdGenerator;
56
57
  protected static generateId(): number;
57
58
  protected static getObjectData(map: WarMap): WarObjects;
59
+ private isPortraitModelPathSet?;
58
60
  get abilityTypeIds(): AbilityTypeId[];
59
61
  set abilityTypeIds(abilityTypeIds: AbilityTypeId[]);
60
62
  get defaultActiveAbilityTypeId(): AbilityTypeId | undefined;
@@ -131,12 +133,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
131
133
  set modelPathSD(modelPathSD: string);
132
134
  get modelPathHD(): string;
133
135
  set modelPathHD(modelPathHD: string);
136
+ get portraitModelPath(): string;
137
+ set portraitModelPath(portraitModelPath: string);
138
+ get portraitModelPathSD(): string;
139
+ set portraitModelPathSD(portraitModelPathSD: string);
140
+ get portraitModelPathHD(): string;
141
+ set portraitModelPathHD(portraitModelPathHD: string);
134
142
  get runSpeed(): number;
135
143
  set runSpeed(runSpeed: number);
136
144
  get runSpeedSD(): number;
137
145
  set runSpeedSD(runSpeedSD: number);
138
146
  get runSpeedHD(): number;
139
147
  set runSpeedHD(runSpeedHD: number);
148
+ get selectionCircleHeight(): number;
149
+ set selectionCircleHeight(height: number);
140
150
  get selectionCircleScale(): number;
141
151
  set selectionCircleScale(selectionCircleScale: number);
142
152
  get selectionCircleScaleSD(): number;
@@ -175,16 +185,20 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
175
185
  set walkSpeedSD(walkSpeedSD: number);
176
186
  get walkSpeedHD(): number;
177
187
  set walkSpeedHD(walkSpeedHD: number);
188
+ get armor(): number;
189
+ set armor(armor: number);
178
190
  get armorSoundType(): ArmorSoundType;
179
191
  set armorSoundType(armorSoundType: ArmorSoundType);
180
192
  get armorSoundTypeSD(): ArmorSoundType;
181
193
  set armorSoundTypeSD(armorSoundTypeSD: ArmorSoundType);
182
194
  get armorSoundTypeHD(): ArmorSoundType;
183
195
  set armorSoundTypeHD(armorSoundTypeHD: ArmorSoundType);
196
+ get armorType(): ArmorType;
197
+ set armorType(armorType: ArmorType);
184
198
  get combatClassifications(): CombatClassifications;
185
199
  set combatClassifications(combatClassifications: CombatClassifications);
186
- get unitClassifications(): UnitClassifications;
187
- set unitClassifications(unitClassifications: UnitClassifications);
200
+ get classifications(): UnitClassifications;
201
+ set classifications(unitClassifications: UnitClassifications);
188
202
  get weapons(): TupleOf<UnitTypeWeapon, 2>;
189
203
  get firstWeapon(): UnitTypeWeapon;
190
204
  get secondWeapon(): UnitTypeWeapon;
@@ -218,6 +232,8 @@ export declare abstract class UnitType<Id extends UnitTypeId = UnitTypeId> exten
218
232
  set goldCost(goldCost: number);
219
233
  get healthRegenerationRate(): number;
220
234
  set healthRegenerationRate(healthRegenerationRate: number);
235
+ get level(): number;
236
+ set level(level: number);
221
237
  get manaRegenerationRate(): number;
222
238
  set manaRegenerationRate(manaRegenerationRate: number);
223
239
  get maximumHealth(): number;