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

📄 network2.cpp

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 CPP
📖 第 1 页 / 共 2 页
字号:
#include "stdafx.h"																	
#include "String.h"
#include "mmsystem.h"														
#include "Dragon.h"	
//#include "MenuDef.h"

#include "network.h"																	

#include "char.h"
#include "chat.h"//021026 lsw

#include "Hong_Sprite.h"														
#include "Hong_Sub.h"														
#include "CharDataTable.h"													
#include "Path.h"																
#include "Hong_Light.h"
#include "Effect.h"
#include "DirectSound.h"
#include "Map.h"
#include "Object.h"
#include "Menu.H"
#include "GameProc.h"
#include "SmallMenu.h"
#include "Tool.h"

//nclude "MenuSet.h"
#include "Skill.h"
#include "Item.h"
#include "MenuNetwork.h"
#include "ExchangeMgr.h"
extern int				ListenCommand;
extern void RecvHeroInit( t_server_user_db_data *p );
//extern void CallOkCancelMessageBox( int menu, int x, int y, char *source, bool ok_cancel=true, int param = 0 );


int CheckHandleByKein( t_packet *p )
{
	//	char text_buffer[TEXT_LENGTH];
	
	switch( p->h.header.type )
	{
		
	case CMD_PUBLIC_NOTICE_TITLE_REQ:	RecvPublicNoticeTitle( &p->u.server_menu_message_title ); break;
	case CMD_RESEND_CHARLIST		:	RecvCharInfomation( &p->u.server_user_db_data ); break;
	case CMD_CHAR_INFO_BASIC		:	RecvCharInfoBasic( &p->u.char_info_basic ); break;
		//	RecvHeroInit( &p->u.server_user_db_data ); break;
		
	case CMD_OTHER_CH_INV			:	RecvOtherChInv( &p->u.kein.server_other_ch_inv ); break;
		//021030 lsw 冠胶绰 绝嚼聪促.
	case CMD_DELETE_ITEM_BY_DURATION:	RecvDeleteItem( p->u.kein.server_delete_item.item_pos, 1 ); break;
	case CMD_DELETE_ITEM			:	RecvDeleteItem( p->u.kein.server_delete_item.item_pos ); break;
	case CMD_DECREASE_ITEM			:	RecvDecreaseItem( &p->u.kein.server_decrease_item ); break;
	case CMD_LEVELDOWN_OK			:	RecvLevelDownResult( p->u.kein.client_lvup_point_each.type ); break;
		
	case CMD_LEARN_ITEM				:	RecvLearnItemOk( p->u.kein.item_no ); break;
		
	case CMD_ITEMREPAIR_OK			:	RecvItemRepar( &p->u.kein.server_item_repair_ok ); break;
	case CMD_RESULT					:	RecvServerResult( &p->u.kein.server_result ); break;
	case CMD_CHAR_INFO_TAC_SKILL_EXP:	RecvTacSkillExp( &p->u.char_info_tac_skillexp ); break;
	case CMD_LEARN_SKILL_OK			:	RecvLearnSkill( p->u.kein.server_learn_skill_ok.skill_no ); break;
	case CMD_SKILL_EXP				:	RecvSkillExp( p->u.kein.server_skill_exp.type, p->u.kein.server_skill_exp.exp ); break;
	case CMD_OPEN_STATUS_REQ		:	RecvStatusOpen( &p->u.kein.server_status_open );break;
		
	case  CMD_SEND_BANK_INV			:	RecvBankInventory( &p->u.kein.server_bank_item ); break;
		
		//		case CMD_SEND_CHAR_DISEASE		:	RecvCharDisease( &p->u.kein.server_disease ); break;	
	case CMD_PARTY					:	RecvParty( &p->u.kein.server_party ); break;			// 辑滚俊辑 颇萍肝篮 荤恩阑 焊郴霖促
	case CMD_RELATION				:	RecvRelation( &p->u.kein.server_relation ); break;
	case CMD_EMPLOYMENT				:	RecvEmployment( &p->u.kein.server_party ); break;
		//		case CMD_ITEM_INDEX				:	RecvItemIndex( &p->u.kein.server_item_index); break;
		
	case CMD_LEARN_MAGIC_OK			:	RecvLearnMagicOk( p->u.kein.learn_magic_ok.magic_num ); break;
	case CMD_PREVENTING				:	RecvPreventingOk( p->u.kein.client_disease.disease_num ); break;
	case CMD_CURE_DISEASE			:	RecvCureDiseaseOk( p->u.kein.client_disease.disease_num ); break;
		
	case CMD_REQ_ITEM_VALUE			:	RecvItemValue( p->u.kein.server_item_money.item_no, p->u.kein.server_item_money.money ); break;
	case CMD_REQ_ITEM_VALUE_SELL	:	RecvItemValue_Sell( p->u.kein.server_item_money.item_no, p->u.kein.server_item_money.money ); break;
	case CMD_REQ_ITEM_VALUE_REPAIR	:	RecvItemValue_Repair( p->u.kein.server_item_money.item_no, p->u.kein.server_item_money.money ); break;
		
	case CMD_SERVER_PARTY			:	RecvPartyInfo( &p->u.kein.party_info ); break;
	case CMD_DELETE_PARTY			:	RecvDeleteParty_server( p->u.kein.client_delete_party.type, p->u.kein.client_delete_party.ct ); break;
	case CMD_SERVER_WAKE_UP			:	RecvServerWakeUp(); break;
	case CMD_REQ_JOIN_GAME			:	RecvJoinGameWho( p->u.kein.client_char_name.name ); break;
	case CMD_SERVER_EXIT_GAME		:	RecvExitGameWho( p->u.kein.client_char_name.name ); break;
	case CMD_REQ_MY_PARTY			:	RecvMyPartyExist( p->u.kein.client_char_name.name ); break;		//
	case CMD_PARTY_JOIN_OK			:	RecvPartyJoinOk( p->u.kein.client_char_name.name ); break;
	case CMD_PARTY_JOIN_RELEASE		:	RecvPartyJoinRelease( p->u.kein.client_char_name.name ); break;		//
	case CMD_SERVER_EACH_ITEM		:	RecvServerEachItem( &p->u.kein.server_item ); break;		// 酒捞袍 磊府俊 酒捞袍阑 笼绢 持绰促.
	case CMD_OPEN_ABILITY			:	RecvServerResist( &p->u.kein.server_resist ); break;
	case CMD_SUBTRACT_MONEY			:	SubtractMoney( p->u.kein.server_money.money ); break;
	case CMD_ADD_MONEY				:	AddMoney( p->u.kein.server_money.money ); break;
		
	case CMD_EXCHANGE_ITEM_READY	:	RecvExchangeItemOk( &p->u.kein.exchange_item_start ); break;
	case CMD_EXCHANGE_ITEM_REQ		:	RecvExchangeItemReq( &p->u.kein.exchange_item_start );	break;
	case CMD_EXCHANGE_ITEM			:	RecvExchange(); break;		// 背券 己赋
	case CMD_EXCHANGE_ITEM_RESULT	:	RecvExchangeItemResult( p->u.kein.try_item_trade.result );	break;
	case CMD_EXCHANGE_OK_SIGN		:	
		{
			ExchangeMgr.SetOtherSideConformState(true); //021030 lsw
		}break;
	case CMD_EXCHANGE_CANCEL_SIGN		:	
		{
			ExchangeMgr.SetMySideConformState(false); //030108 lsw
			ExchangeMgr.SetOtherSideConformState(false); //030108 lsw
		}break;
	case CMD_EXCHANGE_CANCEL		:	RecvExchangeCancel(); break;
	case CMD_EXCHANGE_ITEM_EACH		:	RecvExchangeEach( &p->u.kein.transfer_item.item ); break;
		
	case CMD_CHECK_BETA_TEST_OK		:	ListenCommand = 100; break;
	case CMD_CHECK_BETA_TEST_NOT	:	ListenCommand = 10; break;
		
	case CMD_IATTR_DURATION			:	RecvItemAttrChange( CIA_DURATION, &p->u.kein.server_item_attr ); break;
	case CMD_IATTR_MUCH				:	RecvItemAttrChange( CIA_MUCH, &p->u.kein.server_item_attr ); break;
		//		case CMD_IATTR_LIMIT			:
		//		case CMD_IATTR_ATTR				:
		//		case CMD_IATTR_ID				:
		//		case CMD_IATTR_RESERVED0		;
		//		case CMD_IATTR_RESERVED1		:
		
	case CMD_REQ_AC					:	SCharacterData.ac = p->u.kein.server_ac.ac; break;
	case CMD_REQ_DMG				:	SCharacterData.nCharacterAbility[DAMAGE] = p->u.kein.default_int; break;
	case CMD_SERVER_KILLMON			:	SCharacterData.beat = p->u.kein.server_killmon.killmon; break;
	case CMD_OTHER_GHOST			:	RecvOtherGhost(); break;
		
	case CMD_CREATE_ABILITY			:	RecvCreateAbility( ); break;
	case CMD_REQ_MAGERY:	
		{
			RecvServerMagery(p->u.kein.server_tactics.nStep, p->u.kein.server_tactics.magery); 
			break;
		}
	case CMD_THROW_DICE				:	RecvThrowDice( &p->u.kein.start_throw_dice ); break;
	case CMD_EXCHANGE_ITEM_DEL		:	RecvExchangeItemDelWhereRecv( p->u.kein.transfer_item.item ); break;
		
	case CMD_GET_SERVER_TEXT		:	RecvServerMessage( &p->u.kein.get_server_text ); break;
		
	case CMD_PREACH_NAME			:	RecvPreachName( &p->u.kein.server_client_preach_name ); break;
		
	case CMD_NOW_GOD_MEETING_START	:	RecvGodMeetinMainStart( ); break;
	case CMD_NOW_GOD_MEETING_END	:	RecvGodMeetingMainEnd( ); break;
	case CMD_CHECK_NEW_CHAR_OK		:	ListenCommand = 100; break;
	case CMD_CHECK_NEW_CHAR_NOT		:	ListenCommand = 10; break;
		
	case CMD_MEETING_TEXT			:	RecvServerMessageDefault( &p->u.kein.server_text_default, &g_ServerText ); break;
	case CMD_GET_CHARINFO_BY_KEIN	:	RecvCharInfoPlus( &p->u.kein.server_to_client_char_info_plus ); break;		// 眠啊 某腐磐 沥焊 罐酒坷扁
		
	case CMD_CAN_MEMORIZE_OK		:	RecvCanMemorizeOk(); break;
	case CMD_CAN_MEMORIZE_NOT		:	CallOkCancelMessageBox( 0, 0, 0, lan->OutputMessage(4,23), 0 ); break;//lsw
		
	case CMD_SEND_EAR_MESSAGE		:	//021026 lsw
		{
			ChatMgr.RecvWhisper( p->u.kein.send_ear_message.name, p->u.kein.send_ear_message.message, p->u.kein.send_ear_message.send_game_server, p->u.kein.send_ear_message.send_server_id ); 
		}break;
	case CMD_SEND_EAR_MESSAGE_OK	:	
	case CMD_SEND_EAR_MESSAGE_NOT	:	
		{// 鞍篮 辑滚俊 乐阑锭
			RecvWhisperReply( p->h.header.type, p->u.kein.send_ear_message_ok.name );
		}break;	
	case CMD_GAME2CLIENT_EAR_RESULT :	
		{
			RecvWhisperReply2( p->u.kein.game2client_ear_result.ret ); 
		}break;
	case CMD_SEND_EAR_MESSAGE_RESULT_ETC:	
		{
			RecvWhisperReplyEtc( p ); 
		}break;
	case CMD_DIVINE_UP				:	AddCurrentStatusMessage( 255, 255, 255, lan->OutputMessage(4,25)); break;//lsw
	case CMD_DIVINE_DOWN			:	AddCurrentStatusMessage( 255, 0, 0, lan->OutputMessage(4,26) ); break;//lsw
	case CMD_OPEN_SUPPER			:	RecvOpenSupper( p->u.kein.server_to_client_open_supper.much ); break;
		
	case CMD_NOTE_MEETING			:	RecvSetNoteMeetingMessage( p->u.kein.note_meeting.believe_god, p->u.kein.note_meeting.meeting_type ); break;
	case CMD_NOT_EXIST_GAMESERVER	:	ListenCommand = CMD_NOT_EXIST_GAMESERVER;
		
	case CMD_REQ_CHAR_INFO			:	RecvReqCharInfo( &p->u.kein.server_req_char_info ); break;
	case CMD_REQ_PARTY_INFO			:	RecvReqPartyInfo( &p->u.kein.rep_party_info); break;
	case CMD_LOGIN_TO_GAME_PUBLIC_BBS	:	RecvCallPublicBbs( &p->u.kein.server_text_default ); break;
	case CMD_SEND_LEARN_ITEM_INDEX	:	RecvLearnedItem( &p->u.kein.server_learn_item ); break;
	case CMD_HUNTER_REGIST			:	if( p->u.kein.game2client_ear_result.ret )
											AddCurrentStatusMessage( 255, 255, 255, lan->OutputMessage(4,27)); //lsw
		else AddCurrentStatusMessage( 255, 0, 0, lan->OutputMessage(4,28) ); //lsw
		break;
		
	case CMD_SEND_HUNTER_LIST		:	RecvHunterList( &p->u.kein.hunter_list ); break;
	case CMD_KILL_HUNTER_LIST_CANCEL :	MP3( SN_WARNING ); AddCurrentStatusMessage( 200, 50, 50, lan->OutputMessage(4,29));  break;//lsw
	case CMD_KILL_HUNTER_LIST_OK	:	RecvKillHunterOk( &p->u.kein.kill_hunter_ok ); break;
		//		case CMD_HUNTER_REGIST_RESULT	:	RecvHunterRegistResult( p->u.kein.kill_who_whom.who_name, p->u.kein.kill_who_whom.whom_name ); break;
	case CMD_KILLED_BY_HUNTER		:	MP3( SN_WARNING ); AddCurrentStatusMessage( 250, 50, 50, lan->OutputMessage(4,30));  break;//lsw
		
	case CMD_KILL_WHO				:	RecvKillWho( p->u.kein.default_name ); break;
	case CMD_DANGER_OF_HUNTER		:	RecvDangerByHunter( p->u.kein.default_char ); break;
	case CMD_PARTY_NOT_BY_LEVEL		:	RecvPartyNotByLevel( p->u.kein.default_short_int ); break;
	case CMD_DO_PARTY_OK			:	RecvDoPartyOk( p->u.kein.do_party_ok.name, p->u.kein.do_party_ok.type ); break;
		
	case CMD_REQ_MAN_TO_MAN			:	RecvReqManToMan( p->u.kein.req_man_to_man.id ); break;
	case CMD_REQ_MAN_TO_MAN_RESULT	:	RecvReqManToManResult( p->u.kein.default_char ); break;
	case CMD_REQ_MAN_TO_MAN_CONSENT :	RecvStartManToMan( p->u.kein.default_short_int ); break;
		
	case CMD_REP_QUEST_INDEX		:	RecvQuestIndex( &p->u.kein.rep_quest_index ); break;
	case CMD_REQ_MAN_TO_MAN_REFUSAL	:	RecvReqManToManRefusal( ); break;
		
	case CMD_FIGHT_MAP_ADD_OK		:	RecvFightMapAddOk( p); break;
	case CMD_FIGHT_MAP_ADD_FULL		:	RecvFightMapAddNot( p); break;
		
	case CMD_FIGHT_MAP_START		:	RecvFightMapStart( ); break;
	case CMD_FIGHT_MAP_END			:	RecvFightMapEnd( ); break;
		
	case CMD_CHANGE_DURATION		:	RecvChangeDuration( p ); break;
	case CMD_THIS_MAN_IS_CANDIDATE_OK:	RecvCallRegistCandidate( ); break;		// 饶焊 殿废 皋春 剁快扁
	case CMD_THIS_MAN_IS_CANDIDATE_NOT:	RecvCallVoteSupport( p ); break;		// 捧钎 皋春 剁匡瘤 殿殿狼 版快 荐 措厚窍扁 

⌨️ 快捷键说明

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