extern struct Object **ItemArray; extern tag NObs(void); extern char *emalloc(int); extern char *estralloc(char *); extern void TrashItem(tag); extern tag AddObject(void); extern tag AddRoom(void); extern tag AddPlayer(void); extern void SetName(tag,char *); extern void SetIOH(tag,int,char *); extern void SetLong(tag,char *); extern void SetState(tag,int); extern void SetMaxState(tag,int); extern void SetDesc(tag,int,char *); /* comtab.c */ extern char *CmTab[]; extern int ExecCmd(int); extern int strUcmp(char *,char *); extern int FindAction(char *); extern int li_pt; extern tag Li_Array[256]; extern tag *LinePtr[2048]; extern int tb_pt; extern int tb_num; extern int Num_Tables; extern int UStk; extern int ForStk; extern void Wipe_Table(void); extern void Load_Table(void); extern void Init_Table(int); extern void Set_Line(int); extern void Init_Line(void); extern void Write_Line(void); extern char *CompileItem(char *,tag); extern char *CompileMessage(char *,tag); extern char *CompileNumber(char *); extern void Compile_Word(tag); extern char *CompileAction(char *); extern int CompileLine(char *); extern int Compile_Table(FILE *,int,int); extern int LoadTables(FILE *,int); extern int LoadEachTable(FILE *,int); extern int LoadItemTables(FILE *,int); /* condact.c */ extern void C_Done(void),C_Ok(void),C_Msg(void); extern int Q_Get(void); extern void C_Drop(void),C_Place(void),C_Call(void),C_Ld(void); extern int Q_NumOf(void); extern void C_LdF(void),C_Print(void),C_LdO(void),C_LdR(void); extern void C_LdP(void),C_SetO(void),C_SetP(void),C_SetR(void); extern void C_Mul(void),C_Div(void),C_Add(void),C_Sub(void); extern void C_Set(void),C_Res(void),C_Inc(void),C_Dec(void),C_SetState(void); extern void C_DoAct(void),C_DoTo(void),C_Score(void),C_Look(void); extern void ChkCarried(tag); extern void C_DoLobj(void); extern void DoLobjl(tag); extern void C_Lobjs(void); extern void Lobs(tag); extern void C_PName(void),C_PDesc(void),C_PLong(void),C_JP(void),C_CR(void); extern void C_MsgCR(void); extern int Q_Z(void),Q_Eq(void),Q_Gt(void),Q_Lt(void),Q_At(void),Q_Is(void); extern int Q_Bit(void),Q_IsAt(void),Q_Here(void),Q_Pres(void),Q_Dark(void); extern int Q_State(void),Q_Chance(void),Q_OBit(void),Q_PBit(void),Q_RBit(void); extern int Q_CanSee(void),Q_Level(void),Q_Arch(void),Q_Called(void); extern int Q_Weighs(void),Q_CanPut(void),Q_Got(void); extern void C_Exit(void),C_Save(void); extern int Q_Neil(void); extern void C_GetWords(void),C_Parse(void),C_TabTo(void),C_Prompt(void); extern void C_AutoVerb(void); extern void C_Append(void); extern int Q_Type(void); extern int Q_NextMatch(void); extern int Q_NextGMatch(void); extern void C_Random(void); extern void C_PwChange(void); extern void C_PwForce(void); extern void C_MkPlayer(void); extern void C_MkRoom(void); extern void C_MkObject(void); extern void C_PCName(void); extern void C_MFormat(void); extern void FormErr(tag); extern int Q_Next(void); extern void C_Trash(void),C_SetDesc(void),C_SetMaxState(void),C_SetLong(void); extern void C_SetIOH(void),C_SetName(void),C_SetVocab(void),C_Length(void); extern void C_AddWord(void),C_FindWord(void),C_DelWord(void),C_Tod(void); extern void C_Fload(void),C_FSave(void); extern int SeekFor,SeekIdent; extern struct StackFrame *SysStack; extern void C_Do(void),C_For(void),C_EndFor(void),C_ForUser(void),C_EndUser(void); extern void C_Loop(void); extern int Q_DelFile(void),Q_FindStr(void),Q_SkipStr(void),Q_LoadU(void); extern int Q_SaveU(void),Q_SubStr(void); extern void C_Extract(void); extern void C_NumText(void); extern void C_WText(void); extern void C_FTrueName(void); extern void C_NewMsg(void); extern void C_DelMsg(void); extern FILE *Work_File; extern int Q_FOpen(void); extern void C_FClose(void); extern int Q_Fmove(void),Q_FRead(void),Q_FWrite(void); extern void C_Consult(void),C_AttachTable(void); extern char *f_tos(char *); /* data.c */ extern TABLE *Table; extern char **Messages; /* executiv.c */ extern tag SysFlags[256]; extern int CurTable,CurLine,CurStat; extern void ReportError(char *,int,int); extern void ReportLines(void); extern void MsgError(char *,int,char *); extern void GoSplat(void); extern struct StackFrame *StackContext(void); extern void RestoreContext(void); extern void ExecTable(int); extern int DoExecTable(TABLE,int); extern int ExecLine(LINE); extern void NextLineMove(int); extern int GetCLine(void); extern void SetCLine(int); extern tag Arg(void); extern char *TQuery(tag,char *,int); extern char *TQuery2(tag,char *,int,int); extern tag NQuery(tag,int,int); extern tag NQuery2(tag,int,int,int); extern void DoConsult(tag,int,int,int); /* finder.c */ extern tag FindIn(tag,int,int); extern tag FindAny(int,int); extern tag NextIn(tag,int,int,tag); extern tag NextAny(int,int,tag); /* function.c */ extern tag Me(void); extern void Tree_Unlink(tag); extern void Tree_Link(tag,tag); extern void MoveItem(tag,tag); extern int CheckRedraw(tag,int,int *); extern void MarkClean(tag); extern int ChkRedraw(void); extern void DoRedraw(void); extern int UsersActive(void); extern int Weight(tag); extern int WeightRec(tag,int); extern void PMsg(tag); extern void Does(tag,tag,int,tag); extern void DoesT(tag,char *,int,tag); extern char *MakeCName(tag); extern void DoesProcess(tag,char *,int,tag,tag); extern int CanPut(tag,tag); extern int PCanPut(ITEM,ITEM); extern int IsDarkFor(tag); extern int IsDark(tag,tag); extern void Exit_Player(tag); /* io.c */ extern void ReportInput(char *,tag); extern void UPrintf(char *,...); extern void TellUser(tag,char *,...); extern void Set_Tab(tag,int); #ifndef va_list #include <stdarg.h> #endif extern void SendIO(tag,char *,va_list); extern char *snoopof(char *); extern void ch_out(tag,char); extern void SendUser(tag,char *,char *,va_list); /* loader.c */ extern int Load_Database(char *,int); extern int Load_From_File(FILE *,int); extern char LineBuf[256]; extern int LineNumber; extern void ELine(void); extern void Push_File(FILE *); extern FILE *act_f; extern FILE *Pop_File(void); extern FILE *GetFP(void); extern char *GetLine(FILE *); extern int ArchID[16]; extern char *ArchName[16]; extern char GameName[32]; extern char *RFlagList[16]; extern char *OFlagList[16]; extern char *PFlagList[16]; extern int FindFlagListEntry(char *); extern int Load_ArchID(FILE *,int); extern int Load_ArchName(FILE *,int); extern int Load_GameName(FILE *,int); extern int LoadRFlag(FILE *,int); extern int LoadOFlag(FILE *,int); extern int LoadPFlag(FILE *,int); extern int LoadFlagSet(char **,FILE *,int,char *); extern int AllocWC(void); extern int LoadVocab(FILE *,int); /* loadmess.c */ extern tag msg_Next,msg_Limit; extern tag Next_Msg(void); extern int LoadMessage(FILE *,int); /* loadthin.c */ extern char *stpblk(char *); extern char *GetName(char *,char *); extern char *GetToken(char *,char *); extern char *Get_Block(char *,char *); extern char *ReadLongString(FILE *); extern int GetFlagLine(char *[]); extern int LoadOneRoom(FILE *,int); extern int LoadRoom(FILE *,int); extern int LoadOneObject(FILE *,int); extern int LoadObject(FILE *,int); extern int LoadOnePlayer(FILE *,int); extern int LoadPlayer(FILE *,int); extern int LoadExit(FILE *,int); extern void BuildFlagImage(FILE *,tag[],ITEM,int); extern int LoadConstants(FILE *); extern tag ResolveOConstant(char *,tag,int); extern tag ResolveConstant(char *); /* macro.c */ extern int mac_IsItem(tag); extern int mac_Valid(tag); extern void log_error(char *,...); extern struct Object *mac_Object(tag); extern struct Player *mac_Player(tag); extern struct Room *mac_Room(tag); extern tag VAL(tag); /* main.c */ extern void Time_Alert(void); extern void End_Limit(void); extern void Allow_Time(long); extern short Booted; /* names.c */ extern struct Word *NameList; extern void AddName(char *,tag,int); extern struct Word *FindName(char *,int); extern char *TrueName(tag); extern char *MsgName(int); extern void DelName(struct Word *); extern void Push_Resolution(tag,int,char *); extern void ResolveReferences(void); /* netdrive.c */ extern USER UserArray[MAXU]; extern int Bind_To_Server(void); extern void Exec_Packet_Response(void); extern void KillConnection(tag); extern void Connect(PACKET *); extern void Do_Connection(int); extern void Disconnect(PACKET *); extern void Do_Disconnect(tag); extern void Command(PACKET *); extern void Do_Net_Driver(tag,char *); extern void Create_Player(tag,PACKET *); extern int Check_PW(tag,PACKET *); extern void GetPW_1(tag,PACKET *); extern void ChPW_2(tag,PACKET *); extern void ChPW_1(tag,PACKET *); extern void GetPW_2(tag,PACKET *); extern void ChPW_3(tag,PACKET *); extern void DoCommand(tag,PACKET *); extern void Exec_Time_Event(void); extern int WhichUser(tag); /* parser.c */ extern char *GetWord(char *,char *); extern tag FindCWord(char *,int); extern int Parser(char *); extern void WhatThings(void); /* pcio.c */ int packet_init(void); int ReadData(int); void PollSocket(int); void Scan_Packets(void); void WriteToHandle(int,int,char *); void say_to_user(int,tag,char *); /* stubs.c */ extern void panic(void); extern void Queue_LockItem(tag); extern void Queue_LockMessage(tag); extern void Queue_LockWord(tag); extern void Init_LockList(void); extern void Do_LockList(void); /* uaf.c */ extern int OpenUAF(void); extern void CloseUAF(int); extern int LoadUser(int,char *); extern void SaveUser(ITEM,char *); extern int CryptX(unsigned char *); extern void ForcePassword(char *); /* validate.c */ extern char *Is_Legal_Name(char *,int); /* vocab.c */ extern void AddWord(char *,tag,int); extern void DelWord(struct Word *); extern struct Word *FindWord(char *,int); extern struct Word *FindNumWord(int,int); extern int stricmp(char *,char *); extern tag ResolveWord(char *); /* -- END -- */