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

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

?? npc_fmwarpman.c

?? 最新主流石器時代源代碼,包含諸多目前流行功能代碼.
?? C
?? 第 1 頁 / 共 4 頁
字號:
							CHAR_getInt(meindex, CHAR_Y));
						NPC_talkToFloor( floor,  fmpks[fmpks_pos].host_index, -1, "因未滿二十人而離場" );
#ifdef _DEATH_FAMILY_STRUCT		// WON ADD 家族戰(zhàn)存放勝負資料
						{
							char out[256];
							sprintf( out, "[%s](%d) 因未滿二十人棄權",  fmpks[fmpks_pos].host_name/* .host_index*/, num1 );
							saacproto_FM_PK_STRUCT_send( acfd, out );
						}
#endif		
					}
				}
#endif
			}
			else if (tm1.tm_min > CHAR_getWorkInt(meindex, NPC_WORK_TIMEFLAG))
			{
				char buf[256];
				int clock = 0;
				CHAR_setWorkInt(meindex, NPC_WORK_TIMEFLAG, tm1.tm_min);
				clock = ((fmpks[fmpks_pos].dueltime % 100) + fmpks[fmpks_pos].prepare_time) - tm1.tm_min;
				if (clock >= 60)	clock = clock - 60;
				sprintf(buf, "距離對戰(zhàn)時間還剩下:%4d分鐘", clock);
				NPC_talkToFloor(floor, fmpks[fmpks_pos].host_index,
					fmpks[fmpks_pos].guest_index, buf);
			}
		}
	}else if (CHAR_getWorkInt(meindex, NPC_WORK_MODEFLAG) == NPC_STATEBUSY){
		// 檢查場內人數(shù)、判斷勝負
		int num1 = 0, num2 = 0;
		int winflag = 0;
		int floor = CHAR_getWorkInt(meindex, NPC_WORK_WARPFLOOR);
		int meid = CHAR_getWorkInt(meindex, NPC_WORK_ID);
		
		print("\n won ==> check_winner : npc_meid(%d)", meid );
		
		NPC_GetPKFMNum(floor, fmpks[fmpks_pos].host_index,
			fmpks[fmpks_pos].guest_index, &num1, &num2);
		NPC_FMBATTLESET(floor, fmpks[fmpks_pos].host_index,
			fmpks[fmpks_pos].guest_index, 1);
		CheckLeavePK(meindex, floor, fmpks[fmpks_pos].host_index,
			fmpks[fmpks_pos].guest_index);
		
		if (meid > MANORNUM){
			if (tm1.tm_min == FMWARPMAN_CLEANPLACE){
				// 判斷勝負、WARP離場、設定NPC狀態(tài)
				NPC_BattleOut(fmpks[fmpks_pos].host_index, fmpks[fmpks_pos].guest_index);
				NPC_FMBATTLESET(floor, fmpks[fmpks_pos].host_index,
					fmpks[fmpks_pos].guest_index, -1);
				if (fmpks[fmpks_pos].win == 0){// 生存戰(zhàn)
					if (num1 > num2)
						winflag = 1;
					else if(num1 < num2)
						winflag = 2;
					else
						winflag = 3;
				}else if (fmpks[fmpks_pos].win == 1){ // 打飛戰(zhàn)
					if ((CHAR_getWorkInt(meindex, NPC_WORK_FMNUMI) - num1) < (CHAR_getWorkInt(meindex, NPC_WORK_FMNUMII) - num2))
						winflag = 1;
					else if ((CHAR_getWorkInt(meindex, NPC_WORK_FMNUMI) - num1) > (CHAR_getWorkInt(meindex, NPC_WORK_FMNUMII) - num2))
						winflag = 2;
					else
						winflag = 3;
				}
			}
		}
		if ((num1 == 0) && (num2 != 0)){
			winflag = 2;
		}else if ((num2 == 0) && (num1 != 0)){
			winflag = 1;
		}else if ((num1 == 0) && (num2 == 0)){
			winflag = 3;
		}      
		if (winflag > 0 && winflag < 3){
#ifdef _MANOR_PKRULE      
			if(meid > MANORNUM){
#endif
#ifdef _DEATH_FAMILY_GM_COMMAND	// WON ADD 家族戰(zhàn)GM指令
				{
					int i, win_index = -1, loser_index = -1;
					char *win_name, *loser_name, msg[256] = {0}, token[256] = {0};
					struct tm tm1;
					int n1 = 0, n2 = 0;
					//				FILE *f;
					
					if(winflag == 1){
						win_index = fmpks[fmpks_pos].host_index;
						win_name = fmpks[fmpks_pos].host_name;
						n1 = num1;
						loser_index = fmpks[fmpks_pos].guest_index;
						loser_name = fmpks[fmpks_pos].guest_name;
						n2 = num2;
					}else if(winflag == 2){
						win_index = fmpks[fmpks_pos].guest_index;
						win_name = fmpks[fmpks_pos].guest_name;
						n1 = num2;
						loser_index = fmpks[fmpks_pos].host_index;
						loser_name = fmpks[fmpks_pos].host_name;
						n2 = num1;
					}else{
						win_index = fmpks[fmpks_pos].host_index;
						win_name = fmpks[fmpks_pos].host_name;
						loser_index = fmpks[fmpks_pos].guest_index;
						loser_name = fmpks[fmpks_pos].guest_name;					
					}
					
					memcpy( &tm1, localtime( (time_t *)&NowTime.tv_sec), sizeof( tm1));
					
					if(winflag == 1 || winflag == 2){
						sprintf( msg, "[%s](%d)人 勝 [%s](%d)人", win_name, n1, loser_name, n2 );
						sprintf( token, "戰(zhàn)況播報: %s", msg );
					}else if( winflag == 3 ){				
						sprintf( msg, "[%s] 平手 [%s]", win_name, loser_name );
						sprintf( token, "戰(zhàn)況播報: %s", msg );
					}
					
#ifdef _DEATH_FAMILY_STRUCT		// WON ADD 家族戰(zhàn)存放勝負資料
					{
						char out[256] = {0};
						sprintf( out, "%d/%d/%d:%d %s", tm1.tm_mon+1, tm1.tm_mday, tm1.tm_hour, tm1.tm_min, msg );
						saacproto_FM_PK_STRUCT_send( acfd, out );
					}
#endif
					
					for( i=0 ; i< playernum ; i++ ){
						if( CHAR_CHECKINDEX( i ) == FALSE )	continue;
						CHAR_talkToCli( i, -1, token, CHAR_COLORYELLOW);
					}				
					/*
					if( (f = fopen( "d_fm_pk_log.txt", "a+" ) ) ){
					fprintf( f, "%d/%d/%d:%d %s\n", tm1.tm_mon+1, tm1.tm_mday, tm1.tm_hour, tm1.tm_min, msg );
					fclose( f );
					}else{
					print("\n open file (d_fm_pk_log.txt) Err !!");
					}
					*/
				}
#else
				// 流浪家族pk 過聲望
				if (winflag == 1){	 		 
					saacproto_ACFixFMPK_send(acfd,
						fmpks[fmpks_pos].host_name,
						fmpks[fmpks_pos].host_index + 1,
						fmpks[fmpks_pos].host_index,
						fmpks[fmpks_pos].guest_name,
						fmpks[fmpks_pos].guest_index + 1,
						fmpks[fmpks_pos].guest_index);
				} else {			 
					saacproto_ACFixFMPK_send(acfd,
						fmpks[fmpks_pos].guest_name,
						fmpks[fmpks_pos].guest_index + 1,
						fmpks[fmpks_pos].guest_index,
						fmpks[fmpks_pos].host_name,
						fmpks[fmpks_pos].host_index + 1,
						fmpks[fmpks_pos].host_index);
				}  
#endif
				
#ifdef _MANOR_PKRULE      
			}
#endif
			
			{
				if (meid > 0 && meid <= MANORNUM){// CoolFish 2002/2/25 Change MANOR -> MANORNUM
#ifdef _NEW_MANOR_LAW
					int i,iFmIndex1,iFmIndex2,iCharindex;
#endif
					fmpks[fmpks_pos + 1].flag = FMPKS_FLAG_MANOR_BATTLEEND;
					if (winflag == 1){
						char token[256];
						sprintf( token, " (%d:%d) %d/%d/%d",
							tm1.tm_hour, tm1.tm_min,
							tm1.tm_year+1900, tm1.tm_mon+1, tm1.tm_mday);
						saacproto_ACFixFMPoint_send(acfd, 
							fmpks[fmpks_pos].host_name,
							fmpks[fmpks_pos].host_index + 1,
							fmpks[fmpks_pos].host_index,
							fmpks[fmpks_pos].guest_name,
							fmpks[fmpks_pos].guest_index + 1,
							fmpks[fmpks_pos].guest_index, meid);
						//Syu 增加莊園戰(zhàn)勝負Log
						Logfmpk(
							fmpks[fmpks_pos].host_name,
							fmpks[fmpks_pos].host_index,
							num1,
							fmpks[fmpks_pos].guest_name,
							fmpks[fmpks_pos].guest_index,
							num2, token, "", "", 2);
#ifdef _NEW_MANOR_LAW
						// 原家族守住了莊園,家族成員可得到石幣
						iFmIndex1 = fmpks[fmpks_pos].host_index;
						for(i=0;i<FAMILY_MAXMEMBER;i++){
							iCharindex = familyMemberIndex[iFmIndex1][i];
							// 若在線上才給錢
							if(iCharindex >= 0 && CHAR_getCharUse(iCharindex)){
								// 獲得金錢 = 個人氣勢 * 5000
								int iAddGold = ((float)CHAR_getInt(iCharindex,CHAR_MOMENTUM)/100.0f) * 5000.0f;
								int iGold = CHAR_getInt(iCharindex,CHAR_BANKGOLD),iMaxGold;
								// 先放入個人銀行
								if(iGold + iAddGold > CHAR_MAXBANKGOLDHAVE){
									CHAR_setInt(iCharindex,CHAR_BANKGOLD,CHAR_MAXBANKGOLDHAVE);
									// 個人銀行放不下了,放到個人身上
									iAddGold = iGold + iAddGold - CHAR_MAXBANKGOLDHAVE;
									iGold = CHAR_getInt(iCharindex,CHAR_GOLD);
									iMaxGold = CHAR_getMaxHaveGold(iCharindex);
									if(iGold + iAddGold > iMaxGold) CHAR_setInt(iCharindex,CHAR_GOLD,iMaxGold);
									else CHAR_setInt(iCharindex,CHAR_GOLD,iGold + iAddGold);
									LogFMPKGetMomey(CHAR_getChar(iCharindex,CHAR_FMNAME),
																	CHAR_getChar(iCharindex,CHAR_CDKEY),
																	CHAR_getChar(iCharindex,CHAR_NAME),
																	CHAR_getInt(iCharindex,CHAR_MOMENTUM),iAddGold,0);
								}
								else{
									CHAR_setInt(iCharindex,CHAR_BANKGOLD,iGold + iAddGold);
									LogFMPKGetMomey(CHAR_getChar(iCharindex,CHAR_FMNAME),
																	CHAR_getChar(iCharindex,CHAR_CDKEY),
																	CHAR_getChar(iCharindex,CHAR_NAME),
																	CHAR_getInt(iCharindex,CHAR_MOMENTUM),iAddGold,1);
								}
								CHAR_talkToCli(iCharindex,-1,"辛苦了!守護住莊園的獎金已匯入你的個人銀行",CHAR_COLORRED);
							}
						}
#endif
					} 
					else if (winflag == 2){	
						char token[256];
						sprintf( token, " (%d:%d) %d/%d/%d",
							tm1.tm_hour, tm1.tm_min,
							tm1.tm_year+1900, tm1.tm_mon+1, tm1.tm_mday);
						saacproto_ACFixFMPoint_send(acfd, 
							fmpks[fmpks_pos].guest_name,
							fmpks[fmpks_pos].guest_index + 1,
							fmpks[fmpks_pos].guest_index,
							fmpks[fmpks_pos].host_name,
							fmpks[fmpks_pos].host_index + 1,
							fmpks[fmpks_pos].host_index, meid);
						//Syu 增加莊園戰(zhàn)勝負Log
						Logfmpk(
							fmpks[fmpks_pos].guest_name,
							fmpks[fmpks_pos].guest_index,
							num2,
							fmpks[fmpks_pos].host_name,
							fmpks[fmpks_pos].host_index,
							num1, token, "", "", 2);
					}
					CHAR_setWorkInt(meindex, NPC_WORK_MODEFLAG, NPC_STATEFREE);
					CHAR_setInt(meindex, CHAR_LOOPINTERVAL, FMWARPMAN_FREE_LOOPTIME);
					print("FMWarpMan State:%d\n", CHAR_getWorkInt(meindex, NPC_WORK_MODEFLAG));
#ifdef _NEW_MANOR_LAW
					// 雙方的個人及家族氣勢都要歸零
					iFmIndex1 = fmpks[fmpks_pos].host_index;
					iFmIndex2 = fmpks[fmpks_pos].guest_index;
					for(i=0;i<FAMILY_MAXMEMBER;i++){
						iCharindex = familyMemberIndex[iFmIndex1][i];
						// 若有在線上則清除,不在線上的在登入游戲時清除
						if(iCharindex >= 0 && CHAR_getCharUse(iCharindex)){
							CHAR_setInt(iCharindex,CHAR_MOMENTUM,0);
							CHAR_talkToCli(iCharindex,-1,"莊園戰(zhàn)後個人及家族氣勢歸零",CHAR_COLORRED);
						}
						iCharindex = familyMemberIndex[iFmIndex2][i];
						if(iCharindex >= 0 && CHAR_getCharUse(iCharindex)){
							CHAR_setInt(iCharindex,CHAR_MOMENTUM,0);
							CHAR_talkToCli(iCharindex,-1,"莊園戰(zhàn)後個人及家族氣勢歸零",CHAR_COLORRED);
						}
					}
#endif
				}
			}
			if (winflag == 1)
			{
				CHAR_setWorkChar(meindex, NPC_WORK_WINFMNAME, fmpks[fmpks_pos].host_name);
			}
			else if (winflag == 2)
			{
				CHAR_setWorkChar(meindex, NPC_WORK_WINFMNAME, fmpks[fmpks_pos].guest_name);
				
			}
			NPC_WarpFamily(floor, fmpks[fmpks_pos].host_index,
				fmpks[fmpks_pos].guest_index,
				CHAR_getInt(meindex, CHAR_FLOOR),
				CHAR_getInt(meindex, CHAR_X),
				CHAR_getInt(meindex, CHAR_Y));
			if (meid > MANORNUM){// CoolFish 2002/2/25 Change MANOR -> MANORNUM
				CHAR_setWorkInt(meindex, NPC_WORK_MODEFLAG, NPC_STATEWAIT);
				CHAR_setInt(meindex, CHAR_LOOPINTERVAL, FMWARPMAN_WAIT_LOOPTIME);
			}
      }else if( winflag == 3 ){
				if (meid > 0 && meid <= MANORNUM) // CoolFish 2002/2/25 Change MANOR -> MANORNUM
					
					fmpks[fmpks_pos + 1].flag = FMPKS_FLAG_MANOR_BATTLEEND;
				NPC_talkToFloor(floor, fmpks[fmpks_pos].host_index,
         	fmpks[fmpks_pos].guest_index, "雙方平手,不分勝負!!");
				NPC_WarpFamily(floor, fmpks[fmpks_pos].host_index,
         	fmpks[fmpks_pos].guest_index,
         	CHAR_getInt(meindex, CHAR_FLOOR),
         	CHAR_getInt(meindex, CHAR_X),
         	CHAR_getInt(meindex, CHAR_Y));
				CHAR_setWorkInt(meindex, NPC_WORK_MODEFLAG, NPC_STATEWAIT);
				CHAR_setInt(meindex, CHAR_LOOPINTERVAL, FMWARPMAN_WAIT_LOOPTIME);  
      }
   }else if (CHAR_getWorkInt(meindex, NPC_WORK_MODEFLAG) == NPC_STATEWAIT){
		 
		 //	andy_edit 2002/07/29
		 if (tm1.tm_min == FMWARPMAN_CLEANPLACE)
			 CHAR_setInt(meindex, CHAR_LOOPINTERVAL, FMWARPMAN_FREE_LOOPTIME);
		 
		 NPC_CleanPK(floor, meindex);
		 
		 if (tm1.tm_min == 0){
			 CHAR_setWorkInt(meindex, NPC_WORK_MODEFLAG, NPC_STATEFREE);
			 // shan add
			 NPC_FMBATTLESET(floor, fmpks[fmpks_pos].host_index, fmpks[fmpks_pos].guest_index, -1);
			 CHAR_setInt(meindex, CHAR_LOOPINTERVAL, FMWARPMAN_FREE_LOOPTIME);
			 // 將 fmwarpman 初始化
			 CHAR_setWorkInt(meindex, NPC_WORK_FMNUMI, 0);
			 CHAR_setWorkInt(meindex, NPC_WORK_FMNUMII, 0);
			 CHAR_setWorkInt(meindex, NPC_WORK_TIMEFLAG, 0);
			 CHAR_setWorkInt(meindex, NPC_WORK_TALKFLAG, -1);
			 CHAR_setWorkChar(meindex, NPC_WORK_WINFMNAME, "");
		 }
   }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品1区2区| 男男gaygay亚洲| 国产精品日日摸夜夜摸av| 欧美一区永久视频免费观看| 日韩一区二区三免费高清| 色综合久久久久综合99| 国产成人综合自拍| 黑人精品欧美一区二区蜜桃| 免费观看91视频大全| 日本女人一区二区三区| 国产精品美女久久久久久| 日韩一区二区在线播放| 欧美久久久一区| 欧美日韩一区二区三区不卡 | 国产**成人网毛片九色| 国产一区在线观看视频| 精品在线播放免费| 国产综合色视频| 国产一区二区久久| 成人午夜大片免费观看| 成人国产精品免费观看视频| 成人小视频在线观看| 丁香婷婷综合色啪| 91啪亚洲精品| 欧美蜜桃一区二区三区| 欧美日韩亚洲不卡| 欧美电影免费观看高清完整版| 欧美高清激情brazzers| 欧美xxxxx裸体时装秀| 久久久噜噜噜久久中文字幕色伊伊 | 久久久久久麻豆| 国产欧美一区二区在线| 综合久久久久久| 丝袜诱惑制服诱惑色一区在线观看 | 国产精品美女久久久久久久网站| 国产欧美日韩另类一区| 亚洲精品国产成人久久av盗摄| www.成人网.com| 91精品国产91久久综合桃花| 国产精品视频一二三| 一区二区理论电影在线观看| 开心九九激情九九欧美日韩精美视频电影| 精彩视频一区二区三区| 在线免费观看不卡av| 欧美一区二区成人| 国产精品麻豆一区二区| 五月激情六月综合| 99国产精品久久久久久久久久| 欧美电影免费观看高清完整版在 | 亚洲人成网站色在线观看| 水蜜桃久久夜色精品一区的特点| 不卡欧美aaaaa| 久久亚区不卡日本| 视频一区中文字幕国产| 91麻豆国产福利在线观看| 国产亚洲福利社区一区| 免费看欧美女人艹b| 欧美老人xxxx18| 亚洲欧洲综合另类在线| 国产.欧美.日韩| 国产女人18毛片水真多成人如厕 | 久久av资源网| 欧美一个色资源| 麻豆免费看一区二区三区| 3751色影院一区二区三区| 亚洲va在线va天堂| 欧美精品xxxxbbbb| 日韩精品一区第一页| 欧美一区在线视频| 欧洲av一区二区嗯嗯嗯啊| 亚洲少妇30p| 在线视频国内自拍亚洲视频| 一区二区三区四区精品在线视频| 91在线精品秘密一区二区| 亚洲色图制服诱惑| 91美女精品福利| 亚洲第一搞黄网站| 亚洲日本青草视频在线怡红院 | 国产精品美女久久久久久久 | 亚洲成人一区在线| 日韩欧美久久久| 国内精品视频一区二区三区八戒| 日韩一级免费观看| caoporen国产精品视频| 亚洲精品视频在线看| 6080午夜不卡| 国产在线一区观看| 亚洲精选视频免费看| 日韩一区二区电影网| 成人激情黄色小说| 日韩高清一区二区| 欧美不卡一二三| 99精品视频在线观看免费| 午夜精品爽啪视频| 中文字幕va一区二区三区| 欧美丰满一区二区免费视频 | 欧美揉bbbbb揉bbbbb| 国产米奇在线777精品观看| 一区二区三区日本| 久久麻豆一区二区| 欧美日韩大陆在线| 成人sese在线| 国产高清一区日本| 男男成人高潮片免费网站| 一区二区久久久久久| 久久精品亚洲国产奇米99| 日韩一区二区在线观看视频| 欧美系列一区二区| 久久免费电影网| 亚洲精品在线观看视频| 337p亚洲精品色噜噜噜| 欧美日韩精品三区| 国产亚洲美州欧州综合国| 日韩一区二区在线观看视频| 欧美裸体一区二区三区| 欧美精彩视频一区二区三区| 久久久久久久综合日本| 26uuu国产电影一区二区| 日韩视频免费观看高清在线视频| 成人欧美一区二区三区视频网页| 欧美国产日韩一二三区| 中文字幕二三区不卡| 中文字幕视频一区二区三区久| 国产亚洲成年网址在线观看| 欧美国产日韩精品免费观看| 国产精品乱码久久久久久| 综合av第一页| 亚洲丶国产丶欧美一区二区三区| 亚洲午夜久久久久久久久电影院 | 美女国产一区二区三区| 激情综合网天天干| av电影天堂一区二区在线观看| 99久久久国产精品| 欧美日韩一区精品| 久久久亚洲精品一区二区三区| 国产精品天美传媒| 成人黄色国产精品网站大全在线免费观看 | 亚洲欧美日韩一区二区三区在线观看| 中文字幕一区二区三区av| 亚洲第一二三四区| 国产成人精品在线看| 欧洲视频一区二区| 久久久精品免费免费| 洋洋av久久久久久久一区| 另类人妖一区二区av| av电影在线观看一区| 日韩视频免费直播| 亚洲男人的天堂网| 国产剧情在线观看一区二区| 色婷婷国产精品| 2021中文字幕一区亚洲| 亚洲电影视频在线| 99久久久精品| 久久婷婷国产综合精品青草| 亚洲电影中文字幕在线观看| 懂色av一区二区在线播放| 91精品国产综合久久婷婷香蕉| 亚洲视频免费观看| 成人av高清在线| 国产欧美综合在线| 国产老女人精品毛片久久| 日韩欧美精品三级| 日韩电影免费一区| 欧美日本不卡视频| 午夜精品免费在线| 欧美性大战久久久| 亚洲综合在线第一页| 97精品久久久久中文字幕| 国产蜜臀97一区二区三区| 国产成人av电影在线| 久久一区二区三区四区| 狠狠色丁香婷婷综合久久片| 久久蜜桃一区二区| av福利精品导航| 亚洲人精品一区| 欧美在线短视频| 亚洲成人动漫av| 欧美一级电影网站| 国产精品综合网| 国产精品久久看| 在线观看www91| 日韩电影一区二区三区四区| 日韩欧美你懂的| 成人综合婷婷国产精品久久 | 日韩一区二区电影在线| 久久国产精品99久久久久久老狼| 精品粉嫩aⅴ一区二区三区四区| 国产乱码精品一区二区三| 最近中文字幕一区二区三区| 欧美日韩国产小视频在线观看| 蜜臀av一级做a爰片久久| 国产日本欧美一区二区| 欧美日韩国产另类不卡| 久久成人综合网| 一区二区三区免费网站| 久久亚洲影视婷婷| 欧美亚洲高清一区二区三区不卡| 经典一区二区三区| 亚洲一区二区四区蜜桃| 国产日韩欧美综合一区|