Advertisement
Guest User

Untitled

a guest
Apr 10th, 2020
293
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 12.84 KB | None | 0 0
  1.  
  2. #define     POSITON_BUY_CAR_AUTOSALON       111.1685,574.6631,13.2736
  3. #define     SPD                             ShowPlayerDialog
  4. #define     cYE                             "{FF8800}"
  5. #define     cWH                             "{FFFFFF}"
  6.  
  7.  
  8. static const stock VehicleNames[][] = {
  9.     "Landstalker", "Bravura", "Buffalo", "Linerunner", "Pereniel", "Sentinel", "Dumper", "Firetruck", "Trashmaster", "Stretch", "Manana", "Infernus", "Voodoo", "Pony",
  10.     "Mule", "Cheetah", "Ambulance", "Leviathan", "Moonbeam", "Esperanto", "Taxi", "Washington", "Bobcat", "Mr Whoopee", "BF Injection", "Hunter", "Premier", "Enforcer",
  11.     "Securicar", "Banshee", "Predator", "Bus", "Rhino", "Barracks", "Hotknife", "Trailer", "Previon", "Coach", "Cabbie", "Stallion", "Rumpo", "RC Bandit",
  12.     "Romero", "Packer", "Monster Truck", "Admiral", "Squalo", "Seasparrow", "Pizzaboy", "Tram", "Trailer", "Turismo", "Speeder", "Reefer", "Tropic", "Flatbed", "Yankee",
  13.     "Caddy", "Solair", "Berkley's RC Van", "Skimmer", "PCJ-600", "Faggio", "Freeway", "RC Baron", "RC Raider", "Glendale", "Oceanic", "Sanchez", "Sparrow", "Patriot",
  14.     "Quad", "Coastguard", "Dinghy", "Hermes", "Sabre", "Rustler", "ZR-350", "Walton", "Regina", "Comet", "BMX", "Burrito", "Camper", "Marquis", "Baggage", "Dozer",
  15.     "Maverick", "News Chopper", "Rancher", "FBI Rancher", "Virgo", "Greenwood", "Jetmax", "Hotring", "Sandking", "Blista Compact", "Police Maverick", "Boxville",
  16.     "Benson", "Mesa", "RC Goblin", "Hotring Racer", "Hotring Racer", "Bloodring Banger", "Rancher", "Super GT", "Elegant", "Journey", "Bike", "Mountain Bike", "Beagle",
  17.     "Cropdust", "Stunt", "Tanker", "RoadTrain", "Nebula", "Majestic", "Buccaneer", "Shamal", "Hydra", "FCR-900", "NRG-500", "HPV1000", "Cement Truck", "Tow Truck",
  18.     "Fortune", "Cadrona", "FBI Truck", "Willard", "Forklift", "Tractor", "Combine", "Feltzer", "Remington", "Slamvan", "Blade", "Freight", "Streak", "Vortex",
  19.     "Vincent", "Bullet", "Clover", "Sadler", "Firetruck", "Hustler", "Intruder", "Primo", "Cargobob", "Tampa", "Sunrise", "Merit", "Utility", "Nevada",
  20.     "Yosemite", "Windsor", "Monster Truck", "Monster Truck", "Uranus", "Jester", "Sultan", "Stratum", "Elegy", "Raindance", "RC Tiger", "Flash", "Tahoma",
  21.     "Savanna", "Bandito", "Freight", "Trailer", "Kart", "Mower", "Duneride", "Sweeper", "Broadway", "Tornado", "AT-400", "DFT-30", "Huntley", "Stafford", "BF-400",
  22.     "Newsvan", "Tug", "Trailer", "Emperor", "Wayfarer", "Euros", "Hotdog", "Club", "Trailer", "Trailer", "Andromada", "Dodo", "RC Cam", "Launch", "Police Car (LS)",
  23.     "Police Car (SF)", "Police Car (LV)", "Police Ranger", "Picador", "S.W.A.T. Van", "Alpha", "Phoenix", "Glendale", "Sadler", "Luggage Trailer", "Luggage Trailer",
  24.     "Stair Trailer", "Boxville", "Farm Plow", "Utility Trailer"};
  25.  
  26.  
  27.  
  28. const autosalon_td_size = 14;
  29. new PlayerText: autosalon_td[MAX_PLAYERS][autosalon_td_size];
  30.  
  31.  
  32. new autosalon_moto[2][4] = {
  33.     {522, 0, 360,2},
  34.     {521, 0, 190,2}
  35. };
  36.  
  37. new autosalon_middle[3][4] = {
  38.     {400, 0, 200,4},
  39.     {436, 0, 170,4},
  40.     {502, 0, 100,2}
  41. };
  42.  
  43. new autosalon_elite[5][4] = {
  44.     {415, 0, 230,2},
  45.     {466, 0, 300,4},
  46.     {402, 0, 300,4},
  47.     {490, 0, 300,4},
  48.     {560, 0, 400,4}
  49. };
  50.  
  51. new autosalon_vehicleid[MAX_PLAYERS];
  52.  
  53. new autosalon_flip[MAX_PLAYERS];
  54.  
  55.  
  56.  
  57. stock buy_vehicle_key_player(playerid, newkeys)
  58. {
  59.     if(IsPlayerInRangeOfPoint(playerid, 3.0, POSITON_BUY_CAR_AUTOSALON))
  60.     {
  61.         SPD(playerid, DIALOG_BUY_CAR, DIALOG_STYLE_LIST, !"Выберите класс", !"\
  62.             "cYE"1. "cWH"Мотоциклы\n\
  63.             "cYE"2. "cWH"Средний класс\n\
  64.             "cYE"3. "cWH"Элитный класс", !"Выбрать", !"Закрыть");
  65.     }
  66.     return true;
  67. }
  68.  
  69. stock BuyCar_OnDialogResponse(playerid, dialogid, response, listitem)
  70. {
  71.     switch(dialogid)
  72.     {
  73.         case DIALOG_BUY_CAR:
  74.         {
  75.             if(response)
  76.             {
  77.                 new string[64];
  78.                 autosalon_flip[playerid]++;
  79.                 autosalon_buy_show(playerid);
  80.                 switch(listitem)
  81.                 {
  82.                     case 1:
  83.                     {
  84.                         SetPVarInt(playerid, "ClassCar", 1);
  85.                         autosalon_vehicleid[playerid] = CreateVehicle(autosalon_moto[autosalon_flip[playerid]][0], 109.7249,562.1465,11.7788, 0,0,0,0);
  86.                         format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][2]);
  87.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  88.                         format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][1]);
  89.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][9],string);
  90.                         format(string, sizeof(string), "%s", VehicleNames[autosalon_moto[autosalon_flip[playerid]][0]-400]);
  91.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][5],string);
  92.                         format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][3]);
  93.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  94.                     }
  95.                     case 2:
  96.                     {
  97.                         SetPVarInt(playerid, "ClassCar", 2);
  98.                         autosalon_vehicleid[playerid] = CreateVehicle(autosalon_middle[autosalon_flip[playerid]][0], 109.7249,562.1465,11.7788, 0,0,0,0);
  99.                         PutPlayerInVehicle(playerid, autosalon_vehicleid[playerid],0);
  100.                         format(string, sizeof(string), "%d", autosalon_middle[autosalon_flip[playerid]][2]);
  101.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  102.                         format(string, sizeof(string), "%d", autosalon_middle[autosalon_flip[playerid]][3]);
  103.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  104.                     }
  105.                     case 3:
  106.                     {
  107.                         SetPVarInt(playerid, "ClassCar", 3);
  108.                         autosalon_vehicleid[playerid] = CreateVehicle(autosalon_elite[autosalon_flip[playerid]][0], 109.7249,562.1465,11.7788, 0,0,0,0);
  109.                         PutPlayerInVehicle(playerid, autosalon_vehicleid[playerid],0);
  110.                         format(string, sizeof(string), "%d", autosalon_elite[autosalon_flip[playerid]][2]);
  111.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  112.                         format(string, sizeof(string), "%d", autosalon_elite[autosalon_flip[playerid]][3]);
  113.                         PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  114.                     }
  115.                 }
  116.                 PutPlayerInVehicle(playerid, autosalon_vehicleid[playerid],0);
  117.             }
  118.         }
  119.     }
  120.     return true;
  121. }
  122.  
  123.  
  124. public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
  125. {
  126.     if(playertextid == PlayerText:autosalon_td[playerid][10])
  127.     {
  128.         new string[80];
  129.         autosalon_flip[playerid]++;
  130.         format(string, sizeof(string), !"%d autosalon_flip", autosalon_flip[playerid]);
  131.         SendClientMessage(playerid, -1, string);
  132.         if(GetPVarInt(playerid, "ClassCar") == 1)
  133.         {
  134.             if(autosalon_flip[playerid]>=sizeof(autosalon_moto)) {autosalon_flip[playerid] = 0;}
  135.             format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][2]);
  136.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  137.             format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][1]);
  138.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][9],string);
  139.             format(string, sizeof(string), "%s", VehicleNames[autosalon_moto[autosalon_flip[playerid]][0]-400]);
  140.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][5],string);
  141.             format(string, sizeof(string), "%d", autosalon_moto[autosalon_flip[playerid]][3]);
  142.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  143.         }
  144.         if(GetPVarInt(playerid, "ClassCar") == 2)
  145.         {
  146.             if(autosalon_flip[playerid]>=sizeof(autosalon_middle)) {autosalon_flip[playerid] = 0;}
  147.             format(string, sizeof(string), "%d", autosalon_middle[autosalon_flip[playerid]][2]);
  148.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  149.             format(string, sizeof(string), "%d", autosalon_middle[autosalon_flip[playerid]][1]);
  150.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][9],string);
  151.             format(string, sizeof(string), "%s", VehicleNames[autosalon_middle[autosalon_flip[playerid]][0]-400]);
  152.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][5],string);
  153.             format(string, sizeof(string), "%d", autosalon_middle[autosalon_flip[playerid]][3]);
  154.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  155.         }
  156.         if(GetPVarInt(playerid, "ClassCar") == 3)
  157.         {
  158.             if(autosalon_flip[playerid]>=sizeof(autosalon_elite)) {autosalon_flip[playerid] = 0;}
  159.             format(string, sizeof(string), "%d", autosalon_elite[autosalon_flip[playerid]][2]);
  160.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][3],string);
  161.             format(string, sizeof(string), "%d", autosalon_elite[autosalon_flip[playerid]][1]);
  162.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][9],string);
  163.             format(string, sizeof(string), "%s", VehicleNames[autosalon_elite[autosalon_flip[playerid]][0]-400]);
  164.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][5],string);
  165.             format(string, sizeof(string), "%d", autosalon_elite[autosalon_flip[playerid]][3]);
  166.             PlayerTextDrawSetString(playerid,autosalon_td[playerid][7],string);
  167.         }
  168.         DestroyVehicle(autosalon_vehicleid[playerid]);
  169.         autosalon_vehicleid[playerid] = CreateVehicle(autosalon_moto[autosalon_flip[playerid]][0], 110.7249,562.1465,11.7788, 260.3460, 1, 1, 10000, 0);
  170.         PutPlayerInVehicle(playerid, autosalon_vehicleid[playerid],0);
  171.     }
  172.     if(playertextid == PlayerText:autosalon_td[playerid][13]) return autosalon_buy_cancel(playerid);
  173.     if(playertextid == PlayerText:autosalon_td[playerid][12])
  174.     {
  175.         if(autosalon_flip[playerid] == 0) return SendClientMessage(playerid, -1 , !"Ошибка #228");
  176.         if(vehicle[playerid][vVehicleID] > 0) return SendClientMessage(playerid, -1, !"У Вас уже есть автомобиль");
  177.         new query_string[194];
  178.  
  179.         format(query_string, sizeof(query_string), "INSERT INTO `vehicle` (`owner`, `vehicleid`, `money`,`carx`,`cary`,`carz`, `colorone`,`colortwo`) VALUES ('%s', '%d','1','1','1','1','%d','%d')",
  180.         pInfo[playerid][pNickname], GetVehicleModel(autosalon_vehicleid[playerid]), 1, 1);
  181.  
  182.         mysql_tquery(amazing, query_string);
  183.         vehicle[playerid][vVehicleID] = autosalon_flip[playerid];
  184.         SendClientMessage(playerid, -1, !"Поздравляем! Вы купили автомобиль у Илона Маска");
  185.         autosalon_buy_cancel(playerid);
  186.     }
  187.     return true;
  188. }
  189.  
  190. stock autosalon_buy_show(playerid)
  191. {
  192.     TogglePlayerControllable(playerid, false);
  193.     InterpolateCameraPos(playerid, 116.374488, 573.844238, 14.728764, 116.251853, 560.125976, 12.421688, 4500);
  194.     InterpolateCameraLookAt(playerid, 111.553207, 574.766845, 13.777989, 112.293968, 563.173095, 12.197975, 4500);
  195.     for(new i; i < 14; i++)
  196.     {
  197.         PlayerTextDrawShow(playerid, autosalon_td[playerid][i]);
  198.         SelectTextDraw(playerid, -1);
  199.     }
  200.     return true;
  201. }
  202.  
  203. stock autosalon_buy_cancel(playerid)
  204. {
  205.     TogglePlayerControllable(playerid, true);
  206.     for(new i; i < 14; i++) PlayerTextDrawHide(playerid,autosalon_td[playerid][i]);
  207.     SetPlayerPos(playerid,111.1685,574.6631,13.2736);
  208.     CancelSelectTextDraw(playerid);
  209.     DestroyVehicle(autosalon_vehicleid[playerid]);
  210.     DeletePVar(playerid, "ClassCar");
  211.     return true;
  212. }
  213.  
  214. forward load_autosalon_model_vehicle();
  215. public load_autosalon_model_vehicle()
  216. {
  217.     if(!cache_num_rows())
  218.         return print(!"Авто отсутствует в Базе Данных");
  219.  
  220.     cache_get_value_name_int(0, "car_one", autosalon_moto[0][1]);
  221.     cache_get_value_name_int(0, "car_two", autosalon_moto[1][1]);
  222.  
  223.     cache_get_value_name_int(0, "car_three", autosalon_middle[0][1]);
  224.     cache_get_value_name_int(0, "car_four", autosalon_middle[1][1]);
  225.     cache_get_value_name_int(0, "car_five", autosalon_middle[2][1]);
  226.  
  227.     cache_get_value_name_int(0, "car_six", autosalon_elite[0][1]);
  228.     cache_get_value_name_int(0, "car_seven", autosalon_elite[1][1]);
  229.     cache_get_value_name_int(0, "car_eight", autosalon_elite[2][1]);
  230.     cache_get_value_name_int(0, "car_nine", autosalon_elite[3][1]);
  231.     cache_get_value_name_int(0, "car_ten", autosalon_elite[4][1]);
  232.  
  233.     return true;
  234. }
  235.  
  236. CMD:testdrive(playerid)
  237. {
  238.     if(GetPVarInt(playerid, "ClassCar") == 1 || GetPVarInt(playerid, "ClassCar") == 2 || GetPVarInt(playerid, "ClassCar") == 3)
  239.     {
  240.         TogglePlayerControllable(playerid, true);
  241.         for(new i; i < 14; i++) PlayerTextDrawHide(playerid,autosalon_td[playerid][i]);
  242.         SendClientMessage(playerid, -1, !"Вы начали тестдрайв");
  243.         CancelSelectTextDraw(playerid);
  244.     }
  245.     return true;
  246. }
  247. CMD:unrent(playerid)
  248. {
  249.     DestroyVehicle(autosalon_vehicleid[playerid]);
  250.     SendClientMessage(playerid, -1, !"Вы закончили тестдрайв авто");
  251.     DeletePVar(playerid, "ClassCar");
  252.     return true;
  253. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement