QUOTE |
- Added the WAITUNTIL[,duration][,timeout][/condition][/spawngroup] keyword that holds spawning and triggering until a given time elapses or a given condition is satisfied. If called as "WAITUNTIL,duration" this essentially creates an empty spawn that will last for the specified duration in minutes. If called as "WAITUNTIL/condition" it will hold further spawning until the condition is satisfied. If called as "WAITUNTIL/condition/spawngroup" it will hold spawning until the condition is met, and then spawn the specified subgroup. The timeout can be used to add in a safety release to prevent indefinite blocking of spawning if a condition may never be met. If the duration is used in conjunction with a condition, then it will control the polling time (frequency with which the condition is checked). In general this keyword can be used to introduce simple delays into sequential spawning patterns or to pause spawning until a particular condition is met. An example is provided in the xmlextras file that shows how it can be used to spawn gumps and wait for responses. An important characteristic of WAITUNTIL is that the spawngroup will be spawned with the triggering information of the keyword. This allows for a series of spawns to be triggered once, with the triggering player information carried forward throughout all of them without any further retriggering. The xmlextras example provided is a good example of the application, where a player activates a series of gumps which are delivered only to that player, and the spawner is only triggered at the beginning of the series. |