10.08.2016, 10:56
Код:
[09:39:27] [debug] AMX backtrace: [09:39:27] [debug] #0 00098848 in public OnPlayerTakeDamage (0, 65535, 1037805030, 37, 3) from _dark_.amx [09:39:27] [debug] Run time error 4: "Array index out of bounds" [09:39:27] [debug] Accessing element at index 65535 past array upper bound 99 [09:39:27] [debug] AMX backtrace:
PHP код:
public OnPlayerTakeDamage(playerid,issuerid, Float: amount, weaponid, bodypart) {
if(issuerid != INVALID_PLAYER_ID && gHelmet[playerid] == true)
{
gHelmet[playerid]=false; // << There, as simple as that
return GameTextForPlayer(issuerid,"~r~Player have helmet protection",5000,3);
}
if(gTeam[issuerid] == TEAM_USA && gTeam[playerid] == TEAM_USA && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
return GameTextForPlayer(issuerid,"~r~Don't Attack Your Team Mate",5000,3);
}
if(gTeam[issuerid] == TEAM_EURASIA && gTeam[playerid] == TEAM_EURASIA && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
return GameTextForPlayer(issuerid,"~r~Don't Attack Your Team Mate",5000,3);
}
if(gTeam[issuerid] == TEAM_ARAB && gTeam[playerid] == TEAM_ARAB && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
return GameTextForPlayer(issuerid,"~r~Don't Attack Your Team Mate",5000,3);
}
if(gTeam[issuerid] == TEAM_SOVIET && gTeam[playerid] == TEAM_SOVIET && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
return GameTextForPlayer(issuerid,"~r~Don't Attack Your Team Mate",5000,3);
}
if(gTeam[issuerid] == TEAM_AUS && gTeam[playerid] == TEAM_AUS && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
return GameTextForPlayer(issuerid,"~r~Don't Attack Your Team Mate",5000,3);
}
if(issuerid != INVALID_PLAYER_ID && AntiSK[playerid] == 1) return 0;
if((weaponid == 34/*|| weaponid == 32 || weaponid == 31 || weaponid == 30 || weaponid == 29 || weaponid == 28 || weaponid == 27 || weaponid == 26*/ || weaponid == 33) && issuerid != INVALID_PLAYER_ID && bodypart == 9)
{
SetPlayerHealth(playerid,0.0);
GameTextForPlayer(playerid,"~r~YOU GOT HEADSHOT~n~Type /buy To get Helmet",5000,3);
GameTextForPlayer(issuerid,"~r~wOw. Perfect Shot",5000,3);
PlayerPlaySound(playerid, 1050, 0.0, 0.0, 0.0);
PlayerPlaySound(issuerid, 1050, 0.0, 0.0, 0.0);
RemovePlayerAttachedObject(playerid, 1);
}
if(AntiSK[playerid] == 1)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-5);
GameTextForPlayer(issuerid,"~r~Player Have Anti Spawn Kill Protection", 3000, 3);
}
// anti-team-attack
if(gTeam[issuerid] == TEAM_USA && gTeam[playerid] == TEAM_USA && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
GameTextForPlayer(issuerid,"~r~Your teamattacking ~n~-2 health", 3000, 3);
}
if(gTeam[issuerid] == TEAM_EURASIA && gTeam[playerid] == TEAM_EURASIA && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
GameTextForPlayer(issuerid,"~r~Your teamattacking ~n~-2 health", 3000, 3);
}
if(gTeam[issuerid] == TEAM_ARAB && gTeam[playerid] == TEAM_ARAB && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
GameTextForPlayer(issuerid,"~r~Your teamattacking ~n~-2 health", 3000, 3);
}
if(gTeam[issuerid] == TEAM_SOVIET && gTeam[playerid] == TEAM_SOVIET && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
GameTextForPlayer(issuerid,"~r~Your teamattacking ~n~-2 health", 3000, 3);
}
if(gTeam[issuerid] == TEAM_AUS && gTeam[playerid] == TEAM_AUS && EDM[playerid] == 0 && weaponid != 18)
{
GetPlayerHealth(issuerid,amount);
SetPlayerHealth(issuerid,amount-2);
GameTextForPlayer(issuerid,"~r~Your teamattacking ~n~-2 health", 3000, 3);
}
// anti team knifing
if(gTeam[issuerid] == TEAM_USA && gTeam[playerid] == TEAM_USA && weaponid == 4)
{
GameTextForPlayer(issuerid,"~g~do not knife~n~team mates", 3000, 3);
GameTextForPlayer(playerid,"~g~you got team knifed~n~use /sync", 3000, 3);
SetPlayerHealth(issuerid, 0);
}
if(gTeam[issuerid] == TEAM_EURASIA && gTeam[playerid] == TEAM_EURASIA && weaponid == 4)
{
GameTextForPlayer(issuerid,"~g~do not knife~n~team mates", 3000, 3);
GameTextForPlayer(playerid,"~g~you got team knifed~n~use /sync", 3000, 3);
SetPlayerHealth(issuerid, 0);
}
if(gTeam[issuerid] == TEAM_ARAB && gTeam[playerid] == TEAM_ARAB && weaponid == 4)
{
GameTextForPlayer(issuerid,"~g~do not knife~n~team mates", 3000, 3);
GameTextForPlayer(playerid,"~g~you got team knifed~n~use /sync", 3000, 3);
SetPlayerHealth(issuerid, 0);
}
if(gTeam[issuerid] == TEAM_SOVIET && gTeam[playerid] == TEAM_SOVIET && weaponid == 4)
{
GameTextForPlayer(issuerid,"~g~do not knife~n~team mates", 3000, 3);
GameTextForPlayer(playerid,"~g~you got team knifed~n~use /sync", 3000, 3);
SetPlayerHealth(issuerid, 0);
}
if(gTeam[issuerid] == TEAM_AUS && gTeam[playerid] == TEAM_AUS && weaponid == 4)
{
GameTextForPlayer(issuerid,"~g~do not knife~n~team mates", 3000, 3);
GameTextForPlayer(playerid,"~g~you got team knifed~n~use /sync", 3000, 3);
SetPlayerHealth(issuerid, 0);
}
if(issuerid != INVALID_PLAYER_ID)
{
new str[26];
format(str, sizeof(str),"-%.0f", amount);
SetPlayerChatBubble(playerid, str, 0xFF0000FF, 100.0, 2000);
}
return 1;
}