亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cbevent.cpp

?? 赤壁之戰的游戲源代碼
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
			WORD		Pos1=0;
			UNIT_STRUCT * Pobject2;
			WORD		Pos2=0;
			UNIT_STRUCT * Pobject3;
			WORD		Pos3=0;

			for (i=0;i<PLAYER_GROUP_MAX;i++)
			{
				if ( GAME.Players[GAME.nMe].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[GAME.nMe].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if ( EYE_IfUnitIsDead( pUnit ) )
						continue;
					if ( pUnit->Gen.nID == 34 )
					{
						//趙云
						Pobject1=pUnit;
						Pos1=1;
					}
					else if ( pUnit->Gen.nID == 35 )
					{
						// 張飛
						Pobject2=pUnit;
						Pos2=1;
					}
					else if ( pUnit->Gen.nID == 36 )
					{
						// 關羽
						Pobject3=pUnit;
						Pos3=1;
					}
				}
			}

			for (i=0;i<PLAYER_GROUP_MAX;i++)
			{
				if ( GAME.Players[AIPlayer].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[AIPlayer].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					//曹操
					if ( !EYE_IfUnitIsDead( pUnit ) 
						&& pUnit->Gen.nID == 60 )
					{
						if (Pos1 == 1 && EventPos[Level][0] == 0)
						{
							// 曹操遇到趙云,劉備方士氣增加20
							if (pUnit->Draw.nX < Pobject1->Draw.nX+10
							&&pUnit->Draw.nX > Pobject1->Draw.nX-10
							&&pUnit->Draw.nY < Pobject1->Draw.nY+10
							&&pUnit->Draw.nY > Pobject1->Draw.nY-10)
							{
								EventPos[Level][0]=1;
								//FACE_ShowEvent(9);
								// Nov.21.1997
								PostMessage( hwndGame, WM_SHOW_EVENT, 9, 0 );
								TY_BateMorale(GAME.nMe, 20);
								break;
							}
						}
						if (Pos2 == 1 && EventPos[Level][1] == 0)
						{
							// 曹操遇到張飛,劉備方士氣增加20
							if (pUnit->Draw.nX < Pobject2->Draw.nX+10
							&&pUnit->Draw.nX > Pobject2->Draw.nX-10
							&&pUnit->Draw.nY < Pobject2->Draw.nY+10
							&&pUnit->Draw.nY > Pobject2->Draw.nY-10)
							{
								EventPos[Level][1]=1;
								//FACE_ShowEvent(10);
								// Nov.21.1997
								PostMessage( hwndGame, WM_SHOW_EVENT, 10, 0 );
								TY_BateMorale(GAME.nMe, 20);
								break;
							}
						}
						if (Pos3 == 1 && EventPos[Level][2] == 0)
						{
							// 曹操遇到關羽,游戲結束
							if (pUnit->Draw.nX < Pobject3->Draw.nX+10
							&&pUnit->Draw.nX > Pobject3->Draw.nX-10
							&&pUnit->Draw.nY < Pobject3->Draw.nY+10
							&&pUnit->Draw.nY > Pobject3->Draw.nY-10)
							{
								EventPos[Level][2]=1;
								//FACE_ShowEvent(11);
								// Nov.21.1997
								//PostMessage( hwndGame, WM_SHOW_EVENT, 11, 0 );
								ret = 2;
								break;
							}
						}

						// 曹操到達界碑,游戲結束
						if (pUnit->Draw.nX > SAFEAREA14_EX-10
							&&pUnit->Draw.nX < SAFEAREA14_EX+10
							&&pUnit->Draw.nY < SAFEAREA14_EY+10
							&&pUnit->Draw.nY > SAFEAREA14_EY-10)
						{
							ret = 2;
						}
					}
					break;
				}
			}
		}	// end of case14
		break;

	case	19:
		// 在任何一支曹操部隊到達某一點后,自動放火
		// 注意:EventPos[level][1]的第二個分量必須是1,用于和前面的火攻統一
		if( EventPos[Level][1] == 1 )
			break;
		{
			UNIT_STRUCT * Pobject = NULL;
			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[GAME.nMe].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[GAME.nMe].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE )
						continue;
					if (pUnit->Draw.nX > SAFEAREA19_EX-10
						&&pUnit->Draw.nX < SAFEAREA19_EX+10
						&&pUnit->Draw.nY < SAFEAREA19_EY+10
						&&pUnit->Draw.nY > SAFEAREA19_EY-10)
					{	// 曹操有部隊到達指定位置
						Pobject	= pUnit;
					}
				}
			}
			if( Pobject == NULL )
				break;

			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[AIPlayer].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[AIPlayer].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE
						|| pUnit->Status.bIRQ == TRUE )
						continue;
					//使用火計
					EventPos[Level][1] = 1;
					// 人為地增加火攻所必須的謀略值
					DATA_Lib.Gen[pUnit->Gen.nID].nMouLue += RUN_MOULUE_nConsume[HUOGONG];

					struct CTRL_TASK_STRUCT Task;
					CTRL_TASK_Clear( &Task );
					Task.nID = pUnit->nID;
					Task.nTaskID = JIMOU;
					Task.nTaskIDEx2 = HUOGONG;
					Task.nTaskIDEx = 1; // MOUSE_HITRESULT_GROUND
					Task.nParam1 = 0;
					Task.nParam2 = SAFEAREA19_EX;
					Task.nParam3 = SAFEAREA19_EY;
					Task.bDone = TRUE;
					// 下達命令
					CTRL_TASK_DeployByComputer( AIPlayer, &Task );
				}
			}
		}
		break;

	case	20:
		// 在任何一支曹操部隊到達某一點后,自動放火
		// 注意:EventPos[level][1]的第二個分量必須是1,用于和前面的火攻統一
		if( EventPos[Level][1] == 1 )
			break;
		{
			UNIT_STRUCT * Pobject = NULL;
			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[GAME.nMe].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[GAME.nMe].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE )
						continue;
					if (pUnit->Draw.nX > SAFEAREA20_EX-10
						&&pUnit->Draw.nX < SAFEAREA20_EX+10
						&&pUnit->Draw.nY < SAFEAREA20_EY+10
						&&pUnit->Draw.nY > SAFEAREA20_EY-10)
					{	// 曹操有部隊到達指定位置
						Pobject	= pUnit;
					}
				}
			}
			if( Pobject == NULL )
				break;

			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[AIPlayer].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[AIPlayer].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE
						|| pUnit->Status.bIRQ == TRUE )
						continue;
					//使用火計
					EventPos[Level][1] = 1;
					// 人為地增加火攻所必須的謀略值
					DATA_Lib.Gen[pUnit->Gen.nID].nMouLue += RUN_MOULUE_nConsume[HUOGONG];

					struct CTRL_TASK_STRUCT Task;
					CTRL_TASK_Clear( &Task );
					Task.nID = pUnit->nID;
					Task.nTaskID = JIMOU;
					Task.nTaskIDEx2 = HUOGONG;
					Task.nTaskIDEx = 1; // MOUSE_HITRESULT_GROUND
					Task.nParam1 = 0;
					Task.nParam2 = SAFEAREA20_EX;
					Task.nParam3 = SAFEAREA20_EY;
					Task.bDone = TRUE;
					// 下達命令
					CTRL_TASK_DeployByComputer( AIPlayer, &Task );
				}
			}
		}
		break;
	case	27:

		// 曹操造出連船
		if( EventPos[Level][0] == 1 )
			break;
		for( i=0; i<PLAYER_UNIT_MAX; i++ )
		{
			if( GAME.Players[GAME.nMe].Unit[i].nID == MAP_DATA_NONE )
				continue;
			pUnit = &GAME.Players[GAME.nMe].Unit[i];
			Assert( pUnit );
			if( !EYE_IfUnitIsDead( pUnit )
				&& pUnit->Draw.nFile == 49 )	// 連船
			{
				EventPos[Level][0] = 1;
				//FACE_ShowEvent( 5 );
				// Nov.21.1997
				PostMessage( hwndGame, WM_SHOW_EVENT, 5, 0 );
			}
		}
		break;

	case	29:
		// 在任何一支曹操部隊到達某一點后,自動放火
		// 注意:EventPos[level][1]的第二個分量必須是1,用于和前面的火攻統一
		if( EventPos[Level][1] == 1 )
			break;
		{
			UNIT_STRUCT * Pobject = NULL;
			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[GAME.nMe].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[GAME.nMe].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE )
						continue;
					if (pUnit->Draw.nX > SAFEAREA29_EX-10
						&&pUnit->Draw.nX < SAFEAREA29_EX+10
						&&pUnit->Draw.nY < SAFEAREA29_EY+10
						&&pUnit->Draw.nY > SAFEAREA29_EY-10)
					{	// 曹操有部隊到達指定位置
						Pobject	= pUnit;
					}
				}
			}
			if( Pobject == NULL )
				break;

			for ( i=0; i<PLAYER_GROUP_MAX; i++ )
			{
				if ( GAME.Players[AIPlayer].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[AIPlayer].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if( EYE_IfUnitIsDead( pUnit ) == TRUE
						|| pUnit->Status.bIRQ == TRUE )
						continue;
					//使用火計
					EventPos[Level][1] = 1;
					// 人為地增加火攻所必須的謀略值
					DATA_Lib.Gen[pUnit->Gen.nID].nMouLue += RUN_MOULUE_nConsume[HUOGONG];

					struct CTRL_TASK_STRUCT Task;
					CTRL_TASK_Clear( &Task );
					Task.nID = pUnit->nID;
					Task.nTaskID = JIMOU;
					Task.nTaskIDEx2 = HUOGONG;
					Task.nTaskIDEx = 1; // MOUSE_HITRESULT_GROUND
					Task.nParam1 = 0;
					Task.nParam2 = SAFEAREA29_EX;
					Task.nParam3 = SAFEAREA29_EY;
					Task.bDone = TRUE;
					// 下達命令
					CTRL_TASK_DeployByComputer( AIPlayer, &Task );
				}
			}
		}
		break;

	case 30:
		{
			UNIT_STRUCT * Pobject1;
			WORD		Pos1=0;
			UNIT_STRUCT * Pobject2;
			WORD		Pos2=0;
			UNIT_STRUCT * Pobject3;
			WORD		Pos3=0;

			for (i=0;i<PLAYER_GROUP_MAX;i++)
			{
				if ( GAME.Players[AIPlayer].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[AIPlayer].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );
					if ( EYE_IfUnitIsDead( pUnit ) )
						continue;
					if ( pUnit->Gen.nID == 34 )
					{
						//趙云
						Pobject1=pUnit;
						Pos1=1;
					}
					else if ( pUnit->Gen.nID == 35 )
					{
						// 張飛
						Pobject2=pUnit;
						Pos2=1;
					}
					else if ( pUnit->Gen.nID == 36 )
					{
						// 關羽
						Pobject3=pUnit;
						Pos3=1;
					}
				}
			}

			for (i=0;i<PLAYER_GROUP_MAX;i++)
			{
				if ( GAME.Players[GAME.nMe].wGroup[i] != MAP_DATA_NONE )
				{
					pUnit = MAP_GetUnit( GAME.Players[GAME.nMe].wGroup[i] );
					Assert( pUnit );
					Assert( EYE_IfUnitIsGen( pUnit ) );

					if( !EYE_IfUnitIsDead( pUnit ) )
					{
						// 任何將領到達界碑,游戲結束
						if (pUnit->Draw.nX > SAFEAREA30_EX-10
							&&pUnit->Draw.nX < SAFEAREA30_EX+10
							&&pUnit->Draw.nY < SAFEAREA30_EY+10
							&&pUnit->Draw.nY > SAFEAREA30_EY-10)
						{
							ret = 1;
							break;
						}
					}
					
					//曹操
					if ( !EYE_IfUnitIsDead( pUnit ) 
						&& pUnit->Gen.nID == 60 )
					{
						if (Pos1 == 1 && EventPos[Level][0] == 0)
						{
							// 曹操遇到趙云,曹操方士氣減少20
							if (pUnit->Draw.nX < Pobject1->Draw.nX+10
							&&pUnit->Draw.nX > Pobject1->Draw.nX-10
							&&pUnit->Draw.nY < Pobject1->Draw.nY+10
							&&pUnit->Draw.nY > Pobject1->Draw.nY-10)
							{
								EventPos[Level][0]=1;
								//FACE_ShowEvent(9);
								// Nov.21.1997
								PostMessage( hwndGame, WM_SHOW_EVENT, 9, 0 );
								TY_BateMorale(GAME.nMe, -20);
								break;
							}
						}
						if (Pos2 == 1 && EventPos[Level][1] == 0)
						{
							// 曹操遇到張飛,曹操方士氣減少20
							if (pUnit->Draw.nX < Pobject2->Draw.nX+10
							&&pUnit->Draw.nX > Pobject2->Draw.nX-10
							&&pUnit->Draw.nY < Pobject2->Draw.nY+10
							&&pUnit->Draw.nY > Pobject2->Draw.nY-10)
							{
								EventPos[Level][1]=1;
								FACE_ShowEvent(10);
								// Nov.21.1997
								PostMessage( hwndGame, WM_SHOW_EVENT, 10, 0 );
								TY_BateMorale(GAME.nMe, -20);
								break;
							}
						}
						if (Pos3 == 1 && EventPos[Level][2] == 0)
						{
							// 曹操遇到關羽,游戲結束
							if (pUnit->Draw.nX < Pobject3->Draw.nX+10
							&&pUnit->Draw.nX > Pobject3->Draw.nX-10
							&&pUnit->Draw.nY < Pobject3->Draw.nY+10
							&&pUnit->Draw.nY > Pobject3->Draw.nY-10)
							{
								EventPos[Level][2]=1;
								//FACE_ShowEvent(11);
								// Nov.21.1997
								//PostMessage( hwndGame, WM_SHOW_EVENT, 11 );
								ret = 1;
								break;
							}
						}
					}
					break;
				}
			}
		}
		break;
	}	// end of Switch
	return ret;
}

inline BOOL EVENT_EndInTime( int nGameID )
{
	switch( nGameID )
	{
		case	21:	// 劉備撤出戰場,被消滅
		case	22: // 三天內滅劉備軍,曹操分支一
			break;
	}
	return FALSE;
}

inline BOOL EVENT_FightSingle( int nGameID, int nGenID1, int nGenID2 )
{
	//case	8:	// 單挑夏侯恩
	return FALSE;
}

inline BOOL EVENT_Number( int nGameID )
{
	//case	24:	// 十天后,我軍人數超過敵人
	return FALSE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二区三区蜜桃| 麻豆91精品视频| 99在线精品一区二区三区| 欧美精品一区男女天堂| 久久99国产精品久久99| 欧美一区二区视频观看视频| 日韩电影在线一区二区三区| 在线播放一区二区三区| 日韩中文字幕区一区有砖一区 | 欧美精品18+| 日本亚洲电影天堂| 日韩一区二区电影| 国产成人精品一区二区三区四区 | 成人永久看片免费视频天堂| 久久精品亚洲精品国产欧美| 成人看片黄a免费看在线| 综合av第一页| 欧美刺激午夜性久久久久久久| 激情深爱一区二区| 亚洲免费视频中文字幕| 欧美一级夜夜爽| 99精品国产视频| 青青草国产成人av片免费| 国产精品日日摸夜夜摸av| 欧美日韩中文字幕一区二区| 免费成人在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 亚洲视频小说图片| 精品免费日韩av| 在线观看一区二区视频| 国产一区二区三区av电影| 一区二区三区在线免费观看| 国产免费成人在线视频| 日韩女同互慰一区二区| 一本到高清视频免费精品| 日韩精品成人一区二区在线| 欧美国产精品一区| 精品久久久久99| 欧美精品自拍偷拍动漫精品| 色综合久久久久综合| 国产精品一区二区在线观看网站| 首页国产欧美日韩丝袜| 亚洲一区二区三区小说| 国产精品沙发午睡系列990531| 精品国产青草久久久久福利| 欧美日韩国产高清一区二区| 色天天综合色天天久久| 91网站黄www| 色婷婷久久一区二区三区麻豆| 国产91丝袜在线播放| 成人精品免费看| 成人黄色国产精品网站大全在线免费观看| 久久精品国产久精国产| 久久福利视频一区二区| 国产精品一二二区| 91在线视频免费观看| 欧美在线一区二区| 91精品欧美一区二区三区综合在| 欧美日韩大陆在线| 日韩三级.com| 欧美国产一区二区在线观看| 国产精品高潮呻吟| 一区二区成人在线| 亚洲成人激情av| 久久精品国产第一区二区三区| 国产一区二区免费看| 99re热视频这里只精品| 91官网在线免费观看| 在线不卡一区二区| 国产亲近乱来精品视频| 亚洲成人免费观看| 国产成人精品免费在线| 色老汉av一区二区三区| 亚洲国产成人私人影院tom| 精品视频在线免费| 欧美一级二级三级蜜桃| 国产亚洲精品aa| 丝袜a∨在线一区二区三区不卡| 国产毛片一区二区| 制服丝袜一区二区三区| 亚洲精品午夜久久久| 成人动漫视频在线| 久久只精品国产| 日本免费在线视频不卡一不卡二| 一本久久a久久精品亚洲| 久久综合色8888| 久久超碰97中文字幕| 在线电影欧美成精品| 亚洲韩国精品一区| 欧美视频自拍偷拍| 亚洲精品成人精品456| 91亚洲国产成人精品一区二三 | 91丨porny丨国产| 中文字幕乱码日本亚洲一区二区| 国产精品456| 日本一区二区三区久久久久久久久不| 久久精品国产一区二区| 久久综合成人精品亚洲另类欧美| 久久精品免费看| 久久先锋影音av鲁色资源| 国产乱码精品一区二区三| 久久久久国产成人精品亚洲午夜 | 亚洲视频图片小说| 欧美性色综合网| 久久久www免费人成精品| 免费观看在线综合| 久久综合色婷婷| 99精品国产一区二区三区不卡| 樱桃视频在线观看一区| 7777女厕盗摄久久久| 成人性生交大合| 午夜欧美一区二区三区在线播放| 日韩一区二区三区精品视频| 成人污视频在线观看| 亚洲自拍另类综合| 久久久影院官网| 91成人国产精品| 韩国理伦片一区二区三区在线播放 | 国内精品国产成人| 国产精品国产成人国产三级| 欧美日韩国产区一| 91在线高清观看| 国内精品第一页| 日本亚洲一区二区| 亚洲狼人国产精品| 欧美国产亚洲另类动漫| 欧美男人的天堂一二区| 成人网在线免费视频| 美女一区二区在线观看| 亚洲成a天堂v人片| 国产精品久线在线观看| 久久久精品2019中文字幕之3| 欧美三级三级三级爽爽爽| 99re免费视频精品全部| 国产精品影视天天线| 欧美aaaaa成人免费观看视频| 亚洲精品视频在线观看网站| 亚洲精品一区二区三区影院 | 蜜臀a∨国产成人精品| 亚洲免费在线播放| 亚洲欧美日韩国产综合| 国产精品久久久久久久浪潮网站| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美一级欧美一级在线播放| 欧美日韩日日摸| 9191成人精品久久| 欧美tickling挠脚心丨vk| 欧美一区日本一区韩国一区| 欧美一区二区成人6969| 日韩免费性生活视频播放| 欧美不卡一区二区三区四区| 久久久精品国产免大香伊| 国产精品久久久久久妇女6080| 中文字幕第一区综合| 自拍av一区二区三区| 国产欧美日韩在线观看| 国产三区在线成人av| 亚洲精品中文在线| 亚洲444eee在线观看| 久久精品国产亚洲aⅴ | 久久er99热精品一区二区| 国产麻豆日韩欧美久久| 9i在线看片成人免费| 欧美精品欧美精品系列| 国产亚洲精品中文字幕| 亚洲免费观看视频| 久久精品国产久精国产爱| 91在线视频18| 日韩美女视频在线| 国产精品久久久久久久久免费樱桃 | 精品99999| 亚洲免费观看高清完整版在线观看熊| 欧美aaaaa成人免费观看视频| 成人小视频在线| 日韩精品一区二区三区视频播放| 中文字幕中文字幕在线一区| 日韩福利视频网| 99视频在线精品| 制服.丝袜.亚洲.另类.中文| 中文字幕在线播放不卡一区| 韩国女主播成人在线观看| 精品视频在线看| 亚洲久本草在线中文字幕| 国模娜娜一区二区三区| 欧美一区二区三区视频在线| 亚洲激情图片qvod| 99精品视频在线观看| 国产欧美在线观看一区| 国内成+人亚洲+欧美+综合在线| 欧美久久久久久蜜桃| 亚洲一区二区三区美女| 91免费看片在线观看| 亚洲嫩草精品久久| 99久久99久久免费精品蜜臀| 国产精品三级av| 成人av电影观看| 亚洲日本电影在线| 日本二三区不卡| 亚洲国产一区二区三区| 日韩一区二区三区电影|