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

📄 nationsupport.cpp

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		}break;
//<! BBD 040303	惑牢 归诀抛捞喉俊辑 拱扒茫扁
	case SWD_SEND_MERCHANT_BACKUP_ITEM_TAKE:
		{
			SEARCHRESULT *SR = Auction.GetSearchList().ResultList;
			const int iTakeItemIndex = Auction.GetTakeItemIndex();
			for(int xx = 0; MAX_SEARCH_RESULT_LIST > xx ; xx++)
			{
				if(SR[xx].iIndex == iTakeItemIndex)
				{
					Auction.SendCMD_MERCHANT_BACKUP_TAKE_REQUEST(SR[xx]);//搬苞拱 罐扁
					break;
				}
			}
		}break;
	case SWD_SEND_MERCHANT_BACKUP_LIST_SCROLL_UP:
		{
			Auction.DecPageBackupList();
		}break;
	case SWD_SEND_MERCHANT_BACKUP_LIST_SCROLL_DOWN:
		{
			Auction.IncPageBackupList();
		}break;
//> BBD 040303	惑牢 归诀抛捞喉俊辑 拱扒茫扁
//<soto-030511
	case SWD_AUCTION_UPDOWN_BTN:
		{
			if( 0 == nWillDo ) Auction.DecPeriod();
			else Auction.IncPeriod();
		}
		break;
//>soto-030511

	case SWD_AUCTION_FIND_KEY_RARE_SET:
		{
//			( 1 == nWillDo )?Auction.FKRareTypeInc():Auction.FKRareTypeDec();
		}break;
	case SWD_AUCTION_FIND_KEY_LV_SET:
		{
//			( 1 == nWillDo )?Auction.FKLevelInc():Auction.FKLevelDec();
		}break;
	case SWD_AUCTION_FIND_KEY_TACTIC_SET:
		{
//			( 1 == nWillDo )?Auction.FKTacticTypeInc():Auction.FKTacticTypeDec();
		}break;
	case SWD_AUCTION_FIND_KEY_WEAR_SET:
		{
//			( 1 == nWillDo )?Auction.FKWearTypeInc():Auction.FKWearTypeDec();
		}break;	
	case SWD_SEND_MERCHANT_BUY_LIST_SCROLL_UP:
		{
			Auction.DecBuyerViewPage() ;
		}break;
	case SWD_SEND_MERCHANT_BUY_LIST_SCROLL_DOWN:
		{
			Auction.IncBuyerViewPage() ;
		}break;
	case SWD_SEND_MERCHANT_SELL_LIST_SCROLL_UP:
		{
			Auction.DecSellerViewPage();
		}break;
	case SWD_SEND_MERCHANT_SELL_LIST_SCROLL_DOWN:
		{
			Auction.IncSellerViewPage();
		}break;
	case SWD_SEND_MERCHANT_RESULT_LIST_SCROLL_UP:
		{
			Auction.DecResultViewPage();
		}break;
	case SWD_SEND_MERCHANT_RESULT_LIST_SCROLL_DOWN:
		{
			Auction.IncResultViewPage() ;			
		}break;
	case SWD_SEND_MERCHANT_DIRECT_LIST_SCROLL_UP://0211121 lsw
		{
			Auction.DecBuyerViewPage() ;
		}break;
	case SWD_SEND_MERCHANT_DIRECT_LIST_SCROLL_DOWN:
		{
			Auction.IncBuyerViewPage() ;
		}break;
	case SWD_CALL_MERCHANT_OR_SKILL_MASTER:
		{
			const int iResult = ::CheckMerchantOrSkillMaster();//瞪 荐 乐绰霸 购啊甫 眉农 窍绊
			switch(iResult)
			{
			case GM_QUEST_MERCHANT://惑牢
				{
					::Call_MERCHANT_QUEST_MENU(iResult);//惑牢 涅胶飘 皋春甫 阂矾扼
				}break;
			case GM_QUEST_BLACKSMITH_MASTER://措厘厘捞 扁己
			case GM_QUEST_CARPENTER_MASTER:	//格荐 扁己    
			case GM_QUEST_BOWCRAFT_MASTER:	//劝力累荤 扁己
			case GM_QUEST_TAILOR_MASTER	:	//犁窜荤 扁己
				{//扁己捞 瞪 荐 乐匙.. 扁己 绊福绰吧 持绢扼
					::CallSmallMenu(MN_SKILL_MASTER_LIST);	
				//	::Call_MERCHANT_QUEST_MENU(nWillDo);
				}break;
			default:
				{
					::AddCurrentStatusMessage( FONT_COLOR_YELLOW, lan->OutputMessage(2,770));
				}break;
			}//switch(iResult)
		}break;//case SWD_CALL_MERCHANT_OR_SKILL_MASTER:
	case SWD_CALL_SKILL_MASTER_QUEST:
		{
			const int iResult = ::CheckMerchantOrSkillMaster();//瞪 荐 乐绰霸 购啊甫 眉农 窍绊
			switch(iResult)
			{
			case GM_QUEST_MERCHANT://惑牢
				{
					::Call_MERCHANT_QUEST_MENU(iResult);//惑牢 涅胶飘 皋春甫 阂矾扼
				}break;
			case GM_QUEST_BLACKSMITH_MASTER://措厘厘捞 扁己
			case GM_QUEST_CARPENTER_MASTER:	//格荐 扁己    
			case GM_QUEST_BOWCRAFT_MASTER:	//劝力累荤 扁己
			case GM_QUEST_TAILOR_MASTER	:	//犁窜荤 扁己
				{//扁己捞 瞪 荐 乐匙.. 涅胶飘 皋春甫 剁况
					::Call_MERCHANT_QUEST_MENU(nWillDo);
				}break;
			default:
				{
					::AddCurrentStatusMessage( FONT_COLOR_YELLOW, lan->OutputMessage(2,770));
				}break;
			}//switch(iResult)
		}break;//case SWD_CALL_SKILL_MASTER_QUEST:
	case SWD_GM_REGIST_2:
		{//021108 lsw
			const int ret = ::CanGmRegist(iWork);
			switch( ret )
			{
			case  1: ::SendGMRegist(iWork); break; // GM俊 殿废且荐 乐促... 眉农 夸噶
			case -1: ::AddCurrentStatusMessage( 250,0,0, lan->OutputMessage(3,187) ); MP3(SN_WARNING );break;//010215 lsw
			case -2: ::AddCurrentStatusMessage( 250,0,0, lan->OutputMessage(3,188) ); MP3(SN_WARNING );break;//010215 lsw
			case -3: ::AddCurrentStatusMessage( 250,0,0, lan->OutputMessage(3,189) ); MP3(SN_WARNING );break;//010215 lsw
			case -4: ::AddCurrentStatusMessage( 250,0,0, lan->OutputMessage(3,190) ); MP3(SN_WARNING );break;//010215 lsw
			}
			::SmallMenuClose();
		}break;
	case SWD_SKILL_MASTER_MULTIRARE_OK:
		{
			ItemAttr Item1= g_MultiRareSrc.MultiRareSrc[0].attr;
			ItemAttr Item2= g_MultiRareSrc.MultiRareSrc[1].attr;
			
			if(!Item1.item_no ||!Item2.item_no){break;}//酒捞袍 锅龋绰 馆靛矫乐绢具 窍绊
			if(Item1.item_no != Item2.item_no){break;}//酒捞袍 锅龋啊 鞍酒具瘤

			const RareMain *pTempRare1 =  (RareMain *)&Item1.attr[IATTR_RARE_MAIN];
			const RareMain *pTempRare2 =  (RareMain *)&Item2.attr[IATTR_RARE_MAIN];
			if(	pTempRare1->IsDynamicRare
			||	pTempRare2->IsDynamicRare
			||	pTempRare1->iHighLevel//021119 lsw
			||	pTempRare2->iHighLevel){break;}//窍捞唱 扁瓷 酒袍篮 免仿 救矫难.. 撇赴芭 芭电
			
			RareMain RareResult;
			{//搬苞拱 悸泼
				RareResult.grade = (pTempRare1->grade+pTempRare2->grade)/2;
				RareResult.soksung1=pTempRare1->soksung1;
				RareResult.soksung2=pTempRare2->soksung1;
				RareResult.soksung3=0;
				RareResult.iHighLevel = 0;
				RareResult.IsDynamicRare = false;
			}
			const RareMain *pRare = &RareResult;
			const int iGrade = pRare->grade;

			bool bIsHaveResource = true;
			for(int xx= 0;MAX_IMR_FIELD_CT>xx;xx++)
			{
				int iNationAddCt = 0;
				switch(Hero->name_status.nation)
				{
				case NW_BY:{if(xx == 0){ iNationAddCt = aIMR[iGrade].iAddCt;}}break;
				case NW_ZY:{if(xx == 1){ iNationAddCt = aIMR[iGrade].iAddCt;}}break;
				case NW_YL:{if(xx == 2){ iNationAddCt = aIMR[iGrade].iAddCt;}}break;
				}
				const int iNeedItemNo = aIMR[iGrade].aItemNo[xx];
				const int iNeedItemCt = aIMR[iGrade].aItemCt[xx]+iNationAddCt;
				if(iNeedItemNo && iNeedItemCt)
				{
					CItem *t = ItemUnit( iNeedItemNo );
					if(!t){continue;}
					const int iNowCt = ::CheckInventory(iNeedItemNo,iNeedItemCt);//郴啊 盔茄 蔼俊辑 泅犁 搬苞甫 林聪鳖 -蔼捞 唱棵 荐 乐促
					if(0> iNowCt)
					{
						bIsHaveResource = false;
					}
				}
			}
			if(bIsHaveResource)//021113 lsw test
			{
				::SendCMD_SKILL_MASTER_MULTI_RARE_MAKE(SkillNo);
				SkillStatus	= SKILL_OFF;
				nItemOther = 0 ;
				SkillSettingClear();
				SmallMenuClose(); 
			}
		}break;
	case SWD_EXCHANGE_BOND_MONEY_OK://021126 lsw
		{
			Auction.SendCMD_EXCHANGE_BOND_MONEY();//021202 lsw
//			::CloseAllMenu();
		}break;
	case SWD_CALL_EXCHANGE_BOND_MONEY:
		{
			::Call_EXCHANGE_BOND_MONEY_Menu();
		}break;
	case SWD_MAIL_WRITE_SEND :
		{
			char szTarget[100] = {0,};
			char szTitle[60] = {0,};
			char szBody[1000]= {0,};

			EWndMgr.GetTxt( HWND_MAIL1, szTarget,	100);
			EWndMgr.GetTxt( HWND_MAIL2, szTitle,	60);
			EWndMgr.GetTxt( HWND_MAIL3, szBody,		1000);
			// 031110 YGI
			char *div_str = DivideStringByRect( 315, szBody, 16 );	// My YGI
			if( div_str)
			{
				*( div_str-1 ) = NULL;		// \n 贸府甫 困秦辑..
			}
//			int ret = CheckCharNameAndNation( name );		// 弊 荤恩苞 郴啊 鞍篮 唱扼牢啊?
//			if( !ret ) 
//			{
//				CallOkCancelMessageBox( i, 0, 0, lan->OutputMessage(3,178) );//010215 lsw
//			}
//			else 
//			{
//				ChangeString( body, '\r', ' ');
//				SendMail( name, title, body );
//				EWndMgr.ClearAllTxt();//021001 lsw
//				SmallMenuClose();
//				break;
//			}
			
			::ChangeString( szTitle, '\r', ' ');
			::ChangeString( szBody, '\r', ' ');

			if(g_MailMgr.Send(g_MailMgr.GetTempMailType(),szTarget,szTitle,szBody))
			{
				::CallOkCancelMessageBox( i,100, 100, lan->OutputMessage(3,290), true);
			}
		}break;
	case SWD_MAIL_WRITE_DELETE : 
		{
			EWndMgr.ClearTxt(HWND_MAIL1);//021001 lsw
			EWndMgr.ClearTxt(HWND_MAIL2);//021001 lsw
			EWndMgr.ClearTxt(HWND_MAIL3);//021001 lsw
			SMenu[i].work = 1;		// 捞抚 静绰 沫栏肺 倒妨 初绰促.
		 }break;
	case SWD_MAIL_WRITE_EXIT:
		{
			EWndMgr.ClearAllTxt();//021001 lsw
			CallMenu( SMenu[i].nTemp );
		 }break;
	case SWD_CALL_MAILMENU:
		{
			g_MailMgr.SendReqMailList(nWillDo,0);
		}break;
	case SWD_MAIL_DELETE://瘤快扁 
		{
			::CallOkCancelMessageBox( i,100, 100, lan->OutputMessage(3,291), true);
			// ok父 乐绰 扒瘤 ok_cancel捞 乐绰 皋矫瘤 冠胶牢瘤甫 急琶,  
			//menu绰 龋免茄 皋春甫 持绰促
		}break;
//	case SWD_MAIL_DELETE://瘤快扁 
//		{
//			g_MailMgr.SendDelete(nWillDo);
//		}break;
	case SWD_MAIL_SAVE://历厘窍扁
		{
			g_MailMgr.SaveMailToLocal();
		}break;
	case SWD_CALL_MAIL_WRITE://祈瘤静扁
		{
			::Call_MAIL_WRITE_MENU(g_MailMgr.GetTempMailSender(),nWillDo);
		}break;
	case SWD_MAIL_REPAIR:
		{
			g_MailMgr.SendRepair();
			g_MailMgr.SendReqMailList(nWillDo,0);
		}break;
	case SWD_MAIL_SCROLL:
		{
			g_MailMgr.SendReqOtherPage(nWillDo);
		}break;
	case SWD_MAIL_SELECT_ALL:
		{
			g_MailMgr.SelectAll();
		}break;
	case SWD_TEMP_MAIL_TYPE_SCROLL:
		{
			switch(nWillDo)
			{
			case SCROLL_UP:
				{
					g_MailMgr.IncTempMailType();
				}break;
			case SCROLL_DOWN:
				{
					g_MailMgr.DecTempMailType();
				}break;
			}
		}break;
	case SWD_MAIL_SENDER_REGIST_FRIEND:
		{
			::RegistFriend(g_MailMgr.GetTempMailSender());
		}break;
	case SWD_OBSERVER_TEAM_SELECT:
		{
			::SendObserverTeamSelect();
			CloseAllMenu();//摧赛聪促.
		}break;
	case SWD_SEND_MY_ARENA_BETTING_MONEY:
		{
			char temp[20] = {0,};
			EWndMgr.GetTxt( HWND_3, temp,20 );
			::EatRearWhiteChar( temp );
			DWORD dwMoney = ::atol( temp );

			::SendMyArenaBettingMoney(dwMoney);
			CloseAllMenu();//摧赛聪促.
		}break;
	case SWD_CALL_ARENA_OBSERVER_MENU:
		{	//< CSD-030521
			if (CanCallObserverMenu()) 
			{
				CallMenu( SMenu[i].nField[j].nWillDo, i, (bool)true );
			}
			else
			{
				OUTPUT(MK_INFORMATION, lan->OutputMessage(1, 101));
			}

			break;
		}	//> CSD-030521
	case SWD_CALL_ARENA_BETTING_MENU:
		{
			if(CanCallBettingMenu())
			{
				CallMenu( SMenu[i].nField[j].nWillDo, i, (bool)true );
			}			
		}break;
	default :
		{
			return false;
		}
	}
	return true;//亲惑 皋牢 柯
}

void SendMoveToHomeTown()
{
	t_packet packet;
	packet.h.header.type = CMD_MOVE_TO_HOMETOWN;
	packet.h.header.size = 0;
	QueuePacket( &packet, 1 );
}

void SendMoveToHomeTownWithAlive()
{
	t_packet packet;
	packet.h.header.type = CMD_MOVE_TO_HOMETOWN_WITH_ALIVE;
	packet.h.header.size = 0;
	QueuePacket( &packet, 1 );
}

⌨️ 快捷键说明

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