Difference between revisions of "DSB/Messages"

From DmWiki
Jump to navigationJump to search
(New page: Base messages as defined by DSB and used in ESB are the following: * Activate (M_ACTIVATE) - Enables instances, opens pits, closes doors, triggers generators, etc. * Deactivate (M_DEACTIVA...)
 
 
(2 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
* Toggle (M_TOGGLE) - Enables a disabled instance and disables an enabled one.
 
* Toggle (M_TOGGLE) - Enables a disabled instance and disables an enabled one.
 
* Next Tick (M_NEXTTICK) - Tells instances to proceed. Makes doors continue to open and close, monster generators re-enable, etc.
 
* Next Tick (M_NEXTTICK) - Tells instances to proceed. Makes doors continue to open and close, monster generators re-enable, etc.
 +
* Expire (M_EXPIRE) - Triggers an <b>on_expire</b> event, or simply destroys the instance if there is no such event.
 
* Clean Up (M_CLEANUP) - Deletes the targeted instance from the target list of all instances in the dungeon.
 
* Clean Up (M_CLEANUP) - Deletes the targeted instance from the target list of all instances in the dungeon.
 
* Reset Counter (M_RESET) - Sets a counter back to its default value.
 
* Reset Counter (M_RESET) - Sets a counter back to its default value.
 
* Destroy (M_DESTROY) - Removes the instance from the dungeon. This can cause Lua errors if triggers etc. target it and it isn't sent a Clean Up first.
 
* Destroy (M_DESTROY) - Removes the instance from the dungeon. This can cause Lua errors if triggers etc. target it and it isn't sent a Clean Up first.
 +
Define new messages with <b>dsb_add_msgtype</b>.
 +
 +
There is also a special set of messages that can be sent to the special target SYSTEM, either from <b>dsb_msg</b> or from a msgzone.
 +
 +
They take some extra parameters, which can be either sent as data with the msg, or added as parameters to the call to <b>dsb_msgzone</b>.
 +
(i.e., this special case of <b>dsb_msgzone</b> takes 10 parameters instead of the usual 8)
 +
The extra parameters are noted after the name of the system message. If a 0 is listed, just pass 0.
 +
 +
* SYS_MAGIC_PPOS (ppos, 0) = Sets the currently displayed spellcaster to the specified ppos.
 +
* SYS_MAGIC_RUNE (ppos, rune_number) = Stores the specified rune into the specified ppos's pending spell.
 +
* SYS_MAGIC_BACK (ppos, 0) = Deletes the last rune from the specified ppos's pending spell.
 +
* SYS_MAGIC_CAST (ppos, 0) = Casts the current spell for the specified ppos. Does a bit of internal processing and then calls <b>sys_spell_cast</b>.
 +
* SYS_METHOD_OBJ (ppos, location) = Shows the attack method dialogue for a given ppos from a given location
 +
* SYS_METHOD_SEL (inst, method) = Selects the given attack method for the given instance. (Note: Currently, if the method was not first popped up via * SYS_METHOD_OBJ, this will do nothing.)
 +
* SYS_METHOD_CLEAR (ppos, 0) = Clears the attack method for the given ppos.
  
Define new messages with <b>dsb_add_msgtype</b>.
+
 
 +
[[Category:DSB|Messages]]

Latest revision as of 23:05, 13 November 2012

Base messages as defined by DSB and used in ESB are the following:

  • Activate (M_ACTIVATE) - Enables instances, opens pits, closes doors, triggers generators, etc.
  • Deactivate (M_DEACTIVATE) - Disables instances, closes pits, opens doors, etc.
  • Toggle (M_TOGGLE) - Enables a disabled instance and disables an enabled one.
  • Next Tick (M_NEXTTICK) - Tells instances to proceed. Makes doors continue to open and close, monster generators re-enable, etc.
  • Expire (M_EXPIRE) - Triggers an on_expire event, or simply destroys the instance if there is no such event.
  • Clean Up (M_CLEANUP) - Deletes the targeted instance from the target list of all instances in the dungeon.
  • Reset Counter (M_RESET) - Sets a counter back to its default value.
  • Destroy (M_DESTROY) - Removes the instance from the dungeon. This can cause Lua errors if triggers etc. target it and it isn't sent a Clean Up first.

Define new messages with dsb_add_msgtype.

There is also a special set of messages that can be sent to the special target SYSTEM, either from dsb_msg or from a msgzone.

They take some extra parameters, which can be either sent as data with the msg, or added as parameters to the call to dsb_msgzone. (i.e., this special case of dsb_msgzone takes 10 parameters instead of the usual 8) The extra parameters are noted after the name of the system message. If a 0 is listed, just pass 0.

  • SYS_MAGIC_PPOS (ppos, 0) = Sets the currently displayed spellcaster to the specified ppos.
  • SYS_MAGIC_RUNE (ppos, rune_number) = Stores the specified rune into the specified ppos's pending spell.
  • SYS_MAGIC_BACK (ppos, 0) = Deletes the last rune from the specified ppos's pending spell.
  • SYS_MAGIC_CAST (ppos, 0) = Casts the current spell for the specified ppos. Does a bit of internal processing and then calls sys_spell_cast.
  • SYS_METHOD_OBJ (ppos, location) = Shows the attack method dialogue for a given ppos from a given location
  • SYS_METHOD_SEL (inst, method) = Selects the given attack method for the given instance. (Note: Currently, if the method was not first popped up via * SYS_METHOD_OBJ, this will do nothing.)
  • SYS_METHOD_CLEAR (ppos, 0) = Clears the attack method for the given ppos.