EVENT
Command: #event {event type} {commands}
Events allow you to create triggers for predetermined client events.
Use #event without an argument to see a list of possible events with
a brief description. Use #event %* to see the current list of defined
events. Use #info {events} {on} to see events get thrown.
Events, like triggers in general, are case sensitive and event names
must be defined using all upper case letters. Only one event can be
defined for each event type.
To enable mouse events use #config mouse_tracking on, to see mouse
events use #config mouse_tracking info.
CATCH EVENTS
CATCH <EVENT>
Some events can be prefixed with CATCH to interrupt default
behavior.
CLASS EVENTS
CLASS ACTIVATED [CLASS], CLASS_CLEAR [CLASS], CLASS CREATED [CLASS],
CLASS DEACTIVATED [CLASS], CLASS DESTROYED [CLASS],
CLASS_LOAD [CLASS]
%0 class name
GAG EVENTS
GAG <EVENT>
Some events can be prefixed with GAG to gag default system
messages.
INPUT EVENTS
EDIT STARTED, EDIT FINISHED
%0 name %1 lines %2 size %3 data
HISTORY UPDATE
%0 command
RECEIVED KEYPRESS, PROCESSED KEYPRESS
%0 character %1 unicode index %2 edit row %3 edit column
RECEIVED INPUT [NAME]
%0 raw text
RECEIVED INPUT CHARACTER
%0 character %1 unicode index %2 size %3 width
NO SESSION ACTIVE %0 raw text %1 size
SEND OUTPUT %0 raw text %1 size
SENT OUTPUT %0 raw text %1 size
MAP EVENTS
END OF PATH, END OF RUN, MAP UPDATED VTMAP
These events have no additional arguments.
MAP CREATE EXIT, MAP DELETE EXIT
%0 vnum %1 exit name %2 exit cmd %3 exit vnum
MAP CREATE ROOM, MAP DELETE ROOM
%0 vnum %1 name
MAP ENTER MAP, MAP EXIT MAP
%0 vnum
MAP ENTER ROOM [VNUM]
%0 new vnum %1 old vnum %2 direction
MAP EXIT ROOM [VNUM]
%0 old vnum %1 new vnum %2 direction
MAP FOLLOW MAP
%0 old vnum %1 new vnum %2 exit name
MAP REGION <MOUSE>, MAP ROOM <MOUSE>
%0 row %1 col %2 -row %3 -col %5 vnum %6 info
MOUSE EVENTS
DOUBLE-CLICKED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
LONG-CLICKED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
MOVED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
PRESSED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
SHORT-CLICKED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
RELEASED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
SCROLLED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
TRIPLE-CLICKED <MOUSE> %0 row %1 col %2 -row %3 -col %4 word %5 line
MAP <MOUSE EVENT>
Mouse events can be prefixed with MAP to only trigger when the mouse
event occurs inside the VT100 map region.
SWIPED [DIR]
%0 dir %1 button %2 row %3 col %4 -row %5 -col
%6 row %7 col %8 -row %9 -col %10 rows %11 cols
OUTPUT EVENTS
BUFFER UPDATE, DISPLAY UPDATE
These events have no additional arguments.
PROCESSED LINE %0 raw text %1 plain text %2 prompt (0 or 1)
RECEIVED LINE %0 raw text %1 plain text
RECEIVED OUTPUT %0 raw text %1 plain text
RECEIVED PROMPT %0 raw text %1 plain text
PORT EVENTS
CHAT MESSAGE, PORT MESSAGE
%0 raw text %1 plain text
PORT CONNECTION %0 name %1 ip %2 port
PORT DISCONNECTION %0 name %1 ip %2 port
PORT LOG MESSAGE %0 name %1 ip %2 port %3 data %4 plain data
PORT RECEIVED MESSAGE %0 name %1 ip %2 port %3 data %4 plain data
PORT RECEIVED DATA %0 name %1 ip %2 port %3 data %4 size
SCAN EVENTS
SCAN CSV HEADER %0 all args %1 arg1 %2 arg2 .. %99 arg99
SCAN CSV LINE %0 all args %1 arg1 %2 arg3 .. %99 arg99
SCAN TSV HEADER %0 all args %1 arg1 %2 arg3 .. %99 arg99
SCAN TSV LINE %0 all args %1 arg1 %2 arg3 .. %99 arg99
SCREEN EVENTS
SCREEN DIMENSIONS %0 height %1 width
SCREEN FOCUS %0 focus (0 or 1)
SCREEN LOCATION %0 rows %1 cols %2 height %3 width
SCREEN MOUSE LOCATION
%0 row %1 col %2 -row %3 -col %4 pix row %5 pix col
%6 -pix row %7 -pix col %8 location
SCREEN RESIZE %0 rows %1 cols %2 height %3 width
SCREEN SIZE %0 rows %1 cols
SCREEN SPLIT %0 top row %1 top col %2 bot row %3 bot col
SCREEN UNSPLIT %0 top row %1 top col %2 bot row %3 bot col
SESSION EVENTS
SESSION ACTIVATED %0 name
SESSION CONNECTED %0 name %1 host %2 ip %3 port %4 file
SESSION CREATED %0 name %1 host %2 ip %3 port %4 file
SESSION DEACTIVATED %0 name
SESSION DISCONNECTED %0 name %1 host %2 ip %3 port
SESSION TIMED OUT %0 name %1 host %2 ip %3 port
SYSTEM EVENTS
CONFIG %0 name %1 value
DAEMON ATTACH TIMEOUT %0 file %1 pid
DAEMON ATTACHED %0 file %1 pid
DAEMON DETACHED %0 file %1 pid
PROGRAM START %0 startup arguments
PROGRAM TERMINATION %0 goodbye message
READ ERROR %0 filename %1 error message
READ FILE %0 filename
WRITE ERROR %0 filename %1 error message
WRITE FILE %0 filename
SYSTEM CRASH %0 message
SYSTEM ERROR %0 name %1 system msg %2 error %3 error msg
UNKNOWN COMMAND %0 raw text
SIGUSR %0 signal
REFORMAT <MESSAGE> Use #return to change MESSAGE
TELNET EVENTS
IAC <EVENT>
IAC TELNET events are made visible using #config telnet info.
IAC SB GMCP %0 module %1 data %2 plain data
IAC SB GMCP <MODULE> %1 data %2 plain data
IAC SB MSSP %0 variable %1 data
IAC SB MSDP %0 variable %1 data %2 plain data
IAC SB MSDP [VAR] %0 variable %1 data %2 plain data
IAC SB NEW-ENVIRON %0 variable %1 data %2 plain data
IAC SB ZMP <VAR> %0 variable %1 data
IAC SB <VAR> %0 variable %1 raw data %2 plain data
TIME EVENTS
DATE <MONTH-DAY OF MONTH> [HOUR:MINUTE], DAY [DAY OF MONTH],
HOUR [HOUR], MONTH [DAY OF MONTH], TIME <HOUR:MINUTE>[:SECOND],
WEEK [DAY OF WEEK], YEAR [YEAR]
%0 year %1 month %2 day of week %3 day of month %4 hour
%5 minute %6 second
VARIABLE EVENTS
VARIABLE UPDATE <VAR> %0 name %1 new value %2 path
VARIABLE UPDATED <VAR> %0 name %1 new value %2 path
VT100 EVENTS
VT100 SCROLL REGION %0 top row %1 bot row %2 rows %3 cols %4 wrap
To see all events trigger use #info event on. Since this can get
rather spammy it's possible to gag event info messages.
Example: #event {SESSION CONNECTED} {#read mychar.tin}
Comment: You can remove an event with the #unevent command.
Related: button, delay and ticker.
|