This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | |||
triggers:oprog [2015/01/07 06:30] vodur |
— (current) | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== ObjProgs ====== | ||
- | Obj progs are attached in oedit with addoprog command. | ||
- | |||
- | Obj progs are always lua scripts. | ||
- | |||
- | ^Script Argument ^Type ^Note | | ||
- | |obj2 |[[:lua:obj:members|OBJ]] |see table | | ||
- | |ch1 |[[:lua:ch:members|CH]] |see table | | ||
- | |ch2 |[[:lua:ch:members|CH]] |see table | | ||
- | |trigger |string |see table | | ||
- | |trigtype |string |see table | | ||
- | |||
- | The actual object to which the script is attached can be referenced in the script through '**obj**' global variable (type [[:lua:obj:members|OBJ]]). | ||
- | |||
- | ^trigtype ^obj2 ^ch1 ^ch2 ^trigger ^type ^Description | | ||
- | |[[:triggers:oprog:give|give]]<nowiki>*</nowiki> |none |giver |receiver |none |number(%chance) | | | ||
- | |drop<nowiki>*</nowiki> |none |dropper |none |none |number(%chance) | | | ||
- | |eat<nowiki>*</nowiki> |none |eater |none |none |number(%chance) | | | ||
- | |drink<nowiki>*</nowiki> |none |drinker |none |none |number(%chance) | | | ||
- | |quaff<nowiki>*</nowiki> |none |eater |none |none |number(%chance) | | | ||
- | |sacrifice<nowiki>*</nowiki> |none |saccer |none |none |number(%chance) | | | ||
- | |wear<nowiki>*</nowiki> |none |wearer |none |none |number(%chance) | | | ||
- | |remove<nowiki>*</nowiki> |none |remover |none |none |number(%chance) | | | ||
- | |spell<nowiki>*</nowiki> |none |caster |none |spell name |string(spell name or <nowiki>*</nowiki>) |Triggers when the object itself is target of spell | | ||
- | |speech |none |speaker |none |full speech text |string(keyword or <nowiki>*</nowiki>) |If in inventory, fires on speech of character holding it, if in room, fires on speech of anyone in room | | ||
- | |try |none |tryer |none |full try text |string(phrase or <nowiki>*</nowiki>) |If in inventory, fires on try of character holding it, if in room, fires on try of anyone in room | | ||
- | |put<nowiki>*</nowiki> |container |putter |none |none |number(%chance) |oprog goes on the object that is being put, not a container. | | ||
- | |get<nowiki>*</nowiki> |container |getter |none |none |number(%chance) |oprog goes on the object that is being get, not a container. | | ||
- | |rand |none |none |none |none |number(%chance) |Checks every tick | | ||
- | |greet |none |ch |none |none |number(%chance) |No vis check | | ||
- | |[[:triggers:oprog:look|look]]<nowiki>*</nowiki> |none |looker |none |look argument |string(phrase or <nowiki>*</nowiki>) |Triggered on look or examine | | ||
- | |lore<nowiki>*</nowiki> |none |lorer |none |none |number(%chance) | | | ||
- | |enter<nowiki>*</nowiki> |none |enterer |none |none |number(%chance) |When player enters the object (portal) | | ||
- | |unlock<nowiki>*</nowiki> |none |unlocker |none |none |number(%chance) |When player unlocks an object (container only) | | ||
- | |open<nowiki>*</nowiki> |none |opener |none |none |number(%chance) |When player opens an object (container only) | | ||
- | |sit<nowiki>*</nowiki> |none |sitter |none |none |number(%chance) |When player sits on an object (furniture only) | | ||
- | |wake<nowiki>*</nowiki> |none |waker |none |none |number(%chance) |When a player wakes/stands from sitting/resting/sleeping on object (furniture only) | | ||
- | |fight |none |wearer |enemy |none |number(%chance) |Checked every round of a fight. Only checked for worn/wielded items. | | ||
- | |prehit<nowiki>*</nowiki> |none |hitter |victim |damage |number(%chance) |Checked on weapon before successful hit. | | ||
- | |hit |none |hitter |victim |none |number(%chance) |Checks on weapon after successful hit (and after other effects such as weapon flag, stance, behead, etc). | | ||
- | |[[:triggers:timer|timer]] |none |none |none |none |number(seconds interval) |Fires at an interval of x seconds (provided as phrase) | | ||
- | |||
- | |(<nowiki>*</nowiki>)If trigger fires, command is prevented from going through unless 'return true' in the script. | | ||
- | |||
- | \\ |