亚洲欧美第一页_禁久久精品乱码_粉嫩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一区二区三区免费野_久草精品视频
国产亚洲精品中文字幕| 久久奇米777| 婷婷综合久久一区二区三区| 色天天综合色天天久久| 成人免费视频在线观看| 暴力调教一区二区三区| ㊣最新国产の精品bt伙计久久| 成人性色生活片免费看爆迷你毛片| 久久无码av三级| 久久久久久久久99精品| 肉丝袜脚交视频一区二区| 欧美日韩大陆一区二区| 日韩专区欧美专区| 日韩一区二区三区视频| 久久se精品一区精品二区| 26uuu久久综合| 国产精品一区一区| 国产精品美女www爽爽爽| 91亚洲精品乱码久久久久久蜜桃| 亚洲视频一二三| 91黄色在线观看| 午夜影院久久久| 91精品国产综合久久精品| 久久av老司机精品网站导航| 精品成人一区二区三区四区| 国产成都精品91一区二区三| 国产精品不卡在线| 欧美午夜在线一二页| 日韩成人av影视| 精品国产自在久精品国产| 国产高清不卡一区二区| 亚洲欧洲性图库| 欧洲精品一区二区| 日本aⅴ亚洲精品中文乱码| 欧美成人video| 成人激情免费网站| 亚洲最色的网站| 日韩一卡二卡三卡四卡| 国产高清无密码一区二区三区| 亚洲欧洲制服丝袜| 欧美精品高清视频| 国产乱子伦视频一区二区三区 | 一区二区三区高清不卡| 欧美日本一区二区三区四区| 久久成人18免费观看| 国产精品毛片久久久久久| 在线视频欧美精品| 狠狠久久亚洲欧美| **网站欧美大片在线观看| 欧美美女一区二区在线观看| 黄色资源网久久资源365| 日韩美女精品在线| 日韩一区二区在线观看视频 | 91成人免费网站| 蜜桃久久精品一区二区| 国产精品女主播av| 91麻豆精品国产91久久久使用方法 | 日韩电影免费一区| 国产精品全国免费观看高清| 一本大道综合伊人精品热热 | 亚洲成人av免费| 久久久久久毛片| 欧美色倩网站大全免费| 蜜桃视频一区二区三区| 亚洲日本护士毛茸茸| 日韩一级二级三级| 99热99精品| 久色婷婷小香蕉久久| 成人免费在线视频| 欧美大片一区二区三区| 色综合欧美在线| 韩国v欧美v亚洲v日本v| 亚洲国产一区二区在线播放| 久久久不卡网国产精品一区| 欧美日韩性生活| www.av亚洲| 久久97超碰国产精品超碰| 亚洲一二三区在线观看| 国产日韩欧美精品综合| 欧美年轻男男videosbes| 成人小视频免费观看| 热久久一区二区| 一区二区三区资源| 国产午夜精品久久久久久免费视| 欧美精品aⅴ在线视频| 91视视频在线直接观看在线看网页在线看| 久久机这里只有精品| 亚洲一区二区三区中文字幕 | 2024国产精品| 欧美精品在线一区二区三区| 99精品久久99久久久久| 国产麻豆视频精品| 美女网站色91| 亚洲一区二区三区精品在线| 国产精品国产自产拍高清av| 欧美变态口味重另类| 欧美日本在线播放| 在线免费观看日韩欧美| 不卡一区二区三区四区| 国产精品小仙女| 久久99最新地址| 日本网站在线观看一区二区三区| 一区二区三区在线免费播放| 国产精品久久久久久久久图文区| 国产亚洲欧美一区在线观看| 精品国产麻豆免费人成网站| 欧美丰满美乳xxx高潮www| 91搞黄在线观看| 91在线一区二区三区| 成人精品视频.| 国产激情91久久精品导航| 精品一区二区三区在线播放视频 | 在线看日韩精品电影| 99精品在线免费| 不卡视频在线看| 成人av资源下载| jizzjizzjizz欧美| www.亚洲国产| 成人av一区二区三区| 成人性生交大合| 884aa四虎影成人精品一区| 国产精品热久久久久夜色精品三区| 精品日韩在线一区| 日韩欧美电影一二三| 欧美精品1区2区| 91精品视频网| 欧美一区二区三区视频免费播放 | 一本久久精品一区二区| 一本色道久久综合亚洲aⅴ蜜桃| 99久久99精品久久久久久 | 99精品欧美一区二区蜜桃免费 | 欧美一区二区三区啪啪| 日韩午夜激情视频| 欧美成人伊人久久综合网| 日韩三区在线观看| 精品国一区二区三区| 久久青草国产手机看片福利盒子| 国产亚洲视频系列| 国产精品成人网| 亚洲激情自拍偷拍| 亚洲高清视频的网址| 日韩国产精品久久久久久亚洲| 日韩**一区毛片| 精品一区二区三区在线观看国产| 国产剧情一区二区三区| 丁香网亚洲国际| 91在线一区二区| 欧美日韩精品一区视频| 91精品国产麻豆| www亚洲一区| 国产精品第五页| 亚洲综合图片区| 日本免费在线视频不卡一不卡二| 美女视频网站久久| 国产精品中文字幕欧美| 99久久免费精品高清特色大片| 91久久精品国产91性色tv| 欧美裸体bbwbbwbbw| 日韩欧美三级在线| 国产精品视频在线看| 亚洲精品伦理在线| 日本成人在线网站| 大尺度一区二区| 欧美在线你懂得| 亚洲精品一区二区三区福利| 国产精品人成在线观看免费| 亚洲黄色片在线观看| 奇米四色…亚洲| 成人av在线资源| 欧美日本一区二区三区| 国产午夜亚洲精品羞羞网站| 亚洲精品第一国产综合野| 免费久久99精品国产| 成人性生交大片免费看视频在线 | 在线观看网站黄不卡| 日韩情涩欧美日韩视频| 中文字幕不卡三区| 亚洲成a人片在线不卡一二三区| 狠狠色综合日日| 91福利在线看| 精品国产免费人成电影在线观看四季| 成人欧美一区二区三区视频网页| 日韩国产高清在线| eeuss鲁片一区二区三区| 5858s免费视频成人| 国产亚洲精久久久久久| 亚洲小少妇裸体bbw| 国产一区二区毛片| 欧美亚洲另类激情小说| 久久亚洲一级片| 亚洲国产成人高清精品| 三级成人在线视频| 久久99精品久久久久久国产越南| 成人av午夜电影| 日韩欧美一区电影| 一区二区三区精品| 国产精品亚洲视频| 91精品国产乱码| 一区二区三区在线视频观看58| 国产精品中文有码|