Ranchand1998

Vehicle Informations

Feb 6th, 2013
307
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 8.80 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define MAXIMAL_PLAYERS 100
  4.  
  5. new Text:TextDraw0;
  6. new Text:TextDraw1;
  7. new Text:TextDraw2[MAXIMAL_PLAYERS];
  8. new Text:TextDraw3[MAXIMAL_PLAYERS];
  9. new Text:TextDraw4[MAXIMAL_PLAYERS];
  10. new VehicleNames[][] =
  11. {
  12.     "Landstalker",
  13.     "Bravura",
  14.     "Buffalo",
  15.     "Linerunner",
  16.     "Perenniel",
  17.     "Sentinel",
  18.     "Dumper",
  19.     "Firetruck",
  20.     "Trashmaster",
  21.     "Stretch",
  22.     "Manana",
  23.     "Infernus",
  24.     "Voodoo",
  25.     "Pony",
  26.     "Mule",
  27.     "Cheetah",
  28.     "Ambulance",
  29.     "Leviathan",
  30.     "Moonbeam",
  31.     "Esperanto",
  32.     "Taxi",
  33.     "Washington",
  34.     "Bobcat",
  35.     "Mr Whoopee",
  36.     "BF Injection",
  37.     "Hunter",
  38.     "Premier",
  39.     "Enforcer",
  40.     "Securicar",
  41.     "Banshee",
  42.     "Predator",
  43.     "Bus",
  44.     "Rhino",
  45.     "Barracks",
  46.     "Hotknife",
  47.     "Article Trailer",
  48.     "Previon",
  49.     "Coach",
  50.     "Cabbie",
  51.     "Stallion",
  52.     "Rumpo",
  53.     "RC Bandit",
  54.     "Romero",
  55.     "Packer",
  56.     "Monster",
  57.     "Admiral",
  58.     "Squallo",
  59.     "Seasparrow",
  60.     "Pizzaboy",
  61.     "Tram",
  62.     "Article Trailer 2",
  63.     "Turismo",
  64.     "Speeder",
  65.     "Reefer",
  66.     "Tropic",
  67.     "Flatbed",
  68.     "Yankee",
  69.     "Caddy",
  70.     "Solair",
  71.     "Topfun Van (Berkley's RC)",
  72.     "Skimmer",
  73.     "PCJ-600",
  74.     "Faggio",
  75.     "Freeway",
  76.     "RC Baron",
  77.     "RC Raider",
  78.     "Glendale",
  79.     "Oceanic",
  80.     "Sanchez",
  81.     "Sparrow",
  82.     "Patriot",
  83.     "Quad",
  84.     "Coastguard",
  85.     "Dinghy",
  86.     "Hermes",
  87.     "Sabre",
  88.     "Rustler",
  89.     "ZR-350",
  90.     "Walton",
  91.     "Regina",
  92.     "Comet",
  93.     "BMX",
  94.     "Burrito",
  95.     "Camper",
  96.     "Marquis",
  97.     "Baggage",
  98.     "Dozer",
  99.     "Maverick",
  100.     "SAN News Maverick",
  101.     "Rancher",
  102.     "FBI Racher",
  103.     "Virgo",
  104.     "Greenwood",
  105.     "Jetmax",
  106.     "Hotring Racer",
  107.     "Sandking",
  108.     "Blista Compact",
  109.     "Police Maverick",
  110.     "Boxville",
  111.     "Benson",
  112.     "Mesa",
  113.     "RC Goblin",
  114.     "Hotring Racer",
  115.     "Hotring Racer",
  116.     "Bloodring Banger",
  117.     "Rancher",
  118.     "Super GT",
  119.     "Elegant",
  120.     "Journey",
  121.     "Bike",
  122.     "Mountain Bike",
  123.     "Beagle",
  124.     "Cropduster",
  125.     "Stuntplane",
  126.     "Tanker",
  127.     "Roadtrain",
  128.     "Nebula",
  129.     "Majestic",
  130.     "Buccaneer",
  131.     "Shamal",
  132.     "Hydra",
  133.     "FCR-900",
  134.     "NRG-500",
  135.     "HPV1000",
  136.     "Cement Truck",
  137.     "Towtruck",
  138.     "Fortune",
  139.     "Cadrona",
  140.     "FBI Truck",
  141.     "Willard",
  142.     "Forklift",
  143.     "Tractor",
  144.     "Combine Hervester",
  145.     "Feltzer",
  146.     "Remington",
  147.     "Slamvan",
  148.     "Blade",
  149.     "Freight (Train)",
  150.     "Brownstreak (Train)",
  151.     "Vortex",
  152.     "Vincent",
  153.     "Bullet",
  154.     "Clover",
  155.     "Sadler",
  156.     "Firetruck LA",
  157.     "Hustler",
  158.     "Intruder",
  159.     "Primo",
  160.     "Cargobob",
  161.     "Tampa",
  162.     "Sunrise",
  163.     "Merit",
  164.     "Utility Van",
  165.     "Nevada",
  166.     "Yosemite",
  167.     "Windsor",
  168.     "Monster \"A\"",
  169.     "Monster \"B\"",
  170.     "Uranus",
  171.     "Jester",
  172.     "Sultan",
  173.     "Stratum",
  174.     "Elegy",
  175.     "Raindance",
  176.     "RC Tiger",
  177.     "Flash",
  178.     "Tahoma",
  179.     "Savanna",
  180.     "Bandito",
  181.     "Freight Flat Tailer (Train)",
  182.     "Streak Trailer (Train)",
  183.     "Kart",
  184.     "Mower",
  185.     "Dune",
  186.     "Sweeper",
  187.     "Broadway",
  188.     "Tornado",
  189.     "AT-400",
  190.     "DFT-30",
  191.     "Huntley",
  192.     "Stafford",
  193.     "BF-400",
  194.     "Newsvan",
  195.     "Tug",
  196.     "Petrol Trailer",
  197.     "Emperor",
  198.     "Wayfarer",
  199.     "Euros",
  200.     "Hotdog",
  201.     "Club",
  202.     "Freight Box Trailer (Train)",
  203.     "Article Trailer 3",
  204.     "Andromada",
  205.     "Dodo",
  206.     "RC Cam",
  207.     "Launch",
  208.     "Police Car (LSPD)",
  209.     "Police Car (SFPD)",
  210.     "Police Car (LVPD)",
  211.     "Police Ranger",
  212.     "Picador",
  213.     "S.W.A.T.",
  214.     "Alpha",
  215.     "Phoenix",
  216.     "Glendale Shit",
  217.     "Sadler Shit",
  218.     "Baggage Trailer \"A\"",
  219.     "Baggage Trailer \"B\"",
  220.     "Tug Stairs Trailer",
  221.     "Boxville",
  222.     "Farm Trailer",
  223.     "Utility Trailer"
  224. };
  225. new PlayerUseSpeedometer[MAXIMAL_PLAYERS];
  226. new PlayerVehicleInformationsTimer[MAXIMAL_PLAYERS];
  227.  
  228. public OnFilterScriptInit()
  229. {
  230.     TextDraw0 = TextDrawCreate(450.000000,100.000000,"-");
  231.     TextDrawBackgroundColor(TextDraw0,30);
  232.     TextDrawFont(TextDraw0,1);
  233.     TextDrawLetterSize(TextDraw0,10.000000,50.000000);
  234.     TextDrawColor(TextDraw0,0);
  235.     TextDrawSetOutline(TextDraw0,1);
  236.     TextDrawSetProportional(TextDraw0,1);
  237.     TextDraw1 = TextDrawCreate(520.000000,335.000000,"Vehicle Informations");
  238.     TextDrawAlignment(TextDraw1,2);
  239.     TextDrawBackgroundColor(TextDraw1,255);
  240.     TextDrawFont(TextDraw1,0);
  241.     TextDrawLetterSize(TextDraw1,0.400000,2.000000);
  242.     TextDrawColor(TextDraw1,16711935);
  243.     TextDrawSetOutline(TextDraw1,1);
  244.     TextDrawSetProportional(TextDraw1,1);
  245.     for(new P = 0; P < MAXIMAL_PLAYERS; P++)
  246.     {
  247.         TextDraw2[P] = TextDrawCreate(520.000000,360.000000," ");
  248.         TextDrawAlignment(TextDraw2[P],2);
  249.         TextDrawBackgroundColor(TextDraw2[P],255);
  250.         TextDrawFont(TextDraw2[P],1);
  251.         TextDrawLetterSize(TextDraw2[P],0.200000,1.000000);
  252.         TextDrawColor(TextDraw2[P],-1);
  253.         TextDrawSetOutline(TextDraw2[P],1);
  254.         TextDrawSetProportional(TextDraw2[P],1);
  255.         TextDraw3[P] = TextDrawCreate(520.000000,380.000000," ");
  256.         TextDrawAlignment(TextDraw3[P],2);
  257.         TextDrawBackgroundColor(TextDraw3[P],255);
  258.         TextDrawFont(TextDraw3[P],1);
  259.         TextDrawLetterSize(TextDraw3[P],0.200000,1.000000);
  260.         TextDrawColor(TextDraw3[P],-1);
  261.         TextDrawSetOutline(TextDraw3[P],1);
  262.         TextDrawSetProportional(TextDraw3[P],1);
  263.         TextDraw4[P] = TextDrawCreate(520.000000,400.000000," ");
  264.         TextDrawAlignment(TextDraw4[P],2);
  265.         TextDrawBackgroundColor(TextDraw4[P],255);
  266.         TextDrawFont(TextDraw4[P],1);
  267.         TextDrawLetterSize(TextDraw4[P],0.200000,1.000000);
  268.         TextDrawColor(TextDraw4[P],-1);
  269.         TextDrawSetOutline(TextDraw4[P],1);
  270.         TextDrawSetProportional(TextDraw4[P],1);
  271.     }
  272.     return 1;
  273. }
  274.  
  275. public OnFilterScriptExit()
  276. {
  277.     TextDrawDestroy(TextDraw0);
  278.     TextDrawDestroy(TextDraw1);
  279.     for(new P = 0; P < MAXIMAL_PLAYERS; P++)
  280.     {
  281.         TextDrawDestroy(TextDraw2[P]);
  282.         TextDrawDestroy(TextDraw3[P]);
  283.         TextDrawDestroy(TextDraw4[P]);
  284.     }
  285.     return 1;
  286. }
  287.  
  288. public OnPlayerConnect(playerid)
  289. {
  290.     PlayerUseSpeedometer[playerid] = 1;
  291.     return 1;
  292. }
  293.  
  294. public OnPlayerDisconnect(playerid)
  295. {
  296.     TextDrawHideForPlayer(playerid,TextDraw0);
  297.     TextDrawHideForPlayer(playerid,TextDraw1);
  298.     TextDrawHideForPlayer(playerid,TextDraw2[playerid]);
  299.     TextDrawHideForPlayer(playerid,TextDraw3[playerid]);
  300.     TextDrawHideForPlayer(playerid,TextDraw4[playerid]);
  301.     KillTimer(PlayerVehicleInformationsTimer[playerid]);
  302.     return 1;
  303. }
  304.  
  305. public OnPlayerStateChange(playerid,newstate,oldstate)
  306. {
  307.     if(PlayerUseSpeedometer[playerid] == 1)
  308.     {
  309.         if(newstate == PLAYER_STATE_DRIVER)
  310.         {
  311.             TextDrawShowForPlayer(playerid,TextDraw0);
  312.             TextDrawShowForPlayer(playerid,TextDraw1);
  313.             TextDrawShowForPlayer(playerid,TextDraw2[playerid]);
  314.             TextDrawShowForPlayer(playerid,TextDraw3[playerid]);
  315.             TextDrawShowForPlayer(playerid,TextDraw4[playerid]);
  316.             PlayerVehicleInformationsTimer[playerid] = SetTimerEx("VehicleInformations",1000,1,"d",playerid);
  317.         }
  318.         if(oldstate == PLAYER_STATE_DRIVER)
  319.         {
  320.             TextDrawHideForPlayer(playerid,TextDraw0);
  321.             TextDrawHideForPlayer(playerid,TextDraw1);
  322.             TextDrawHideForPlayer(playerid,TextDraw2[playerid]);
  323.             TextDrawHideForPlayer(playerid,TextDraw3[playerid]);
  324.             TextDrawHideForPlayer(playerid,TextDraw4[playerid]);
  325.             KillTimer(PlayerVehicleInformationsTimer[playerid]);
  326.         }
  327.     }
  328.     return 1;
  329. }
  330.  
  331. public OnPlayerCommandText(playerid,cmdtext[])
  332. {
  333.     if(!strcmp(cmdtext,"/Speedometer",true))
  334.     {
  335.         if(PlayerUseSpeedometer[playerid] == 1)
  336.         {
  337.             PlayerUseSpeedometer[playerid] = 0;
  338.             if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  339.             {
  340.                 TextDrawHideForPlayer(playerid,TextDraw0);
  341.                 TextDrawHideForPlayer(playerid,TextDraw1);
  342.                 TextDrawHideForPlayer(playerid,TextDraw2[playerid]);
  343.                 TextDrawHideForPlayer(playerid,TextDraw3[playerid]);
  344.                 TextDrawHideForPlayer(playerid,TextDraw4[playerid]);
  345.                 KillTimer(PlayerVehicleInformationsTimer[playerid]);
  346.             }
  347.             SendClientMessage(playerid,0x00FF00FF,"Speedometer have been disabled in vehicles.");
  348.             return 1;
  349.         }
  350.         if(PlayerUseSpeedometer[playerid] == 0)
  351.         {
  352.             PlayerUseSpeedometer[playerid] = 1;
  353.             if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
  354.             {
  355.                 TextDrawShowForPlayer(playerid,TextDraw0);
  356.                 TextDrawShowForPlayer(playerid,TextDraw1);
  357.                 TextDrawShowForPlayer(playerid,TextDraw2[playerid]);
  358.                 TextDrawShowForPlayer(playerid,TextDraw3[playerid]);
  359.                 TextDrawShowForPlayer(playerid,TextDraw4[playerid]);
  360.                 PlayerVehicleInformationsTimer[playerid] = SetTimerEx("VehicleInformations",1000,1,"d",playerid);
  361.             }
  362.             SendClientMessage(playerid,0x00FF00FF,"Speedometer have been enabled in vehicles.");
  363.             return 1;
  364.         }
  365.         return 1;
  366.     }
  367.     return 0;
  368. }
  369.  
  370. forward VehicleInformations(PlayerId);
  371. public VehicleInformations(PlayerId)
  372. {
  373.     new String[150];
  374.     format(String,150,"Vehicle: ~R~~H~%s",VehicleNames[GetVehicleModel(GetPlayerVehicleID(PlayerId))-400]);
  375.     TextDrawSetString(TextDraw2[PlayerId],String);
  376.     new Float:X;
  377.     new Float:Y;
  378.     new Float:Z;
  379.     GetVehicleVelocity(GetPlayerVehicleID(PlayerId),X,Y,Z);
  380.     format(String,150,"Speed: ~R~~H~%d KM/H",floatround(floatsqroot(X * X + Y * Y + Z * Z) * 200.0000));
  381.     TextDrawSetString(TextDraw3[PlayerId],String);
  382.     new Float:Health;
  383.     GetVehicleHealth(GetPlayerVehicleID(PlayerId),Health);
  384.     TextDrawSetString(TextDraw3[PlayerId],String);
  385.     format(String,150,"Health: ~R~~H~%d",floatround(Health / 10));
  386.     TextDrawSetString(TextDraw4[PlayerId],String);
  387.     return 1;
  388. }
Advertisement
Add Comment
Please, Sign In to add comment