Hallo ich hab ein kleines Problem:
Sobald ich sterbe:
[debug] Run time error 4: "Array index out of bounds"
[debug] Attempted to read/write array element at index 65535 in array of size 1000
[debug] AMX backtrace:
[debug] #0 0002f768 in public OnPlayerDeath (0, 65535, 255) in selfmade.amx
Public OPD:
public OnPlayerDeath(playerid, killerid, reason)
{
if(killerid != INVALID_PLAYER_ID)
{
PlayerInfo[killerid][pKills]++;
GivePlayerMoney(killerid, 700);
PlayerInfo[killerid][pMoney] += 700;
}
PlayerInfo[playerid][pDeaths]++;
GivePlayerMoney(killerid, -200);
PlayerInfo[killerid][pMoney] -= 200;
new pmsg[228];
format(pmsg,sizeof(pmsg),"Gestorben: ~n~Du wurdest von %s getoetet ~n~ ~n~%s",PlayerInfo[killerid][pName],ServerInfo[servername]);
ChangeInfoBox(playerid,pmsg);
format(pmsg,sizeof(pmsg),"Getoetet: ~n~Du hast %s getoetet ~n~ ~n~%s",PlayerInfo[playerid][pName],ServerInfo[servername]);
ChangeInfoBox(killerid,pmsg);
new string[MAX_PLAYER_NAME+80];
format(string,sizeof(string),"DM: %s hat %s getoetet.",PlayerInfo[playerid][pName],PlayerInfo[killerid][pName]);
Log("DM",string);
return 1;
}
Alles anzeigen
Ich bin Localhost drauf und konnte es nicht Testen wenn mich jemand mit einer waffe tötet.
Aber ich vermute die Fehlermeldung kommt, weil killerid nicht gefunden werden konnte oder was meint ihr?
Und wie könnte ich abfragen ob der TOD durch eine Explosion oder Kanten Bug passiert ist?
//EDIT Hat sich erledigt, habe
if(killerid != INVALID_PLAYER_ID)
Benutzt.