/* // File : guide.c // Purpose : Hypertext LPC and general tmi-2 mud wizard guide // 93-09-17 : Written by Douglas Reay (Pallando @ TMI-2) */ #include <guide.h> inherit "/std/hypertext"; string datafile() { return GUIDE_DATA; } varargs int valid_write( string arg ) { return 0; } void write_prompt() { if( index && mapp( data[index] ) && mapp( data[index]["links"] ) && stringp( data[index]["links"]["default"] ) ) printf( "(%s) Guide (%s): ", index, data[index]["links"]["default"] ); else printf( "(%s) Guide (home): ", index ); } void extra_create() { set( "id", ({ "guide" }) ); set( "name", "guide" ); options = ([ "h" : "option_h", "i" : "option_i", "items" : "option_i", "list" : "option_i", "l" : "option_l", "link" : "option_l", "links" : "option_l", "p" : "option_p", "hist" : "option_p", "history" : "option_p", "q" : "option_q", "quit" : "option_q", "r" : "option_r", "read" : "option_r", ]); set( "help/options", @EndText HELP PAGE HELP PAGE Help on interactive hypertext options Item - a piece of text Index - the string by which an item is known, shown in (). Eg (glossary.MUD) Link - the string you type when at one item to go to another, shown in {}. Eg {MUD} Option - single character commands that work at any item h - help (this message) q - quit l - link (lists the links from the current item) i - index (lists all items by their indexes) ( 'i <pattern>' - lists indexes matching <pattern> ) p - previous items (lists the indexes of previous items you have seen) ( 'p 1' - goes to the last item you saw ) r (index) - read item (index) (index) - does the same as 'r (index)' EndText ); } void create() { ::create(); set( "attached", 1 ); set( "start", "guide" ); set( "short", 0 ); // invisible set( "long", "" ); set( "default", "home" ); extra_create(); } varargs int option_q( string arg ) { call_out( "remove", 0 ); this_player()-> set( "guide_index", index ); return ::option_q( arg ); } /* EOF */