www.pudn.com > back.rar > base.h


//_________________________________________________________________________________ 
// 
//	Base.H 
// 
//	header file include & define constant 
// 
// 
//_________________________________________________________________________________ 
// 
 
//#pragma once 
 
#ifndef _BASE_H_ 
#define _BASE_H_ 
 
 
 
//#include "bravonet.h"	//network 
#include "../IOCPNet/IOCPNet.h" 
//#include "../ServerBase/ServerBase.h" 
#include  
#include  
#include  
#include  
#include  
#include  
 
#include  
#include  
#include  
#include "block.h" 
#include "item.h" 
#include "PrivateShop.h"	//ÀÓâ¿ø Ãß°¡. 
#include "dungeon.h"		//1117-LIM 
//#include "npc.h" 
#include "../protocol/Protocol.H" 
 
using namespace std; 
 
#define WM_TRAYICON_MSG		(WM_USER+1) 
 
#ifdef _DEBUG 
#include  
#endif 
 
extern DWORD	g_dwCurTickTime; 
extern DWORD	g_dwUserCount;	//µé¾î¿Ô´Ù ³ª°£ À¯Àú¼ö. 
extern DWORD	g_dwAvgTime;	//Æò±Õ °ÔÀÓ ÀÌ¿ë ½Ã°£. 
 
// 2Â÷ÀüÁ÷½ºÅ³ PASSIVESKILL 
// 2Â÷ÀüÁ÷½ºÅ³ BUFFSKILL 
// 2Â÷ÀüÁ÷½ºÅ³ STATUS 
// 2Â÷ÀüÁ÷½ºÅ³ ETC 
 
// ±¹°¡º° define 
#define KOREA		       // °æÇèÄ¡°è»ê½Ä µé¾î°£´Ù. 
//#define CHINA------------ÀÌ°Ç ¾È¾´´Ù..ÁÖ¼® Ç®Áö¸¶¼¼¿ä.. 
//#define HONGKONG 
//#define ENGLISH 
//#define ACCOUNTBILL       //**ŸÀÌ¿ÏÇÒ¶§ Ç®¸é ¾ÈµÈ´Ù. 
//#define TAIWAN            //**ŸÀÌ¿ÏÇÒ¶§ Ç®¾îÁÖ°í ³ª°£´Ù. 
                            // ´ë¸¸ÁÙ¶§ Process_Telepot()         need to check.  
						    // ´ë¸¸ÁÙ¶§ skillpoint Byte or Int    need to check.   
							// ´ë¸¸ÁÙ¶§ except both ÀüÁ÷À̺¥Æ® and µÑµÑÀ̺¥Æ®  
							// ´ë¸¸ÁÙ¶§ °æÇèÄ¡°è»ê½Ä?    '°æÇèÄ¡º¯°æ' Ű¿öµå·Î °Ë»öÇÑµÚ °íÄ¡¼¼¿ä. 
 
 
//#define CHINA2			// Áß±¹ 
//#define NCASH		        // Áß±¹¿¡¼­ ºô¸µ Æ÷ÇԽà Ǭ´Ù. 
//#define BILL_CHINA_USER_CHECK_TIME	(60*1000) // Áß±¹¿¡¼­ ºô¸µ Æ÷ÇԽà Ǭ´Ù. 
 
//#define JAPAN 
 
#define RICHEVENT	// Æ÷ÀÎÆ®ÄíÆù À̺¥Æ®		// Rich-Event 20050415~20050503 
 
#define JENNIEVENT  // 12¿ùÀüÁ÷À̺¥Æ®	**ÁÖ¼®À» Ç®¸é ÀüÁ÷À̺¥Æ®°¡ ÁÖ¾îÁö°Ô µÈ´Ù. 
 
#define FULLMOON_IVENT 
#define SOONEUNG			// 1108-LIM  
//#define SUNEUNG				// 1111-LIM 
#define THIN_THIN_RO_DAY	// 1108-LIM  
 
#define PROTECT_CHAT     // ¹®¼­ÇÊ¿ä.  **ÁÖ¼®À» Ç®¸é äÆÃ¿¬¼Ó±ÝÁö°¡ µÈ´Ù. 
//#define EXP_EVENT		 // ¼³À̺¥Æ®°æÇèÄ¡30%  **ÁÖ¼®À» Ç®¸é °æÇèÄ¡°¡ 30% ¿Ã¶ó°¡°Ô µÈ´Ù. 
#define EXP_SPECIAL      // µÑµÑ À̺¥Æ® : ÀÌ´Â ÆÄƼ½Ã¿Í ÇÕü½Ã¿¡´Â °æÇèÄ¡¸¦ 20% ´õÁØ´Ù. **ÁÖ¼®À» Ç®¸é ÆÄƼ,ÇÕüÇÑ À¯Àú¿¡°Ô °æÇèÄ¡°¡ 20% ¿Ã¶ó°¡°Ô µÈ´Ù. 
 
#define ALL_LOG 
 
#define SERVER_GATE				1 
struct CServerArray 
{  
	int	MYServer; 
	int GateWayCount; 
	int Info; 
	int GameDB; 
	int Log; 
	//ncash 
	int billingserver;		 
	int	localnumber; 
}; 
 
 
#define BRAVO_GAMEDB_START		2 
#define BRAVO_GAMEINFO_START	14 
#define BRAVO_GAMESERVER_START	31 
 
 
 
static const int MAX_USER	= 2048;				// ¼­¹öÀÇ À¯Àú 
static const int MAX_WAIT	= 256;				// Á¢¼Ó ´ë±â À¯Àú 
static const int MAX_NPC	= 3000;				// Å×½ºÆ® ÇѸ¶¸®¸¸ 
static const int MAX_NPC_TEMP	= 1500;				// Å×½ºÆ® ÇѸ¶¸®¸¸ 
#define MAX_NPC_INFO		512 
//#define MAX_NPC_INFO		187 
 
#define REMAIN_POINT_KEY 8 
 
#define START_FLOOR 0 
 
//#define BRAVO_MYSERVER BRAVO_ZONE_SERVER1 
 
extern HWND		g_hwndList, g_hwndEdit, g_hwndEditNPC, g_hwndEditAdmin, g_hwndEditLimit, 
				g_hwndWait, g_hwndLogin, g_hwndConnect, g_hwndItemUnique, g_hwndChennel; // ¼­¹öÅëÇÕ¼öÁ¤ : ä³ÎÃß°¡  
 
// warp °ü·Ã ±¸Á¶Ã¼¹× define 
const int MAXLINE = 512; 
 
#define MAX_MAP			101		// ÇöÀç100¹ø¸ÊÀÌ ÀÖ´Ù 
struct Map_Index 
{ 
	Map_Index() { m_Map_ID = -1; m_Server_No = -1; } 
	int		m_Map_ID;			// 255¸¦ ³ÑÀ» ÀÏÀÌ ¾øÁö?? 
	int		m_Server_No;		// 255¸¦ ³ÑÀ» ÀÏÀÌ ¾øÁö?? 
	char	m_Map_Name[16]; 
	int		m_Map_Size; 
}; 
 
// ¾ÆÀÌÅÛ °ü·Ã 
#define MAX_ITEM		2048	// 1108-LIM // 
//#define MAX_ITEM		980 
#define MAX_MARKET		32 
 
// ItemBill-LIM // 
#define MAX_SETITEM		128 
#define MAX_ITEM_BILLING_COUNT	50 
 
// 2Â÷ÀüÁ÷-LIM ½ÃÀÛ// 
#define MAX_2NDJOB 6 
// 2Â÷ÀüÁ÷-LIM ³¡// 
 
#define MAX_DROPLIST_ITEM	500 
 
//ÀιêÅ丮 °ü·Ã 
#define MAX_INVEN_X		8 
#define MAX_INVEN_Y		18 
 
 
#define MAX_FIELD_ITEM	1000 
#define ITEM_DELETE_TIME0		60000		// ÀÓâ¿øÃß°¡. ¹ö¸° ¾ÆÀÌÅÛÀÌ ¾ø¾îÁö´Â ½Ã°£. 
#define ITEM_DELETE_TIME1		10000		// ¾ÆÀÌÅÛÀÌ º¯½ÅÇϰųª »ç¶÷ÀÌ ¹ö¸° ¾ÆÀÌÅÛÀÌ ¾ø¾îÁö´Â ½Ã°£ 
#define ITEM_DELETE_TIME2		300000		// ¸ó½ºÅÍ·Î º¯ÇÑ ¾ÆÀÌÅÛÀÌ ¾ø¾îÁö´Â ½Ã°£ 5ºì 
#define ITEM_DELETE_TIME3		60000		// ¹°¾à»ç¶óÁö´Â ½Ã°£1ºÐ 
#define ITEM_TICK_COUNT			5000		// ¾ÆÀÌÅÛ À̵¿Çϴ ƽ°£°Ý 5ÃÊ 
	 
typedef vector< CItem > ItemVector;			// °ÔÀÓ ¼­¹ö°¡ °¡Áú ¾ÆÀÌÅÛ º¤ÅÍ 
typedef vector< CItem* > PItemVector;		// xblockÀÌ °¡Áú ¾ÆÀÌÅÛ Æ÷ÀÎÅÍ º¤ÅÍ 
 
//	extern ItemVector	g_ItemVector;		// ¼­¹öÀÇ ¸ðµç ¸Ê¿¡ ¹ö·ÁÁø ¾ÆÀÌÅÛµé 
extern CItem g_ItemArray[MAX_FIELD_ITEM]; 
extern int	g_Itemcount; 
 
 
#define	MAX_EQUIP	10 
 
// ³¯¾¾ °ü·Ã 
#define	WEATHER_CLEAR		0 
#define	WEATHER_FOG			1 
#define	WEATHER_RAIN		2 
#define	WEATHER_SNOW		3 
 
// npc·¹º§ Á¶°Ç 
#define NPC_CONDITION		3 
 
// °Å¸® °è»ê½Ä 
extern int	Distance( int sx, int sy, int ex, int ey ); 
extern int	Distance2( DWORD pos1, DWORD pos2, int nMapsize ); 
 
// ·¹º§Å×ÀÌºí±¸Á¶Ã¼ 
#define MAX_LEVEL	170 
struct Level_Struct 
{ 
	int		m_lev; 
	DWORD	m_need_exp; 
	DWORD	m_total_exp; 
}; 
 
#define LIMIT_MONEY 4000000000 
 
// drop item index structure 
#define MAX_DROP_ITEM	20 
 
struct Drop_Item_Index 
{ 
//	DWORD	m_Drop_Normal[MAX_DROP_ITEM]; 
	long	m_Drop_Normal[MAX_DROP_ITEM]; 
}; 
 
//itembill 
struct ItemBill   
{ 
	DWORD  itemcode; 
	DWORD  itemindex; 
	BYTE  itemcount; 
	DWORD	limitlevel; 
}; 
 
 
struct HP_Index 
{ 
	int m_index;			//¹°¾àÀ妽º 
	int m_value;			//¹°¾àÀÇ ¾ç  
}; 
 
// 2Â÷ÀüÁ÷-LIM ½ÃÀÛ// 
struct SecondJob_AddValues 
{ 
	int m_2ndjob; 
	int m_Add_Hp; 
	int m_Add_Mp; 
	int m_Add_Chr_Att; 
	int m_Add_Chr_AC; 
	int m_Add_Chr_Magic_Att; 
	int m_Add_Chr_Magic_AC; 
	int m_Add_Chr_Succ_Rate; 
	int m_Add_Chr_Evade_Rate; 
}; 
// 2Â÷ÀüÁ÷-LIM ³¡// 
 
 
// npc´ë»ç °ü·ÃÈ®·ü 
#define	NPC_DIALOG_PERCENT	30 
 
// ÇÕü½Ã ´É·ÂÄ¡ º¯È­À² 
#define CHANGE_STAT_CONSTANT	0.01 
 
// Åä±Û Á¦Çѽð£ 
#define TOGGLE_LIMIT		30000 
 
// ÆÄƼ °ü·Ã 
#define NON_PARTY			-1 
 
#define MAX_SKILL		512 
#define MAX_BASIC_SKILL		10 
#define MAX_SPECIAL_SKILL	30 
 
#define	ANAMA_STICK			269484032 
 
#define MAX_VECTOR			2000 
 
#define MAX_LIVE_ITEM		1000000 
 
#define MAX_RANDOM_ITEM		320	// 1117-LIM	// 300±îÁö´Â ·£´ý¸ñ·Ï ³ª¸ÓÁö 20Àº 300Áß¿¡ ¾È³ª¿ÔÀ»½Ã¿¡ ¾²ÀδÙ. 
 
#define MAX_HORSE_INDEX		50 
 
#define HORSEINDEX			5 
#define HORSERISE			6 
#define	HORSEWHITE			19 
#define	HORSEBLACK			20 
#define BROWNBEARINDEX		179			// ºê¶ó¿î º£¾î 2004.8.24 Donny ¼Ò¿ï¸¶½ºÅͽºÅ³ : npc À妽º  
#define	BLACKBEARINDEX	    180			// ºí·¢ º£¾î  
#define POLARBEARINDEX	    181			// Æú¶ó º£¾î  
#define BEARRISE		    182			// Ű¿ì´Â º£¾î  
 
#define TICK_TABLE_SIZE		50			// npc tick¹è¿­ Å©±â 
 
#define	POTION_LIMIT		1000		// µî·ÏµÇ´Â ¹°¾à ÃÖ´ë °¹¼ö 
 
#define	CLIENT_TIME_CHECK	2000		// 10ÃÊ¿¡ 2ÃÊÀÌ»ó Â÷ÀÌ 
 
#define MAX_POTION				5			// ¹°¾àÀÇ ¾çÁ¾·ù 
 
#define GENERATE_NON_LOG	 
//#define GENERATE_LOG_ALL 
//#define GENERATE_LOG_BROAD		// ¹æ¼ÛºÎºÐ 
//#define GENERATE_LOG_NPC 
//#define GENERATE_LOG_ATTACK 
//#define GENERATE_LOG_SKILL 
//#define GENERATE_LOG_TRADE 
#define GENERATE_LOG_CHAT 
//#define GENERATE_LOG_ITEM		// ¾ÆÀÌÅÛ °ü·Ã..ÀԱ⠹þ±â ¹ö¸®±â Áݱâ 
//#define GENERATE_LOG_MOVE 
//#define GENERATE_LOG_NPC_MOVE 
//#define GENERATE_LOG_NPC_ATTACK 
//#define GENERATE_LOG_PATH_FIND 
//#define GENERATE_LOG_UNITE			// ÇÕü °ü·Ã 
 
extern	SYSTEMTIME	LogTime; 
 
// ½ºÅ³ ¹è¿ì±â define 
#define LEARN_SKILL			253	//	-> ½ºÅ³ ¹è¿ï¶§´Â,³Ö¾î¼­ ½ð´Ù. ÀüÁ÷½Ã¿¡´Â ±âÁ¸°ú °°ÀÌ ÀüÁ÷ÇϰíÀÚ ÇÏ´Â Á÷¾÷ ¹øÈ£ 
#define LEARN_SKILL_SUC 	254	//	-> ¼º°ø 
#define LEARN_SKILL_FAIL	255	//	-> ½ÇÆÐ 
#define CHANGE_CLASS_SUC	251	//	-> ÀüÁ÷ ¼º°ø 
#define CHANGE_CLASS_FAIL	252	//	-> ÀüÁ÷ ½ÇÆÐ 
 
#define MAX_ITEM_UPGRADE_SLOT  5 
 
#define MAX_JEWEL_COUNT		  20 
 
//6.1 ÀÓâ¿ø  
#define QUEST_MAX		256		//Äù½ºÆ® Á¾·ù¸¶´Ù ÃÖ´ë Äù½ºÆ® ¾ç 
#define SPECIAL_QUEST_START	256	// ½ºÆä¼È Äù½ºÆ® ½ÃÀÛ ¹øÈ£ 
#define SCENARIO_QUEST_START	500	// ½Ã³ª¸®¿À Äù½ºÆ® ½ÃÀÛ ¹øÈ£ 
 
#define MAX_QUEST_SLOT		5 
 
#define MAX_QUEST			30 
 
#define NON_QUEST_SLOT		10 
 
#define MAX_PIECE	12 
#define MAX_PUZZLE	256		// 9-22 
 
#define USE_NECTA_TAR_TIME	5000 
#define	RESTART_POS			49321 
 
 
// ÆÐÅÏ °ü·Ã 
#define MAX_NPC_PATTERN	27		// ÆÐÅÏ °¡Áþ¼ö	//dungeon-LIM 
#define MAX_PATTERN	20			// ÆÐÅϳ»ÀÇ µ¿ÀÛ¼ö 
struct AI_ATTACK_PATTERN 
{ 
	BYTE	m_byPattern[ MAX_PATTERN ]; 
}; 
extern AI_ATTACK_PATTERN	g_Pattern[MAX_NPC_PATTERN]; 
 
// µ· À妽º 
#define MONEY_INDEX		1 
 
#define HORSEPAPER_INDEX		268476195 
#define BEARPAPER_INDEX         268476199  // 2004.8.24 Donny ¼Ò¿ï¸¶½ºÅͽºÅ³ : ¼Ò¿ïºñ½ºÆ® Áõ¼­ 
//  
 
// ÅÚ·¹Æ÷Æ® °ü·Ã 
struct Teleport 
{ 
	Teleport() 
	{ 
		m_nMapID = -1; 
		m_dwPos	 = 0; 
		m_nCost	 = 0; 
	} 
	int 	m_nMapID;	// °¥ ¸Ê id 
	DWORD	m_dwPos;	// À§Ä¡ 
	int		m_nCost;	// °¡°Ý 
}; 
 
struct CJewelInfo 
{ 
	BYTE	m_num; 
	DWORD	m_ItemIndex; 
	DWORD   m_caem; 
}; 
 
struct CHorseInfo 
{  
	BYTE m_level; 
	DWORD m_MaleAtt;			// ¼ý¸» °ø°Ý·Â 
	DWORD m_MaleDef;			// ¼ý¸» ¹æ¾î·Â  
	DWORD m_FemaleAtt;			// ¾Ï¸» °ø°Ý·Â 
	DWORD m_FemaleDef;			// ¾Ï¸» ¹æ¾î·Â  
	DWORD m_Maxexp;				// °æÇèÄ¡ 
}; 
 
// 0126-LIM 
struct ChatProtect 
{ 
	BYTE	m_byProctionCount; 
	BYTE	m_dwProctionTime;	// x1000 ÃÊ´ÜÀ§. 
}; 
 
// Rich-Event 
struct Rich_Event 
{ 
	BYTE	m_byCheckEvent; 
	BYTE	m_byMaxTwentyThouCount;		// ÃÖ´ë 20000Æ÷ÀÎÆ® ÄíÆù °³¼ö 
	BYTE	m_byMaxTenThouCount;			// ÃÖ´ë 10000Æ÷ÀÎÆ® ÄíÆù °³¼ö 
	BYTE	m_byMaxFiveThouCount;			// ÃÖ´ë 5000Æ÷ÀÎÆ® ÄíÆù °³¼ö 
	BYTE	m_byMaxThouCount;				// ÃÖ´ë 1000Æ÷ÀÎÆ® ÄíÆù °³¼ö 
	BYTE	m_byMaxFiveHundCount;			// ÃÖ´ë 500Æ÷ÀÎÆ® ÄíÆù °³¼ö 
	BYTE	m_byMaxHundCount;				// ÃÖ´ë 100Æ÷ÀÎÆ® ÄíÆù °³¼ö 
}; 
 
 
 
extern CHorseInfo g_HorseInfo[MAX_HORSE_INDEX]; 
 
extern CServerArray g_ServerArray; 
 
extern CJewelInfo g_JewelInfo[MAX_JEWEL_COUNT]; 
 
// ÅÚ·¹Æ÷Æ® °ü·Ã define 
struct Teleport_Info 
{ 
	int		m_nNPC;		// ÅÚ·¹Æ÷Æ® ½ÃŰ´Â NPCÀ妽º 
	Teleport	m_Teleport[10]; 
}; 
#define MAX_TELEPORT_INDEX	20 
extern Teleport_Info g_Teleport[MAX_TELEPORT_INDEX]; 
 
 
 
extern HWND g_hMultiListWnd; 
 
// »óź¯È­ ½ºÅ³ °ü·Ã 
#define NONE_SKILL	0				// Á¤»ó»óÅ 
#define STELTH		1				// À¯Àú¸¸°¡´É... 
#define AIRWAVE		2				// npcµµ °¡´É 
#define DIEACTION	3				// À¯Àú¸¸ °¡´É,½ºÀ©µé 
#define SLEEP		4				// µÑ´Ù °¡´É 
#define TRANSFORM	5				// npc¸¸ °¡´É 
#define STUN		6				// µÑ´Ù °¡´É 
#define MANASHIELD	7				// ¸¶³ª½¯µå..º»Àθ¸ 
#define SOULSTRING	8				// ¼Ò¿ï½ºÆ®¸µ 
 
// 2Â÷ÀüÁ÷½ºÅ³ STATUS 
#define ICE					25              // ¾ÆÀ̽º : Æ®·£½ºÆû°ú °°Àº È¿°ú 
#define FIRESHIELD			26              // ºÒÀǺ¸È£¸· : ¸¶³ª½¯µå°­È­ÆÇ -> FIREFRAMESHIELD 
#define ICESHIELD			27              // ¾óÀ½ÀǺ¸È£¸· : ¸¶³ª½¯µå°­È­ÆÇ -> ICE 
#define SOULBOOSTER			28              // ¼Ò¿ïºÎ½ºÅÍ 
#define FIREFRAMESHIELD		29				// ¾÷±×·¹À̵åµÈ ÆÄÀ̾îÇÁ·¹ÀÓ»óÅ 
 
// 2004.10.27 Donny 2Â÷½ºÅ³ : »óź¯È­ 
#define FIREFRAME		    21              // ÆÄÀ̾îÇÁ·¹ÀÓ : ºÒŸ¸é¼­ µ¥¹ÌÁö ´Ù´Â »óÅ        
#define HORSECRAP			22              // È£½ºÅ©·¦ : »óÅ´ ½ºÅÏÀÌÁö¸¸ ±âÁ¸ ½ºÅϰú Â÷º°ÇÔ ( cos. Ŭ¶óÀÌ¾ðÆ® È¿°ú°¡ ´Ù¸£´Ù. )         
 
// 2004.10.27 Donny 2Â÷½ºÅ³ : npc»óź¯È­ 
#define MAGICATTACK_ON      9 
#define MAGICATTACK_OFF     10 
#define MAGICDEFENCE_ON     11 
#define MAGICDEFENCE_OFF    12 
#define DARKNESS_ON         13 
#define DARKNESS_OFF        14 
#define WEAKNESS_ON         15 
#define WEAKNESS_OFF        16 
#define DISSTRENGTH_ON      17 
#define DISSTRENGTH_OFF     18 
#define DISBLESS_ON         19 
#define DISBLESS_OFF        20 
#define FIREFRAME_ON        23     // 2004.11.2 Donny 2Â÷½ºÅ³ : ±âÁ¸¿Ü »óÅ  
#define FIREFRAME_OFF       24 
// 2Â÷ÀüÁ÷½ºÅ³ STATUS 
#define FIREFRAMESHIELD_ON  30 
#define FIREFRAMESHIELD_OFF 31 
// 2Â÷ÀüÁ÷½ºÅ³ º¯°æ  
#define HOLYWEAPON			32  
#define HOLYSHIELD			33 
#define HOLYLIFE			34 
 
// << ±âÁ¸¿Ü »óÅÂ(Extra State)¿¡ ´ëÇÑ ¼³¸í >> // 
// ±âÁ¸ »óÅ·δ (¸¶³ª½¯µå), (¼Ò¿ï½ºÆ®¸µ), (½ºÅÏ) µîÀÌ ÀÖ´Ù.  
// ( PC ) ´Â ÆÄÀ̾îÇÁ·¹ÀÓ°°Àº °æ¿ì ¸¶³ª½¯µå¿Í µ¿½Ã¿¡ »óŰ¡ °É¸± ¼ö ÀÖÀ¸¸ç, ¼Ò¿ï½ºÆ®¸µ°úµµ µ¿½Ã¿¡ »óŰ¡ °É¸± ¼ö ÀÖ´Ù.   
// µû¶ó¼­, µÎ°¡Áö »óŸ¦ ´Ù °¡Áö°í ÀÖ¾î¾ß ÇϹǷÎ, ÆÄÀ̾îÇÁ·¹ÀÓ°°Àº °æ¿ì ±âÁ¸(¿Ü) »óÅ·Π³ª´©¾ú´Ù.  
// ¹Ý¸é, ( NPC ) ´Â »óŽºÅ³°ú ÆÄÀ̾îÇÁ·¹ÀÓÀÌ °øÀ¯ µÉ¼ö ¾øÀ¸¹Ç·Î ±âÁ¸»óÅÂ¿Í ±âÁ¸¿Ü»óÅ·Π³ª´©Áö ¾Ê¾Ò´Ù. 
 
// 2004.10.27 Donny 2Â÷½ºÅ³ : ÆÐ½Ãºê½ºÅ³ 
#define MAX_PASSIVE  7          // 2Â÷ÀüÁ÷½ºÅ³ PASSIVESKILL 
 
#define LIFEUP			 0		// Tean 
#define WEAPONMASTER	 1		// Tean 
#define SHIELDMASTERY    2		// Tean     ½¯µå¸¶½ºÅ͸® : ¹æÆÐÀÇ ¸ðµç´É·ÂÄ¡¸¦ »ó½Â½ÃÄÑÁØ´Ù. 
#define CAVALRYMASTERY   3      // Tean     ±âº´¼ö·Ã : ¸»À» Ÿ¸é °ø°Ý·Â ¹× ¹æ¾î·ÂÀÌ »ó½ÂÇÑ´Ù. 
#define TWOHANDEDSWORD   4      // Tean     ¾ç¼Õ°Ë¸¶½ºÅ͸® : Âø¿ëÇÑ ¾ç¼Õ°ËÀÇ ¸ðµç ´É·ÂÄ¡¸¦ ¿Ã·ÁÁØ´Ù. 
#define BOWMASTERY       5      // Tean     º¸¿ì¸¶½ºÅ͸® : Âø¿ëÇÑ È°ÀÇ ´É·ÂÀ» % ·Î ¿Ã·ÁÁØ´Ù. 
#define CROSSBOWMASTERY  6		// Tean     Å©·Î½ºº¸¿ì¸¶½ºÅ͸® : Âø¿ëÇÑ ¼®±ÃÀÇ ´É·ÂÀ» %·Î ¿Ã·ÁÁØ´Ù. 
 
#define MANAUP			 0      // Fairy 
#define MAGICMASTER		 1		// Fairy  
#define BEARATTACK		 2		// Fairy  
#define STAFFMASTERY     3      // Fairy	ÁöÆÎÀ̸¶½ºÅ͸® : Âø¿ëÇÑ ÁöÆÎÀÌÀÇ ´É·ÂÀ» %·Î ¿Ã·ÁÁØ´Ù. 
#define FIREMASTERY      4      // Fairy    ºÒ¼Ó¼º¸¶½ºÅ͸® : ºÒ¼Ó¼º °ø°Ý½Ã ½ºÅ³ ¼º´ÉÀÌ Çâ»ó ¶Ç´Â µ¥¹ÌÁö°¡ Ãß°¡µÈ´Ù. 
#define ICEMASTERY       5      // Fairy    ¾óÀ½¼Ó¼º¸¶½ºÅ͸® : ¹°¼Ó¼º °ø°Ý½Ã ½ºÅ³ ¼º´ÉÀÌ Çâ»ó ¶Ç´Â µ¥¹ÌÁö°¡ Ãß°¡µÈ´Ù. 
#define HOLYMASTERY      6      // Fairy    ½Å¼º¸¶½ºÅ͸® : ½Å¼º ¸¶¹ý°ú °ü·ÃµÈ ´É·ÂÀ» %·Î ¿Ã·ÁÁØ´Ù. 
 
#define RIDING_INDEX        0 
#define DEFENSE_INDEX		1 
#define POWERBLOW_INDEX		2 
#define SHIELDATTACK_INDEX	3 
#define POWERSLASH_INDEX	4 
#define DASH_INDEX			5 
// 2004.10.27 Donny 2Â÷½ºÅ³  
#define LIFEUP_INDEX        10      // ÆÐ½Ãºê ½ºÅ³·Î Ƽ¾ÈÀÇ ÃÖ´ë ü·ÂÀ» Áõ°¡½ÃŲ´Ù. (±âº»½ºÅ³) 
#define WEAPONMASTER_INDEX  7		// ÆÐ½Ãºê ½ºÅ³·Î Ƽ¾ÈÀÇ ±âº» ¹°¸®°ø°Ý·ÂÀ» Áõ°¡½ÃŲ´Ù. (±âº»½ºÅ³) 
#define HORSECRAP_INDEX     8	    // ¸»ÀÇ °ø°ÝÇü ½ºÅ³·Î ÁÖº¯¿¡ ÀÖ´Â ¸ó½ºÅ͵éÀ» ½ºÅÏ »óÅ·Π¸¸µç´Ù. (±âº»½ºÅ³) 
#define WINDCRASH_INDEX     9       // 3Ãʰ£ ±â¸¦ ¸ðÀº ÈÄ ¿¬¼Ó º£±â½ºÅ³ (Ưº°½ºÅ³) 
 
#define BACKSTEP_INDEX		50 
#define POWERSHOT_INDEX		51 
#define STELTH_INDEX		52 
#define AIRWAVE_INDEX		53 
#define SOULSTRING_INDEX	54 
#define POWERSTRIKE_INDEX	55 
// 2004.10.27 Donny 2Â÷½ºÅ³ 
#define WINDSHOT_INDEX      56		// 3Ãʰ£ ±â¸¦ ¸ðÀº ÈÄ ¿¬¼Ó È­»ì½î±â (Ưº°½ºÅ³) 
 
#define TWINKLE_INDEX		100 
#define SLUFF_INDEX         101 
#define FIREBALL_INDEX		102 
#define ICEPE_INDEX			103 
#define SERPENT_INDEX		104 
#define BLESS_INDEX			105 
#define MANA_SHIELD_INDEX	107 
#define SERENITY			108		//ÀÓâ¿øÃß°¡.½Ã³ª¸®¿À Äù½ºÆ® °ü·Ã ¿äÁ¤ ½ºÅ³. 
#define SOULMASTER_SKILL    109     // 2004.8.30 Donny ¼Ò¿ï¸¶½ºÅͽºÅ³ : À妽º¹øÈ£ 
// 2004.10.27 Donny 2Â÷½ºÅ³ 
#define MANAUP_INDEX        110     // ÆÐ½Ãºê ½ºÅ³·Î ¿äÁ¤ÀÇ ÃÖ´ë ¸¶³ª¸¦ Áõ°¡ ½ÃŲ´Ù.  (±âº»½ºÅ³) 
#define MAGICMASTER_INDEX   111     // ÆÐ½Ãºê ½ºÅ³·Î ¿äÁ¤ÀÇ ±âº» ¸¶¹ý°ø°Ý·ÂÀ» Áõ°¡½ÃŲ´Ù. (±âº»½ºÅ³) 
#define BEARATTACK_INDEX    112     // ÆÐ½Ãºê ½ºÅ³·Î °õ°ú ÇÕüÇÑ »óÅ¿¡¼­¸¸ ¹ß»ýµÇ´Â ½ºÅ³ÀÌ´Ù. (±âº»½ºÅ³) 
#define MAGICATTACK_INDEX   113		// ¹öÇÁ ½ºÅ³·Î ¸ó½ºÅÍÀÇ ¸¶¹ý °ø°Ý·ÂÀ» ÀÏÁ¤½Ã°£ µ¿¾È Ç϶ô½ÃŲ´Ù. (±âº»½ºÅ³) 
#define MAGICDEFENCE_INDEX  114     // ¹öÇÁ ½ºÅ³·Î ¸ó½ºÅÍÀÇ ¸¶¹ý ¹æ¾î·ÂÀ» ÀÏÁ¤½Ã°£ µ¿¾È Ç϶ô½ÃŲ´Ù. (±âº»½ºÅ³) 
#define FIREFRAME_INDEX     115     // °ø°Ý ½ºÅ³·Î Çϴÿ¡¼­ ¶³¾îÁö´Â ºÒ¿î¼®ÀÌ´Ù. (Ưº°½ºÅ³) 
#define ENERGYBOLT_INDEX    116     // 3Ãʰ£ ±â¸¦ ¸ðÀº ÈÄ ¿¬¼Ó °ø°Ý ½ºÅ³ (Ưº°½ºÅ³) 
#define DARKNESS_INDEX      117     // ¹öÇÁ½ºÅ³·Î ¸ó½ºÅÍÀÇ °ø°Ý ¼º°øÀ²À» °¨¼Ò½ÃŰ´Â ±â¼ú (Ưº°½ºÅ³) 
#define WEAKNESS_INDEX      118     // ¹öÇÁ½ºÅ³·Î ¸ó½ºÅÍÀÇ È¸ÇÇÀ²À» °¨¼Ò½ÃŰ´Â ±â¼ú (Ưº°½ºÅ³)  
 
#define DIEACTION_INDEX		106 
#define LIGHTSHIELD_INDEX	150 
#define LIGHTBOLT_INDEX		151 
#define RESTORATION_INDEX   152     // 2004.12.27 Donny PVP : Ãß°¡ 
#define SLEEP_INDEX			153 
#define TRANSFORM_INDEX		154 
#define STR_INDEX			156 
// 2004.10.27 Donny 2Â÷½ºÅ³ 
#define REFRESH_INDEX       157     // Èú°è¿­·Î ÆÄƼ¿øµéÀÇ ÀÏÁ¤ ü·Â ȸº¹ ±â¼ú (Ưº°½ºÅ³) 
#define DISSTRENGTH_INDEX   158		// ¹öÇÁ°è¿­·Î ¸ó½ºÅÍÀÇ ¹°¸®°ø°Ý·ÂÀ» ÀÏÁ¤ ½Ã°£µ¿¾È °¨¼Ò½ÃŰ´Â ±â¼ú (Ưº°½ºÅ³) 
#define DISBLESS_INDEX      159     // ¹öÇÁ°è¿­·Î ¸ó½ºÅÍÀÇ ¹°¸®¹æ¾î·ÂÀ» ÀÏÁ¤ ½Ã°£µ¿¾È °¨¼Ò½ÃŰ´Â ±â¼ú (Ưº°½ºÅ³) 
#define JENNISWORD_INDEX    160     // Ÿ°ÙÁÖº¯ ¹üÀ§ °ø°ÝÀ¸·Î ¸ó½ºÅ͵鿡°Ô Ÿ°ÝÀ» ÁÖ´Â ÁÖº¯¹üÀ§°ø°Ý½ºÅ³(Ưº°½ºÅ³) 
 
// 2004-3-11 ºÒÀÇ°Ë Äù½ºÆ® º¸»ó°ü·Ã...¿ÀǽñîÁö ÀÛ¾÷¶§¸¸ ÁÖ¼® ¿¬´Ù 
#define	SUMMON_DRAKE		200 	// ³ªÁß¿¡ À妽º 
#define EARTHQUAKE_DRAKE	201		// dungeon-LIM 
#define BLAST_GAIL			202		// dungeon-LIM 
#define DIRUG_CELL			203		// dungeon-LIM 
// ¹Ì´Ï4´ëº¸¹° : ½ºÅ³¹øÈ£Áö¸¸ À¯Àú¿¡°Ô ½ºÅ³·Î µé¾î°¡Áö´Â ¾Ê´Â´Ù. ±×Àú ´øÀüÀ» ±¸º°Çϱâ À§ÇÑ °ªÀÌ´Ù. 
#define JENNI_SWORD         204 
#define JENNI_SHIELD		205 
#define JENNI_BOW           206 
#define JENNI_STAFF			207 
// ¹Ì´Ï4´ëº¸¹° : ÀϹݴøÀü°ú ¹Ì´Ï´øÀüÀ» ±¸º°Çϱâ À§ÇÑ ¹øÈ£ÀÌ´Ù. 
#define NORMAL_DUNGEON      0 
#define MINI_DUNGEON        1 
 
// 2Â÷ÀüÁ÷½ºÅ³ INDEX 
#define SHIELDMASTERY_INDEX		 11 
#define SHIELDPROTECT_INDEX		 12 
#define SHIELDCHARGE_INDEX		 13 
#define CAVALRYMASTERY_INDEX	 14 
#define HORSEDASH_INDEX			 15 
 
#define TWOHANDSMASTERY_INDEX    30 
#define POWERSMASH_INDEX         31 
#define BLADEDASH_INDEX          32 
#define AURASWORD_INDEX          33 
#define AURADEFENDER_INDEX       34 
 
#define BOWMASTERY_INDEX         60 
#define SOULBOOSTER_INDEX        61 
#define DETECTING_A_INDEX        62 
#define SOULHAWK_INDEX           63 
 
#define CROSSBOWMASTERY_INDEX    80 
#define DETECTING_B_INDEX        81 
#define BACKSTEPDOUBLESHOT_INDEX 82 
#define MORTALSHOT_INDEX         83 
 
#define STAFFMASTERY_INDEX       120 
#define TRUESIGHT_INDEX          121 
#define FIREMASTERY_INDEX        122 
#define ICEMASTERY_INDEX         123 
#define FIRE_SHIELD_INDEX        124 
#define ICE_SHIELD_INDEX         125 
#define FIREBOLT_INDEX           126 
#define ICESTRIKE_INDEX          127 
#define EXPLOSION_INDEX          128 
#define FROSTNOVA_INDEX          129 
 
#define HOLYMASTERY_INDEX        170 
#define HOLY_LIGHT_INDEX         171 
#define HEAL_INDEX               172 
#define HOLY_LIFE_INDEX          173	// 2Â÷ÀüÁ÷½ºÅ³ º¯°æ 
#define HOLY_WEAPON_INDEX        174 
#define HOLY_SHIELD_INDEX		 175 
#define BLESS_SHIELD_INDEX       176 
 
// Á÷¾÷ define 
#define	NOVICE				0 
#define	KNIGHT				1 
#define	ARCHER				2 
#define	MAGICIAN			3 
#define	FAIRY				4 
#define	ELLIADEN			5 
#define	ROIEL				6 
#define	LORDKNIGHT			7 
#define	SWORDMASTER			8 
#define	TREASUREHUNTER		9          
#define	PHANTOMSNIPER		10 
#define	LEPRECHAUN			11 
#define	ERIESIS				12 
#define ALL_JOB		255		//dungeon-LIM 
 
// 2004.10.27 Donny 2Â÷½ºÅ³ 
#define TEANRACE    0    
#define FAIRYRACE   1 
#define DADERACE    2 
 
// ¸»»óÅ °ü·Ã define 
// m_bHave : 0->¾È°¡Áö°í ÀÖ´Ù 1->°¡Áö°í ÀÖ´Ù		m_istatus : 0->Ÿ°íÀÖ´Ù	1->³»·È´Ù 
//				HORSE_NOT_HAVE	HORSE_HAVE				HORSE_STATUS_RIDE		HORSE_STATUS_DOWN 
#define HORSE_NOT_HAVE		false 
#define HORSE_HAVE			true 
#define HORSE_STATUS_RIDE	0 
#define HORSE_STATUS_DOWN	1 
 
#define HORSE_KEY_HELM		1		// ¸» Á¤º¸¿¡¼­ ¸» Åõ±¸ ¹ÙÀÌÆ® 
#define HORSE_KEY_BACK		2		// ¸» Á¤º¸¿¡¼­ ¸» ¾ÈÀå ¹ÙÀÌÆ® 
 
// 2004.11.30 Donny Æê¾ÆÀÌÅÛ¼öÁ¤ 
#define HORSE_EQUIP_NONE	0		 
 
#define SKILLBOOK_INDEX		268476186		// 5Á¡Â¥¸® 
#define ONESKILLBOOK_INDEX	268476197		// 1Á¡Â¥¸® 
//2004.8.2 Donny   °æÇèÄ¡ºÏ 
#define EXPBOOK1_INDEX		268475392		// 10000 
#define EXPBOOK2_INDEX		268475393       // 20000 
#define EXPBOOK3_INDEX		268475394		// 30000 
#define EXPBOOK4_INDEX		268475395		// 40000 
#define EXPBOOK5_INDEX		268475396		// 50000 
#define EXPBOOK6_INDEX		268475397		// 60000 
#define EXPBOOK7_INDEX		268475398		// 70000 
#define EXPBOOK8_INDEX		268475399		// 80000 
#define EXPBOOK9_INDEX		268475400		// 90000 
#define EXPBOOK10_INDEX		268475401		// 100000 
// 2005.2.22 Donny ¸»°æÇèÄ¡ºÏ 
#define HEXPBOOK1_INDEX     268475403       // 7000 
#define HEXPBOOK2_INDEX     268475404		// 12500 
#define HEXPBOOK3_INDEX     268475405		// 15500 
#define HEXPBOOK4_INDEX     268475406		// 17500 
#define HEXPBOOK5_INDEX     268475407		// 20000 
#define HEXPBOOK6_INDEX     268475408		// 23000 
#define HEXPBOOK7_INDEX     268475409		// 100000 
 
#define POINTCOUPON100_INDEX     268475955		// 100 
#define POINTCOUPON500_INDEX     268475956		// 500 
#define POINTCOUPON1000_INDEX     268475957		// 1000 
#define POINTCOUPON5000_INDEX     268475958		// 5000 
#define POINTCOUPON10000_INDEX     268475959	// 10000 
#define POINTCOUPON20000_INDEX     268475960	// 20000 
 
#define MOON_CAKE			268476201		// 10000, moon_cake 
// 2004.9.10 Donny Áß±¹PK½Ã½ºÅÛ 
#define TEAR_INDEX          268475944       // º´¾Æ¸® ´«¹° 
 
// 032_YS 6_24		À¯´ÏÄÜ °ü·Ã 
#define HORSE_RED_COLOR		0 
#define HORSE_WHITE_COLOR	1 
#define HORSE_BLACK_COLOR	2 
#define HORSE_RED_UNICON	3 
#define HORSE_WHITE_UNICON	4 
#define HORSE_BLACK_UNICON	5 
#define BROWN_BEAR          6    // ºê¶ó¿î º£¾î    // 2004.8.24 Donny ¼Ò¿ï¸¶½ºÅͽºÅ³ : Color 
#define BLACK_BEAR          7	 // ºí·¢ º£¾î 
#define POLAR_BEAR          8	 // Æú¶ó º£¾î 
#define GRATE_BROWN_BEAR    9    // ±×·¹ÀÌÆ® ºê¶ó¿î º£¾î  
#define GRATE_BLACK_BEAR    10   // ±×·¹ÀÌÆ® ºí·¢ º£¾î  
#define GRATE_POLAR_BEAR    11   // ±×·¹ÀÌÆ® Æú¶ó º£¾î 
#define HORSE_PEGASUSU		12 
 
// 2004.8.24 Donny ¼Ò¿ï¸¶½ºÅͽºÅ³ : Sex 
#define LIVE_BEAR_MALE      20 
#define LIVE_BEAR_FEMALE    21   
#define DEAD_BEAR_MALE      22 
#define DEAD_BEAR_FEMALE    23   
#define STABLE_BEAR_MALE    24     
#define STABLE_BEAR_FEMALE  25 
 
// 2004.9.2 Donny ÆêÁ¤º¸ 
#define NO_PET              0 
#define LIVE_PET            1 
#define DEAD_PET            2 
#define STABLE_PET          3 
 
// º¸¹°´øÀü°ü·Ã 
#define TREASURE_WARP			255		// cp_teleporter¿¡¼­ º¸¹°´øÀü À§ÇÁÀÓÀ» ¾Ë¸°´Ù 
#define TREASURE_BOSS_NPC_WARP	254		// 1117-LIM 
struct Treasure_Index 
{ 
	int		nMap;		// ¸Ê¹øÈ£ 
	DWORD	dwTile;		// ¿öÇÁÇÒ Å¸ÀϹøÈ£ 
}; 
 
// 2004-2-17..¿¡·¯ ¹®ÀÚ¿­ °ü·Ã¹è¿­ 
extern char	szError[256][64]; 
 
// ¹Ì´Ï4´ëº¸¹° 4->8 
#define	MAX_UNIQUE	8		// À¯´ÏÅ©ÀÇ ÃÖ´ë Á¾·ù	// 1117-LIM 
extern CDungeon		g_UniqueSkillArray[MAX_UNIQUE];	// 1117-LIM 
 
// 1117-LIM 
// ¹Ì´Ï4´ëº¸¹° MAX_UNIQUE->4 
struct RandomItem 
{ 
	int		  m_nRandomItemIndex[4];	// ³ª¿Ã ¾ÆÀÌÅÛÀ妽º 
	int		  m_nRandomItemPer[4]; 
}; 
 
// 1117-LIM 
extern RandomItem g_RandomItem[MAX_RANDOM_ITEM]; 
 
// À¯´ÏÅ© °ü·Ã 
#define		UNIQUE_NONE_SKILL			-1 
#define		UNIQUE_NONE_ITEM			0 
 
#define MAX_EXTACY		40000 
 
// Á¸ ¿öÇÁ½Ã ÇÕü Á¤º¸...ÇÊ¿äÇÑ À¯ÀúÁ¤º¸ m_nArray...¼­¹ö°¡ ¹Ù²î¸é¼­´Â Á÷Á¢ ¾Ë·ÁÁÖÀÚ 
struct	Unite_Ready 
{ 
	long	m_lUnique;			//  
	long	m_lUniteUnique; 
}; 
 
/* 
// Áß±¹·Î±× 
void WriteHTML( FILE* fp, int WQC, int UC, int FR ); 
{ 
	char tt[100]; 
	sprintf( tt, "%d%d%d", WQC, UC, FR ); 
	fseek( fp, -22, SEEK_END ); 
	fwrite( tt, strlen(tt), 1, fp ); 
	sprintf( tt, "" ); 
	fwrite( tt, strlen(tt),1,fp); 
} 
*/ 
 
// ¿¡¼ÒÅ׸®Ä«Á¸... 
struct Esoterica 
{ 
	BYTE byMap;					// ÇØ´ç ¸Ê id 
	WORD wX1,wY1,wX2,wY2;		// xyÁÂÇ¥ 
}; 
 
// Áß±¹ PK½Ã½ºÅÛ°ø½Ä 
struct PKSystem 
{ 
	int iFirstValue; 
	int iSecondValue; 
	int	iThirdValue; 
	int iFourthValue; 
}; 
 
#define MAX_ESO	10 
#define MAX_PKSYSTEM 10 
extern Esoterica	g_EsotericaZone[MAX_ESO]; 
// 2004.11.29 Donny PK½Ã½ºÅÛ°ü·Ã¹®¼­È­  
extern PKSystem     g_Pksystem[MAX_PKSYSTEM]; 
extern WORD	g_EsotericaExp[MAX_LEVEL]; 
void	Set_EsotericaExp(); 
 
//newwarp 20050601 
struct Warp_Info_New 
{ 
	Warp_Info_New() { m_My_ID = -1; m_Map_ID = -1; m_Map_Warp = -1; } 
	int		m_My_ID;		// ÇöÀç ¿öÇÁ Á¸ÀÌ ¸î¹øÀΰ¡.. 
	int		m_Map_ID;		// ¿öÇÁÁ¸ÀÌ ¿¬°áµÉ ¸Ê ¹øÈ£ 
	int		m_Map_Warp;		// ¿¬°áµÉ ¸ÊÀÇ ¿öÇÁ ¹øÈ£ 
	int		m_Map_Size;		// ¿¬°áµÉ ¸ÊÀÇ Å©±â..ÁÂÇ¥ °è»ê¿¡ ÇÊ¿ä 
	int		m_X; 
	int		m_Y; 
};  
#define MAX_WARPINFO	10000			// ºí·°Á¤º¸¼ö 
extern Warp_Info_New		g_WarpZoneInfo[MAX_WARPINFO]; 
 
 
// °è±Þ Á¾·ù 
#define	NOCLASS		100 
#define	NAMJAK		0 
#define JAJAK		1 
#define BACKJAK		2 
#define HUJAK		3 
#define GONGJAK		4 
#define GUNJANG		5 
#define SERAPHIM	6 
 
// º¸¼® Á¾·ù 
#define RUBY		268476187	//·çºñ  
#define DIAMOND		268476188	//´ÙÀ̾Ƹóµå  
#define EMERALD		268476189   //¿¡¸Þ¶öµå 
#define SAPPHIRE	268476190   //»çÆÄÀ̾î 
#define TOPAZ		268476191   //ÅäÆÄÁî 
#define GALBOREUN	268476192   //°¥º¸¸¥ 
#define MISEURIL	268476193   //¹Ì½º¸±  
#define PLETINUM	268476194	//Ç÷¡Æ¼³Ñ 
 
#define ROMER_TAR	268475402	//ÀÓâ¿ø Ãß°¡.½Ã³ª¸®¿À Äù½ºÆ® °ü·Ã 
#define ROMER_NECTA	268476198	//ÀÓâ¿ø Ãß°¡.½Ã³ª¸®¿À Äù½ºÆ® °ü·Ã 
 
#define RED_JEWEL	268476200	// È«Äá¿ë. ¾ÆÀÌÅÛ ¾÷±×·¹À̵å 100% ¾ÆÀÌÅÛ. 
 
// ItemBill-LIM // 
// ¿©±â¼­ºÎÅÏ ¾ÆÀÌÅÛ¸ô¿¡¼­ ÆÇ¸ÅÇÏ´Â ¾ÆÀÌÅÛ À妽ºÀÌ´Ù. 
#define SKILL_INIT_ITEM				269328128		//½ºÅ³ ÃʱâÈ­ ¾ÆÀÌÅÛ 
#define STAT_INIT_ITEM				269328129		//½ºÅÈ ÃʱâÈ­ ¾ÆÀÌÅÛ 
#define CHARACTER_NAME_CHANGE_ITEM	269328130		//ij¸¯ÅͰ³¸í ¾ÆÀÌÅÛ -- NameChange 
#define PET_NAME_CHANGE_ITEM		269328137		//Æê°³¸í ¾ÆÀÌÅÛ -- NameChange 
#define	TELEPORT_ITEM				269328131		//À̵¿ÁÖ¹®¼­(¼¼À̺êÆ÷ÀÎÆ® Áö¿ªÀ¸·Î) -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define REVIVE_RING					270383872		//ºÎȰ¸µ -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM1_COUNT	269328132		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ1 -- ȸ¼öÁ¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM2_COUNT	269328133		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ2 -- ȸ¼öÁ¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM3_COUNT	269328134		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ3 -- ȸ¼öÁ¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM1			269459203		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ1 -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM2			269459204		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ2 -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define PRIVATE_SHOP_ITEM3			269459205		//°³ÀλóÁ¡Æ¯¼öÆÇ¸Å¾ÆÀÌÅÛ3 -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define PET_PROJECT_ITEM			269459200		//ÆÖÇÁ·ÎÁ§Æ®(Á׾ °æÇèÄ¡ ¼Õ½Ç ¾ÈµÇ°Ô) -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define OVER_PET_ITEM				269459201		//ÆÖ ȹµæ °æÇèÄ¡ 2¹è -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define OVER_CHARGE					269459202		//Â÷Áö Áö¼Ó½Ã°£ 10ºÐ -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define REPAIR_HAMMER				269328135		//¼ö¸®ÀÇ ¸ÁÄ¡. 
#define PET_SEX_CHANGE_ITEM			269328136		//Æê ¼ºÀüȯ ¾ÆÀÌÅÛ. 
#define DUNGEON_TORCHLIGHT			269459206		//´øÀü ȶºÒ 
#define OVER_BUFF					269459207		//¿À¹ö ¹öÇÁ 
#define FULLMOON_NECKRACE			270498560		// 2004.9.23 Donny Ãß¼®À̺¥Æ® : ´ëº¸¸§¸ñ°ÉÀÌ -- ½Ã°£Á¦ ¾ÆÀÌÅÛ 
#define PAPER_CHOKING				269459212       // 2004.9.23 Donny Ãß¼®À̺¥Æ® : Á¶¿ÕÀǺÎÀû   -- ½Ã°£Á¦ ¾ÆÀÌÅÛ  
#define SONGPEON                    268476202       // 2004.9.23 Donny Ãß¼®À̺¥Æ® : ¼ÛÆí 
// 1004-LIM // 
#define SECOND_STORAGE_TAB_ITEM		269459208		// â°í2¹øÅÇ ÀÌ¿ë±Ç 
#define THIRD_STORAGE_TAB_ITEM		269459209		// â°í3¹øÅÇ ÀÌ¿ë±Ç 
#define FOURTH_STORAGE_TAB_ITEM		269459210		// â°í4¹øÅÇ ÀÌ¿ë±Ç 
#define STORAGE_SET1				269390851		// â°í¼Â1 
#define STORAGE_SET2				269390852		// â°í¼Â1 
 
// 1005-LIM // 
#define STABLE_BOOK					269459211		// ¾ÈÁ¤ÀÇ ÁÖ¹®¼­( ij¸¯ÅÍÀÇ ½ºÆ®·¹½º Áõ°¡ ¹æÁö±Ç) 
#define ITEM_PROTECT				269328139		// ¾ÆÀÌÅÛ ÇÁ·ÎÅØÆ®( ¾÷±×·¹À̵å½Ã ±âº»¾ÆÀÌÅÛ »ó½ÇÀ» ¹æÁö ) 
#define FRIEND_TELEPORT_BOOK		269328140		// Ä£±¸À̵¿ ÁÖ¹®¼­( Ä£±¸°¡ ÀÖ´Â ÁÂÇ¥·Î À̵¿ ) 
#define RED_HORSE_DYEING			269328143		// Àû¸¶ ¿°»ö¾à 
#define BLACK_HORSE_DYEING			269328144		// Èæ¸¶ ¿°»ö¾à 
#define WHITE_HORSE_DYEING			269328145		// ¹é¸¶ ¿°»ö¾à 
#define RED_BEAR_DYEING				269328146		// Àû°õ ¿°»ö¾à 
#define BLACK_BEAR_DYEING			269328147		// Èæ°õ ¿°»ö¾à 
#define WHITE_BEAR_DYEING			269328148		// ¹é°õ ¿°»ö¾à 
#define OVER_PET2_ITEM				269459222		// ¿À¹öÆÖ ¾ÆÀÌÅÛ2 - ¿¡½ºÅ׸®Ä«Á¸¿¡¼­ ÆÖ ȹµæ°æÇèÄ¡ 2¹è 
#define PET_PROJECT2_ITEM			269459223		// Æê ÇÁ·ÎÁ§Æ® ¾ÆÀÌÅÛ2 - ÆêÀÇ ½ºÆ®·¹½º°¡ ½ÎÀÌÁö ¾ÊÀ½. 
#define PET_MASTER					269459224		// Æê ¸¶½ºÅÍ 
#define MAGIC_ARROW					269459213		// ¸ÅÁ÷È­»ì	 
// 1006-LIM // 
#define CHARACTER_SEX_CHANGE_ITEM	269328149		// ij¸¯ÅͼºÀüȯ. Ƽ¾Èij¸¯ÅÍ ¼º Àüȯ ¾ÆÀÌÅÛ 
#define SKILL_MASTER1				269459214		// ½ºÅ³¸¶½ºÅÍ1. ¸ðµç½ºÅ³À» +1 ÇØÁÖ´Â ¾ÆÀÌÅÛ 
#define SKILL_MASTER2				269459215		// ½ºÅ³¸¶½ºÅÍ2. ¸ðµç½ºÅ³À» +2 ÇØÁÖ´Â ¾ÆÀÌÅÛ 
#define UPGRADE_BOOK1				269459225		// °­È­ÁÖ¹®¼­1. ¸ðµç Âø¿ë¾ÆÀÌÅÛ ¾÷±Û ¼öÄ¡¸¦ +1ÇØÁÜ 
#define UPGRADE_BOOK2				269459226		// °­È­ÁÖ¹®¼­2. ¸ðµç Âø¿ë¾ÆÀÌÅÛ ¾÷±Û ¼öÄ¡¸¦ +2ÇØÁÜ 
#define ITEM_MASTER1				269459216		// ¾ÆÀÌÅÛ¸¶½ºÅÍ1. ¾ÆÀÌÅÛÂø¿ë ·¹º§Á¦ÇÑ 10ÀÌ»ó Âø¿ë°¡´É 
#define ITEM_MASTER2				269459217		// ¾ÆÀÌÅÛ¸¶½ºÅÍ2. ¾ÆÀÌÅÛÂø¿ë ·¹º§Á¦ÇÑ 20ÀÌ»ó Âø¿ë°¡´É 
#define ITEM_MASTER3				269459218		// ¾ÆÀÌÅÛ¸¶½ºÅÍ3. ¾ÆÀÌÅÛÂø¿ë ·¹º§Á¦ÇÑ 30ÀÌ»ó Âø¿ë°¡´É 
#define ITEM_MASTER4				269459219		// ¾ÆÀÌÅÛ¸¶½ºÅÍ4. ¾ÆÀÌÅÛÂø¿ë ·¹º§Á¦ÇÑ 40ÀÌ»ó Âø¿ë°¡´É 
#define ITEM_MASTER5				269459220		// ¾ÆÀÌÅÛ¸¶½ºÅÍ5. ¾ÆÀÌÅÛÂø¿ë ·¹º§Á¦ÇÑ 50ÀÌ»ó Âø¿ë°¡´É 
// 1012-LIM // 
#define SECRET_ITEM					269459221		// ¾¾Å©¸´¾ÆÀÌÅÛ 
 
// 2004.10.6 Donny ¾ÆÀÌÅÛ¼Ó¼º  
#define MIN_DAMAGE_INCREASE         1 
#define MAX_DAMAGE_INCREASE         2 
#define SKILL_DAMAGE_INCREASE       4 
#define ENEMY_DEFENCE_NEGLECT       8 
#define PHYSICAL_DAM_DECREASE       16 
#define MAGIC_DAMAGE_DECREASE       32 
#define HP_GET_FROM_ATTACK          64 
#define MP_GET_FROM_ATTACK          128 
#define MPHP_GET_FROM_ATTACK        256 
#define USAGE_MP_DECREASE           512 
#define SKILL_LEVEL_UPGRADE         1024 
 
#ifdef FULLMOON_IVENT 
#define M_CHARACTER					268476172		//M¹®ÀÚ 
#define O_CHARACTER					268476174		//A¹®ÀÚ 
#define N_CHARACTER					268476173		//R¹®ÀÚ 
#define C_CHARACTER					268476162		//C¹®ÀÚ 
#define A_CHARACTER					268476160		//A¹®ÀÚ 
#define R_CHARACTER					268476177		//R¹®ÀÚ 
#define P_CHARACTER					268476175		//P¹®ÀÚ 
#define E_CHARACTER					268476164		//E¹®ÀÚ 
#define D_CHARACTER					268476163		//D¹®ÀÚ 
#define I_CHARACTER					268476168		//I¹®ÀÚ 
#endif 
 
// 2004.10.27 Donny 2Â÷½ºÅ³ : 2Â÷½ºÅ³ÁÖ¹®¼­ 
#define DARKNESS_PAPER				268476203 
#define DISBLESS_PAPER              268476204 
#define DISSTRENGTH_PAPER           268476205  
#define LIFEUP_PAPER                268476206 
#define MAGICDEFENCE_PAPER          268476207 
#define MAGICATTACK_PAPER           268476208 
#define REFRESH_PAPER               268476209 
#define MANAUP_PAPER                268476210 
#define MAGICMASTER_PAPER           268476211 
#define BEARATTACK_PAPER            268476212 
#define ENERGYBOLT_PAPER            268476213 
#define WEPEONMASTER_PAPER          268476214 
#define WEAKNESS_PAPER              268476215 
#define WINDSHOT_PAPER              268476216 
#define WINDCRASH_PAPER             268476217 
#define JENNISWORD_PAPER            268476218 
#define FIREFRAME_PAPER             268476219 
#define HORSECRAP_PAPER             268476220 
 
// 1108-LIM // 
#ifdef SOONEUNG 
#define TIAN_FORK		269484056		// Ƽ¾ÈÆ÷Å© 
#define FAIRY_FORK		319821076		// ¿äÁ¤Æ÷Å© 
#define TIAN_BAT		269484055		// Ƽ¾È¹æ¸ÁÀÌ 
#define FAIRY_BAT		319821075		// ¿äÁ¤¹æ¸ÁÀÌ 
#define CHAP_RICE_CAKE	268476222		// Âý½Ò¶± 
#define TAFFY			268476223		// ¿³ 
#endif 
 
// 1108-LIM // 
#ifdef THIN_THIN_RO_DAY 
#define	CHOCO_THIN_THIN_RO	268475673	// ÃÊÄÚ»©»©·Î 
#define WHITE_THIN_THIN_RO	268475674	// È­ÀÌÆ®»©»©·Î 
#define NUDE_THIN_THIN_RO	268475675	// ´©µå»©»©·Î 
#define ALMOND_THIN_THIN_RO	268475676	// ¾Æ¸óµå»©»©·Î 
#define GOLD_THIN_THIN_RO	268476221	// °ñµå»©»©·Î 
#endif 
 
#define HEART_NECKRACE		269449985	// ÇÏÆ®¸ñ°ÉÀÌ 
 
// 1116-LIM // 
#define FOUR_LEAF_CLOVER	269459229	// ³×ÀÙŬ·Î¹ö. 
#define TIAN_ESAWHA			286279440	// ¾î»çÈ­(Ƽ¾È) 
#define ELF_ESAWHA			319833867	// ¾î»çÈ­(¿äÁ¤) 
#define HONG_PAE			269459227	// È«ÆÐ 
#define PASS_PRAYER_AMULET	269459228	// ÇÕ°Ý±â¿øºÎÀû. 
 
// 1117-LIM // 
#define SEALED_ATTACK_WEAPON_BOX		268472381	// ºÀÀÎµÈ ¹«±â»óÀÚ 
#define SEALED_DEFENCE_WEAPON_BOX		268472382	// ºÀÀÎµÈ ¹æ¾î±¸»óÀÚ 
#define SEALED_TREASURE_BOX				268472383	// ºÀÀÎµÈ º¸¹°»óÀÚ 
#define SEALED_JEWEL_BOX				268472384	// ºÀÀÎµÈ º¸¼®»óÀÚ 
 
// 1117-LIM 
#define CHARGE_MASTER1	269328150	// Â÷Áö¸¶½ºÅÍ1.(10ºÐ°£) 
#define CHARGE_MASTER2	269328151	// Â÷Áö¸¶½ºÅÍ2.(10ºÐ°£) 
#define CHARGE_MASTER3	269328152	// Â÷Áö¸¶½ºÅÍ2.(10ºÐ°£) 
#define SECOND_SKILL_MASTER1	269459230	// 2Â÷½ºÅ³¸¶½ºÅÍ 
#define	SKILL_UP1		269328153	// ½ºÅ³¾÷ 
#define	SKILL_UP2		269328154	// ½ºÅ³¾÷ 
#define	SKILL_UP3		269328155	// ½ºÅ³¾÷ 
#define SECOND_SKILL_UP1	269328156	// 2Â÷ ½ºÅ³¾÷ 
#define SECOND_SKILL_UP2	269328157	// 2Â÷ ½ºÅ³¾÷ 
#define SECOND_SKILL_UP3	269328158	// 2Â÷ ½ºÅ³¾÷ 
 
#define WALNUT		269459231 		// ´ëº¸¸§ ¾ÆÀÌÅÛ - È£µÎ 	 
 
// 06-08 Baek.. ¾ÆÀÌÅÛ¸ô ¾ÆÀÌÅÛ Ãß°¡ 
#define OVER_CHARGE_DAY				269459232 
#define PET_MASTER_DAY				269459240 
#define HEART_NECKRACE_DAY			269449986 
#define PASS_PRAYER_AMULET_DAY		269459234 
#define PAPER_CHOKING_DAY			269459235 
#define HONG_PAE_DAY				269459233 
#define OVER_CHARGE_WEEK			269459236 
#define PET_MASTER_WEEK				269459241 
#define HEART_NECKRACE_WEEK			269449987 
#define PASS_PRAYER_AMULET_WEEK		269459238 
#define PAPER_CHOKING_WEEK			269459239 
#define HONG_PAE_WEEK				269459237 
 
// 06-23 Baek.. ¾ÆÀÌÅÛ¸ô ¾ÆÀÌÅÛ Ãß°¡ 
#define UPGRADE_BOOK1_DAY			269459245 
#define SKILL_MASTER1_DAY			269459243 
#define SECOND_SKILL_MASTER1_DAY	269459244 
#define UPGRADE_BOOK1_WEEK			269459248 
#define SKILL_MASTER1_WEEK			269459246 
#define SECOND_SKILL_MASTER1_WEEK	269459247 
 
#endif 
//_________________________________________________________________________________ 
//	 
//	end of Base.H 
//_________________________________________________________________________________ 
//