Keyboard input hook
Brought to you by:
kenkeys
I'd like to request the addition of a "keyboard input hook". This allows a number of things, for example to disconnect from the mud after X mins of inactivity, regardless of trigger firing or /repeat's running. just /hook KEYBINPUT = /repeat -X 1 /dc. Other examples would include checking the status of and recasting various protection spells etc only when keyboard input is detected. This is highly useful on mud where bots are frowned upon.
Here's the code modifications needed:
In hooklist.h add:
gencode(KEYBINPUT,0),
In keyboard.c add:
do_hook(H_KEYBINPUT,NULL,"%d",1);
just before the return of the "handle_input_line" function.
Sorry just realized the example I gave had a bit of a glaring error. Here's what I really wanted the example to look like:
/hook KEYBINPUT = /qrepeat KEYBINPUTHOOK -1200 1 /dc
where /qrepeat is defined as:
; queued /repeat:
; /qrepeat <QueueName> -<seconds> <#> <command>
/def qrepeat = \ /eval /kill %%{qrpid_%1} %;\ /eval /repeat %{2} %{3} %{-3} %;\ /eval /set qrpid_%1 %?