Difference between revisions of "DelayEvent"
From Dragon Age Toolset Wiki
BryanDerksen (Talk | contribs) (a fancied up and trimmed down version of the heartbeat example. Works for everyone?) |
m (→Remarks) |
||
Line 30: | Line 30: | ||
== Remarks == | == Remarks == | ||
<!-- This section contains additional comments, observations and known issues. --> | <!-- This section contains additional comments, observations and known issues. --> | ||
− | With a negative or zero time in fSeconds, the event will run on the next AI update. | + | With a negative or zero time in fSeconds, the event will run on the next AI update. |
+ | |||
+ | The <code>scriptname</code> parameter does not work for an [[area]]. | ||
== Examples == | == Examples == |
Revision as of 22:28, 8 December 2009
Signals a delayed event to the specified object.
- Parameters:
- fSeconds
- The number of seconds for which to delay the event
- oObject
- The object to signal the event to
- evEvent
- The event to signal
- scriptname
- If specified overides the default script
- Returns:
- Nothing.
- Source:
- script.ldf
Description
Signals a delayed event to the target object.
Remarks
With a negative or zero time in fSeconds, the event will run on the next AI update.
The scriptname
parameter does not work for an area.
Examples
This function can be used to create a "heartbeat" event that is sent to a script at regular intervals. For example, if you created the following script named "event_heartbeat":
#include "utility_h" #include "wrappers_h" #include "events_h" void main() { event ev = GetCurrentEvent(); int nEventType = GetEventType(ev); //extract event type from current event switch(nEventType) { case EVENT_TYPE_HEARTBEAT: { //Insert whatever code you need to execute on heartbeats here DelayEvent(6.0f, GetHero(), Event(EVENT_TYPE_HEARTBEAT), "event_heartbeat"); break; } } }
This event would fire every six seconds. To associate a heartbeat with a particular creature you can use that creature's event-handling script and omit the scriptname parameter.