#include <lib.h>
#include <daemons.h>
inherit LIB_ITEM;
string array chapters, globalheader;
string Title = "Generic Book";
string Source = "/obj/book_source";
static mapping BookItems = ([]);
static mapping BookReads = ([]);
string globalstr, globalstr2;
void LoadBook();
string ReadBook(mixed args...){
return BOOKS_D->GetBookRead(Source, args);
}
string ReadBookIndex(){
return BOOKS_D->GetBookIndex(Source);
}
void SetTitle(string title){
if(title) Title = title;
BOOKS_D->SetBookTitle(Source, title);
}
mixed GetTitle(){
return BOOKS_D->GetBookTitle(Source);
}
void SetSource(string source){
if(source && directory_exists(source)) Source = source;
}
string GetSource(){
if(Source) return Source;
else return "";
}
mixed *eventLoadChapters(){
return BOOKS_D->LoadChapters(Source);
}
string eventLoadIndex(){
return BOOKS_D->LoadIndex(Source);
}
void create(){
::create();
call_out( (: LoadBook :), 1);
SetDefaultRead("Try \"read chapter 1 in book\" or "
"\"read index in book\"");
}
void init(){
::init();
}
void LoadBook(){
mixed *map_array = this_object()->eventLoadChapters();
SetItems(map_array);
AddItem( "index", "This is a list of the chapters in this book.");
SetRead("index", (: ReadBookIndex :));
foreach(mixed key, mixed val in map_array){
SetRead(key, (: ReadBook :));
}
}