#if !defined(ANSI_H)
#define ANSI_H
#define ANSI_KEY '{'
#define ANSI_CUSTOM '\x11'
#define ANSI_END '\x12'
#define C_BLANK "\x01B[%d;%dm"
#define C_REVERSE "\x01B[7m"
#define C_FLASH "\x01B[5m"
#define C_UNDERSCORE "\x01B[4m"
#define C_TILDE '~'
#define C_BEEP '\a'
#define C_BLACK "\x01B[0;30m"
#define C_RED "\x01B[0;31m"
#define C_GREEN "\x01B[0;32m"
#define C_YELLOW "\x01B[0;33m"
#define C_BLUE "\x01B[0;34m"
#define C_MAGENTA "\x01B[0;35m"
#define C_CYAN "\x01B[0;36m"
#define C_WHITE "\x01B[0;37m"
#define CB_BLACK "\x01B[1;30m"
#define CB_RED "\x01B[1;31m"
#define CB_GREEN "\x01B[1;32m"
#define CB_YELLOW "\x01B[1;33m"
#define CB_BLUE "\x01B[1;34m"
#define CB_MAGENTA "\x01B[1;35m"
#define CB_CYAN "\x01B[1;36m"
#define CB_WHITE "\x01B[1;37m"
#define C_CLEAR "\x01B[0m"
#define C_RANDOM "{`"
#define RED_BG "\x01B[0;41m"
#define BLUE_BG "\x01B[0;44m"
#define GREEN_BG "\x01B[0;42m"
#define BLACK_BG "\x01B[0;40m"
#define WHITE_BG "\x01B[0;47m"
#define MAGENTA_BG "\x01B[0;45m"
#define YELLOW_BG "\x01B[0;43m"
#define CYAN_BG "\x01B[0;46m"
#define RED_BBG "\x01B[1;41m"
#define BLUE_BBG "\x01B[1;44m"
#define GREEN_BBG "\x01B[1;42m"
#define BLACK_BBG "\x01B[1;40m"
#define WHITE_BBG "\x01B[1;47m"
#define MAGENTA_BBG "\x01B[1;45m"
#define YELLOW_BBG "\x01B[1;43m"
#define CYAN_BBG "\x01B[1;46m"
#define RANDOM_BG "{="
#define BAR_1 "-----------------------------------------------------------------------------{x\n\r"
#define BAR_2 "-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-{x\n\r"
#define BAR_3 "oOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOoOo{x\n\r"
#define BAR_4 "ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo{x\n\r"
#define ALIGN_NONE 0
#define ALIGN_LEFT 1
#define ALIGN_CENTER 2
#define ALIGN_RIGHT 3
#define _DEFAULT 0
#define _GOSSIP1 1
#define _GOSSIP2 2
#define _GOSSIP3 3
#define _MUSIC1 4
#define _MUSIC2 5
#define _MUSIC3 6
#define _QA1 7
#define _QA2 8
#define _QA3 9
#define _QUOTE1 10
#define _QUOTE2 11
#define _QUOTE3 12
#define _GRATS1 13
#define _GRATS2 14
#define _GRATS3 15
#define _SHOUT1 16
#define _SHOUT2 17
#define _IMMTALK1 18
#define _IMMTALK2 19
#define _IMMTALK3 20
#define _TELLS1 21
#define _TELLS2 22
#define _SAY1 23
#define _SAY2 24
#define _SKILL 25
#define _YHIT 26
#define _OHIT 27
#define _VHIT 28
#define _WRACE 29
#define _WCLASS 30
#define _WLEVEL 31
#define _RTITLE 32
#define _SCORE1 33
#define _SCORE2 34
#define _SCORE3 35
#define _SCOREB 36
#define _WIZNET 37
#define _GTELL1 38
#define _GTELL2 39
#define _WHOIS1 40
#define _WHOIS2 41
#define _WHOISB 42
#define MAX_CUSTOM_COLOUR 43
/* ANSI_CUSTOM AND ANSI_END CHARACTERS IN STRING FORM */
#define C_START "\x11"
#define C_END "\x12"
/* Convert slot numbers into strings with ANSI_CUSTOM codes */
#define cstr(s) C_START #s C_END
#define CTAG(s) cstr(s)
/* CTAG USAGE:
act("" CTAG(_SAY1) "$n says " CTAG(_SAY2) "' have a nice day!", ch, NULL, NULL, TO_ROOM);
or
sprintf(buf, "%s%s says %s' have a nice day!'\n\r", CTAG(_SAY1), ch->name, CTAG(_SAY2));
*/
#endif