]hallo leute habe eine frag und des ist wenn ich das auto
Abschleppe und /abschleppe machen und danach freikaufen will geht nicht das steht freikaufen
aber des zieht nicht geld ab und steht jedes mal wenn ich einsteige freikaufen
könnt ihr mir da bei helfen
new CarName[][] =//damit findet man den Autonamen heraus! Möchte ich nicht weiter drauf ein gehen
{
"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", "Boxvillde", "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", "Stratum",
"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", "2. Gebrauchtwagen", "1. Gebrauchtwagen", "Luggage", "Luggage", "Stairs", "Boxville",
"Tiller", "Utility Trailer"
};enum CInfo//Dies ist ein Enum mit dem kann man New's genauer definieren!
{
cOamt,//Wird dafür stehen ob das Auto abgeschleppt ist
cTicket,//Wie teuer die Strafe für das Abschleppem/Falsch Parken
};
new CarInfo[MAX_VEHICLES][CInfo];//Das New
#define oamtplatze 15//Wie viele Parkplätze es gibt wo die abgeschleppten Autos spawnen
enum oamtenum//enum siehe oben
{
Float:oamtx,//Koordinate x
Float:oamty,//Koordinate y
Float:oamtz,//Koordinate z
Float:oamtr,//Rotation
};
//Diese Parkplätze sind am FilmStudio LS
new Float:Oamtt[oamtplatze][oamtenum] = {//Ein Array in dem siw Pärkplätze die ihr gesaved habt angegeben sind
{826.4188,-1211.5909,16.8537,178.7843},//
{831.0336,-1213.1310,16.8592,177.6414},//
{837.4936,-1211.2300,16.8620,177.8550},//
{844.4809,-1211.7252,16.8658,178.5696},//
{851.2586,-1211.2106,16.8468,179.1558},//
{856.1712,-1211.6556,16.8514,175.8735},//
{862.6101,-1212.1688,16.8510,175.9451},//
{867.8173,-1213.1890,16.8623,177.3700},//
{874.4139,-1212.9557,16.8536,177.8042},//
{880.8683,-1212.6217,16.8530,178.7265},//
{887.6457,-1212.2098,16.8460,178.1337},//
{892.9874,-1211.8792,16.8527,179.2192},//
{899.4098,-1212.0092,16.8503,178.2904},//
{906.2399,-1208.1729,16.8608,178.4962},//
{910.9942,-1208.8831,16.8575,178.7160}//
};
if (strcmp("/abschleppen", cmdtext, true, 10) == 0)//Wie der Befehl heißt
{
if(PlayerInfo[playerid][pLeader] == 23|| PlayerInfo[playerid][pMember] == 23)//Für welche Fraktion oder Beruf er erlaubt ist ACHTUNG! Diesist für GF passt es bitte eurem Script an!
{
if(IsPlayerInAnyVehicle(playerid))//Ist Arbeiter in einem Auto
{
if(IsPlayerInRangeOfPoint(playerid,30.0,866.0969,-1214.3073,16.9835))//Ist playerid am Filmstudio
{
new veh = GetVehicleTrailer(GetPlayerVehicleID(playerid));//ein new in dem die trailerid gespeichert wird
if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))//Hat das Fahrzeug von playerid einen Anhänger
{
if(CarInfo[veh][cOamt] == 0)//Ist Das Auto schon abgeschleppt
{
tmp = strtok(cmdtext, idx);//wert herauslesen
if(!strlen(tmp))//Ist in tmp nichts vorhanden
{
SendClientMessage(playerid, COLOR_GRAD1, "Benutze: /abschleppen [Preis]");//meldung an playerid
return 1;
}
moneys = strval(tmp);//tmp zu einem integer verwandeln und in der Variable moneys speichern
if(moneys < 1 && moneys > 10000)//Der Preis muss zwischen 1 - 10000 liegen
{
SendClientMessage(playerid, COLOR_GRAD1, "Preis bitte zwischen 1 - 10000");//meldung an playerid
return 1;
}
SendClientMessage(playerid,COLOR_YELLOW,"Du hast das Auto abgeschleppt es wird immer Hier in der Oamt base spawnen! Bis es freigekauft wurde!");//meldung an playerid
CarInfo[veh][cOamt] = 1;//Das Auto ist abgeschleppt
CarInfo[veh][cTicket] = moneys;//Welche Strafe/Preis zum Freikaufen wurde gespeichert
}
else//ist das Auto schon abgeschleppt
{
SendClientMessage(playerid,COLOR_YELLOW,"Das Auto ist schon abgeschleppt!");//meldung an playerid
}
}
else//Das Auto hat keinen Trailer/Auto am hacken
{
SendClientMessage(playerid,COLOR_YELLOW,"Du hast kein Auto abgeschleppt!");//meldung an playerid
}
}
else//nicht am Filmstudio
{
SendClientMessage(playerid,COLOR_YELLOW,"Du bist nicht am Abschlepppunkt!");//meldung an playerid
}
}
else//ist playerd in keinem auto
{
SendClientMessage(playerid,COLOR_YELLOW,"Du bist in keinen Auto!");//meldung an playerid
}
}
else//Ist nicht in der Fraktion/Beruf
{
SendClientMessage(playerid,COLOR_YELLOW,"Du biast kein Oamtler!");//meldung an playerid
}
return 1;
}
if(CarInfo[vehicleid][cOamt] > 0)//Ist das Auto abgeschleppt
{
new car = GetVehicleModel(vehicleid);//Herraus finden welches Model vehicleid ist
new string[256];// einen string definieren
format(string, sizeof(string), "Auto: %s\nTicket: %d",CarName[car-400],CarInfo[vehicleid][cTicket]);//Dies ist ein Format mit diesem könnt ihr werte in einen String schreiben! das erste %s sthet für eien string und CarName ist die Funtkion dazu welches Auto das ist und gibt einen string wieder und wird für %s eingefügt CarInfo..Ticket gibt den Preis zum Freikaufen wieder in einem Integer deswegen %d
ShowPlayerDialog(playerid,DIALOG_FREIKAUFEN,DIALOG_STYLE_MSGBOX,"Freikaufen",string,"Freikaufne","abbrechen");//hier wird der string in einem Dialog angezeigt
}
if(dialogid == 89)//welche Dialog id es ist
{
if(response == 1)//Welcher Button geklickt wurde
{
new veh = GetPlayerVehicleID(playerid);//Vehicleid von playerid herausfinden
GivePlayerMoney(playerid, - CarInfo[veh][cTicket]);//playerid das geld von freikaufen abziehen
SendClientMessage(playerid,COLOR_YELLOW,"Du hast das Auto freikauft");//meldung an playerid
CarInfo[veh][cTicket] = 0;//Ticket des wagens auf 0 setzen
CarInfo[veh][cOamt] = 0;//Das Auto ist nicht mehr abgeschleppt
}
else//wenn er den anderen button gedrückt hat
{
RemovePlayerFromVehicle(playerid);//playerid aus dem Auto schmeißen
}
}
if(CarInfo[vehicleid][cOamt] > 0)//Ist das Auto abgeschleppt
{
new rand = random(14);//Eine zufallszahl zwischen 0 und 14 herausfinden
SetVehiclePos(vehicleid, Oamtt[rand][oamtx], Oamtt[rand][oamty], Oamtt[rand][oamtz]);//Das Auto auf einen zufall parkplatz setzen
SetVehicleZAngle(vehicleid, Oamtt[rand][oamtr]);//ZAngel des Fahrzeuges setzten
}