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

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

?? char_party.c

?? 最新主流石器時代源代碼,包含諸多目前流行功能代碼.
?? C
?? 第 1 頁 / 共 2 頁
字號:
		char	msgbuf[1024];
		char	escapebuf[2048];
#ifdef _DEATH_CONTEND
		int toindex = CONNECT_getJoinpartycharaindex( fd, 0);
		if(CHAR_getInt(toindex,CHAR_PKLISTTEAMNUM) == -1 && CHAR_getInt(charaindex,CHAR_PKLISTTEAMNUM) == -1){
		}else if( CHAR_getInt( charaindex, CHAR_PKLISTLEADER ) > 0 ||
			CHAR_getInt( toindex, CHAR_PKLISTTEAMNUM) < 0 ||
			CHAR_getInt( charaindex, CHAR_PKLISTTEAMNUM) < 0 ||
			CHAR_getInt( toindex, CHAR_PKLISTTEAMNUM) != CHAR_getInt( charaindex, CHAR_PKLISTTEAMNUM) ||
			CHAR_getInt(toindex,CHAR_WHICHTYPE) != CHAR_TYPEPLAYER){

			CHAR_talkToCli( charaindex, -1, "隊伍不同,無法加入團隊。", CHAR_COLORYELLOW);
			result = FALSE;
		}
#endif
		strcpy( msgbuf, "1\n和誰組成團隊呢?\n");
		strlength = strlen( msgbuf);
		for( i = 0;
             CONNECT_getJoinpartycharaindex( fd,i ) != -1
			&& i< CONNECT_WINDOWBUFSIZE;
			i ++ ){
			char	*a = CHAR_getChar(
                CONNECT_getJoinpartycharaindex(fd,i) , CHAR_NAME);
			char	buf[256];
			snprintf( buf, sizeof( buf),"%s\n", a);
			if( strlength + strlen( buf) > arraysizeof( msgbuf)){
				print( "%s:%d視窗訊息buffer不足。\n",
						__FILE__,__LINE__);
				break;
			}
			strcpy( &msgbuf[strlength], buf);
			strlength += strlen(buf);
		}
		lssproto_WN_send( fd, WINDOW_MESSAGETYPE_SELECT,
						WINDOW_BUTTONTYPE_CANCEL,
						CHAR_WINDOWTYPE_SELECTPARTY,
						-1,
					makeEscapeString( msgbuf, escapebuf, sizeof(escapebuf)));


	}

	if( result != -1 ) {
		lssproto_PR_send( fd, 1, result);
	}

	return result;
}

static BOOL CHAR_DischargePartySub( int charaindex, int msgflg)
{
	char buf[64], c[3];
	int toindex,flg,i;
#ifdef _ITEM_QUITPARTY
    int j = 0,k;
#endif
	

	if( CHAR_getWorkInt( charaindex, CHAR_WORKPARTYMODE) == CHAR_PARTY_LEADER ) {
		int pindex, airplaneflag=0;
		// Arminius 7.10 Airplane
		if( CHAR_getInt(charaindex, CHAR_WHICHTYPE) == CHAR_TYPEBUS ) {
		  if ((CHAR_getInt(charaindex, CHAR_BASEIMAGENUMBER) !=100355) &&
		      (CHAR_getInt(charaindex, CHAR_BASEIMAGENUMBER) !=100461)){
		    airplaneflag=1;
		  }
		}
		for( i = 0; i < CHAR_PARTYMAX; i ++ ) {
			pindex = CHAR_getWorkInt( charaindex, i + CHAR_WORKPARTYINDEX1);
			if( CHAR_CHECKINDEX( pindex) ) {
				int     fd = getfdFromCharaIndex( pindex );
				CHAR_setWorkInt( pindex, CHAR_WORKPARTYINDEX1, -1);
				CHAR_setWorkInt( pindex, CHAR_WORKPARTYMODE, CHAR_PARTY_NONE);
				if( msgflg ){
					CHAR_talkToCli( pindex, -1, "團隊已解散!", CHAR_COLORYELLOW);
#ifdef _ITEM_QUITPARTY
					// won fix
	                for( j=0;j<CHAR_MAXITEMHAVE;j++ ){
						int del_item_index = CHAR_getItemIndex( pindex , j );
                        if( ITEM_CHECKINDEX(del_item_index) ){ //格子內有道具
                            for( k=0;k<itemquitparty_num;k++ ){
							    if( ITEM_getInt( del_item_index, ITEM_ID) == atoi(Disappear_Item[k].string) ){ //若等於所設定的道具ID
			                        CHAR_setItemIndex( pindex, j, -1); //格子內道具消失
									ITEM_endExistItemsOne( del_item_index );
				                    CHAR_sendItemDataOne( pindex, j);
								}
							}
						}
					}
#endif
				}
				if( fd != -1 ) {
					lssproto_PR_send( fd, 0, 1);
				}
				// Arminius 7.10 Airplane
				if (airplaneflag && (CHAR_getInt(pindex,CHAR_WHICHTYPE)!=CHAR_TYPEBUS)) {
				  int bi,bbi,ii,category;
				  bbi=CHAR_getInt(pindex,CHAR_BASEBASEIMAGENUMBER);
				  ii=CHAR_getItemIndex(pindex,CHAR_ARM);
				  if (!ITEM_CHECKINDEX(ii))
				    category=ITEM_FIST;
				  else
				    category=ITEM_getInt(ii,ITEM_TYPE);
				  bi=CHAR_getNewImagenumberFromEquip(bbi,category);
				  if (bi==-1) bi=bbi;
				  CHAR_setInt(pindex,CHAR_BASEIMAGENUMBER,bi);
				  // Robin 0810 debug
				  CHAR_complianceParameter( pindex );				  
				  CHAR_sendCToArroundCharacter(CHAR_getWorkInt(pindex ,
				    CHAR_WORKOBJINDEX));
				}
			}
			CHAR_setWorkInt( charaindex, i + CHAR_WORKPARTYINDEX1, -1);
		}
		CHAR_sendLeader( CHAR_getWorkInt( charaindex, CHAR_WORKOBJINDEX), 0);
	}else if( CHAR_getWorkInt( charaindex, CHAR_WORKPARTYMODE) == CHAR_PARTY_CLIENT ) {
		int		myarray = -1;
		int     fd = getfdFromCharaIndex( charaindex );
		CHAR_setWorkInt( charaindex, CHAR_WORKPARTYMODE, CHAR_PARTY_NONE);
		toindex = CHAR_getWorkInt( charaindex, CHAR_WORKPARTYINDEX1);
		if( !CHAR_CHECKINDEX(toindex ) ) return FALSE;
		if( CHAR_getInt( toindex, CHAR_WHICHTYPE) == CHAR_TYPEBUS ) {
			NPC_BusCheckAllowItem( toindex, charaindex, TRUE);
		  // Arminius 7.9 Airplane
		  if ((CHAR_getInt( toindex, CHAR_BASEIMAGENUMBER) !=100355) &&
		      (CHAR_getInt( toindex, CHAR_BASEIMAGENUMBER) !=100461)){
		    int bi,bbi,ii,category;
		    
		    bbi=CHAR_getInt(charaindex,CHAR_BASEBASEIMAGENUMBER);
		    ii=CHAR_getItemIndex(charaindex,CHAR_ARM);
		    if (!ITEM_CHECKINDEX(ii))
		      category=ITEM_FIST;
		    else
		      category=ITEM_getInt(ii,ITEM_TYPE);
		    bi=CHAR_getNewImagenumberFromEquip(bbi,category);
		    if (bi==-1) bi=bbi;
		    CHAR_setInt(charaindex,CHAR_BASEIMAGENUMBER,bi);

		    // Robin 0810 debug
		    CHAR_complianceParameter( charaindex );		    

		    CHAR_sendCToArroundCharacter( CHAR_getWorkInt( charaindex , CHAR_WORKOBJINDEX ));
		    if(CHAR_getWorkInt(toindex,CHAR_NPCWORKINT5)==1) {
		      if( CHAR_getInt( charaindex, CHAR_LASTTALKELDER)>=0){
		        int fl,x,y;
		        CHAR_getElderPosition( CHAR_getInt( charaindex, CHAR_LASTTALKELDER),
		          &fl, &x, &y );
		        CHAR_warpToSpecificPoint(charaindex, fl, x, y);
		      }
		    }
		  }
		}
		CHAR_setWorkInt( charaindex, CHAR_WORKPARTYINDEX1, -1);
		for( i = 0; i < CHAR_PARTYMAX; i ++ ) {
			int index = CHAR_getWorkInt( toindex, i + CHAR_WORKPARTYINDEX1);
			if( CHAR_CHECKINDEX(index) ){
				if( index == charaindex) {
					myarray = i;
					break;
				}
			}
		}
		if( myarray == CHAR_PARTYMAX) {
			print( "DischargeParty(): 真奇怪!");
			return FALSE;
		}
		CHAR_setWorkInt( toindex, CHAR_WORKPARTYINDEX1 + myarray, -1);
		snprintf( buf,sizeof( buf), "%s 脫離團隊!",
				  CHAR_getChar( charaindex, CHAR_NAME));
		if( msgflg ){
			CHAR_talkToCli( charaindex, -1, "脫離團隊!", CHAR_COLORYELLOW);
#ifdef _ITEM_QUITPARTY
			// won fix
	        for( i=0;i<CHAR_MAXITEMHAVE;i++ ){
				int del_item_index = CHAR_getItemIndex( charaindex , j );
				if( ITEM_CHECKINDEX(del_item_index) ){ //格子內有道具
                   for( j=0;j<itemquitparty_num;j++ ){
					    if( ITEM_getInt( del_item_index, ITEM_ID) == atoi(Disappear_Item[j].string) ){ //若等於所設定的道具ID
			                CHAR_setItemIndex( charaindex, i, -1); //格子內道具消失
							ITEM_endExistItemsOne( del_item_index );
			                CHAR_sendItemDataOne( charaindex, i);
						}
					}
				}
			}
#endif
		}
		snprintf( c, sizeof(c), "N%d", myarray);
		if( fd != -1 ) {
			lssproto_PR_send( fd, 0, 1);
		}
		for( i = 0; i < CHAR_PARTYMAX; i ++ ) {
			int index = CHAR_getWorkInt( toindex, i + CHAR_WORKPARTYINDEX1);
			if( CHAR_CHECKINDEX(index) ){
#ifdef _ITEM_QUITPARTY
				// won fix
	            for( j=0;j<CHAR_MAXITEMHAVE;j++ ){
					int del_item_index = CHAR_getItemIndex( index , j );	
                    if( ITEM_CHECKINDEX(del_item_index) ){ //格子內有道具
                        for( k=0;k<itemquitparty_num;k++ ){
						    if( ITEM_getInt( del_item_index, ITEM_ID) == atoi(Disappear_Item[k].string) ){ //若等於所設定的道具ID
			                    CHAR_setItemIndex( index, j, -1); //格子內道具消失
								ITEM_endExistItemsOne( del_item_index );
						        CHAR_sendItemDataOne( index, j);
							}
						}
					}
				}
#endif
				if( msgflg ){
					CHAR_talkToCli( index, -1, buf, CHAR_COLORYELLOW);
				}
				CHAR_sendStatusString( index, c);
			}
		}
		flg = FALSE;
		for( i = 1; i < CHAR_PARTYMAX; i ++ ) {
			int index = CHAR_getWorkInt( toindex, i + CHAR_WORKPARTYINDEX1);
			if( CHAR_CHECKINDEX(index) ){
				flg = TRUE;
				break;
			}
		}
		if( !flg) {
			CHAR_setWorkInt( toindex, CHAR_WORKPARTYMODE, CHAR_PARTY_NONE);
			CHAR_sendLeader( CHAR_getWorkInt( toindex, CHAR_WORKOBJINDEX), 0);
		}else {

			POINT	start,end;
			int 	previndex = toindex;
			end.x = CHAR_getInt( charaindex, CHAR_X);
			end.y = CHAR_getInt( charaindex, CHAR_Y);
			for( i = 1; i < CHAR_PARTYMAX; i ++ ) {
				int index = CHAR_getWorkInt( toindex, i + CHAR_WORKPARTYINDEX1);
				if( CHAR_CHECKINDEX( index) ) {
					if( NPC_Util_CharDistance( index, previndex) > 1) {
						int		parent_dir;
						start.x = CHAR_getInt( index, CHAR_X);
						start.y = CHAR_getInt( index, CHAR_Y);
						parent_dir = NPC_Util_getDirFromTwoPoint( &start,&end );
						end = start;
						if( parent_dir != -1 ) {
							CHAR_walk( index, parent_dir, 0);
						}
					}
					previndex = index;
				}
			}
		}
		
	}

	return TRUE;
}
BOOL CHAR_DischargeParty( int charaindex, int flg)
{
	return CHAR_DischargePartySub( charaindex, 1);
}

BOOL CHAR_DischargePartyNoMsg( int charaindex)
{
	return CHAR_DischargePartySub( charaindex, 0);
}


/*------------------------------------------------------------
 * 憤坌互伉□母□井升丹井毛霜耨允月[
 ------------------------------------------------------------*/
void CHAR_sendLeader( int objindex, int leader)
{
	int		opt[1];
	opt[0] = leader;
	CHAR_sendWatchEvent( objindex,CHAR_ACTLEADER,opt,1,TRUE);
}
/*------------------------------------------------------------
 * 醮棉毛賜    CHAR_WORKPARTYINDEX)隙爛匹平乓仿index毛婁勻艦月[
 * 憤坌互褪匹手閡匹手    [
 ------------------------------------------------------------*/
int CHAR_getPartyIndex( int index, int num)
{
	int	nindex = -1;

	/* 醮棉及奶件犯永弁旦毛潸   */
	/* 褪及樺寧 */
	if( CHAR_getWorkInt( index, CHAR_WORKPARTYMODE) == CHAR_PARTY_LEADER ) {
		nindex = CHAR_getWorkInt( index, CHAR_WORKPARTYINDEX1 + num );
	}
	/* 閡及樺寧 */
	else {
		int oyaindex = CHAR_getWorkInt( index, CHAR_WORKPARTYINDEX1);
		if( CHAR_CHECKINDEX( oyaindex)) {
			nindex = CHAR_getWorkInt( oyaindex, CHAR_WORKPARTYINDEX1+num);
		}
	}
	return nindex;
}
/*------------------------------------------------------------
 * 丟永本□斥毛霜耨允月[
 * 醮棉互中木壬公及醮棉卞手丟永本□斥毛霜耨允月[
 ------------------------------------------------------------*/
void CHAR_talkToCliAndParty( int talkedcharaindex,int talkcharaindex,
					 char* message, CHAR_COLOR color )
{
	int		i;
	/* 引內憤坌 */
	CHAR_talkToCli( talkedcharaindex, talkcharaindex, message, color);

	for( i = 0; i < CHAR_PARTYMAX; i ++ ) {
		int index = CHAR_getPartyIndex( talkedcharaindex, i);
		if( CHAR_CHECKINDEX( index) &&
			index != talkedcharaindex)
		{
			CHAR_talkToCli( index, talkcharaindex, message, color);
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美一区二区三区白人| 国产欧美精品一区aⅴ影院| 久久亚洲免费视频| 亚洲一级二级在线| 欧美日韩一二区| 久久精品一区二区三区四区| 午夜精品福利一区二区蜜股av | 成av人片一区二区| 欧美大片在线观看一区二区| 亚洲va欧美va人人爽午夜| 韩国精品主播一区二区在线观看| 色综合一区二区| 国产精品伦理在线| 一区二区三区日韩欧美精品| 欧美日韩视频在线一区二区| 一区二区三区丝袜| 91亚洲大成网污www| 久久精品视频一区二区| 免费av成人在线| 色婷婷久久一区二区三区麻豆| 亚洲一区二区三区四区中文字幕| 777欧美精品| 懂色av一区二区夜夜嗨| 亚洲精品国产第一综合99久久| 8v天堂国产在线一区二区| 极品少妇一区二区三区精品视频 | 一本久久a久久精品亚洲| 午夜精品久久久久| 久久精品人人做| 欧美视频在线一区| 国产**成人网毛片九色| 亚洲6080在线| 中文字幕国产精品一区二区| 欧美日韩激情在线| 成人高清伦理免费影院在线观看| 日韩av电影免费观看高清完整版 | 91视频免费播放| 久久99精品国产麻豆婷婷| 国产精品久久久久永久免费观看| 欧美日韩国产成人在线91| 丰满亚洲少妇av| 免费在线观看一区| 一区二区三区中文在线| 久久综合九色综合欧美就去吻| 在线观看日韩国产| 懂色av中文一区二区三区| 日本不卡一区二区三区 | 欧美色欧美亚洲另类二区| 国产成人av一区二区| 偷拍与自拍一区| 亚洲一区二区3| 亚洲精品日日夜夜| 国产精品色眯眯| 日韩欧美国产不卡| 欧美久久久久久蜜桃| 97精品久久久午夜一区二区三区 | 亚洲.国产.中文慕字在线| 欧美国产一区二区在线观看| 日韩一区二区三区电影| 欧美亚洲国产一区在线观看网站| 成人免费毛片片v| 国产精品系列在线播放| 激情综合色播五月| 麻豆成人久久精品二区三区红 | 亚洲福中文字幕伊人影院| 中文字幕一区二区三区精华液| 国产色爱av资源综合区| 亚洲精品一区二区在线观看| 精品欧美一区二区在线观看| 欧美视频一区二区三区四区| 欧美日韩在线播放一区| 色94色欧美sute亚洲13| 色综合一区二区三区| 色欧美片视频在线观看| 色婷婷久久久亚洲一区二区三区 | 欧美日韩在线不卡| 欧美日韩一区久久| 欧美综合在线视频| 欧美三级欧美一级| 欧美日韩国产高清一区二区| 欧美日韩mp4| 欧美在线视频你懂得| 欧美性欧美巨大黑白大战| 欧美性猛片xxxx免费看久爱| 欧美人狂配大交3d怪物一区| 欧美日韩久久不卡| 欧美mv和日韩mv的网站| 精品日产卡一卡二卡麻豆| 久久久久一区二区三区四区| 国产欧美日本一区视频| 亚洲视频精选在线| 一区二区三区电影在线播| 午夜欧美2019年伦理| 日韩电影免费一区| 韩国女主播成人在线| 国产91丝袜在线18| 99精品视频在线免费观看| 欧洲国产伦久久久久久久| 欧美放荡的少妇| 精品国产免费一区二区三区四区| 国产亚洲女人久久久久毛片| 中文字幕中文字幕中文字幕亚洲无线| 国产精品久久毛片| 亚洲成av人片观看| 国产在线精品免费| 色综合久久99| 日韩精品中文字幕在线不卡尤物| 国产日韩视频一区二区三区| 亚洲另类春色国产| 免费看精品久久片| 成人一区二区三区在线观看| 色拍拍在线精品视频8848| 日韩一区二区电影在线| 国产精品―色哟哟| 石原莉奈在线亚洲三区| 国产一区 二区| 日本大香伊一区二区三区| 日韩欧美不卡一区| 亚洲色图清纯唯美| 人人精品人人爱| 91在线国内视频| 日韩久久精品一区| 亚洲女人的天堂| 精品一区二区三区影院在线午夜| fc2成人免费人成在线观看播放| 欧美四级电影网| 中文av一区二区| 免费在线看一区| 日本乱人伦一区| 国产亚洲一区二区在线观看| 亚洲午夜精品17c| youjizz国产精品| 欧美一级片在线观看| 亚洲天堂网中文字| 激情综合色播五月| 制服丝袜成人动漫| 夜夜夜精品看看| www.亚洲激情.com| 亚洲精品在线观看视频| 五月婷婷综合在线| 91偷拍与自偷拍精品| 久久久精品综合| 六月丁香婷婷色狠狠久久| 欧美日韩二区三区| 亚洲四区在线观看| 国产激情视频一区二区在线观看| 91精品国产一区二区人妖| 亚洲欧美国产三级| 丰满放荡岳乱妇91ww| 久久影院午夜片一区| 激情另类小说区图片区视频区| 欧美日韩国产精品成人| 一区二区三区高清| 一道本成人在线| 自拍偷拍欧美激情| 成人av网站在线| 国产免费成人在线视频| 国产白丝精品91爽爽久久| 日韩精品一区二| 麻豆成人久久精品二区三区红| 正在播放亚洲一区| 亚洲成人第一页| 欧美精品亚洲二区| 亚洲成人自拍一区| 67194成人在线观看| 亚洲成人资源在线| 欧美午夜精品一区二区三区| 亚洲乱码一区二区三区在线观看| 成人国产在线观看| 国产精品久久久久影院色老大| 成人免费av网站| 综合久久综合久久| 91亚洲精华国产精华精华液| 樱花草国产18久久久久| 91黄视频在线观看| 亚洲国产成人av| 91麻豆精品国产91久久久更新时间| 婷婷开心久久网| 69久久99精品久久久久婷婷| 久久99国产精品久久99果冻传媒| 久久综合99re88久久爱| 成人美女在线视频| 中文字幕一区二区三| 91久久免费观看| 日韩黄色小视频| 久久夜色精品国产欧美乱极品| 波多野结衣中文一区| 亚洲在线免费播放| 欧美天堂一区二区三区| 视频一区视频二区中文| 精品国产青草久久久久福利| 国产不卡视频一区| 一区二区三区四区亚洲| 欧美视频第二页| 久久av中文字幕片| 国产精品午夜春色av| 在线亚洲+欧美+日本专区| 裸体一区二区三区| 中文字幕不卡的av| 欧美日韩国产另类一区|