#define GetVehicleName(%0) VehicleNames[GetVehicleModel(%0) - 400]
new VehicleNames[][] =
{
"Landstalker", "Bravura", "Buffalo", "Linerunner", "Perrenial", "Sentinel",
"Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus",
"Voodoo", "Pony", "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam",
"Esperanto", "Taxi", "Washington", "Bobcat", "Whoopee", "BF Injection",
"Hunter", "Premier", "Enforcer", "Securicar", "Banshee", "Predator", "Bus",
"Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie",
"Stallion", "Rumpo", "RC Bandit", "Romero", "Packer", "Monster", "Admiral",
"Squalo", "Seasparrow", "Pizzaboy", "Tram", "Trailer", "Turismo", "Speeder",
"Reefer", "Tropic", "Flatbed", "Yankee", "Caddy", "Solair", "Berkley's RC Van",
"Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale",
"Oceanic","Sanchez", "Sparrow", "Patriot", "Quad", "Coastguard", "Dinghy",
"Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX",
"Burrito", "Camper", "Marquis", "Baggage", "Dozer", "Maverick", "News Chopper",
"Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring", "Sandking",
"Blista Compact", "Police Maverick", "Boxville", "Benson", "Mesa", "RC Goblin",
"Hotring Racer A", "Hotring Racer B", "Bloodring Banger", "Rancher", "Super GT",
"Elegant", "Journey", "Bike", "Mountain Bike", "Beagle", "Cropduster", "Stunt",
"Tanker", "Roadtrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra",
"FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck", "Fortune",
"Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer",
"Remington", "Slamvan", "Blade", "Freight", "Streak", "Vortex", "Vincent",
"Bullet", "Clover", "Sadler", "Firetruck", "Hustler", "Intruder", "Primo",
"Cargobob", "Tampa", "Sunrise", "Merit", "Utility", "Nevada", "Yosemite",
"Windsor", "Monster", "Monster", "Uranus", "Jester", "Sultan", "Stratium",
"Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma", "Savanna", "Bandito",
"Freight Flat", "Streak Carriage", "Kart", "Mower", "Dune", "Sweeper",
"Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",
"News Van", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club",
"Freight Box", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car",
"Police Car", "Police Car", "Police Ranger", "Picador", "S.W.A.T", "Alpha",
"Phoenix", "Glendale", "Sadler", "Luggage", "Luggage", "Stairs", "Boxville",
"Tiller", "Utility Trailer"
};
public OnPlayerCommandPerformed(playerid, cmdtext[], success) {
if(!success) {
new string[132];
format(string, sizeof(string), "Fehler: Der Befehl '%s' wurde nicht gefunden!", cmdtext);
return SCM(playerid, COLOR_INFO, string);
}
return 1;
}
public OnPlayerCommandReceived(playerid, cmdtext[]) {
if(!IsLogged(playerid)) {
SCM(playerid, COLOR_INFO, "Fehler: Du bist nicht eingeloggt!");
return 0;
}
return 1;
}
CMD:veh(playerid, params[]) {
if(!IsAdmin(playerid, 4)) return NO_PERM;
new vName[18];
if(sscanf(params, "s[18]", vName)) return Usage("Benutzung: /veh [Vehicle Name]");
if(IsPlayerInAnyVehicle(playerid)) return SCM(playerid, COLOR_INFO, "Fehler: Du darfst in keinem Fahrzeug sein!");
new string[128], vID = GetVehicleModelIDFromName(vName), Float:Pos[4];
if(vID < 400 || vID > 611) return SCM(playerid, COLOR_INFO, "Fehler: Das Fahrzeug wurde nicht gefunden!");
GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
GetPlayerFacingAngle(playerid, Pos[3]);
format(string, sizeof(string), "> Du hast dir erfolgreich das Vehicle: %s gespawnt!", GetVehicleName(vID));
SCM(playerid, COLOR_INFO, string);
new veh = CreateVehicle(vID, Pos[0], Pos[1], Pos[2], Pos[3], 211, 211, -1, 1);
SetVehicleNumberPlate(veh, "ADMIN");
PutPlayerInVehicle(playerid, veh, 0);
format(string, sizeof(string), "VEH | %s (%i) WERT NEU: %s (%i) POS: (%0.1f | %0.1f | %0.1f | %0.1f)",
GetName(playerid), playerid, vName, vID, Pos[0], Pos[1], Pos[2], Pos[3]);
Log("cmd_log", string);
return 1;
}
GetVehicleModelIDFromName(vname[]) {
for(new i = 0; i < 211; i++) {
if(strfind(VehicleNames[i], vname, true) != -1)
return i + 400;
}
return -1;
}
/* CRASHDETECT */
[15:16:15] [debug] Run time error 4: "Array index out of bounds"
[15:16:15] [debug] Attempted to read/write array element at negative index -400
[15:16:15] [debug] AMX backtrace:
[15:16:15] [debug] #0 0000ef60 in public cmd_veh (0, 302964) in x.amx
[15:16:15] [debug] #1 native CallLocalFunction () in samp-server.exe
[15:16:15] [debug] #2 0000052c in public OnPlayerCommandText (0, 302928) in x.amx
Alles anzeigen