/
Crimson2/alias/
Crimson2/area.tmp/
Crimson2/area.tmp/AnomalySpaceDock/
Crimson2/area.tmp/AnomalyStation/
Crimson2/area.tmp/AntHill/
Crimson2/area.tmp/ArcticTerrarium/
Crimson2/area.tmp/BuilderCity/
Crimson2/area.tmp/Dungeon/
Crimson2/area.tmp/MiningDock/
Crimson2/area.tmp/PipeSystem/
Crimson2/area.tmp/RattArea/
Crimson2/area.tmp/RobotFactory/
Crimson2/area.tmp/SilverDale/
Crimson2/area.tmp/StarshipFearless/
Crimson2/area.tmp/StationConduits/
Crimson2/area.tmp/TerrariumAlpha/
Crimson2/area.tmp/TerrariumBeta/
Crimson2/area.tmp/TestArea/
Crimson2/area.tmp/Void/
Crimson2/area/
Crimson2/area/AnomalySpaceDock/
Crimson2/area/AnomalyStation/
Crimson2/area/MiningDock/
Crimson2/area/PipeSystem/
Crimson2/area/SilverDale/
Crimson2/area/StationConduits/
Crimson2/area/Void/
Crimson2/board/
Crimson2/clone/
Crimson2/lib/
Crimson2/mole/
Crimson2/mole/mole_src/HELP/
Crimson2/player/
Crimson2/util/
Crimson2/wldedit/
Crimson2/wldedit/res/
#define LOG_NEVER    0
#define LOG_NORMAL   1
#define LOG_ALLWAYS  2

/* Command Flags */
#define CF_MOVE         1<<0    /* movement related commands */
#define CF_TALK         1<<1    /* talk, gossip etc */
#define CF_MISC         1<<2    /* Quit and the like */
#define CF_GOD          1<<3    /* God-only/Admin commands */
#define CF_AREAEDIT     1<<4    /* check editing command auth */
#define CF_INV          1<<5    /* inventory, get drop etc related commands */
#define CF_CBT          1<<6    /* combat related commands, including cast, follow, group */
#define CF_HELPEDIT     1<<7    /* Help Editing commands */
#define CF_AREA         1<<8    /* Area commands */
#define CF_WLD          1<<9    /* WLD commands */
#define CF_MOB          1<<10   /* MOB commands */
#define CF_OBJ          1<<11   /* OBJ commands */
#define CF_RST          1<<12   /* RST commands */
#define CF_BRD          1<<13   /* BRD commands */
#define CF_VNUMARG      1<<14   /* can also be a valid vnum arg for editing */
#define CF_C4CODING     1<<15   /* C4 commands */

struct CommandListType {
  BYTE    *cText;
  CMDPROC(*cProc);
  BYTE     cPos;
  BYTE     cLevel;
  BYTE     cLog;
  FLAG     cFlag;
};

extern BYTE *commandFlagList[];
extern const COMMANDLIST commandList[];

extern LWORD PARSE_COMMAND_OSTAT;
extern LWORD PARSE_COMMAND_WGOTO;
extern LWORD PARSE_COMMAND_WCREATE;
extern LWORD PARSE_COMMAND_MSTAT;
extern LWORD PARSE_COMMAND_RCREATE;
extern LWORD PARSE_COMMAND_WEXIT;

extern void  ParseInit(void);
extern BYTE *ParseFind(BYTE *cmd, BYTE *srcKey, LWORD *srcOffset, LWORD *srcNum, BYTE *dstKey, LWORD *dstOffset);
extern BYTE  ParseCommandCheck(LWORD i, SOCK *sock, BYTE *cmd);
extern void  ParseSock(SOCK *sock, BYTE *buf);
extern LWORD ParseCommand(THING *thing, BYTE *cmd);
extern LWORD ParseCommandStub(THING *event, BYTE *cmd);