Ich hoffe jemand hat hier eine Idee hierzu. Es handelt sich um ein Tanksystem was nicht mit einem festen Wert für alle Fahrzeugmodelle arbeitet, sondern mit verschiedenen Float-Werte pro Model.
So sieht das System bisher aus:
enum CarInfo{
model[32],
Float:tank
}
new cInfo[][CarInfo] ={
{"Landstalker",38.0},
{"Bravura",42.0},
... //Für bessere Anzeige ist die Liste gekürzt, aber in meinem Script sind alle Modelle vorhanden
{"Boxville",60.0},
{"Tiller",62.0},
{"Utility Trailer",45.0}
};
new Float:cartank[MAX_VEHICLES];
public OnGameModeInit()
{
for(new i=0; i<MAX_VEHICLES; i++) //Beim Serverstart sollen alle Fahrzeuge ihren Tank mit den Daten aus der cInfo[id in der Liste -400][tank] gefüllt bekommen -> Und genau hier liegt das Problem!
{
new vID = GetVehicleModel(i);
cartank[i] = cInfo[vID-400][tank]; //Warum -400? Weil die VehicleIDs nicht mit 1 beginnen wie wir alle wissen
}
return 1;
}
Fehlermeldung:
[16:05:02] [debug] Run time error 4: "Array index out of bounds"[16:05:02] [debug] Accessing element at negative index -400[16:05:02] [debug] AMX backtrace:[16:05:02] [debug] #0 00006cd0 in public SSCANF_OnGameModeInit () from server.amx[16:05:02] [debug] #1 00000a34 in public OnGameModeInit () from server.amx
Hat jemand eine Löung für das Problem? Ich wäre echt dankbar!
Gruß Addra