08.05.2014, 12:30
Error:
Command /war:
TeritoriuInfo:
P.S. In database i have 18 TeritoriuInfo. ( 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 )
Код:
[13:34:34] [CMD] Punct.: /war [13:34:34] [debug] Run time error 4: "Array index out of bounds" [13:34:34] [debug] Accessing element at index 19 past array upper bound 18 [13:34:34] [debug] AMX backtrace: [13:34:34] [debug] #0 0002cdd4 in public OnPlayerCommandText (playerid=0, cmdtext[]=@0x00349d5c "/war") at C:\~Jocuri~\Trucking samp\gamemodes\v3.4.pwn:1049
Код:
if(strcmp(cmd, "/war", true) == 0 || strcmp(cmd, "/razboi", true) == 0) { new pName[MAX_PLAYER_NAME]; GetPlayerName(playerid, pName, MAX_PLAYER_NAME); if(joinwar != 0) { return 1; } if(!IsAMember(playerid)) { return 1; } if(PlayerInfo[playerid][pRank] < 5) { return 1; } for(new i=1; i<=sizeof(TeritoriuInfo); i++) // Line 1049 { if(PlayerToPoint(4.0, playerid, TeritoriuInfo[i][tPozX3], TeritoriuInfo[i][tPozY3], TeritoriuInfo[i][tPozZ3]) && PlayerInfo[playerid][pFactiune] != TeritoriuInfo[i][tOwned]) { if(TeritoriuInfo[i][tTime] < 5) { format(string, sizeof(string), "Teritoriul poate fi atacat numai peste %d ore.", 5-TeritoriuInfo[i][tTime]); SCM(playerid, c_alb,string); return 1; } new nrwarzone=0; for(new j=1; j<sizeof(TeritoriuInfo); j++) { if(TeritoriuInfo[j][tOwned] == PlayerInfo[playerid][pFactiune]) { nrwarzone++; } } if(nrwarzone > 4) { SendClientMessage(playerid, c_alb, "O mafie nu poate detine mai mult de 4 teritorii."); return 1; } for(new j=0; j<=MAX_PLAYERS; j++) { if(IsPlayerConnected(j)) { GangZoneShowForPlayer(j, turf[i], 0x6AFFFCBE); } } joinwar = 1; SetTimer("StopWarJoin", 60000, 0); //SetTimer("StopWarJoin",60000,0); new ttext[35]; if(TeritoriuInfo[i][tOwned] == 4) { ttext = "{258127}Familia Mararu{0076F9}"; } else if(TeritoriuInfo[i][tOwned] == 5) { ttext = "{9B5137}Familia Spoitoru{0076F9}"; } else if(TeritoriuInfo[i][tOwned] == 6) { ttext = "{D084D7}Familia Mondialu{0076F9}"; } else if(TeritoriuInfo[i][tOwned] == 7) { ttext = "{009F98}Familia Gigiok{0076F9}"; } new tttext[35]; if(PlayerInfo[playerid][pFactiune] == 4) { tttext = "{258127}Familia Mararu{0076F9}"; } else if(PlayerInfo[playerid][pFactiune] == 5) { tttext = "{9B5137}Familia Spoitoru{0076F9}"; } else if(PlayerInfo[playerid][pFactiune] == 6) { tttext = "{D084D7}Familia Mondialu{0076F9}"; } else if(PlayerInfo[playerid][pFactiune] == 7) { tttext = "{009F98}Familia Gigiok{0076F9}"; } waratack = PlayerInfo[playerid][pFactiune]; wars[playerid] = 1; new zona[25]; if(TeritoriuInfo[i][tID] == 1) { zona = "{FFFFFF}Docuri S"; } else if(TeritoriuInfo[i][tID] == 2) { zona = "{FFFFFF}Docuri D"; } else if(TeritoriuInfo[i][tID] == 3) { zona = "{FFFFFF}Sub Portocala S"; } else if(TeritoriuInfo[i][tID] == 4) { zona = "{FFFFFF}Sub Portocala D"; } else if(TeritoriuInfo[i][tID] == 5) { zona = "{FFFFFF}Sub Cocos"; } else if(TeritoriuInfo[i][tID] == 6) { zona = "{FFFFFF}Ferma Jos"; } else if(TeritoriuInfo[i][tID] == 7) { zona = "{FFFFFF}Dillmore S"; } else if(TeritoriuInfo[i][tID] == 8 ) { zona = "{FFFFFF}Dillmore D"; } else if(TeritoriuInfo[i][tID] == 9) { zona = "{FFFFFF}Laptarie"; } else if(TeritoriuInfo[i][tID] == 10) { zona = "{FFFFFF}Ferma $"; } else if(TeritoriuInfo[i][tID] == 11) { zona = "{FFFFFF}Old Town"; } else if(TeritoriuInfo[i][tID] == 12) { zona = "{FFFFFF}Cutii"; } else if(TeritoriuInfo[i][tID] == 13) { zona = "{FFFFFF}Uzina LS"; } else if(TeritoriuInfo[i][tID] == 14) { zona = "{FFFFFF}Baza Chilliad"; } else if(TeritoriuInfo[i][tID] == 15) { zona = "{FFFFFF}Ferma Sus"; } else if(TeritoriuInfo[i][tID] == 16) { zona = "{FFFFFF}Turnuri"; } else if(TeritoriuInfo[i][tID] == 17) { zona = "{FFFFFF}BayaSide"; } else if(TeritoriuInfo[i][tID] == 18 ) { zona = "{FFFFFF}Busteni"; } format(string, sizeof(string), "[WAR] {FFFFFF}%s{0076F9} ataca un teritoriu ce apartine %s.",tttext,ttext); new string2[250]; format(string2, sizeof(string2), "[WAR] {0076F9}Razboiul se duce pe teritoriul '%s{0076F9}'. Feriti-va de acea zona.",zona); for(new j=0;j<=MAX_PLAYERS;j++) { if(IsPlayerConnected(j)) { //if(IsAMember(j)) //{ SendClientMessage(j, 0xFF6246FF,string); SendClientMessage(j, 0xFF6246FF,string2); //} } } warid = i; } } return 1; }
Код:
enum _TINFO { tID, tOwner[256], tOwned, tTime, Float:tPozX1, Float:tPozY1, Float:tPozX2, Float:tPozY2, Float:tPozX3, Float:tPozY3, Float:tPozZ3 } new TeritoriuInfo[19][_TINFO];