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

📄 nationsupport.cpp

📁 网络游戏龙族 完整的登陆器 C++ 源代码
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		SMenu[MN_NATION_NOW].nField[24].y = 150+45;
		
		SMenu[MN_NATION_NOW].nField[25].x = 136+19;
		SMenu[MN_NATION_NOW].nField[25].y = 113+45;
		
		SMenu[MN_NATION_NOW].nField[26].x = 174+19;
		SMenu[MN_NATION_NOW].nField[26].y = 75 +45;
		
		SMenu[MN_NATION_NOW].nField[27].nWillDo = 0;
		//搬拌籍 4俺 
		SMenu[MN_NATION_NOW].nField[28].x = 64 +19;
		SMenu[MN_NATION_NOW].nField[28].y = 132+45;
		

		SMenu[MN_NATION_NOW].nField[29].x = 91 +19;
		SMenu[MN_NATION_NOW].nField[29].y = 123 +45;
		
		SMenu[MN_NATION_NOW].nField[30].x = 129+19;
		SMenu[MN_NATION_NOW].nField[30].y = 85 +45;
		
		SMenu[MN_NATION_NOW].nField[31].x = 141+19;
		SMenu[MN_NATION_NOW].nField[31].y = 58 +45;
		
		break;
	case	1://乞盔 OK
		SMenu[MN_NATION_NOW].nField[3].nImageNumber = 10;
		SMenu[MN_NATION_NOW].nField[4].nImageNumber = 3;//肚绰 4
		/*
		[64.114]-4锅荐龋籍
		[113.69]-3锅荐龋籍
		[163.116]-2锅荐龋籍
		[113.164]-1锅荐龋籍
		[110.94]-弥辆荐龋籍
		[89.134]-1锅己巩
		[149.136]-2锅己巩
		[153.75]-3锅己巩
		*/
		SMenu[MN_NATION_NOW].nField[24].x = 89 +19;
		SMenu[MN_NATION_NOW].nField[24].y = 134+45;
		
		SMenu[MN_NATION_NOW].nField[25].x = 149 +19;
		SMenu[MN_NATION_NOW].nField[25].y = 136+45;
		
		SMenu[MN_NATION_NOW].nField[26].x = 153+20;
		SMenu[MN_NATION_NOW].nField[26].y = 75 +50;
		
		SMenu[MN_NATION_NOW].nField[27].nWillDo = 0;
		//搬拌籍 5俺 
		SMenu[MN_NATION_NOW].nField[28].x = 113 +19;
		SMenu[MN_NATION_NOW].nField[28].y = 164+45;
		
		SMenu[MN_NATION_NOW].nField[29].x = 163+19;
		SMenu[MN_NATION_NOW].nField[29].y = 116 +45;
		
		SMenu[MN_NATION_NOW].nField[30].x = 113+19;
		SMenu[MN_NATION_NOW].nField[30].y = 69 +45;
		
		SMenu[MN_NATION_NOW].nField[31].x = 64+19;
		SMenu[MN_NATION_NOW].nField[31].y = 114+45;
		break;
	case	2://级 OK
		SMenu[MN_NATION_NOW].nField[3].nImageNumber = 11;
		SMenu[MN_NATION_NOW].nField[4].nImageNumber = 4;//肚绰 4
		/*
		[125.102]-3锅荐龋籍
		[102.123]-4锅荐龋籍
		[125.144]-1锅荐龋籍
		[150.125]-2锅荐龋籍
		[75.78]-1锅己巩
		[98.59]-2锅己巩
		[164.143]-3锅己巩
		*/
		SMenu[MN_NATION_NOW].nField[24].x = 75 +19;
		SMenu[MN_NATION_NOW].nField[24].y = 78 +45;

		
		SMenu[MN_NATION_NOW].nField[25].x = 98 +19;
		SMenu[MN_NATION_NOW].nField[25].y = 59 +45;
		
		SMenu[MN_NATION_NOW].nField[26].x = 164+19;
		SMenu[MN_NATION_NOW].nField[26].y = 143+45;
		
		SMenu[MN_NATION_NOW].nField[27].nWillDo = 0;
		//搬拌籍 5俺 
		SMenu[MN_NATION_NOW].nField[28].x = 125+19;
		SMenu[MN_NATION_NOW].nField[28].y = 144+45;
		
		SMenu[MN_NATION_NOW].nField[29].x = 150+19;
		SMenu[MN_NATION_NOW].nField[29].y = 125+45;
		
		SMenu[MN_NATION_NOW].nField[30].x = 125+19;
		SMenu[MN_NATION_NOW].nField[30].y = 102+45;

		SMenu[MN_NATION_NOW].nField[31].x = 102+19;
		SMenu[MN_NATION_NOW].nField[31].y = 123+45;
		break;
	}
	memcpy(GuardStoneStatus,(p->u.data+1),GuardStoneSize);
	memcpy(CastleStatus,(p->u.data+GuardStoneSize+2),CastleSize);
	
	if( isNationWarfieldServer() )
	{
		switch(SCharacterData.nCharacterData[CLASS])
		{
			case WARRIOR:
			SMenu[MN_NATION_NOW].nField[33].nImageNumber =33;
				break;
			case	THIEF:
			SMenu[MN_NATION_NOW].nField[33].nImageNumber =34;
				break;
			case	ARCHER:
			SMenu[MN_NATION_NOW].nField[33].nImageNumber =35;
				break;
			case	WIZARD:
			SMenu[MN_NATION_NOW].nField[33].nImageNumber =36;
				break;
			case	PRIEST:	
			SMenu[MN_NATION_NOW].nField[33].nImageNumber =37;
				break;
		}

		SMenu[MN_NATION_NOW].nField[33].nWillDo =1;
		//011014 lsw >
		int mapx =	Hero->x/TILE_SIZE; 
		int mapy =	Hero->y/TILE_SIZE; 
		//011014 lsw <

		if(CheckNationStatus(NW_WAR) ==1)
		{
			mapx -=300;
			mapy -=300;
		}
		//绵利 函券
		//011010 lsw >
		float fmapx = ( 280.000 * float(mapx) / 420.000 );
		float fmapy = ( 280.000 * float(mapy) / 420.000 );
/*
		switch( CheckNationStatus(NW_WAR))
		{
		case  0://魂吝 
			fmapx += ;
			fmapy += ;
			break;
		case  1://乞盔 
			fmapx += -15;
			fmapy += -20;
			break;
		case  2://级
			fmapx += ;
			fmapy += ;
			break;
		}
*/

		SMenu[MN_NATION_NOW].nField[33].x = (int)fmapx+10;//+SMenu[MN_NATION_NOW].nField[3].x;		// 011023 LTS
		SMenu[MN_NATION_NOW].nField[33].y = (int)fmapy+24;//+SMenu[MN_NATION_NOW].nField[3].y;		// 011023 LTS
		//011010 lsw <
	}
	else
	{
		SMenu[MN_NATION_NOW].nField[33].nWillDo = 0;
	}

	switch(Hero->name_status.nation)
	{
	case NW_BY:
		SMenu[MN_NATION_NOW].nField[20].nImageNumber = 21;
		SMenu[MN_NATION_NOW].nField[21].nImageNumber = 22;
		SMenu[MN_NATION_NOW].nField[22].nImageNumber = 23;
		SMenu[MN_NATION_NOW].nField[23].nImageNumber = 24;
		break;
	case NW_ZY:
		SMenu[MN_NATION_NOW].nField[20].nImageNumber = 25;
		SMenu[MN_NATION_NOW].nField[21].nImageNumber = 26;
		SMenu[MN_NATION_NOW].nField[22].nImageNumber = 27;
		SMenu[MN_NATION_NOW].nField[23].nImageNumber = 28;
		break;
	case NW_YL:
		SMenu[MN_NATION_NOW].nField[20].nImageNumber = 29;
		SMenu[MN_NATION_NOW].nField[21].nImageNumber = 30;
		SMenu[MN_NATION_NOW].nField[22].nImageNumber = 31;
		SMenu[MN_NATION_NOW].nField[23].nImageNumber = 32;
		break;
	}

	//011008 lsw >
	int squadno = Hero->NWCharacter.SquadNo;
	if(squadno)
	{
		SMenu[MN_NATION_NOW].nField[19+squadno].nWillDo = 2;
	}


	SMenu[MN_NATION_NOW].nField[24].nWillDo = (CastleStatus[0]&&CastleStatus[1]);
	SMenu[MN_NATION_NOW].nField[25].nWillDo	= (CastleStatus[2]&&CastleStatus[3]);
	SMenu[MN_NATION_NOW].nField[26].nWillDo	= (CastleStatus[4]&&CastleStatus[5]);
	SMenu[MN_NATION_NOW].nField[27].nWillDo	= 0;
	
	SMenu[MN_NATION_NOW].nField[28].nWillDo	= GuardStoneStatus[0];
	SMenu[MN_NATION_NOW].nField[29].nWillDo	= GuardStoneStatus[1];
	SMenu[MN_NATION_NOW].nField[30].nWillDo	= GuardStoneStatus[2];
	SMenu[MN_NATION_NOW].nField[31].nWillDo	= GuardStoneStatus[3];
}

void NationSupportNationNow2(t_packet *p)
{
	DWORD RemainTime=p->u.NationWar.WarfieldData2.RemainTime;
	WORD  Hour, Min, Sec;		// 011020 LTS
	GetTime(RemainTime,Hour,Min,Sec);
	SMenu[MN_NATION_NOW].nField[5].nRectImage = RemainTime;//巢篮 矫埃
	
	if( isAttacker() )//郴啊 傍拜磊 牢啊?
	{
		sprintf(SMenu[MN_NATION_NOW].nField[6].temp,  "%d",p->u.NationWar.WarfieldData2.AttackerCount );//酒焙 箭磊
		sprintf(SMenu[MN_NATION_NOW].nField[7].temp,  "%d",p->u.NationWar.WarfieldData2.DefencerCount );//利焙 箭磊
	}
	else	//郴啊 规绢磊?
	{
		sprintf(SMenu[MN_NATION_NOW].nField[6].temp,  "%d",p->u.NationWar.WarfieldData2.DefencerCount);//酒焙 箭磊
		sprintf(SMenu[MN_NATION_NOW].nField[7].temp,  "%d",p->u.NationWar.WarfieldData2.AttackerCount);//利焙 箭磊
	}
	
	
}

void NationSupportNationNow3(t_packet *p)
{
//	AddCurrentStatusMessage( 255,255,0, "何措辆幅 : %d",p->u.NationWar.WarfieldData3.Type);
	//	老馆牢甸
	//	AddCurrentStatusMessage( 255,255,0, "0何措 措盔 荐 : %d",p->u.NationWar.WarfieldData3.MemberCount[0]);
	//011030 lsw >
	sprintf(SMenu[MN_NATION_NOW].nField[8].temp,	"%d",p->u.NationWar.WarfieldData3.MemberCount[1] );//何措盔 荐 1
	sprintf(SMenu[MN_NATION_NOW].nField[9].temp,	"%2d", NW_SQUAD1_MAN_MAX );
	sprintf(SMenu[MN_NATION_NOW].nField[10].temp,	lan->OutputMessage(0,408),1 );
	sprintf(SMenu[MN_NATION_NOW].nField[11].temp,	"%d"	,p->u.NationWar.WarfieldData3.MemberCount[2] );//何措盔 荐 2
	sprintf(SMenu[MN_NATION_NOW].nField[12].temp,	"%2d" ,NW_SQUAD2_MAN_MAX);
	sprintf(SMenu[MN_NATION_NOW].nField[13].temp,	lan->OutputMessage(0,408),2);
	sprintf(SMenu[MN_NATION_NOW].nField[14].temp,	"%d"	,p->u.NationWar.WarfieldData3.MemberCount[3] );//何措盔 荐 3
	sprintf(SMenu[MN_NATION_NOW].nField[15].temp,   "%2d",NW_SQUAD3_MAN_MAX );
	sprintf(SMenu[MN_NATION_NOW].nField[16].temp,	lan->OutputMessage(0,408),3 );
	sprintf(SMenu[MN_NATION_NOW].nField[17].temp,	"%d"	,p->u.NationWar.WarfieldData3.MemberCount[4] );//何措盔 荐 4
	sprintf(SMenu[MN_NATION_NOW].nField[18].temp,   "%2d",NW_SQUAD4_MAN_MAX );
	sprintf(SMenu[MN_NATION_NOW].nField[19].temp,	lan->OutputMessage(0,408),4 );
	//011030 lsw <
	CallSmallMenu(MN_NATION_NOW,MN_NATION_BATTLE_BBS);//角龙利 龋免
}

void NationSupportNationSquadLeader(t_packet* p)
{
	//011004 lsw
	int sqn = p->u.NationWar.SquadInfo.SquadNo;
	sprintf(SMenu[MN_NATION_BUDAE].nField[6].temp,  lan->OutputMessage(0,408),sqn );//011030 lsw
	
	switch (sqn)
	{
	case 1:
		sprintf(SMenu[MN_NATION_BUDAE].nField[9].temp,  "%2d-%2d" ,NW_SQUAD1_LEVEL_MIN ,NW_SQUAD1_LEVEL_MAX);//饭骇
		break;
	case 2:
		sprintf(SMenu[MN_NATION_BUDAE].nField[9].temp,  "%2d-%2d" ,NW_SQUAD2_LEVEL_MIN ,NW_SQUAD2_LEVEL_MAX);//饭骇
		break;
	case 3:
		sprintf(SMenu[MN_NATION_BUDAE].nField[9].temp,  "%2d-%2d" ,NW_SQUAD3_LEVEL_MIN ,NW_SQUAD3_LEVEL_MAX);//饭骇
		break;
	case 4:
		sprintf(SMenu[MN_NATION_BUDAE].nField[9].temp,  "%2d-%2d" ,NW_SQUAD4_LEVEL_MIN ,NW_SQUAD4_LEVEL_MAX);//饭骇
		break;
	}
	
	SMenu[MN_NATION_BUDAE].nField[7].nType = FT_NOMAL_PUT;
	switch(Hero->name_status.nation)
	{
	case NW_BY:
		SMenu[MN_NATION_BUDAE].nField[7].nImageNumber = 20+sqn;
		break;
	case NW_ZY:
		SMenu[MN_NATION_BUDAE].nField[7].nImageNumber = 24+sqn;
		break;
	case NW_YL:
		SMenu[MN_NATION_BUDAE].nField[7].nImageNumber = 28+sqn;
		break;
	}

	if(	p->u.NationWar.SquadInfo.ChipID !=0  )
	{
		sprintf(SMenu[MN_NATION_BUDAE].nField[8].temp,  "%s",p->u.NationWar.SquadInfo.ChipName);
		sprintf(SMenu[MN_NATION_BUDAE].nField[17].temp,  "%s" ,ItemRare[p->u.NationWar.SquadInfo.Sok[0]].LocalName);
		sprintf(SMenu[MN_NATION_BUDAE].nField[18].temp,  "%s" ,ItemRare[p->u.NationWar.SquadInfo.Sok[1]].LocalName);
		if( sqn  == 3 || sqn ==4 )
		{
			memset(SMenu[MN_NATION_BUDAE].nField[19].temp,0,500);
		}
		else 
		{
			sprintf(SMenu[MN_NATION_BUDAE].nField[19].temp,  "%s" ,ItemRare[p->u.NationWar.SquadInfo.Sok[2]].LocalName);
		}
		
	}
	else
	{
//		SMenu[MN_NATION_BUDAE].nField[7].nType = 0;//何措 付农 救朵
		//011030 lsw >
		sprintf(SMenu[MN_NATION_BUDAE].nField[8].temp,	lan->OutputMessage(0,405) 	);//,p->u.NationWar.SquadInfo.ChipName);
		sprintf(SMenu[MN_NATION_BUDAE].nField[17].temp, lan->OutputMessage(0,405)	);//,p->u.NationWar.SquadInfo.Sok);
		sprintf(SMenu[MN_NATION_BUDAE].nField[18].temp, lan->OutputMessage(0,405)	);//,p->u.NationWar.SquadInfo.Sok);
		sprintf(SMenu[MN_NATION_BUDAE].nField[19].temp, lan->OutputMessage(0,405)	);//,p->u.NationWar.SquadInfo.Sok);
		//011030 lsw <
	}
}

void NationSupportNationSquadLeader2(t_packet *p)		// 011023 LTS 窃荐背眉
{
	char msg[100];

	//011030 lsw >
	sprintf(msg,lan->OutputMessage(0,406),1,p->u.NationWar.SquadInfo2.SquadCount[1], NW_SQUAD1_MAN_MAX);
	strcpy(SMenu[MN_NATION_BUDAE].nField[12].temp,  msg );
	sprintf(msg,lan->OutputMessage(0,406),2,p->u.NationWar.SquadInfo2.SquadCount[2], NW_SQUAD2_MAN_MAX);
	strcpy(SMenu[MN_NATION_BUDAE].nField[13].temp,  msg );
	sprintf(msg,lan->OutputMessage(0,406),3,p->u.NationWar.SquadInfo2.SquadCount[3], NW_SQUAD3_MAN_MAX);
	strcpy(SMenu[MN_NATION_BUDAE].nField[14].temp,  msg );
	sprintf(msg,lan->OutputMessage(0,406),4,p->u.NationWar.SquadInfo2.SquadCount[4], NW_SQUAD4_MAN_MAX);
	strcpy(SMenu[MN_NATION_BUDAE].nField[15].temp,  msg );

	int squadno = Hero->NWCharacter.SquadNo;
	
	switch (squadno)
	{
	case 1:
		sprintf(msg,lan->OutputMessage(0,407),squadno,p->u.NationWar.SquadInfo2.SquadCount[squadno],NW_SQUAD1_MAN_MAX);
		strcpy(SMenu[MN_NATION_BUDAE].nField[squadno+11].temp,  msg );
		break;
	case 2:
		sprintf(msg,lan->OutputMessage(0,407),squadno,p->u.NationWar.SquadInfo2.SquadCount[squadno],NW_SQUAD2_MAN_MAX);
		strcpy(SMenu[MN_NATION_BUDAE].nField[squadno+11].temp,  msg );
		break;
	case 3:
		sprintf(msg,lan->OutputMessage(0,407),squadno,p->u.NationWar.SquadInfo2.SquadCount[squadno],NW_SQUAD3_MAN_MAX);
		strcpy(SMenu[MN_NATION_BUDAE].nField[squadno+11].temp,  msg );
		break;
	case 4:
		sprintf(msg,lan->OutputMessage(0,407),squadno,p->u.NationWar.SquadInfo2.SquadCount[squadno],NW_SQUAD4_MAN_MAX);
		strcpy(SMenu[MN_NATION_BUDAE].nField[squadno+11].temp,  msg );
		break;
	}
	//011030 lsw <
	
	sprintf(msg,"%s",p->u.NationWar.SquadInfo2.CommanderName);//荤飞包 疙
	strcpy(SMenu[MN_NATION_BUDAE].nField[16].temp,  msg );

	CallSmallMenu(MN_NATION_BUDAE,MN_NATION_BATTLE_BBS);							// Squad Interface Open
}

//011001 lsw
void NationWarResultDoneButton()//搬苞 俊辑 done 穿福搁 甸绢咳
{
	if (isNationWarfieldServer())
		SendCMD_CHECK_AM_I_DEFEAT();
	if (isNewWarfieldServer())
		SendCMD_CHECK_DEFEAT();
}

void TodayNoticeButtonIntoColor(int color)//1捞搁 闰祸 2 捞搁 弧埃祸
{
	if (color > 2 || color < 0 ){ return; }

	SMenu[MN_TIME_DISPLAY_MENU].nField[3].nWillDo = color;
	return;
}

bool DoButtonCheckOfMenu_SpecialWillDo_lsw(int i, int j)//020515 lsw

⌨️ 快捷键说明

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