www.pudn.com > gamedata.rar > chain.c


#include "stdafx.h" 
 
extern struct OBJECT_INFO object_info[MAX_NUM_OBJ]; // 全局控制,所有用户信息 
extern struct LUMP_INFO   Lump_info[MAX_NUM_USER]; 
extern struct TEAM_INFO   Team_info[MAX_NUM_USER]; 
 
// 判断这个这个帐号的玩家是否在线 
BOOL checklogin(char *id, char *char_name) 
{ 
	int i; 
	for(i=0; i MAX_LEVEL) info.level = MAX_LEVEL; 
			if (info.level <= 0) info.level = 1; 
			object_info[i]           = info; 
			object_info[i].ServerID  = i; 
			object_info[i].s         = s; 
			object_info[i].handle    = handle; 
			strcpy(object_info[i].chainbuf, ""); 
			object_info[i].chainlen  = 0; 
 
			count = GetTickCount(); 
			object_info[i].time1     = count; 
			object_info[i].time2     = count; 
			object_info[i].time3     = 0; 
			object_info[i].time4     = count; 
			object_info[i].time5     = count; 
			object_info[i].time6     = count; 
			object_info[i].time7     = count; 
			object_info[i].time8     = count; 
			object_info[i].time9     = count; 
 
 
			object_info[i].life_time    = count; 
			object_info[i].mental_time  = count; 
			object_info[i].brawn_time   = count; 
			object_info[i].speed_number = count; 
			object_info[i].net_time     = count; 
			object_info[i].attack_other = 0; 
 
			if (object_info[i].job == 0) 
			{ 
				object_info[i].life_recovery   = 30; 
				object_info[i].brawn_recovery  = 30; 
				object_info[i].mental_recovery = 30; 
			} 
			else if (object_info[i].job == 1) 
			{ 
				object_info[i].life_recovery   = 30; 
				object_info[i].brawn_recovery  = 30; 
				object_info[i].mental_recovery = 30; 
			} 
			else if (object_info[i].job == 2) 
			{ 
				object_info[i].life_recovery   = 30; 
				object_info[i].brawn_recovery  = 30; 
				object_info[i].mental_recovery = 30; 
			} 
			else if (object_info[i].job == 3) 
			{ 
				object_info[i].life_recovery   = 30; 
				object_info[i].brawn_recovery  = 30; 
				object_info[i].mental_recovery = 30; 
			} 
             
			if(loaddoor(object_info[i].name, door_info)) 
			{ 
				for(j=0;j<30;j++) 
				{ 
					object_info[i].door_info[j] = door_info[j]; 
				} 
			} 
			else 
			{ 
				for(j=0;j<30;j++)	 
				{				 
					object_info[i].door_info[j].Code1 = 0x00;					 
					object_info[i].door_info[j].Code2 = 0x00;						 
					object_info[i].door_info[j].x     = 0;			 
					object_info[i].door_info[j].y     = 0;				 
					object_info[i].door_info[j].have  = FALSE;				 
					strcpy(object_info[i].door_info[j].name, "\\");	 
				} 
			} 
          
			for(j=0;j<7;j++) 
			{ 
				for(z=0;z<8;z++) 
				{ 
					object_info[i].shop[j][z] = 0x00; 
				} 
			} 
 
            Sleep(500); 
			object_info[i].privatewarehousemoney = loadprivatewarehouse(object_info[i].name, object_info[i].privatewarehouse); 
 
			if(object_info[i].privatewarehousemoney < 0) 
			{ 
				for(j=0;j<48;j++)	 
				{ 
					for(z=0;z<17;z++)	 
					{		 
						if (z==2 || z==3)	 
							object_info[i].privatewarehouse[j].code[z] = 0xFF;		 
						else 
							object_info[i].privatewarehouse[j].code[z] = 0x00; 
					} 
				} 
				object_info[i].privatewarehousemoney = 0; 
			} 
            Sleep(500); 
			object_info[i].publicwarehousemoney = loadpublicwarehouse(object_info[i].id, object_info[i].publicwarehouse); 
 
			if (object_info[i].publicwarehousemoney < 0) 
			{		 
				 
				for(j=0;j<50;j++)	 
				{	 
					for(z=0;z<17;z++)	 
					{		 
						if (z==2 || z==3)	 
							object_info[i].publicwarehouse[j].code[z] = 0xFF;		 
						else 
							object_info[i].publicwarehouse[j].code[z] = 0x00; 
					} 
				} 
				object_info[i].publicwarehousemoney = 0; 
			} 
 
		//	sprintf(tmp, "%d", object_info[i].publicwarehousemoney); 
 
		//	MessageBox(NULL, tmp, "",0); 
//			for (j=0;j<11;j++) 
//				object_info[i].spell_[i] = 0xFF; 
 
			object_info[i].teamid = 0xFFFF; 
			object_info[i].lumpid = 0xFFFF; 
             
			strcpy(object_info[i].shop_name, "\\"); 
 
			object_info[i].died      = FALSE; 
 
			object_info[i].status    = TRUE; 
 
			return object_info[i]; 
		} 
	} 
 
	tempinfo.status = FALSE; 
	return tempinfo; 
} 
 
void del_obj(SOCKET s) 
{ 
	int i; 
	for(i=0;i