Mich@elson
Умник
Приветствую. Вот уже как неделю исправляю ошибки в логе. Компилирую в дебаг режиме.
Но не могу исправить вот эти ошибки. Помогите пожалуйста.:bc:
Ошибка в строке:16799
И вот это:
Ошибка в строке 25670:
Сама команда /free:
Но не могу исправить вот эти ошибки. Помогите пожалуйста.:bc:
PHP:
[debug] Run time error 4: "Array index out of bounds"
[debug] Accessing element at index 80 past array upper bound 79
[debug] AMX backtrace:
[debug] #0 000f8fac in public Streamer_OnPlayerEnterRaceCP (playerid=10) at C:\Mods\gamemodes\Mod.pwn:16799
[debug] #1 native CallLocalFunction () [080d3870] from samp03svr
[debug] #2 00011d50 in Debug_Print0 (... <1 variable argument>) at C:\Mods\pawno\include\streamer.inc:481
PHP:
SetPlayerRaceCheckpoint(playerid,e_type,BusCityLV[i][0],BusCityLV[i][1],BusCityLV[i][2],BusCityLV[i+1][0],BusCityLV[i+1][1],BusCityLV[i+1][2],5.0);
PHP:
else
{
pPressed[playerid]++;
SetPVarInt(playerid, "BusMoney", GetPVarInt(playerid, "BusMoney") + 60);
PlayerInfo[playerid][pPayCheck] += 60;
if(pPressed[playerid] == 7 || pPressed[playerid] == 10 || pPressed[playerid] == 18 || pPressed[playerid] == 24 || pPressed[playerid] == 32 || pPressed[playerid] == 39 || pPressed[playerid] == 51 || pPressed[playerid] == 64 || pPressed[playerid] == 71 || pPressed[playerid] == 79) e_type = 1;
else e_type = 0;
new i = pPressed[playerid];
SetPlayerRaceCheckpoint(playerid,e_type,BusCityLV[i][0],BusCityLV[i][1],BusCityLV[i][2],BusCityLV[i+1][0],BusCityLV[i+1][1],BusCityLV[i+1][2],5.0);
}
}
И вот это:
PHP:
[debug] Run time error 4: "Array index out of bounds"
[debug] Accessing element at index 65535 past array upper bound 499
[debug] AMX backtrace:
[debug] #0 001a78f8 in public cmd_free (playerid=36, params[]=@0x0072cb18 "") at C:\Mods\gamemodes\Mod.pwn:25670
[debug] #1 native DC_CMD () [b6943b50] from dc_cmd.so
[debug] #2 00013fa4 in public OnPlayerCommandText (playerid=36, cmdtext[]=@0x0072cadc "/free 14 50000") at C:\Mods\pawno\include\dc_cmd.inc:62
PHP:
if(PlayerInfo[params[0]][pJailed] != 1) return SendClientMessage(playerid, COLOR_GRAD1, "Человек не в тюрьме!");
PHP:
CMD:free(playerid, params[])
{
if(PlayerInfo[playerid][pLogin] == 0) return true;
if(PlayerInfo[playerid][pMember] == 7 && PlayerInfo[playerid][pRank] == 2)
if(sscanf(params, "ud", params[0],params[1])) return SendClientMessage(playerid, COLOR_WHITE, "Введите: /free [id] [цена]");
if(PlayerInfo[params[0]][pJailed] != 1) return SendClientMessage(playerid, COLOR_GRAD1, "Человек не в тюрьме!");
if(params[1] < 100 || params[1] > 50000) { SendClientMessage(playerid, COLOR_GREY, "Цена не может быть меньше 100 и больше 50000!"); return true; }
if(params[1] == playerid) return SendClientMessage(playerid,COLOR_GRAD1, "[Ошибка] Вы указали свой ID");
format(YCMDstr, sizeof(YCMDstr), "[Адвокат] Вы предложили %s выпустить его за %d вирт",Name(params[0]),params[1]);
SendClientMessage(playerid, 0x6495EDFF, YCMDstr);
format(YCMDstr, sizeof(YCMDstr), "[Адвокат] %s предлагает Вам свободу за %d вирт",Name(playerid),params[1]);
SendClientMessage(params[0], 0x6495EDFF, YCMDstr);
ShowPlayerDialogEx(params[0],6622,DIALOG_STYLE_MSGBOX, "Адвокатские услуги", "Выберите способ оплаты:", "Наличные", "Банк");
FreeOffer[params[0]] = playerid;
FreePrice[params[0]] = params[1];
SposobOffer[params[0]] = 0;
return true;
}
