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

📄 recv.c

📁 石器2最新代码,需要MYSQL数据库,CYGWIN环境完整可编译.
💻 C
📖 第 1 页 / 共 3 页
字号:
    receiveMail( id_from, charname_from,                       id_to, charname_to, message, option ,0,0);}void saacproto_MessageAck_recv( int fd,                                char* id,                                char* charname,                                char* result,                                int mesgid ){    int a;    if( strcmp( result, SUCCESSFUL ) )a=0; else a =-1;    receiveMailAck( id, charname, a , mesgid );}void saacproto_MessageFlush_recv( int fd,                                  char* id,                                  char* charname ){    flushMail( fd, id , charname );}/******************************************************* * CoolFish: Family 2001/5/18 ******************************************************/#ifdef _PERSONAL_FAMEvoid saacproto_ACAddFM_recv( int fd, char *fmname, char *fmleadername,	char *fmleaderid, int fmleaderlv, char *petname, char *petattr,	char *fmrule, int fmsprite, int fmleadergrano, int fame, int charfdid)#elsevoid saacproto_ACAddFM_recv( int fd, char *fmname, char *fmleadername,	char *fmleaderid, int fmleaderlv, char *petname, char *petattr,	char *fmrule, int fmsprite, int fmleadergrano, int charfdid)#endif{#ifdef _FAMILY	int r = 0, index = 0;#ifdef _PERSONAL_FAME	r = ACAddFM(fd, &index, fmname, fmleadername, fmleaderid, fmleaderlv,	   petname, petattr, fmrule, fmsprite, fmleadergrano, fame, charfdid);#else	r = ACAddFM(fd, &index, fmname, fmleadername, fmleaderid, fmleaderlv,	   petname, petattr, fmrule, fmsprite, fmleadergrano, charfdid);#endif	if (r < 0){		saacproto_ACAddFM_send(fd, FAILED, r, index, charfdid);	}else{		saacproto_ACAddFM_send(fd, SUCCESSFUL, r, index, charfdid);	}#endif}void saacproto_ACJoinFM_recv(int fd, char *fmname, int fmindex,#ifdef _PERSONAL_FAME	// Arminius: 家族个人声望	char *charname, char *charid, int charlv, int index, int fame, int charfdid)#else	char *charname, char *charid, int charlv, int index, int charfdid)#endif{#ifdef _FAMILY	int r = 0;#ifdef _PERSONAL_FAME	// Arminius: 家族个人声望	r =  ACJoinFM(fd, index, fmname, fmindex, charname, charid, charlv, fame, charfdid);#else	r =  ACJoinFM(fd, index, fmname, fmindex, charname, charid, charlv, charfdid);#endif	if (r < 0){		saacproto_ACJoinFM_send(fd, FAILED, r, charfdid);	}else{		saacproto_ACJoinFM_send(fd, SUCCESSFUL, r, charfdid);	}#endif}void saacproto_ACLeaveFM_recv(int fd, char *fmname, int fmindex,	char *charname, char *charid, int index, int charfdid){#ifdef _FAMILY	int r = 0;	r =  ACLeaveFM(index, fmname, fmindex, charname, charid);	if (r < 0){		saacproto_ACLeaveFM_send(fd, FAILED, r, charfdid);	}else{		saacproto_ACLeaveFM_send(fd, SUCCESSFUL, r, charfdid);	}#endif}#ifdef _LEADERFUNCHECKvoid saacproto_ACDelFM_recv(int fd, char *fmname, int fmindex,	int index, char *charname, char *charid, int charfdid){	int r = 0, result = 0;	result = CheckLeaderQ(index, fmname, fmindex, charname, charid);	if(result < 0)	{		saacproto_ACDelFM_send(fd, FAILED, charfdid);		return;	}	// shan modify begin	// original	/*if (ChangeFMLeader(index, fmname, fmindex) < 0)    		r = ACDelFM(index, fmname, fmindex); 	else 		r = -1;  // shan  1 -> -1	if (r < 0)		saacproto_ACDelFM_send(fd, FAILED, charfdid);	else		saacproto_ACDelFM_send(fd, SUCCESSFUL, charfdid);	*/   	r = ACDelFM(index, fmname, fmindex); 		if (r < 0)		saacproto_ACDelFM_send(fd, FAILED, charfdid);	else		saacproto_ACDelFM_send(fd, SUCCESSFUL, charfdid);	// shan end}#elsevoid saacproto_ACDelFM_recv(int fd, char *fmname, int fmindex,	int index, int charfdid){#ifdef _FAMILY	int r = 0;#ifdef _FMVER21	if (ChangeFMLeader(index, fmname, fmindex) >= 0)		r = ACDelFM(index, fmname, fmindex);	else r = 1;#else	r =  ACDelFM(index, fmname, fmindex);#endif		if (r < 0){		saacproto_ACDelFM_send(fd, FAILED, charfdid);	}#ifdef _FMVER21	else if (r == 1){	}#endif	else{		saacproto_ACDelFM_send(fd, SUCCESSFUL, charfdid);	}#endif}#endifvoid saacproto_ACShowFMList_recv(int fd){#ifdef _FAMILY	int r = 0;	char data[150 * MAX_FAMILY];	r =  ACShowFMList(data);	if (r < 0){//		saacproto_ACShowFMList_send(fd, FAILED, r, "Nothing");	}else{		saacproto_ACShowFMList_send(fd, SUCCESSFUL, r, data);	}#endif}void saacproto_ACShowMemberList_recv(int fd, int index){#ifdef _FAMILY	int r = 0, fmacceptflag = 0, fmjoinnum = 0;	char data[150 * MAX_MEMBERNUM];	r =  ACShowFMMemberList(index, &fmacceptflag, &fmjoinnum, data);	if (r < 0){//		saacproto_ACShowMemberList_send(fd, FAILED, index, r,//			fmacceptflag, fmjoinnum, "Nothing");	}else{		saacproto_ACShowMemberList_send(fd, SUCCESSFUL, index, r,			fmacceptflag, fmjoinnum, data);	}#endif}void saacproto_ACFMDetail_recv(int fd, char *fmname,	int fmindex, int index, int charfdid){#ifdef _FAMILY	int r = 0;	char data[15000];	r =  ACFMDetail(index, fmname, fmindex, data);	if (r < 0){//		saacproto_ACFMDetail_send(fd, FAILED, "Nothing", charfdid);	}else{		saacproto_ACFMDetail_send(fd, SUCCESSFUL, data, charfdid);	}#endif}#ifdef _FMVER21void saacproto_ACMemberJoinFM_recv(int fd, char *fmname, int fmindex,	char *charname, int charindex, int index, int result, int meindex,	int charfdid)#elsevoid saacproto_ACMemberJoinFM_recv(int fd, char *fmname, int fmindex,	char *charname, int charindex, int index, int result, int charfdid)#endif{	int r = 0;#ifdef _FMVER21   	r =  ACMemberJoinFM(index, fmname, fmindex, charname, charindex, result, meindex);#else	r =  ACMemberJoinFM(index, fmname, fmindex, charname, charindex);#endif			if (r < 0){		saacproto_ACMemberJoinFM_send(fd, FAILED, charfdid);	}else{		saacproto_ACMemberJoinFM_send(fd, SUCCESSFUL, charfdid);	}}#ifdef _FMVER21void saacproto_ACMemberLeaveFM_recv(int fd, char *fmname, int fmindex,	char *charname, int charindex, int index, int meindex, int charfdid)#elsevoid saacproto_ACMemberLeaveFM_recv(int fd, char *fmname, int fmindex,	char *charname, int charindex, int index, int charfdid)#endif{#ifdef _FAMILY	int r = 0;	int flag = 1; // 主动离开家族#ifdef _FMVER21	r =  ACMemberLeaveFM(index, fmname, fmindex, charname, flag,		charindex, meindex);#else	r =  ACMemberLeaveFM(index, fmname, fmindex, charname, flag, charindex);#endif	if (r < 0){		saacproto_ACMemberLeaveFM_send(fd, FAILED, charfdid);	}else{		saacproto_ACMemberLeaveFM_send(fd, SUCCESSFUL, charfdid);	}#endif}#ifdef _FMVER21void saacproto_ACFMCharLogin_recv(int fd, char *fmname, int fmindex,	char *charname, char *charid, int charlv, int eventflag, int charfdid)#elsevoid saacproto_ACFMCharLogin_recv(int fd, char *fmname, int fmindex,	char *charname, char *charid, int charlv, int charfdid)#endif{#ifdef _FAMILY	int r = 0, floor = 0, fmpopular = 0, joinflag = 0, fmsetupflag = 0;	int flag = 0, charindex = 0;#ifdef _PERSONAL_FAME   // Arminius: 家族个人声望	int charfame = 0;#endif#ifdef _PERSONAL_FAME   // Arminius: 家族个人声望	r =  ACFMCharLogin(fd, -1, fmname, fmindex, charname, charid, charlv,			&floor, &fmpopular, &joinflag, &fmsetupflag, &charindex, charfdid,			&charfame, eventflag);#else	r =  ACFMCharLogin(fd, -1, fmname, fmindex, charname, charid, charlv,			&floor, &fmpopular, &joinflag, &fmsetupflag, &charindex, charfdid);#endif#endif#ifdef _PERSONAL_FAME   // Arminius: 家族个人声望	if (r < 0){		saacproto_ACFMCharLogin_send(fd, FAILED, r, floor, fmpopular,			joinflag, fmsetupflag, flag, charindex, charfame, charfdid		);	}else{		saacproto_ACFMCharLogin_send(fd, SUCCESSFUL, r, floor, fmpopular,			joinflag, fmsetupflag, flag, charindex, charfame, charfdid		);	}#else	if (r < 0){		saacproto_ACFMCharLogin_send(fd, FAILED, r, floor, fmpopular,			joinflag, fmsetupflag, flag, charindex, charfdid);	}else{		saacproto_ACFMCharLogin_send(fd, SUCCESSFUL, r, floor, fmpopular,			joinflag, fmsetupflag, flag, charindex, charfdid);	}#endif}void saacproto_ACFMCharLogout_recv(int fd, char *fmname, int fmindex,	char *charname, char *charid, int charlv, int index,int charfdid){#ifdef _FAMILY	int r = 0;	r =  ACFMCharLogout(index, fmname, fmindex, charname, charid, charlv,		charfdid);	if (r < 0){		saacproto_ACFMCharLogout_send(fd, FAILED, charfdid);	}else{		saacproto_ACFMCharLogout_send(fd, SUCCESSFUL, charfdid);	}#endif}void saacproto_ACFMReadMemo_recv(int fd, int index){#ifdef _FAMILY	int r = 0, dataindex;	char data[15000];	r =  ACFMReadMemo(index, &dataindex, data);	if (r < 0){//		saacproto_ACFMReadMemo_send(fd, FAILED, index, r, dataindex, "Nothing");	}else{		saacproto_ACFMReadMemo_send(fd, SUCCESSFUL, index, r, dataindex, data);	}#endif}                void saacproto_ACFMWriteMemo_recv(int fd, char *fmname, int fmindex,	char *data, int index){#ifdef _FAMILY	int r = 0;	r =  ACFMWriteMemo(index, fmname, fmindex, data);	if (r < 0){		saacproto_ACFMWriteMemo_send(fd, FAILED, index);	}else{		saacproto_ACFMWriteMemo_send(fd, SUCCESSFUL, index);	}#endif}void saacproto_ACFMPointList_recv(int fd){#ifdef _FAMILY        int r = 0;        char data[15000];        r =  ACFMPointList(data);        if (r < 0)        {//        	saacproto_ACFMPointList_send(fd, FAILED, "nothing");        }else{        	saacproto_ACFMPointList_send(fd, SUCCESSFUL, data);        }#endif}void saacproto_ACSetFMPoint_recv(int fd, char *fmname, int fmindex, 	int index, int fmpointindex, int fl, int x, int y, int charfdid){#ifdef _FAMILY	int r = 0;	r =  ACSetFMPoint(index, fmname, fmindex, fmpointindex, fl, x, y);	if (r < 0){		saacproto_ACSetFMPoint_send(fd, FAILED, r, charfdid);	}else{		saacproto_ACSetFMPoint_send(fd, SUCCESSFUL, r, charfdid);	}#endif}void saacproto_ACFixFMPoint_recv(int fd, char *winfmname, int winfmindex, int winindex,	char *losefmname, int losefmindex, int loseindex, int village){#ifdef _FAMILY	int r = 0;	r =  ACFixFMPoint(winindex, winfmname, winfmindex,		loseindex, losefmname, losefmindex, village);	if (r < 0){		saacproto_ACFixFMPoint_send(fd, FAILED, r);	}else{		saacproto_ACFixFMPoint_send(fd, SUCCESSFUL, r);	}#endif}void saacproto_ACFMAnnounce_recv(int fd, char *fmname, int fmindex, int index,        char *data, int color){#ifdef _FAMILY	int r = 0, i = 0;	r = ACFMAnnounce(fmname, fmindex, index, data, color);	if (r < 0){		saacproto_ACFMAnnounce_send(fd, FAILED, fmname, fmindex, index,			1, data, color);	}else{		extern gmsv gs[MAXCONNECTION];		for (i = 0; i < MAXCONNECTION; i ++)		{		   if (gs[i].use && gs[i].name[0])		   {		      saacproto_ACFMAnnounce_send(i, SUCCESSFUL, fmname, fmindex,		      	index, 1, data, color);		   }		}	}	#endif}void saacproto_ACShowTopFMList_recv(int fd, int kindflag){#ifdef _FAMILY	int r = 0;	char data[150 * MAX_FAMILY];	strcpy(data, "");	r =  ACShowTopFMList(data, sizeof(data), kindflag);	if (r < 0)	{//		saacproto_ACShowTopFMList_send(fd, FAILED, kindflag, r, "Nothing");	}else	{		saacproto_ACShowTopFMList_send(fd, SUCCESSFUL, kindflag, r, data);	}#endif}void saacproto_ACFixFMData_recv(int fd, char *fmname, int fmindex, int index,	int kindflag, char *data1, char *data2, int charindex, int charfdid){#ifdef _FAMILY	int r = 0;	r =  ACFixFMData(index, fmname, fmindex, kindflag, charindex, data1, data2);	if (r < 0){		saacproto_ACFixFMData_send(fd, FAILED, kindflag, data1, data2, charfdid);	}else{		saacproto_ACFixFMData_send(fd, SUCCESSFUL, kindflag, data1, data2, charfdid);	}#endif}void saacproto_ACFixFMPK_recv(int fd, char *winfmname, int winfmindex, int winindex,	char *losefmname, int losefmindex, int loseindex){#ifdef _FAMILY	int r = 0;	r =  ACFixFMPK(winindex, winfmname, winfmindex,		loseindex, losefmname, losefmindex);	if (r < 0){		saacproto_ACFixFMPK_send(fd, FAILED, r, winindex,			loseindex);	}else{		saacproto_ACFixFMPK_send(fd, SUCCESSFUL, r, winindex,			loseindex);	}#endif}void saacproto_ACGMFixFMData_recv(int fd, int index, char *charid, char *cmd,	char *data, int charfdid){#ifdef _FAMILY	int r = 0;	char fmname[256];	r =  ACGMFixFMData(index, fmname, charid, cmd, data);	if (r < 0){		saacproto_ACGMFixFMData_send(fd, FAILED, fmname, charfdid);	}	else{		saacproto_ACGMFixFMData_send(fd, SUCCESSFUL, fmname, charfdid);	}#endif}void saacproto_ACGetFMData_recv(int fd, char *fmname, int fmindex, int index,	int kindflag, int charfdid){#ifdef _FAMILY	int r = 0, data = 0;	r =  ACGetFMData(index, fmname, fmindex, kindflag, &data);	if (r < 0){		saacproto_ACGetFMData_send(fd, FAILED, kindflag, data, charfdid);	}else{		saacproto_ACGetFMData_send(fd, SUCCESSFUL, kindflag, data, charfdid);	}#endif}void saacproto_ACreLoadFmData_recv(int fd, int type, int data){	int i=0;extern gmsv gs[MAXCONNECTION];	switch( type){	case 1:		log( "reload FM_DATA:%d !\n", data);		readOneFamilyFromTi( data);		break;	case 2:		{			char data[15000];			readFMPoint( fmpointdir);			if( ACFMPointList( data) >= 0 ){				log( "reload FM_POINT !\n" );				for (i=0; i<MAXCONNECTION; i++){					if( gs[i].use && gs[i].name[0] )						saacproto_ACFMPointList_send( i, SUCCESSFUL, data);				}			}		}		break;

⌨️ 快捷键说明

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