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

📄 menuset.h

📁 完整龙族的无错反外挂登陆器,b编译后直接直接就可以放在客户端下运行
💻 H
📖 第 1 页 / 共 2 页
字号:
	int level;
	char *explain;
	CPotalMenuUnit()
	{
		explain = 0;
	}
	int clear()
	{
		if( explain ) delete explain;
		explain = 0;
		return 1;
	}
	~CPotalMenuUnit()
	{
		clear();
	}
};

class CPotalMenu
{
	CPotalMenuUnit m_Map[MAX_POTAL_MAP];
	int m_Count;
public :
	~CPotalMenu()
	{
		clear();
	}
	CPotalMenu()
	{
		m_Count = 0;
	}
	int clear()
	{
		m_Count = 0;
		for( int i=0; i<MAX_POTAL_MAP; i++ )
		{
			m_Map[i].clear();
		}
		return 1;
	}
	int GetMax() { return m_Count; }
	int GetMapNumber( int num ) { return m_Map[num].map_number; } 
	int GetType( int num ) { return m_Map[num].type; }
	int GetImgType( int num ) { return m_Map[num].img_type; }
	int GetMapMoney( int num ) { return m_Map[num].money; }
	char *GetMapName( int num ) { return m_Map[num].map_name; }
	char *GetMapExplain( int num ) { return m_Map[num].explain; }
	int GetMapLevel( int num ) { return m_Map[num].level; }
	int LoadPotalMap( int nation );
	int SetExplain( int num, char *str, int size )
	{
		m_Map[num].clear();
		m_Map[num].explain = new char[size+1];
		strcpy( m_Map[num].explain, str );
		return 1;
	}
};


/////////////////////////////////////////////
struct CFriend
{
	int m_bLogin;		// 立加 吝捞促 酒聪促.
	char name[20];
	RECT rect1;		// 庇加富
	RECT rect2;		// 皋老

	CFriend()
	{
		clear();
	}
	int clear()
	{
		m_bLogin = 0;
		name[0] = 0;
		SetRect( rect1, 0, 0, 0, 0 );
		SetRect( rect2, 0, 0, 0, 0 );
		return 1;
	}
};

const int MAX_FRIEND_GROUP = 30;
class CFriendGrup
{
public :
	int count;
	CFriend m_Friend[MAX_FRIEND_GROUP];
public :
	CFriendGrup()
	{
		count = 0;
	}

	int SetFriendName( int cn, char *name );
	int SetFriendLogin( int cn, int login );
	char *GetFriend( int cn, int &login );
	int InsertFriend( char *name, int login );
	int clear();
	int SerchName( const char *name );//030504 lsw
	int DeleteName( int cn );
	int SetRect( int cn, int type, int left, int top, int right, int bottom );
	char *CheckRect( int cn, int type, int x, int y );
};

/////////////////////////////////////////////
#define MAX_RUNE 25

struct CRuneExplain
{
	char m_szTitle[4][MAX_RUNE+1][128];
	char m_szExplain[4][MAX_RUNE+1][2048];
	string	m_szExplainTitle[4];
public :
	CRuneExplain() 
	{ 
		memset( m_szTitle, 0, sizeof( char )*4*(MAX_RUNE+1)*128 ); 
		memset( m_szExplain, 0, sizeof( char )*4*(MAX_RUNE+1)*2048 );
		LoadLuneText();
	};

public :	
	int LoadLuneText();
	int LoadLuneText2( int lune_num );
	LPCTSTR GetTitleExplain( int lune_num );
};

struct k_RuneMenu
{
	int m_nRuneNum;				// 烽 锅龋
	int m_nLeftRuneImage;		// 哭率俊 嘛阑 烽 锅龋
	int m_nRightRuneImage;		// 坷弗率俊 嘛阑 烽 锅龋
	int x;
	int y;
};

class CRuneMenu
{
public :
	int m_nQuestStep;
	int m_nSelectRune;
	k_RuneMenu m_stRune[MAX_RUNE];	
public :
	CRuneMenu();
	int LoadRuneMenuXY();
};

struct k_guild_degree
{
	char m_pszGuildDegree[5][20];
};
struct k_guild_regist_explain
{
	char m_pString[100][256];
};
struct k_char_rgb
{
	int		body_r;			//  寇葛 祸
	int		body_g;					
	int		body_b;
	int		cloth_r;
	int		cloth_g;
	int		cloth_b;
	
	k_char_rgb() { set(); }
	~k_char_rgb();
	int set();
};

struct k_view_nation_money
{
	DWORD money3;
	DWORD money4;
	DWORD money6;
	k_view_nation_money()
	{
		money3= 0;
		money4= 0;
		money6= 0;
	}

};

class CNameOfGuildMemberList
{
public:
	int m_iDegree;		// 殿鞭
	bool m_bRecv;		// 捞固 罐篮利 乐促. 
	int m_iTotal;
	int *m_bpIsConnect;		// 立加秦 乐绰 某腐牢瘤 犬牢
	string	*m_lpszName;

public :
	CNameOfGuildMemberList()
	{
		m_lpszName = 0;
		m_bpIsConnect = 0;
		clear();
	}
	int clear()
	{
		if( m_lpszName ) delete[] m_lpszName;
		if( m_bpIsConnect ) delete[] m_bpIsConnect;
		m_bRecv = 0;
		m_iTotal = 0;
		m_bRecv = 0;
		m_lpszName = 0;
		m_bpIsConnect = 0;
		return 1;
	}
	~CNameOfGuildMemberList()
	{
		clear();
	}
};
class CGuildMemberName
{
public :
	int m_nSubMasterNumber_degree;		// 辑滚 付胶磐啊 加秦 乐绰 镑狼 殿鞭
	int m_nSubMasterNumber;				
	CNameOfGuildMemberList m_degree[5];
public :
	int clear()
	{
		m_nSubMasterNumber_degree = -1;
		for( int i=0; i<5; i++ ) m_degree[i].clear();
		return 1;
	}
	~CGuildMemberName()
	{
		clear();
	}
	int GetRecv( int degree )
	{
		return m_degree[degree].m_bRecv;
	}
	int SetRecv( int degree )
	{
		m_degree[degree].m_bRecv = 1;
		return 1;
	}
	int SetCount( int degree, int count, k_get_guild_memeber_list_name *data );
	int GetCount( int degree )
	{
		return m_degree[degree].m_iTotal;
	}
	const char *GetName( int degree, int count )
	{
		if( count >= GetCount(degree ) ) return NULL;
		return m_degree[degree].m_lpszName[count].c_str();
	}
	int GetIsConnect( int degree, int count )
	{
		if( count >= GetCount(degree ) ) return NULL;
		return m_degree[degree].m_bpIsConnect[count];
	}
	bool GetSubMasterNumber( int &degree, int &number )
	{
		degree = m_nSubMasterNumber_degree;
		number = m_nSubMasterNumber;
		if( degree == -1 ) return 0;
		return 1;
	}
};


class CGuildHouseInfo
{
public:
	int m_max;
	k_guild_house_info_unit *m_data;

public:
	CGuildHouseInfo()
	{
		m_max =0 ;
		m_data = 0;
	}
	CGuildHouseInfo( int max )
	{
		m_max = max;
		if( !max ) return;
		m_data = new k_guild_house_info_unit[max];
	}
	~CGuildHouseInfo()
	{
		if( m_data ) delete [] m_data;
	}
	int CopyInfo( int index, k_guild_house_info_unit *data )
	{
		if( !m_data ) return 0;
		if( index >= m_max ) return 0;
		m_data[index] = *data;
		return 1;
	}
	bool IsExistGuild( int guild_code )
	{
		for( int i=0; i<m_max; i++ )
		{
			if( guild_code == m_data[i].guild_code ) return true;
		}
		return false;
	}
	int GetGuildCode( int index ) { return m_data[index].guild_code; }
	bool CheckSignet( int index ) 
	{
		if( GetItemMuchByMuchItem( IN_BLUE_SIGNET ) < m_data[index].blue ) return false;
		if( GetItemMuchByMuchItem( IN_RED_SIGNET ) < m_data[index].red ) return false;
		return true;
	}
};

///////////////////////////////////////
// m_PartySelect 函荐俊 荤侩且 蔼 沥狼
#define PS_EXP			10
#define PS_TACTIC		20
#define PS_MAGIC_TAC	30
//////////////////////////////////////


// 020428 YGI acer
////////////////////////////////////////////////
// 硅凯锅龋甫 曼炼 沁绰瘤 臼沁绰瘤甫 颇厩窍绰 努饭胶 急攫
class CAlreadyCheck
{
private : 
	int m_nProcessId;
	CAlreadyCheck *next;
public :
	CAlreadyCheck()
	{
		m_nProcessId = 0;
		next = 0;
	}
	~CAlreadyCheck()
	{
		if( next ) delete next;
	}
	bool CheckProcessId( int check_id )
	{
		CAlreadyCheck *temp = next;
		while( next )
		{
			if( m_nProcessId == check_id ) return true;
			temp = temp->next;
		}
		return false;
	}
	int AddProceessId( int add_id ) 
	{
		CAlreadyCheck *prev = this;
		CAlreadyCheck *temp = next;
		for( ; temp; prev = temp, temp = temp->next )
		{
			if( temp->m_nProcessId == add_id ) return false;
		}
		CAlreadyCheck *data = new CAlreadyCheck;
		data->m_nProcessId = add_id;
		prev->next = data;
		return true;
	}
};

class CScenarioTrapInfo
{
public :
	int m_nTotalTrap;
	int m_nActiveTrap;
	int m_nWaitTimeOfDungeon;
	int m_nWaitTimeOfTrap;
public : 
	CScenarioTrapInfo()
	{
		memset( &m_nTotalTrap, 0, sizeof(int)*4 );
	}
};
// thai2 YGI
#include "kein_stl.h"
typedef TKeinMap<POINTS> CMapDinamicTile;
// 021107 YGI--------------------
extern DWORD g_curr_time;
class CEventMoveMap
{
public : 
	k_event_move_map_rep	data;
	DWORD					m_dwRecvTime;

public :
	CEventMoveMap()
	{
		memset( &data, 0, sizeof( k_event_move_map_rep ) );
		m_dwRecvTime = 0;
	}
	void Set( k_event_move_map_rep *pData )
	{
		data = *pData;
	}
	CEventMoveMap operator = ( k_event_move_map_rep &data )
	{
		m_dwRecvTime = g_curr_time;
		Set( &data );
		return *this;
	}
	bool IsCanMove()
	{
		if( !m_dwRecvTime ) return 0;
		if( g_curr_time - m_dwRecvTime > 120 ) return 0;		// 120 盒捞 瘤车促.
		return 1;
	}
};

////////////////////////////////////////////////////
class CMenuVariable		// 皋春 茄焙单俊辑父 荤侩且 傈开 函荐 葛烙
{
	//021030 YGI
public : 
	enum
	{
		ACTIVE_EVENT_OBJECT = 0x01,
		ACTIVE_EVENT_SOUND = 0x02,
	};

public :
	CRuneMenu *m_pRune;
	int m_bLoadGuildMark;
	int	m_GuildSaveId;
	char *m_pSubGuildMaster;
	k_guild_degree *m_pGuildDegree; // 辨靛 流氓 涝仿 烙矫 函荐
	k_guild_regist_explain *m_pGuildRegistExplain;
	//char (*m_ppGuildRegistExplain)[256];
	int	m_bGuildChatOn;
	CRuneExplain	*m_clsRuneExplain;
	k_char_rgb		*m_stRGB;
	bool			m_bChangeColor;
	k_view_nation_money	*m_stNationMoney;
	bool			bCheckSalvation;
	MakeItem		*pGambleItem;
	BYTE			m_GambleRune;
	int				m_GambleRand;		// 烽倒酒啊绰 弥家茄狼 规过
	CGuildMemberName m_GuildMemberName;
	char			*m_szGuildPublicNotics;
	CFriendGrup		*m_FriendGrup;
	ItemAttr		*m_TodayGambleItem;
	char			m_PartySelect;
	CPotalMenu		*m_PotalMap;
	char			m_bOXTime;
	DWORD			m_OXTime;
	CGuildItem		*m_pGuildItem;
	POS				*m_pPutGuildItem;
	int				m_nCheckSubMaster;
	string			m_szFileTextPut;
	k_nation_item	m_nation_item;
	k_assent		m_assent;
	CGuildHouseInfo	*m_pGuildHouseInfo;
	CAlreadyCheck	*m_CheckProcess;
	//acer5
	k_char_info		*m_pOtherChar;
	// 020620 YGI
	CMapDinamicTile *m_pDinamicTile;
	CScenarioTrapInfo	*m_pScenarioTrapInfo;
	k_scenario_trap_key	*m_pScenarioTrapKey;		// 020701 YGI
	bool			m_bTradeON;		//020808 YGI 	

	k_event_object_sound	*m_pEventObjcet;		//021030 YGI
	CEventMoveMap			*m_pEventMoveMap;		// 021107 YGI
			
public :
	CMenuVariable()
	{
		m_bTradeON = 1;		//020808 YGI 
		m_pGuildDegree = NULL;
		m_pSubGuildMaster = NULL;
		m_pGuildRegistExplain =NULL;
		m_bGuildChatOn = 1;
		m_bLoadGuildMark = 0;
		m_pRune = NULL;
		m_clsRuneExplain = 0;
		m_stRGB = 0;
		m_bChangeColor = 0;
		m_stNationMoney = 0;
		bCheckSalvation = 0;
		pGambleItem = 0;
		m_GambleRune = 0;
		m_GambleRand = 0;
		m_GuildMemberName.clear();
		m_szGuildPublicNotics = 0;
		m_FriendGrup = 0;
		m_TodayGambleItem = 0;
		m_PartySelect = 0;
		m_PotalMap = 0;
		m_bOXTime = 0;
		m_OXTime = 0;
		m_pGuildItem = 0;
		m_pPutGuildItem = 0;
		m_nCheckSubMaster = 0;
		m_szFileTextPut = "";
		m_nation_item.clear();
		m_pGuildHouseInfo = 0;
		//acer5
		m_pOtherChar = 0;
		// 020620 YGI
		m_pDinamicTile = 0;		
		m_pScenarioTrapInfo = 0;
		m_pScenarioTrapKey = 0;		// 020701 YGI
		m_pEventObjcet = 0;		//021030 YGI
		m_pEventMoveMap = 0;
	}
	~CMenuVariable()
	{
		clear4();
		clear2();
	}
	int clear();		// 皋春啊 辆丰 瞪锭 荤扼柳促.
	int clear2();		// 霸烙捞 促矫 矫累瞪锭 荤扼柳促. clear3() clear() 甫 器窃茄促. 
	int clear3();		// 甘捞 官拆锭.. clear() 甫 器窃窍绊 乐促.
	int clear4();
	int LoadingGuildRegistExplain( char *szFileName );
	int GetEventSound();		//021030 YGI
};


extern CMenuVariable g_Menu_Variable;
extern CallGuildChangeInfo( );
extern DWORD ReturnBlendRGB( int r, int g, int b );

extern char *ChangeString( char *str, char sor, char tag );
extern char *ChangeString2( char *str, char *sor, char *tag );
extern DWORD GetNationMoney( int nation);
extern void LoadMemorize();
extern void SaveMemorize();


#include "menufunctions.h"


#endif

⌨️ 快捷键说明

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