inherit WWW_BASE;
#define FILE(X) read_file(__DIR__+"lpc/"+X+"/chapter"+\
args["chapter"]+".html")
private string get_content( string, mapping args );
void setup() {
set_title( mud_name()+" - LPC Manual");
set_content( (: get_content :) );
} /* setup() */
/** ignore yes */
private varargs string copyright( int y ) {
return "<hr size=\"1\">\n"
"<address>\n"
"Copyright © "+( y ? y+" ": "")+
"<a href=\"http://www.imaginary.com/~borg\">\n"
"George Reese</a> (<a href=\"mailto:borg@imaginary.com\">"
"borg@imaginary.com</a>)\n"
"</address>\n"
"<hr size=\"1\">\n";
} /* copyright() */
/** @ignore yes */
private string get_content( string, mapping args ) {
if( mapp(args) && sizeof(args) ) {
switch( args["content"] ) {
case "basic" :
if( !args["chapter"] )
return font()+"<h3>LPC Basics</h3>\n"
"<p><strong>Written by Descartes of Borg - "
"23 April 1993.</strong></p>\n"
"<ul>\n"
"<li><a href=\"lpc.c?content=basic&chapter=0\">"
"Introduction</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=1\">"
"Chapter 1: Introduction to the Coding Environment</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=2\">"
"Chapter 2: The LPC Program</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=3\">"
"Chapter 3: LPC Data Types</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=4\">"
"Chapter 4: Functions</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=5\">"
"Chapter 5: The Basics of Inheritance</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=6\">"
"Chapter 6: Variable Handling</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=7\">"
"Chapter 7: Flow Control</a>\n"
"<li><a href=\"lpc.c?content=basic&chapter=8\">"
"Chapter 8: The Data Type Object</a></ul>\n"+
copyright(1993)+
"<p><a href=\"lpc.c\">Back to LPC Manual Contents</a>"
"</p></font>\n";
return font()+FILE("basic")+copyright(1993)+
"<p><a href=\"lpc.c?content=basic\">"
"Back to Basic LPC Manual Contents</a>\n"
"</p></font>\n";
case "intermediate" :
if( !args["chapter"] )
return font()+"<h3>Intermediate LPC</h3>\n"
"<p><strong>Written by Descartes of Borg - "
"November 1993.</strong></p>\n"
"<ul>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=1\">"
"Chapter 1: Introduction</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=2\">"
"Chapter 2: The LPMud Driver</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=3\">"
"Chapter 3: Complex Data Types</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=4\">"
"Chapter 4: The LPC Pre-Compiler</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=5\">"
"Chapter 5: Advanced String Handling</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=6\">"
"Chapter 6: Intermediate Inheritance</a>\n"
"<li><a href=\"lpc.c?content=intermediate&chapter=7\">"
"Chapter 7: Debugging</a></ul>\n"+
copyright(1993)+
"<p><a href=\"lpc.c\">Back to LPC Manual Contents</a>"
"</p></font>\n";
return font()+"<p>Intermediate LPC<br>\n"
"Descartes of Borg<br>\n"
"November 1993</p>\n"+FILE("intermediate")+copyright(1993)+
"<p><a href=\"lpc.c?content=intermediate\">"
"Back to Intermediate LPC Manual Contents</a>\n"
"</p></font>\n";
case "advanced" :
if( !args["chapter"] )
return font()+"<h3>Advanced LPC</h3>\n"
"<p><strong>Written by Descartes of Borg.</strong></p>\n"
"<ul>\n"
"<li><a href=\"lpc.c?content=advanced&chapter=1\">"
"Chapter 1: Introduction</a>\n"
"<li><a href=\"lpc.c?content=advanced&chapter=2\">"
"Chapter 2: Driver/Mudlib Interaction</a></ul>\n"+
copyright(1995)+
"<p><a href=\"lpc.c\">Back to LPC Manual Contents</a>"
"</p></font>\n";
return font()+FILE("advanced")+copyright(1995)+
"<p><a href=\"lpc.c?content=advanced\">"
"Back to Advanced LPC Manual Contents</a>\n"
"</p></font>\n";
default :
}
}
return font()+"<h3>LPC Manuals</h3>\n"
"<ul>\n"
"<li><a href=\"lpc.c?content=basic\">Basic Manual</a><br>\n"
"<li><a href=\"lpc.c?content=intermediate\">Intermediate Manual</a><br>\n"
"<li><a href=\"lpc.c?content=advanced\">Advanced Manual</a>\n"
"</ul>\n"+copyright()+
"<p><a href=\"secure.c\">Back to the Secure Section</a>"
"</p></font>\n";
} /* get_content() */