Am facut asa:
if(CrateTime[i] > 0) {
CrateTime[i] --;
new amount, rand;
if(CrateType[i] == 1) rand = random(30);
else rand = random(50);
switch(rand) {
case 0..15: {
amount = random(5) + 5;
if(CrateType[i] == 1) amount += 5;
format(string, sizeof(string), "Steep: %d/30~n~~y~%sx RP", 30-CrateTime[i], FormatNumber(amount));
PlayerTextDrawSetString(i, CrateTD[4], string);
for(i = 0; i < 5; i++) PlayerTextDrawHide(i, CrateTD[i]);
if(CrateTime[i] == 0) PlayerInfo[i][pExp] += amount, Update(i, pRP), SCM(i, COLOR_LGREEN, "Felicitari! Ai castigat RP-uri!");
for(i = 0; i < 5; i++) PlayerTextDrawHide(i, CrateTD[i]);
}
case 16..25: {
amount = random(50) + 100;
if(CrateType[i] == 1) amount += 100;
format(string, sizeof(string), "Steep: %d/30~n~~p~%s PremiumPoints", 30-CrateTime[i], FormatNumber(amount));
PlayerTextDrawSetString(i, CrateTD[4], string);
for(i = 0; i < 5; i++) PlayerTextDrawShow(i, CrateTD[i]);
if(CrateTime[i] == 0) PlayerInfo[i][pPremiumPoints] += amount, Update(i, pPremiumPoints), SCM(i, COLOR_LGREEN, "Felicitari! Ai castigat PremiumPoints!");
for(i = 0; i < 5; i++) PlayerTextDrawHide(i, CrateTD[i]);
}
default: {
amount = random(1000000) + 500000;
if(CrateType[i] == 1) amount += 500000;
format(string, sizeof(string), "Steep: %d/30~n~~g~$%s", 30-CrateTime[i], FormatNumber(amount));
PlayerTextDrawSetString(i, CrateTD[4], string);
for(i = 0; i < 5; i++) PlayerTextDrawHide(i, CrateTD[i]);
if(CrateTime[i] == 0) GivePlayerCash(i, amount), Update(i, pCashx), SCM(i, COLOR_LGREEN, "Felicitari! Ai castigat bani!");
for(i = 0; i < 5; i++) PlayerTextDrawHide(i, CrateTD[i]);
}
}
}
si primesc eroarea asta:
[debug] AMX backtrace:
[debug] #0 0035e4fc in public Timers () at C:\Users\Andrei\Desktop\burned.ro\gamemodes\wa-rpg.pwn:31352
[debug] Run time error 4: "Array index out of bounds"
[debug] Accessing element at index 1995 past array upper bound 1000
Asta e linia: if(CrateTime > 0) {