⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 itemtable.h

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 H
📖 第 1 页 / 共 5 页
字号:
	int poisoning;
	int entrapment;
	int scrooling;
	int cunning;
	int bomb_play;
	int tactice;
	int crapple;
	int sword;
	int archey;
	int fencing;
	int mace;
	int pierce;
	int whid;
	int hurt;
	int parrying;
	int double_sword;
	int double_mace;
	int change_music;
	int change_detect;
	int change_hide;
	int change_amping;
	int change_taming;
	int weight;
	int max_duration;
	int object;
	int wear_able;
	int base_value;
	int base_store;
	int store_const;
	int store_plus_const;
	int Item_kind;
	int Mouse_MR;
	int Mouse_MRD;
	int Mouse_MR_Effect;
	int Mouse_Mr_Wave;
	int Use_Junk;
	int kind_of_magic;
	int Incr_damage;




public:
	virtual int GetImageNumber() { return Image_Number;}
	virtual int GetObjectNumber() { return object; }
	virtual int ReadItemTable( char *temp );
	virtual int GetItemId(){return Item_id;}
	virtual int GetItemClass(){return wear_able;}
	virtual int GetItemWeight(){ return weight; }
	virtual int GetItemValue(){ return base_value; }
	virtual void SetItemValue(int p) { base_value = p; return; }
	virtual int GetItemDuration() { if( max_duration ) return max_duration; else return 1; }
	virtual char *GetItemName() { return Name; }
	virtual char *GetItemHanName() 
	{ 
		#ifdef USA_LOCALIZING_
				return Name; 
		#else
				return Han_Name; 
		#endif
	}
	virtual int GetRButton() { return Mouse_MR; }
	virtual int GetUseJunk() { return Use_Junk; }
	virtual int EquipItem();
	virtual int CurrEquip();		
	virtual int ReleaseItem();
	virtual int GetDamage() { return Damage; }
	virtual int GetRButtonSound() { return Mouse_Mr_Wave; }
	virtual int GetItemKind() { return Item_kind; }
	virtual int is_equipable();
	virtual void GetItemNeedAbility( int &count, int *type, int *value );
	virtual void GetItemChangeAbility( int &count, int *type, int *value );
	virtual int is_equipable2(int dest_pos );
	virtual int GetRepairAble() { return Repairable; }
	virtual int GetGender() { return Need3_gender; }
	void CopyItemClass( CItem_Etc *source, int ct );
	virtual int GetSkillAbility() { return Skill_Ability; }
	virtual int GetMouse_MRD() { return Mouse_MRD; }
	virtual int GetAR_or_DH() { return AR_or_DH; }
	virtual int GetHit_rate() { return Hit_rate; }
	virtual int GetDefense_rate() { return Defense_rate; }
	virtual int GetMovePoint() { return Defense_power; }
	virtual int GetMouse_MR_Effect() { return Mouse_MR_Effect; }
	virtual int GetItemColor( ) { return  ( int )ReturnBlendRGB( imunity_Cure_1, Imunity_Cure_2, Imunity_Cure_3 ); }	// 011018 KHS 噶肚
	virtual int GetNeedNation() { return Imunity_Cure_4; }
	virtual int GetNeedLv() { return Imunity_Cure_5; }
	virtual int GetNeedFame() { return Imunity_Cure_6; }

		
	virtual int GetNeedDualStep(){ return Need2_max_age; }//021113 lsw

	virtual int GetClassWarriorAble(){ return Class_Warrior;}
	virtual int GetClassArcherAble(){ return Class_Archer;}
	virtual int GetClassThiefAble(){ return Class_Thief;}
	virtual int GetClassWizardAble(){ return Class_Wizard;}
	virtual int GetClassClericAble(){ return Class_Cleric;}
};

struct CItem_List 
{
	CItem *Item_type[Num_Of_Item_Type][ITEM_MAX];
	int nItem[Num_Of_Item_Type] ;
};

/////////////////////////////////////////////////////////////////////////////////
// 酒捞袍 盔贰 器瘤记阑 困茄 叼颇牢苞 胶飘钒
#define HAND		0
#define INV			1
#define EQUIP		2
#define	QUICK		3
#define BANK		4
#define BOX			5
#define MAKE		6
#define OTHER_CH	7

#define IM_CHARACTER	124
#define GROUND	125
#define USE		126


/////////////////////////////////////////////////////////////////////////////////
typedef struct tagPOS
{
	char type;
	short int p1, p2, p3;
} POS;						// 酒捞袍 困摹 历厘

/////////////////////////////////////////////////////////////////////////////////
// 040105 YGI 焊拱
///////////////////////////////////////////////////////
struct CTreasureMapItem
{
	DWORD mapnumber	:7;
	DWORD x			:10;
	DWORD y			:10;
//	DWORD use		:1;	// 荤侩沁绰啊?
	DWORD isChecked	:1;	// 积己茄 饶俊 谅钎甫 掘绢 吭绰啊?
	DWORD offset	:2;
	DWORD offset2	:2;
};

/////////////////////////////////////////////////////////////////
// 酒捞袍 按眉 加己
typedef struct ITEMATTR//021126 lsw
{
	short int item_no;
	unsigned int attr[6];	
} ItemAttr;

#define OTHER_INV_MAX	15
typedef struct tag_Other_Ch		// 促弗 PC 沥焊
{
	DWORD	id;
	bool	bLive;
	ItemAttr inv[OTHER_INV_MAX];

}OtherCharacter, *lpOtherCharacter;
extern OtherCharacter You;
//////////////////////////////////////////////////////////////////

typedef struct tagMakeItem		// 累诀措俊辑 荤侩且 酒捞袍 备炼眉
{
	int			item_no;
	int			x;
	int			y;
	RECT		rect;
	ItemAttr	attr;
	POS			pos;
} MakeItem;

extern MakeItem make_item_list[20];
// ----------------------- magic -----------------------//
#define		WZD				0
#define		PRI				1

#define		Link			0	// 炼钦 付过		
#define		ImgNum			1	// 弊覆 锅龋
#define		MagicClass		2	// 拌凯
#define		Lv				3	// 概流 饭骇
//#define		Lv_Img			4	// 2饭骇 弊覆
//#define		Lv_Rect			6	// 2饭骇 灌篮 弊覆

#define		MAGIC_DATA_MAX	4

#define MAX_MAGIC_			200
#define Explain_MAX			200
#define MAGIC_SPR_MAX		108

class CMagic 
{
private :
	int		m_iMagicNum;
	char	m_szName[ITEM_NAME_MAX];
	char	m_szHanName[ITEM_NAME_MAX];
	int		m_data[MAGIC_DATA_MAX];
	char	m_szExplain[1024];

public :

	int	 GetImage( ) { return m_data[ImgNum]; }
	int  GetClass() { return m_data[MagicClass]; }
	void Explain(const int iX, const int iY, const BOOL bSpell );		// wizard
	void SetArray();					// 弊 概流捞 甸绢哎 磊府俊 悸泼茄促.
	void SetArray2();
	
	const char* GetName() const { return m_szName; }
	void SetName(const char* szName) { strcpy(m_szName,szName); }
	
	const char* GetHanName() const { return m_szHanName; }
	void SetHanName(const char* szName) { strcpy(m_szHanName,szName); }

	char* GetExplain() { return m_szExplain; }
	void SetExplain(const char* szName) { strcpy(m_szExplain,szName); }
	
	int GetMagicNum() const{ return m_iMagicNum; }
	void SetMagicNum(const int iValue) { m_iMagicNum = iValue;}

	void SetData(const int iType, const int iValue){m_data[iType] = iValue; }
		
	void DeleteMagic( ); 
	void LoadExplain( int num, FILE *fp );
};
//#### 坷弗率 付快胶 努腐窍搁 唱坷绰 皋春狼 弊覆 锅龋 沥狼 ####
#define		BOX_OPEN	941
#define		MONEY_BOX	942
#define		MAGIC_BOOK	943

//#### 坷弗率 付快胶 滚瓢 努腐饶 角青窍绰 辆幅 沥狼 ####
#define		USE_ITEM			1		// 家厚登绢 荤扼柳促.
#define		DIVIDE_ITEM			3		// 酒捞袍狼 箭磊甫 盒府茄促.
#define		REMAIN_ITEM			4		// 荤侩饶 伯单扁 巢澜
#define		MAGIC_BOOK_ITEM		5		// 付过氓捞 夺促.
#define		DIARY_ITEM			6		// 老扁氓捞 夺促.
#define		BOX_ITEM			7		// 购瘤 舅瘤?
#define		TIME_LIMIT			9		// 购瘤 舅瘤?//011212 lsw
#define		DUAL_CHANGE_ITEM	8 // 掂倔 努贰胶肺 函券窍扁 困茄 酒捞袍
#define		SOKSUNG_ITEM		9 // 掂倔 努贰胶肺 函券窍扁 困茄 酒捞袍

class CItem_Join
{
public :	
	int no;
	int item_id;
	char item_name[31];
	int item_amount;
	char han_name[31];	
	int need_know;	
	int teach_place;	
	int need_skill1;	
	int skill1_minimum;	
	int skill1_maximum;	
	int need_skill2;	
	int skill2_minimum;	
	int skill2_maximum;	
	int tech_price;	
	int Tool_kind;	
	int Flatform_kind;	
	int resource1;	
	int resource1_amount;	
	int resource2;	
	int resource2_amount;	
	int resource3;	
	int resource3_amount;	
	int resource4;	
	int resource4_amount;	
	int Result_resource1;	
	int Result_resource1_amount;	
	int Result_resource2;	
	int Result_resource2_amount;	
	int reutilizerble;	
	int k1;	
	int k2;
	char explain[MAX_STRING];

public :
	void ReadItemJoin( char *string );

};

typedef struct tag_ItemJoinSelect		 // 酒捞袍 父甸扁俊辑 急琶
{
	int join_no;		// 搬窃 抛捞喉狼 墨款飘 锅龋	--> 犁丰 抛捞喉阑 啊廉坷扁困茄 梅磊肺 荤侩
	int item_no;		// 酒捞袍 酒捞叼
	int skill_min;
	int kind;
	int skillability;
}ItemJoinSelect;

typedef struct tag_PosItem
{
	int item_no;
	POS pos;
}PosItem;

typedef struct tag_MagicByClass
{
	int magic[13][20];
	int max[13];
}MagicByClass;

#define ITEM_JOIN_MAX	1000
#define MAX_SKILL		200

#define MAX_ITEM_EXPLAIN_MSG	500
#define MAX_ITEM_EXPLAIN_COUNT	50		// 汲疙啊瓷茄 酒捞袍

struct CItemExplainBasic
{
public : 
	int		m_nItemId;
	char	m_szHanName[30];
	char	explain[MAX_ITEM_EXPLAIN_MSG];
};


class CItemExplain
{
public : 
	CItemExplainBasic	m_Item[MAX_ITEM_EXPLAIN_COUNT];
	int m_nCount;		// 角力 荐...

public :
	CItemExplain() { memset( m_Item, 0 , sizeof( CItemExplainBasic) * MAX_ITEM_EXPLAIN_COUNT ); }
	void GetItemExplain( int n = 0 );
	void SortingById();				// text肺 佬绢 甸老锭 酒捞叼 鉴栏肺 家泼阑 茄促.
	int  SearchById( int id );		// 2盒过栏肺 蔼阑 茫绰促.		// 颇扼皋鸥甫 逞败林绊 茫瘤 给窍搁 -1阑 逞败 霖促.
	char *GetName( int para );
	char *GetExplain( int para );

	int SetValue( int para, char *text );

};

extern CItemExplain g_GM_Item;

/////////////////////////////////////////////////////////////////////////////////
extern CMagic	magic[MAX_MAGIC_];
extern Spr		magic_spr[MAGIC_SPR_MAX];
extern CItem_Join	item_join[ITEM_JOIN_MAX];
extern int		inclusive_to_skill[MAX_SKILL_KIND][8];
extern int		Hero_Ability[20];
/////////////////////////////////////////////////////////////////////////////////


extern Spr		Icon1[ITEM_MAX][10];
extern Spr		Icon2[ITEM_MAX][10];
extern Spr		Icon3[ITEM_MAX][10];
extern Spr		Icon4[ITEM_MAX][10];
extern Spr		Icon5[ITEM_MAX][10];
extern Spr		Icon6[ITEM_MAX][10];
extern Spr		Icon7[ITEM_MAX][10];
extern Spr		Icon8[ITEM_MAX][10];
extern Spr		Icon9[ITEM_MAX][10];
extern Spr		Icon10[ITEM_MAX][10];
extern Spr		Icon11[ITEM_MAX][10];
extern Spr		Icon12[ITEM_MAX][10];
extern Spr		Icon13[ITEM_MAX][10];


extern struct CItem_List Item_Ref;			// 酒捞袍
extern int HandItemOn;

extern void		InventoryBackUp();
extern void		InventoryRestore();

extern void		ChangeEquip( LPCHARACTER lpCharacter , ItemAttr *equip_item, int type ); //  Menu.cpp
extern int		CallItemVirtualFunction( int function, int item_number );
extern void		SetItemMakeOk( ItemAttr Item );

////////////////////////////////////////////////////////////////////////////////////
#define	CIA_DURATION		101
#define CIA_VIEW_CHANGE		102
#define CIA_MUCH			103

extern int	ChangeItemAttr( ItemAttr *item, int type, int plus, int skill );
extern CItem *ItemUnit( int type, int item_no );
extern CItem *ItemUnit( ItemAttr item );
extern CItem *ItemUnit( int item_no );
extern int DeleteItem( ItemAttr *item );
extern int DeleteItem( POS pos );
extern bool CanLearnItem( int item, int price, int &join_no);
extern bool CanLearnItemForExplain( int item );
extern ItemAttr Item_Number2Attr( int item );


extern	void	ReqItemInfo0();
extern	void	ReqItemInfo1();
extern	void	ReqItemInfo2( int count );
extern	void	ReqMagicInfo();
extern	void	ReqSkillInfo();
extern	void	ReqConnectInfo();

extern	void	SendLearnSkill( int skill_no, int guild_no );
extern	void	GetItemDuration( ItemAttr item, WORD &d_curr, WORD &d_max );
extern	inline int GetItemNumber( int item_number , int& type, int& num );

extern	void	SetItemPos(int type, POS*);
extern	void	SetItemPos(int type, int p, POS*);
extern	void	SetItemPos(int type, int p1, int p2, int p3, POS*);
extern	POS		IP_base;					//  酒捞袍捞 盔贰 乐菌带 磊府

extern	ItemAttr InvItemAttr[3][3][8];
extern	ItemAttr EquipItemAttr[8];
extern	ItemAttr QuickItemAttr[7];
extern	ItemAttr BankItemAttr[5][3][6];
extern	ItemAttr HandItemAttr;
extern	ItemAttr SupperItemAttr[3][15];

extern	ItemAttr InvAttrBackUp[3][3][8];
extern	ItemAttr EquipAttrBackUp[8];
extern	ItemAttr QuickAttrBackUp[7];
extern	ItemAttr HandAttrBackUp;

extern	void FreeItemIcon();
extern	int GetTotalWeight( );		// 泅犁 郴啊 家瘤窍绊 乐绰 酒捞袍狼 醚 公霸 
extern	int CalMovpByWeight();		// 酒捞袍 公霸俊 狼茄 捞悼荐摹 函券 拌魂 皋家靛
extern char g_MagicName[MAX_MAGIC_][31];
extern int n_MagicBagic[2][12][15];

extern ItemAttr GenerateItem( int item_no )	;
extern int GetLineItemExplain( ItemAttr item , char explain[5][40]);
extern void FreeItemTable();

extern int menu_to_set[];
extern char *GetItemHanName( int item_id );
extern void CheckAbility();
extern void ItemSoundOfGetItem( int item_no );

extern int CheckInventory( const int iItemNo, const int iNeedCount );//021111 lsw
extern int GetSkillMother( int kind , int skill_mother[], int max );
extern bool EqualItem( const ItemAttr *source, const ItemAttr *target );		// 滴 酒捞袍捞 鞍篮瘤 眉农
#endif//AFX_ITEM_TABLE_H__9E46C0B2_FD86_4EBD_B107_B9D8B67B0669__INCLUDED_

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -