08.12.2012, 12:10
My server crashes *SOMETIMES* when ID 0 die's, The person who die's then spawns on some stairs near LV Transfender then it restarts and sometimes just stops.
Help please?
Help please?
Код:
public OnPlayerDeath(playerid, killerid, reason) { justdied[playerid] = 1; if(GetDistanceBetweenPlayers(playerid) < 10)return SendDeathMessage(killerid, playerid, reason); new str[156]; new kname[26]; new pname[26]; new wep[26]; GetWeaponName(reason,wep,sizeof(wep)); GetPlayerName(playerid,pname,sizeof(pname)); GetPlayerName(killerid,kname,sizeof(kname)); if(reason == 255) { new str1[256]; format(str1,sizeof(str),"* %s has died. (Unknown)",pname); SendClientMessageToAll(COLOR_RED,str1); return 1; } if(reason == 54) { new str1[256]; format(str1,sizeof(str),"* %s has died. (Splat)",pname); SendClientMessageToAll(COLOR_RED,str1); return 1; } if(reason == 53) { new str1[256]; format(str1,sizeof(str),"* %s has Drowned.",pname); SendClientMessageToAll(COLOR_RED,str1); return 1; } format(str,256,"* %s has been killed by %s. (%s)",pname,kname,wep); SendClientMessageToAll(COLOR_RED,str); if(GetPlayerWantedLevel(playerid) == 1 && IsLaw[killerid] == 1) { GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(1 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 1 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",60000,false,"i",playerid); } if(GetPlayerWantedLevel(playerid) == 2 && IsLaw[killerid] == 1) { new str[256]; GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(2 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 2 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",120000,false,"i",playerid); } if(GetPlayerWantedLevel(playerid) == 3 && IsLaw[killerid] == 1) { new str[256]; GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(3 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 3 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",180000,false,"i",playerid); } if(GetPlayerWantedLevel(playerid) == 4 && IsLaw[killerid] == 1) { new str[256]; GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(4 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 4 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",240000,false,"i",playerid); } if(GetPlayerWantedLevel(playerid) == 5 && IsLaw[killerid] == 1) { new str[256]; GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(5 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 5 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",300000,false,"i",playerid); } if(GetPlayerWantedLevel(playerid) == 6 && IsLaw[killerid] == 1) { new str[256]; GetPlayerName(killerid,kname,sizeof(kname)); GetPlayerName(playerid,pname,sizeof(pname)); format(str,66,"* %s has been arrested by %s.(6 mins)", pname, kname); SendClientMessage(playerid,COLOR_RED,"You have been jailed for 6 mins."); SendClientMessageToAll(COLOR_RED,str); jail[playerid] = 1; sjail[playerid] = SetTimerEx("Unjail",360000,0,"d",playerid); } return 1; }