NWNX:EE  8193.37.14
nwnx_weapon.nss
Go to the documentation of this file.
1 
6 const string NWNX_Weapon = "NWNX_Weapon";
7 
16 
17 // Get Event Data Constants
18 const int NWNX_WEAPON_GETDATA_DC = 0;
19 
20 // Set Event Data Constants
22 
25 {
26  object oWeapon;
27  object oTarget;
28  int nDamage;
29 };
30 
34 void NWNX_Weapon_SetWeaponFocusFeat(int nBaseItem, int nFeat);
35 
39 void NWNX_Weapon_SetWeaponFinesseSize(int nBaseItem, int nSize);
40 
43 int NWNX_Weapon_GetWeaponFinesseSize(int nBaseItem);
44 
47 void NWNX_Weapon_SetWeaponUnarmed(int nBaseItem);
48 
52 void NWNX_Weapon_SetWeaponImprovedCriticalFeat(int nBaseItem, int nFeat);
53 
57 void NWNX_Weapon_SetWeaponSpecializationFeat(int nBaseItem, int nFeat);
58 
62 void NWNX_Weapon_SetEpicWeaponFocusFeat(int nBaseItem, int nFeat);
63 
67 void NWNX_Weapon_SetEpicWeaponSpecializationFeat(int nBaseItem, int nFeat);
68 
72 void NWNX_Weapon_SetEpicWeaponOverwhelmingCriticalFeat(int nBaseItem, int nFeat);
73 
77 void NWNX_Weapon_SetEpicWeaponDevastatingCriticalFeat(int nBaseItem, int nFeat);
78 
82 void NWNX_Weapon_SetWeaponOfChoiceFeat(int nBaseItem, int nFeat);
83 
87 void NWNX_Weapon_SetGreaterWeaponSpecializationFeat(int nBaseItem, int nFeat);
88 
92 void NWNX_Weapon_SetGreaterWeaponFocusFeat(int nBaseItem, int nFeat);
93 
97 void NWNX_Weapon_SetWeaponIsMonkWeapon(int nBaseItem);
98 
102 void NWNX_Weapon_SetOption(int nOption, int nVal);
103 
107 
112 
116 
121 void NWNX_Weapon_SetOneHalfStrength(object oWeapon, int nEnable, int bPersist = FALSE);
122 
127 
134 void NWNX_Weapon_SetMaxRangedAttackDistanceOverride(int nBaseItem, float fMax, float fMaxPassive, float fPreferred);
135 
137 
138 void NWNX_Weapon_SetWeaponFocusFeat(int nBaseItem, int nFeat)
139 {
140  NWNXPushInt(nFeat);
141  NWNXPushInt(nBaseItem);
142  NWNXCall(NWNX_Weapon, "SetWeaponFocusFeat");
143 }
144 
145 void NWNX_Weapon_SetEpicWeaponFocusFeat(int nBaseItem, int nFeat)
146 {
147  NWNXPushInt(nFeat);
148  NWNXPushInt(nBaseItem);
149  NWNXCall(NWNX_Weapon, "SetEpicWeaponFocusFeat");
150 }
151 
152 void NWNX_Weapon_SetGreaterWeaponFocusFeat(int nBaseItem, int nFeat)
153 {
154  NWNXPushInt(nFeat);
155  NWNXPushInt(nBaseItem);
156  NWNXCall(NWNX_Weapon, "SetGreaterWeaponFocusFeat");
157 }
158 
159 void NWNX_Weapon_SetWeaponFinesseSize(int nBaseItem, int nSize)
160 {
161  NWNXPushInt(nSize);
162  NWNXPushInt(nBaseItem);
163  NWNXCall(NWNX_Weapon, "SetWeaponFinesseSize");
164 }
165 
167 {
168  NWNXPushInt(nBaseItem);
169  NWNXCall(NWNX_Weapon, "GetWeaponFinesseSize");
170  return NWNXPopInt();
171 }
172 
173 void NWNX_Weapon_SetWeaponUnarmed(int nBaseItem)
174 {
175  NWNXPushInt(nBaseItem);
176  NWNXCall(NWNX_Weapon, "SetWeaponUnarmed");
177 }
178 
180 {
181  WriteTimestampedLogEntry("NWNX_Weapon_SetWeaponIsMonkWeapon() is deprecated. Please use baseitems.2da instead.");
182  NWNXPushInt(nBaseItem);
183  NWNXCall(NWNX_Weapon, "SetWeaponIsMonkWeapon");
184 }
185 
186 void NWNX_Weapon_SetWeaponImprovedCriticalFeat(int nBaseItem, int nFeat)
187 {
188  NWNXPushInt(nFeat);
189  NWNXPushInt(nBaseItem);
190  NWNXCall(NWNX_Weapon, "SetWeaponImprovedCriticalFeat");
191 }
192 
193 void NWNX_Weapon_SetWeaponSpecializationFeat(int nBaseItem, int nFeat)
194 {
195  NWNXPushInt(nFeat);
196  NWNXPushInt(nBaseItem);
197  NWNXCall(NWNX_Weapon, "SetWeaponSpecializationFeat");
198 }
199 
201 {
202  NWNXPushInt(nFeat);
203  NWNXPushInt(nBaseItem);
204  NWNXCall(NWNX_Weapon, "SetGreaterWeaponSpecializationFeat");
205 }
206 
207 void NWNX_Weapon_SetEpicWeaponSpecializationFeat(int nBaseItem, int nFeat)
208 {
209  NWNXPushInt(nFeat);
210  NWNXPushInt(nBaseItem);
211  NWNXCall(NWNX_Weapon, "SetEpicWeaponSpecializationFeat");
212 }
213 
215 {
216  NWNXPushInt(nFeat);
217  NWNXPushInt(nBaseItem);
218  NWNXCall(NWNX_Weapon, "SetEpicWeaponOverwhelmingCriticalFeat");
219 }
220 
222 {
223  NWNXPushInt(nFeat);
224  NWNXPushInt(nBaseItem);
225  NWNXCall(NWNX_Weapon, "SetEpicWeaponDevastatingCriticalFeat");
226 }
227 
228 void NWNX_Weapon_SetWeaponOfChoiceFeat(int nBaseItem, int nFeat)
229 {
230  NWNXPushInt(nFeat);
231  NWNXPushInt(nBaseItem);
232  NWNXCall(NWNX_Weapon, "SetWeaponOfChoiceFeat");
233 }
234 
235 void NWNX_Weapon_SetOption(int nOption, int nVal)
236 {
237  NWNXPushInt(nVal);
238  NWNXPushInt(nOption);
239  NWNXCall(NWNX_Weapon, "SetOption");
240 }
241 
243 {
244  NWNXPushString(sScript);
245  NWNXCall(NWNX_Weapon, "SetDevastatingCriticalEventScript");
246 }
247 
249 {
250  NWNXPushInt(1);
251  NWNXPushInt(NWNX_WEAPON_SETDATA_DC_BYPASS);
252  NWNXCall(NWNX_Weapon, "SetEventData");
253 }
254 
256 {
258  NWNXPushInt(NWNX_WEAPON_GETDATA_DC);
259  NWNXCall(NWNX_Weapon, "GetEventData");
260  data.oWeapon = NWNXPopObject();
261  data.oTarget = NWNXPopObject();
262  data.nDamage = NWNXPopInt();
263  return data;
264 }
265 
266 void NWNX_Weapon_SetOneHalfStrength(object oWeapon, int nEnable, int bPersist = FALSE)
267 {
268  NWNXPushInt(bPersist);
269  NWNXPushInt(nEnable);
270  NWNXPushObject(oWeapon);
271  NWNXCall(NWNX_Weapon, "SetOneHalfStrength");
272 }
273 
275 {
276  NWNXPushObject(oWeapon);
277  NWNXCall(NWNX_Weapon, "GetOneHalfStrength");
278  return NWNXPopInt();
279 }
280 
281 void NWNX_Weapon_SetMaxRangedAttackDistanceOverride(int nBaseItem, float fMax, float fMaxPassive, float fPreferred)
282 {
283  NWNXPushFloat(fPreferred);
284  NWNXPushFloat(fMaxPassive);
285  NWNXPushFloat(fMax);
286  NWNXPushInt(nBaseItem);
287  NWNXCall(NWNX_Weapon, "SetMaxRangedAttackDistanceOverride");
288 }
void NWNX_Weapon_SetWeaponIsMonkWeapon(int nBaseItem)
Set base item as monk weapon.
struct NWNX_Weapon_DevastatingCriticalEvent_Data NWNX_Weapon_GetDevastatingCriticalEventData()
Get Devastating Critical Event Data.
void NWNX_Weapon_SetEpicWeaponOverwhelmingCriticalFeat(int nBaseItem, int nFeat)
Set a feat as epic weapon overwhelming critical for a base item.
int NWNX_Weapon_GetOneHalfStrength(object oWeapon)
Gets if the weapon is set to gain addition .5 strength bonus.
void NWNX_Weapon_SetGreaterWeaponSpecializationFeat(int nBaseItem, int nFeat)
Set a feat as greater weapon specialization for a base item.
void NWNX_Weapon_BypassDevastatingCritical()
Bypass Devastating Critical.
void NWNX_Weapon_SetDevastatingCriticalEventScript(string sScript)
Set Devastating Critical Event Script.
void NWNX_Weapon_SetGreaterWeaponFocusFeat(int nBaseItem, int nFeat)
Set a feat as greater weapon focus for a base item.
void NWNX_Weapon_SetEpicWeaponDevastatingCriticalFeat(int nBaseItem, int nFeat)
Set a feat as epic weapon devastating critical for a base item.
const int NWNX_WEAPON_OPT_GRTFOCUS_AB_BONUS
Greater Focus Attack Bonus.
Definition: nwnx_weapon.nss:13
void NWNX_Weapon_SetWeaponSpecializationFeat(int nBaseItem, int nFeat)
Set a feat as weapon specialization for a base item.
void NWNX_Weapon_SetEpicWeaponSpecializationFeat(int nBaseItem, int nFeat)
Set a feat as epic weapon specialization for a base item.
void NWNX_Weapon_SetWeaponOfChoiceFeat(int nBaseItem, int nFeat)
Set a feat as weapon of choice for a base item.
void NWNX_Weapon_SetWeaponFocusFeat(int nBaseItem, int nFeat)
Set nFeat as weapon focus feat for a base item.
void NWNX_Weapon_SetMaxRangedAttackDistanceOverride(int nBaseItem, float fMax, float fMaxPassive, float fPreferred)
Override the max attack distance of ranged weapons.
void NWNX_Weapon_SetOption(int nOption, int nVal)
Set plugin options.
const int NWNX_WEAPON_OPT_GRTSPEC_DAM_BONUS
Greater Specialization Damage Bonus.
Definition: nwnx_weapon.nss:14
int NWNX_Weapon_GetWeaponFinesseSize(int nBaseItem)
Get required creature size for a weapon base item to be finessable.
void NWNX_Weapon_SetEpicWeaponFocusFeat(int nBaseItem, int nFeat)
Set a feat as epic weapon focus for a base item.
void NWNX_Weapon_SetWeaponImprovedCriticalFeat(int nBaseItem, int nFeat)
Set a feat as weapon improved critical for a base item.
void NWNX_Weapon_SetWeaponUnarmed(int nBaseItem)
Set weapon base item to be considered as unarmed for weapon finesse feat.
const int NWNX_WEAPON_SETDATA_DC_BYPASS
Set Devastating Critical Bypass.
Definition: nwnx_weapon.nss:21
void NWNX_Weapon_SetOneHalfStrength(object oWeapon, int nEnable, int bPersist=FALSE)
Sets weapon to gain .5 strength bonus.
void NWNX_Weapon_SetWeaponFinesseSize(int nBaseItem, int nSize)
Set required creature size for a weapon base item to be finessable.
const int NWNX_WEAPON_GETDATA_DC
Get Devastating Critical Data.
Definition: nwnx_weapon.nss:18
Devastating critical event data.
Definition: nwnx_weapon.nss:25
object oTarget
The target hit with a devastating critical.
Definition: nwnx_weapon.nss:27
object oWeapon
The weapon used to cause the event.
Definition: nwnx_weapon.nss:26
int nDamage
The damage points delivered.
Definition: nwnx_weapon.nss:28