Difference between revisions of "Begin"
Jump to navigation
Jump to search
imported>Quarn |
imported>Zumbs (added description for OnGrab and OnRelease) |
||
Line 88: | Line 88: | ||
|[[OnGrab]] | |[[OnGrab]] | ||
| | | | ||
| | | Run once when the scripted object is grabbed by the player | ||
|- | |- | ||
|[[OnRelease]] | |[[OnRelease]] | ||
| | | | ||
| | | Run once when the scripted object is released from player grab | ||
|- | |- | ||
|[[OnReset]] | |[[OnReset]] |
Revision as of 09:03, 19 September 2009
All script commands, except for variable declarations, must be inside a begin-end block. Each time the script runs, each block will be evaluated to see if it is valid. If not, the script inside the block will not be run.
Example:
begin GameMode
Blocktype | Parameters | Description |
---|---|---|
GameMode | This will be run every frame while the game is in non-menu mode. Most scripts will use this block type exclusively. | |
MenuMode | MenuType (optional) | Run every frame while the game is in menu mode. |
OnActivate | Run once when object is activated. | |
OnActorEquip | ObjectID | Run once when the scripted actor equips the specified object. |
OnActorUnequip | ObjectID | Run once when the scripted actor unequips the specified object. |
OnAdd | ContainerRefID (optional) | Run once when object is added to Container's inventory. |
OnCombatEnd | Run once when actor drops out of combat. | |
OnDeath | ActorID (optional) | Run once when actor is killed by ActorID |
OnDestructionStageChange | ||
OnDrop | ContainerRefID (optional) | Run once when object is dropped from Container. |
OnEquip | ActorID (optional) | Run once when object is equipped by ActorID. |
OnHit | ActorID (optional) | Run once when actor is hit by ActorID |
OnHitWith | ObjectID (optional) | Run once when actor is hit by weapon ObjectID |
OnLoad | Run once when object's 3D is loaded | |
OnMagicEffectHit | EffectID (optional) | Run once when the actor is hit by the specified magic effect |
OnMurder | ActorID (optional) | Run once when actor is murdered by ActorID |
OnPackageChange | PackageID | Run once when actor changes from specified package |
OnPackageDone | PackageID | Run once when actor completes specified package |
OnPackageStart | PackageID | Run once when actor starts specified package |
OnGrab | Run once when the scripted object is grabbed by the player | |
OnRelease | Run once when the scripted object is released from player grab | |
OnReset | Run once when scripted object's cell is reset | |
OnSell | SellerRefID (optional) | Run once when object is sold by specified seller |
OnStartCombat | TargetActorID (optional) | Run once when actor enters combat with TargetActorID |
OnTrigger | Run each frame something is triggering the object | |
OnTriggerEnter | TriggeringRefID (optional) | Run once when reference enters the trigger object |
OnTriggerLeave | TriggeringRefID (optional) | Run once when reference leaves the trigger object |
OnUnequip | ContainerRefID (optional) | Run once when object is unequipped by ActorID. |
OnOpen | Run once when the scripted container is opened. | |
OnClose | Run once when the scripted container is closed. | |
SayToDone | TopicID (optional) | Run once when actor finishes saying a line of dialogue. |
ScriptEffectStart | Special block type used only by Magic Effect scripts | |
ScriptEffectFinish | Special block type used only by Magic Effect scripts | |
ScriptEffectUpdate | Special block type used only by Magic Effect scripts |
Note that for parameterized blocks, you can have several of the same block type using different parameters. For example, this script is valid:
begin OnAdd ; some script ; this will run every time this object is added to someone's inventory end begin OnAdd player ; some script ; this will run every time this object is added to the player's inventory. ; Note that the unparameterized OnAdd block will ALSO be run in this case. end begin OnAdd MysteriousChest ; some script ; this will run every time this object is added to the MysteriousChest's inventory. ; Note that the unparameterized OnAdd block will ALSO be run in this case. end