/* Codebase macros - Change as you might need. * Yes, Rogel, you can gloat all you want. You win, this is cleaner, though not by a whole lot. */ /*************************************************************************** * _/_/_/_/ _/ _/ _/_/_/_/ _/_/_/_/ AckFUSS is modified ACK!MUD 4.3.1 * * _/ _/ _/ _/ _/ copyright Matt Goff (Kline) 2008 * * _/_/ _/ _/ _/_/_/_/ _/_/_/_/ * * _/ _/ _/ _/ _/ Support for this code is provided * * _/ _/_/_/_/ _/_/_/_/ _/_/_/_/ at www.ackmud.net -- check it out!* ***************************************************************************/ #ifndef __IMC2CFG_H__ #define __IMC2CFG_H__ #if !defined(IMCSTANDALONE) #define CH_IMCDATA(ch) ((ch)->pcdata->imcchardata) #define CH_IMCLEVEL(ch) ((ch)->level) #define CH_IMCNAME(ch) ((ch)->name) #define CH_IMCSEX(ch) ((ch)->sex) #define CH_IMCTITLE(ch) ((ch)->pcdata->title) #endif #if defined(IMCACK) #define first_descriptor first_desc #define CH_IMCRANK(ch) (str_cmp(ch->pcdata->who_name,"off") ? ch->pcdata->who_name : IS_IMMORTAL(ch) ? "Imm" : class_table[(ch)->p_class].who_name) #endif #endif #if defined(IMCSTANDALONE) typedef unsigned char bool; #if !defined(FALSE) #define FALSE 0 #endif #if !defined(TRUE) #define TRUE 1 #endif #define CH_IMCDATA(ch) ((ch)->imcchardata) #define CH_IMCLEVEL(ch) ((ch)->level) #define CH_IMCNAME(ch) ((ch)->name) #define CH_IMCSEX(ch) ((ch)->sex) #define CH_IMCTITLE(ch) ( "User" ) #define CH_IMCRANK(ch) ( "User" ) typedef enum { SEX_NEUTRAL, SEX_MALE, SEX_FEMALE } genders; #define CON_PLAYING 1 #define LOWER(c) ((c) >= 'A' && (c) <= 'Z' ? (c)+'a'-'A' : (c)) typedef struct user_data CHAR_DATA; typedef struct conn_data DESCRIPTOR_DATA; struct user_data { struct imcchar_data *imcchardata; char *name; int level; short sex; }; struct conn_data { DESCRIPTOR_DATA *next; DESCRIPTOR_DATA *prev; CHAR_DATA *original; CHAR_DATA *character; short connected; }; DESCRIPTOR_DATA *first_descriptor; DESCRIPTOR_DATA *last_descriptor; #endif