NWNX:EE  8193.37.14
nwnx_encounter.nss
Go to the documentation of this file.
1 
6 const string NWNX_Encounter = "NWNX_Encounter";
7 
10 {
11  string resref;
13  int unique;
14  int alreadyUsed; //< Creature has already been used.
15 };
16 
19 void NWNX_Encounter_Destroy(object encounter);
20 
25 
31 
36 void NWNX_Encounter_SetEncounterCreatureByIndex(object encounter, int index, struct NWNX_Encounter_CreatureListEntry creatureEntry);
37 
41 int NWNX_Encounter_GetFactionId(object encounter);
42 
46 void NWNX_Encounter_SetFactionId(object encounter, int factionId);
47 
51 int NWNX_Encounter_GetPlayerTriggeredOnly(object encounter);
52 
56 void NWNX_Encounter_SetPlayerTriggeredOnly(object encounter, int playerTriggeredOnly);
57 
61 int NWNX_Encounter_GetCanReset(object encounter);
62 
66 void NWNX_Encounter_SetCanReset(object encounter, int reset);
67 
71 int NWNX_Encounter_GetResetTime(object encounter);
72 
76 void NWNX_Encounter_SetResetTime(object encounter, int resetTime);
77 
81 int NWNX_Encounter_GetNumberOfSpawnPoints(object encounter);
82 
87 location NWNX_Encounter_GetSpawnPointByIndex(object encounter, int index);
88 
92 int NWNX_Encounter_GetMinNumSpawned(object encounter);
93 
97 int NWNX_Encounter_GetMaxNumSpawned(object encounter);
98 
102 int NWNX_Encounter_GetCurrentNumSpawned(object encounter);
103 
107 string NWNX_Encounter_GetGeometry(object oEncounter);
108 
118 void NWNX_Encounter_SetGeometry(object oTrigger, string sGeometry);
119 
121 
122 void NWNX_Encounter_Destroy(object encounter)
123 {
124  NWNXPushObject(encounter);
125  NWNXCall(NWNX_Encounter, "Destroy");
126 }
127 
129 {
130  NWNXPushObject(encounter);
131  NWNXCall(NWNX_Encounter, "GetNumberOfCreaturesInEncounterList");
132  return NWNXPopInt();
133 }
134 
136 {
137  struct NWNX_Encounter_CreatureListEntry creatureEntry;
138  NWNXPushInt(index);
139  NWNXPushObject(encounter);
140  NWNXCall(NWNX_Encounter, "GetEncounterCreatureByIndex");
141  creatureEntry.alreadyUsed = NWNXPopInt();
142  creatureEntry.unique = NWNXPopInt();
143  creatureEntry.challengeRating = NWNXPopFloat();
144  creatureEntry.resref = NWNXPopString();
145  return creatureEntry;
146 }
147 
148 void NWNX_Encounter_SetEncounterCreatureByIndex(object encounter, int index, struct NWNX_Encounter_CreatureListEntry creatureEntry)
149 {
150  NWNXPushInt(creatureEntry.alreadyUsed);
151  NWNXPushInt(creatureEntry.unique);
152  NWNXPushFloat(creatureEntry.challengeRating);
153  NWNXPushString(creatureEntry.resref);
154  NWNXPushInt(index);
155  NWNXPushObject(encounter);
156  NWNXCall(NWNX_Encounter, "SetEncounterCreatureByIndex");
157 }
158 
159 int NWNX_Encounter_GetFactionId(object encounter)
160 {
161  NWNXPushObject(encounter);
162  NWNXCall(NWNX_Encounter, "GetFactionId");
163  return NWNXPopInt();
164 }
165 
166 void NWNX_Encounter_SetFactionId(object encounter, int factionId)
167 {
168  NWNXPushInt(factionId);
169  NWNXPushObject(encounter);
170  NWNXCall(NWNX_Encounter, "SetFactionId");
171 }
172 
174 {
175  NWNXPushObject(encounter);
176  NWNXCall(NWNX_Encounter, "GetPlayerTriggeredOnly");
177  return NWNXPopInt();
178 }
179 
180 void NWNX_Encounter_SetPlayerTriggeredOnly(object encounter, int playerTriggeredOnly)
181 {
182 
183  NWNXPushInt(playerTriggeredOnly);
184  NWNXPushObject(encounter);
185  NWNXCall(NWNX_Encounter, "SetPlayerTriggeredOnly");
186 }
187 
188 int NWNX_Encounter_GetCanReset(object encounter)
189 {
190  NWNXPushObject(encounter);
191  NWNXCall(NWNX_Encounter, "GetCanReset");
192  return NWNXPopInt();
193 }
194 
195 void NWNX_Encounter_SetCanReset(object encounter, int reset)
196 {
197  NWNXPushInt(reset);
198  NWNXPushObject(encounter);
199  NWNXCall(NWNX_Encounter, "SetCanReset");
200 }
201 
202 int NWNX_Encounter_GetResetTime(object encounter)
203 {
204  NWNXPushObject(encounter);
205  NWNXCall(NWNX_Encounter, "GetResetTime");
206  return NWNXPopInt();
207 }
208 
209 void NWNX_Encounter_SetResetTime(object encounter, int resetTime)
210 {
211  NWNXPushInt(resetTime);
212  NWNXPushObject(encounter);
213  NWNXCall(NWNX_Encounter, "SetResetTime");
214 }
215 
217 {
218  NWNXPushObject(encounter);
219  NWNXCall(NWNX_Encounter, "GetNumberOfSpawnPoints");
220  return NWNXPopInt();
221 }
222 
223 location NWNX_Encounter_GetSpawnPointByIndex(object encounter, int index)
224 {
225  NWNXPushInt(index);
226  NWNXPushObject(encounter);
227  NWNXCall(NWNX_Encounter, "GetSpawnPointByIndex");
228  float fOrientation = NWNXPopFloat();
229  vector vPosition = NWNXPopVector();
230  return Location(GetArea(encounter), vPosition, fOrientation);
231 }
232 
233 int NWNX_Encounter_GetMinNumSpawned(object encounter)
234 {
235  NWNXPushObject(encounter);
236  NWNXCall(NWNX_Encounter, "GetMinNumSpawned");
237  return NWNXPopInt();
238 }
239 
240 int NWNX_Encounter_GetMaxNumSpawned(object encounter)
241 {
242  NWNXPushObject(encounter);
243  NWNXCall(NWNX_Encounter, "GetMaxNumSpawned");
244  return NWNXPopInt();
245 }
246 
248 {
249  NWNXPushObject(encounter);
250  NWNXCall(NWNX_Encounter, "GetCurrentNumSpawned");
251  return NWNXPopInt();
252 }
253 
254 string NWNX_Encounter_GetGeometry(object oEncounter)
255 {
256  NWNXPushObject(oEncounter);
257  NWNXCall(NWNX_Encounter, "GetGeometry");
258  return NWNXPopString();
259 }
260 
261 void NWNX_Encounter_SetGeometry(object oEncounter, string sGeometry)
262 {
263  NWNXPushString(sGeometry);
264  NWNXPushObject(oEncounter);
265  NWNXCall(NWNX_Encounter, "SetGeometry");
266 }
void NWNX_Encounter_SetResetTime(object encounter, int resetTime)
Set the reset time of encounter.
int NWNX_Encounter_GetCurrentNumSpawned(object encounter)
Get the current number of creatures that are spawned and alive.
int NWNX_Encounter_GetCanReset(object encounter)
Get if the encounter respawns or not.
int NWNX_Encounter_GetPlayerTriggeredOnly(object encounter)
Get if encounter is player triggered only.
int NWNX_Encounter_GetNumberOfCreaturesInEncounterList(object encounter)
Get the number of creatures in the encounter list.
int NWNX_Encounter_GetFactionId(object encounter)
Get the faction id of encounter.
void NWNX_Encounter_Destroy(object encounter)
Immediately destroys the specified encounter object.
int NWNX_Encounter_GetMinNumSpawned(object encounter)
Get the minimum amount of creatures that encounter will spawn.
struct NWNX_Encounter_CreatureListEntry NWNX_Encounter_GetEncounterCreatureByIndex(object encounter, int index)
Gets the encounter creature list entry at the specified index.
int NWNX_Encounter_GetNumberOfSpawnPoints(object encounter)
Get the number of spawn points of encounter.
void NWNX_Encounter_SetGeometry(object oTrigger, string sGeometry)
Set the geometry of an encounter with a list of vertex positions.
void NWNX_Encounter_SetPlayerTriggeredOnly(object encounter, int playerTriggeredOnly)
Set if encounter is player triggered only.
int NWNX_Encounter_GetResetTime(object encounter)
Get the reset time of encounter.
void NWNX_Encounter_SetEncounterCreatureByIndex(object encounter, int index, struct NWNX_Encounter_CreatureListEntry creatureEntry)
Set the encounter creature list entry at the specified index.
location NWNX_Encounter_GetSpawnPointByIndex(object encounter, int index)
Gets the spawn point list entry at the specified index.
void NWNX_Encounter_SetCanReset(object encounter, int reset)
Set if the encounter respawns or not.
void NWNX_Encounter_SetFactionId(object encounter, int factionId)
Set the faction id of encounter.
int NWNX_Encounter_GetMaxNumSpawned(object encounter)
Get the maximum amount of creatures that encounter will spawn.
string NWNX_Encounter_GetGeometry(object oEncounter)
Get the geometry of an encounter.
A creature list entry for an encounter.
float challengeRating
The challenge rating.
int unique
Creature will be unique to the encounter.