From: Rene S. <sa...@us...> - 2005-02-06 19:11:05
|
Update of /cvsroot/jake2/jake2/src/jake2/game In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18126/src/jake2/game Modified Files: PlayerClient.java Log Message: find spawn point nullpointer bug fixed. Index: PlayerClient.java =================================================================== RCS file: /cvsroot/jake2/jake2/src/jake2/game/PlayerClient.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** PlayerClient.java 22 Sep 2004 19:22:06 -0000 1.6 --- PlayerClient.java 6 Feb 2005 19:10:48 -0000 1.7 *************** *** 521,526 **** while (true) { ! spot = (es = GameBase.G_Find(es, GameBase.findByClass, ! "info_player_coop")).o; if (spot == null) return null; // we didn't have enough... --- 521,533 ---- while (true) { ! es = GameBase.G_Find(es, GameBase.findByClass, ! "info_player_coop"); ! ! // nullpointer exi fixed (RST). ! if (es == null) ! return null; ! ! spot = es.o; ! if (spot == null) return null; // we didn't have enough... *************** *** 793,820 **** // deathmatch wipes most client data every spawn ! if (GameBase.deathmatch.value != 0) { ! String userinfo; ! //char userinfo[MAX_INFO_STRING]; resp.set(client.resp); ! userinfo = client.pers.userinfo; ! ! //memcpy(userinfo, client.pers.userinfo, sizeof(userinfo)); InitClientPersistant(client); userinfo = ClientUserinfoChanged(ent, userinfo); } else if (GameBase.coop.value != 0) { - // int n; - //char userinfo[MAX_INFO_STRING]; - String userinfo; resp.set(client.resp); ! //memcpy(userinfo, client.pers.userinfo, sizeof(userinfo)); ! userinfo = client.pers.userinfo; ! // this is kind of ugly, but it's how we want to handle keys in coop ! // for (n = 0; n < game.num_items; n++) ! // { ! // if (itemlist[n].flags & IT_KEY) ! // resp.coop_respawn.inventory[n] = client.pers.inventory[n]; ! // } resp.coop_respawn.game_helpchanged = client.pers.game_helpchanged; resp.coop_respawn.helpchanged = client.pers.helpchanged; --- 800,817 ---- // deathmatch wipes most client data every spawn ! if (GameBase.deathmatch.value != 0) { resp.set(client.resp); ! String userinfo = client.pers.userinfo; InitClientPersistant(client); + userinfo = ClientUserinfoChanged(ent, userinfo); + } else if (GameBase.coop.value != 0) { resp.set(client.resp); ! ! String userinfo = client.pers.userinfo; ! resp.coop_respawn.game_helpchanged = client.pers.game_helpchanged; resp.coop_respawn.helpchanged = client.pers.helpchanged; *************** *** 824,828 **** client.pers.score = resp.score; } else { - //memset(& resp, 0, sizeof(resp)); resp.clear(); } --- 821,824 ---- *************** *** 830,834 **** // clear everything but the persistant data saved.set(client.pers); - //memset(client, 0, sizeof(* client)); client.clear(); client.pers.set(saved); --- 826,829 ---- *************** *** 867,872 **** // clear playerstate values ! ent.client.ps.clear(); ! //memset(& ent.client.ps, 0, sizeof(client.ps)); client.ps.pmove.origin[0] = (short) (spawn_origin[0] * 8); --- 862,866 ---- // clear playerstate values ! ent.client.ps.clear(); client.ps.pmove.origin[0] = (short) (spawn_origin[0] * 8); *************** *** 1014,1018 **** if (GameBase.game.maxclients > 1) { GameBase.gi.WriteByte(Defines.svc_muzzleflash); - //gi.WriteShort(ent - g_edicts); GameBase.gi.WriteShort(ent.index); GameBase.gi.WriteByte(Defines.MZ_LOGIN); --- 1008,1011 ---- *************** *** 1042,1046 **** // check for malformed or illegal info strings if (!Info.Info_Validate(userinfo)) { - //strcpy(userinfo, "\\name\\badinfo\\skin\\male/grunt"); return "\\name\\badinfo\\skin\\male/grunt"; } --- 1035,1038 ---- *************** *** 1049,1054 **** s = Info.Info_ValueForKey(userinfo, "name"); - //strncpy(ent.client.pers.netname, s, sizeof(ent.client.pers.netname) - - // 1); ent.client.pers.netname = s; --- 1041,1044 ---- *************** *** 1090,1095 **** // save off the userinfo in case we want to check something later - //strncpy(ent.client.pers.userinfo, userinfo, - // sizeof(ent.client.pers.userinfo) - 1); ent.client.pers.userinfo = userinfo; --- 1080,1083 ---- |