TahirUcar

[SAMP] /acar Komutu

Apr 23rd, 2017
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 5.32 KB | None | 0 0
  1. #define FILTERSCRIPT
  2.  
  3. #include <a_samp>
  4. #include <izcmd>
  5. #include <sscanf2>
  6.  
  7. #define LOOP_PLAYERS(%0) \
  8.             for(new %0 = 0, _%0 = GetPlayerPoolSize(); %0 <= _%0, IsPlayerConnected(%0); %0++)
  9.            
  10. new avehicle[MAX_PLAYERS];
  11.  
  12. // Araç adları
  13. new vehiclenames[212][] =
  14. {
  15.     {"Landstalker"},{"Bravura"},{"Buffalo"},{"Linerunner"},{"Perrenial"},{"Sentinel"},{"Dumper"},
  16.     {"Firetruck"},{"Trashmaster"},{"Stretch"},{"Manana"},{"Infernus"},{"Voodoo"},{"Pony"},{"Mule"},
  17.     {"Cheetah"},{"Ambulance"},{"Leviathan"},{"Moonbeam"},{"Esperanto"},{"Taxi"},{"Washington"},
  18.     {"Bobcat"},{"Mr Whoopee"},{"BF Injection"},{"Hunter"},{"Premier"},{"Enforcer"},{"Securicar"},
  19.     {"Banshee"},{"Predator"},{"Bus"},{"Rhino"},{"Barracks"},{"Hotknife"},{"Trailer 1"},{"Previon"},
  20.     {"Coach"},{"Cabbie"},{"Stallion"},{"Rumpo"},{"RC Bandit"},{"Romero"},{"Packer"},{"Monster"},
  21.     {"Admiral"},{"Squalo"},{"Seasparrow"},{"Pizzaboy"},{"Tram"},{"Trailer 2"},{"Turismo"},
  22.     {"Speeder"},{"Reefer"},{"Tropic"},{"Flatbed"},{"Yankee"},{"Caddy"},{"Solair"},{"Berkley's RC Van"},
  23.     {"Skimmer"},{"PCJ-600"},{"Faggio"},{"Freeway"},{"RC Baron"},{"RC Raider"},{"Glendale"},{"Oceanic"},
  24.     {"Sanchez"},{"Sparrow"},{"Patriot"},{"Quad"},{"Coastguard"},{"Dinghy"},{"Hermes"},{"Sabre"},
  25.     {"Rustler"},{"ZR-350"},{"Walton"},{"Regina"},{"Comet"},{"BMX"},{"Burrito"},{"Camper"},{"Marquis"},
  26.     {"Baggage"},{"Dozer"},{"Maverick"},{"News Chopper"},{"Rancher"},{"FBI Rancher"},{"Virgo"},{"Greenwood"},
  27.     {"Jetmax"},{"Hotring"},{"Sandking"},{"Blista Compact"},{"Police Maverick"},{"Boxville"},{"Benson"},
  28.     {"Mesa"},{"RC Goblin"},{"Hotring Racer A"},{"Hotring Racer B"},{"Bloodring Banger"},{"Rancher"},
  29.     {"Super GT"},{"Elegant"},{"Journey"},{"Bike"},{"Mountain Bike"},{"Beagle"},{"Cropdust"},{"Stunt"},
  30.     {"Tanker"}, {"Roadtrain"},{"Nebula"},{"Majestic"},{"Buccaneer"},{"Shamal"},{"Hydra"},{"FCR-900"},
  31.     {"NRG-500"},{"HPV1000"},{"Cement Truck"},{"Tow Truck"},{"Fortune"},{"Cadrona"},{"FBI Truck"},
  32.     {"Willard"},{"Forklift"},{"Tractor"},{"Combine"},{"Feltzer"},{"Remington"},{"Slamvan"},
  33.     {"Blade"},{"Freight"},{"Streak"},{"Vortex"},{"Vincent"},{"Bullet"},{"Clover"},{"Sadler"},
  34.     {"Firetruck LA"},{"Hustler"},{"Intruder"},{"Primo"},{"Cargobob"},{"Tampa"},{"Sunrise"},{"Merit"},
  35.     {"Utility"},{"Nevada"},{"Yosemite"},{"Windsor"},{"Monster A"},{"Monster B"},{"Uranus"},{"Jester"},
  36.     {"Sultan"},{"Stratum"},{"Elegy"},{"Raindance"},{"RC Tiger"},{"Flash"},{"Tahoma"},{"Savanna"},
  37.     {"Bandito"},{"Freight Flat"},{"Streak Carriage"},{"Kart"},{"Mower"},{"Duneride"},{"Sweeper"},
  38.     {"Broadway"},{"Tornado"},{"AT-400"},{"DFT-30"},{"Huntley"},{"Stafford"},{"BF-400"},{"Newsvan"},
  39.     {"Tug"},{"Trailer 3"},{"Emperor"},{"Wayfarer"},{"Euros"},{"Hotdog"},{"Club"},{"Freight Carriage"},
  40.     {"Trailer 3"},{"Andromada"},{"Dodo"},{"RC Cam"},{"Launch"},{"Police Car (LSPD)"},{"Police Car (SFPD)"},
  41.     {"Police Car (LVPD)"},{"Police Ranger"},{"Picador"},{"S.W.A.T. Van"},{"Alpha"},{"Phoenix"},{"Glendale"},
  42.     {"Sadler"},{"Luggage Trailer A"},{"Luggage Trailer B"},{"Stair Trailer"},{"Boxville"},{"Farm Plow"},
  43.     {"Utility Trailer"}
  44. };
  45.  
  46. public OnFilterScriptInit()
  47. {
  48.     return 1;
  49. }
  50.  
  51. public OnFilterScriptExit()
  52. {
  53.     return 1;
  54. }
  55.  
  56. CMD:acar(playerid, params[])
  57. {
  58.     if(!IsPlayerAdmin(playerid)/* Bu kısmı düzenle */) return SendClientMessage(playerid, -1, "Komutu kullanabilmek için admin olmalısın.");
  59.     new vehicle[32], model, color[2];
  60.     if(sscanf(params, "s[32]I(-1)I(-1)", vehicle, color[0], color[1])) return SendClientMessage(playerid, -1, "/acar [Araç Adı] [Renk 1] [Renk 2]");
  61.  
  62.     if(IsNumericString(vehicle)) model = strval(vehicle);
  63.     else model = GetVehicleModelIDFromName(vehicle);
  64.  
  65.     if(model < 400 || model > 611) return SendClientMessage(playerid, -1, "Böyle bir araç oyunda yok.");
  66.  
  67.     new Float:currentpos[4];
  68.     GetPlayerPos(playerid, currentpos[0], currentpos[1], currentpos[2]);
  69.     GetPlayerFacingAngle(playerid, currentpos[3]);
  70.  
  71.     if(IsPlayerInAnyVehicle(playerid)) SetPlayerPos(playerid, currentpos[0] + 3.0, currentpos[1], currentpos[2]);
  72.  
  73.     if(color[0] == -1) color[0] = random(256);
  74.     if(color[1] == -1) color[1] = random(256);
  75.  
  76.     if(avehicle[playerid] != -1) RemoveAVeh(avehicle[playerid]);
  77.  
  78.     avehicle[playerid] = CreateVehicle(model, currentpos[0] + 3.0, currentpos[1], currentpos[2], currentpos[3], color[0], color[1], -1);
  79.     SetVehicleVirtualWorld(avehicle[playerid], GetPlayerVirtualWorld(playerid));
  80.     LinkVehicleToInterior(avehicle[playerid], GetPlayerInterior(playerid));
  81.     PutPlayerInVehicle(playerid, avehicle[playerid], 0);
  82.     PlayerPlaySound(playerid, 1057, 0.0, 0.0, 0.0);
  83.  
  84.     new string[144];
  85.     format(string, sizeof(string), "%s(id: %i) adlı aracı spawn ettin.", vehiclenames[model - 400], model, color[0], color[1]);
  86.     SendClientMessage(playerid, -1, string);
  87.     return 1;
  88. }
  89.  
  90. RemoveAVeh(vehicleid)
  91. {
  92.     LOOP_PLAYERS(i)
  93.     {
  94.         new Float:X, Float:Y, Float:Z;
  95.         if(IsPlayerInVehicle(i, vehicleid))
  96.         {
  97.             RemovePlayerFromVehicle(i);
  98.             GetPlayerPos(i, X, Y, Z);
  99.             SetPlayerPos(i, X, Y+3, Z);
  100.         }
  101.         SetVehicleParamsForPlayer(vehicleid, i, 0, 1);
  102.     }
  103.     SetTimerEx("OnVehicleRespawned", 1000, 0, "i", vehicleid);
  104. }
  105.  
  106. GetVehicleModelIDFromName(vname[])
  107. {
  108.     for(new i = 0; i < 211; i++)
  109.     {
  110.         if(strfind(vehiclenames[i], vname, true) != -1 )
  111.         return i + 400;
  112.     }
  113.     return -1;
  114. }
  115.  
  116. IsNumericString(str[])
  117. {
  118.     new ch, i;
  119.     while ((ch = str[i++])) if (!('0' <= ch <= '9')) return false;
  120.     return true;
  121. }
Advertisement
Add Comment
Please, Sign In to add comment