User Tools

Site Tools


building:scripts:events:variable_based

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
building:scripts:events:variable_based [2019/03/11 04:13]
Mavrixio
building:scripts:events:variable_based [2023/11/30 21:05] (current)
ItsABadger
Line 1: Line 1:
-====== Variable Based Events ======+====== ​PAGE INFO ALREADY TRANSFERRED TO THE NEW WIKI - Variable Based Events ======
 Those events will run only run for a specific object so they are optimal and should be your preferred way to register an event. Those events will run only run for a specific object so they are optimal and should be your preferred way to register an event.
  
Line 16: Line 16:
 void UnregisterVariableEvent(object oObject, string sEvent, string sScript); void UnregisterVariableEvent(object oObject, string sEvent, string sScript);
 </​code>​ </​code>​
 +
 +===== Accessing the Parameters =====
 +  - The registered scripts will run in the same context as the calling script so for example: EVENT_USE is called by [[https://​nwn.sinfar.net/​res_nss_edit.php?​name=pc_ev_useitem|pc_ev_useitem]] so you can still get the item with GetEventParamObject(0).
 +  - A variable event can also have its own parameters, they can be accessed with the following functions: <​code>​
 +array GetCurrentVariableEventParams();​
 +</​code>​
 +  - You can get the object on which the variable event was registered (it may not be the caller) and the currently running variable event (in case that you decide to register the same script to many events) with the following functions: <​code>​object GetCurrentVariableEventTarget();​
 +string GetCurrentVariableEvent();</​code> ​
 +
 +===== Creating / Running a Variable Based Event =====
 +You can trigger a variable event on an object by calling one of those functions:
 +<​code>​
 +int RunVariableEvent(object oObject, string sEvent);
 +int RunVariableEventWithParams(object oObject, string sEvent, array aParams);
 +</​code>​
 +They will return TRUE if the BypassVariableEvent() was calling during the execution of one of the registered scripts.
 +
  
  
building/scripts/events/variable_based.1552277588.txt.gz ยท Last modified: 2019/03/11 04:13 by Mavrixio

phpBB Appliance - Powered by TurnKey Linux