/*
Do not put the server program on the server without ensuring that the following 
defines are switched to these values...

#define _LapTop						false
#define	MAX_CONS					512

Otherwise you could end up over-writing the Account Data
*/

//#define _LapTop						false
#define _LapTop						true

//#define	MAX_CONS					512
#define MAX_CONS					64

//This is realized on the Chat Programs only (23 Sept, 2008)
#define MAX_PER_SESSION				8	
#define	MAX_OCCUPANTS				20

char RouterAddress[]	= /*"173.174.1.138";*/"192.168.1.102";
char ServerAddress[]	= "71.59.154.137";

enum GOD_Cmds
{
	GOD_FindAccount, GOD_FindSlot, GOD_CreateAccN, GOD_DeleteAccN, GOD_NotUsed,
	GOD_ShutDwn, GOD_HealEveryone, GOD_ToggleMap, GOD_UpdateTimeAndCount, GOD_UpdateMap
};
enum AuthorityLevels
{
	MODERATOR = 50, HEROS = 70, DEMI_GODs = 80, LESSER_GODs = 90, GREATER_GODs = 99, GOD = 100
};
//These two need to be equal because of HandleKeys()
#define MAX_ACCPASS					16		//UserName and Password Maximum
#define	MaxNameSize					16		//Max names for characters...

#define	_FPS						16
#define	_ONE_MIN					_FPS		* 60
#define	_ONE_HR						_ONE_MIN	* 60
#define _HOURS_25					_ONE_HR		* 25

#define	_maxPCSlots					10		//Max array - trumped by _maxSlots
#define	_maxPlayable				5		//Max Logged in
#define _pntsCreatePC				76

#define _maxItemStack				99

//These are ounces / 5 to get a price per coin (June 3, 2009)
const int	_PlatBase	= 249;
const int	_GoldBase	= 193;
const int	_SilvBase	= 3;
const int	_CoppBase	= 1;//really is 0.02

int			_PlatMod;
int			_GoldMod;
int			_SilvMod;
int			_CoppMod;
//The Different Games Compatible with 'TheServer'
enum GameVersions { B_CHAT, SCI_FI, A_CHAT, FORGING };
#define QUIT -1
enum GamePhases
{
	SPLASH = 0, LOGIN, PASSWORD, AVATARSELECT, AVATARCREATE, GAMEPLAY 
};
const char SUCCESS					= 'A';	
const char FAILURE					= 'B';
const char CHANGE_GAME_STATUS		= 'C';	
const char KEEP_ALIVE				= 'D';
const char LOAD_FULL_PC				= 'E';
const char LOAD_FULL_NPC			= 'F';
const char LOAD_ITEM				= 'G';
const char UPDATE_PC				= 'H';
const char UPDATE_NPC				= 'I';
const char UPDATE_ITEM				= 'J';
const char UPDATE_ENVIRONMENT		= 'K';
const char CHECK_TIME_OUT			= 'L';
//const char PLACE_HOLDER			= 'M';
const char GOD_CMD					= 'N';
const char SERVER_MESSAGE			= 'O';
const char UPDATE_MAP_STANDARD		= 'P';
const char UPDATE_MAP_SPECIAL		= 'Q';
const char ADD_TABLE				= 'R';
const char REMOVE_TABLE				= 'S';
const char REQUEST_SIT				= 'T';
const char GUIDE_CMDS				= 'U';
const char UPDATE_COUNT				= 'V';
const char UPDATE_TABLE				= 'W';
const char REQUEST_PLAYER			= 'X';
const char ADD_PLAYER				= 'Y';
const char REMOVE_PLAYER			= 'Z';
const char REMOVE_NPC				= 'a';
const char SUSPEND_ACCOUNT			= 'b';
const char ADD_PLAYERLIST			= 'c';
const char LOG_IN					= 'd';
const char LOG_OUT					= 'e';
//const char PLACE_HOLDER			= 'f';
const char SELECT_CHARACTER_SLOT	= 'g';
const char CREATE_CHARACTER			= 'h';
const char DELETE_CHARACTER			= 'i';
const char ENTER_WORLD				= 'j';
const char SET_LAN_SIZE				= 'k';
const char EXIT_WORLD				= 'l';
//const char PLACE_HOLDER			= 'm';
const char PLAYER_COMMAND			= 'n';
const char MOVE_FORWARD				= 'o';
//const char PLACE_HOLDER			= 'p';
const char CHANGE_INDEX				= 'q';
const char SET_COMMAND_BUTTON		= 'r';
const char SET_CAST_SPELL			= 's';
const char MOUNT_DISMOUNT			= 't';
const char PICK_UP_ITEM				= 'u';
const char DROP_ITEM				= 'v';
const char CHANGE_TEXT_COLOR		= 'w';
const char CHAT_NORMAL				= 'x';
const char CHAT_WHISPER				= 'y';
const char CHAT_YELL				= 'z';

#define	   MaxNumDice				25
const char DICE_d4					= '0';
const char DICE_d6					= '1';
const char DICE_d8					= '2';
const char DICE_d10					= '3';
const char DICE_d12					= '4';
const char DICE_d20					= '5';
const char DICE_d100				= '6';
//Still room here to use '7', '8', and '9'

//Map specific defines----------------------------------//
/*														//
Not declaring the Tile array here because Tile would	//
need to be #include'd and would cause compiler error.	//
*/														//
#define	townX						1024				//
#define	townY						1024				//
#define	townZ						8					//
														//
//These are pre-figured values to cut					//
//down on processor	time in loops.						//
const int townXLimit = townX - 1;						//
const int townYLimit = townY - 1;						//
const int townZLimit = townZ - 1;						//
//------------------------------------------------------//
/*
#define grdDirtMin					0
#define grdDirtMax					15
#define resNothing					0
enum SmallFoilage
{
	resGrassMin = 1, resGrassMax = 15, LastSmFoilage
};
enum SmPassableItems
{
	homeStone = 20, LastSmPassItems
};
enum Arches
{
	TentDoor_F04 = LastSmPassItems,
	TentDoor_F26,
	TentDoorDark_F04,
	TentDoorDark_F26,
    WallWoodDoor_F04,
	WallWoodDoor_F26,
	WallWoodDoorDark_F04,
	WallWoodDoorDark_F26,
	WallStoneDoor_F04,
	WallStoneDoor_F26,
	WallStoneDoorDark_F04,
	WallStoneDoorDark_F26,
	LastDoor
};
//Change these numbers as needed to accomodate new map-blocking objects
const int NoPassGround = 500;
enum Chests
{
    conChest_0 = 500, conChest_1, conChest_2, conChest_3, conChest_4, conChest_5, conChest_6, conChest_7,
    conChest_8, conChest_9, conChest_10, conChest_11, conChest_12, conChest_13, conChest_14, conChest_15,
    conChest_16, conChest_17, conChest_18, conChest_19, conChest_20, conChest_21, conChest_22, conChest_23,

	ChestLastChest
};
enum Walls
{
	//F* == Facings, where two numbers, is two directions: 0, 1, 2, 3, 4, 5, 6, 7
	WallTent_F04 = 600, WallTent_F26, WallTent_F04_wWin, WallTent_F26_wWin, 
	WallTentDark_F04, WallTentDark_F26, WallTentDark_F04_wWin, WallTentDark_F26_wWin,
    WallWood_F04, WallWood_F26, WallWood_F04_wWin, WallWood_F26_wWin,
	WallWoodDark_F04, WallWoodDark_F26, WallWoodDark_F04_wWin, WallWoodDark_F26_wWin,
	WallStone_F04, WallStone_F26, WallStone_F04_wWin, WallStone_F26_wWin,
	WallStoneDark_F04, WallStoneDark_F26, WallStoneDark_F04_wWin, WallStoneDark_F26_wWin,

	CornerTent_F5, CornerTent_F1, CornerTentDark_F5, CornerTentDark_F1,
	WallWoodCorner_F5, WallWoodCorner_F1, WallWoodCornerDark_F5, WallWoodCornerDark_F1,
	WallStoneCorner_F5, WallStoneCorner_F1, WallStoneCornerDark_F5, WallStoneCornerDark_F1,

	QuadCorLightWood, QuadCorDarkWood, QuadCorLightStone, QuadCorDarkStone,
	TriCorLightWood_0, TriCorDarkWood_0, TriCorLightStone_0, TriCorDarkStone_0,
	TriCorLightWood_1, TriCorDarkWood_1, TriCorLightStone_1, TriCorDarkStone_1,
	TriCorLightWood_2, TriCorDarkWood_2, TriCorLightStone_2, TriCorDarkStone_2,
	TriCorLightWood_3, TriCorDarkWood_3, TriCorLightStone_3, TriCorDarkStone_3,

	CornerTent_F7, CornerTent_F3, CornerTentDark_7, CornerTentDark_3,
	WallWoodCorner_F7, WallWoodCorner_F3, WallWoodCornerDark_F7, WallWoodCornerDark_F3,
	WallStoneCorner_F7, WallStoneCorner_F3, WallStoneCornerDark_F7, WallStoneCornerDark_F3,

	WallLastWall
};
const int minTreeValue				= NoPassGround + 200;
#define resBigPine					minTreeValue + 0
#define resLittlePine				minTreeValue + 1
#define resBulbTree					minTreeValue + 2
#define resAppleTree_w				minTreeValue + 3

const int NoPassFly					= 750;

const int NoPassSwim				= 1000;
*/