dylan4021

Velocimetro Simples

Aug 23rd, 2011
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.74 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define MAXPLAYERS (5)
  4.  
  5. new stryng[128];
  6. new Text: Velocimetro[MAXPLAYERS][7];
  7. new VelocimetroTimer[MAXPLAYERS];
  8. new VeiculosNome[][] =
  9. {
  10.     "Landstalker","Bravura","Buffalo","Linerunner","Pereniel","Sentinel","Dumper","Firetruck","Trashmaster",
  11.     "Limosine","Manana","Infernus","Voodoo","Pony","Mule","Cheetah","Ambulancia","Leviathan","Moonbeam","Esperanto",
  12.     "Taxi","Washington","Bobcat","Mr Whoopee","BF Injection","Hunter","Premier","Enforcer","Securicar","Banshee",
  13.     "Predator","Bus","Rhino","Barracks","Hotknife","Trailer","Previon","Coach","Cabbie","Stallion","Rumpo",
  14.     "RC Bandit","Romero","Packer","Monster","Admiral","Squalo","Seasparrow","Pizzaboy","Tram","Trailer",
  15.     "Turismo","Speeder","Reefer","Tropic","Flatbed","Yankee","Caddy","Solair","Berkley's RC Van","Skimmer",
  16.     "PCJ-600","Faggio","Freeway","RC Baron","RC Raider","Glendale","Oceanic","Sanchez","Sparrow","Patriot",
  17.     "Quad","Coastguard","Dinghy","Hermes","Sabre","Rustler","ZR-350","Walton","Regina","Comet","BMX",
  18.     "Burrito","Camper","Marquis","Baggage","Dozer","Maverick","News Chopper","Rancher","FBI Rancher","Virgo",
  19.     "Greenwood","Jetmax","Hotring","Sandking","Blista Compact","Maverick Policial","Boxville","Benson","Mesa",
  20.     "RC Goblin","Hotring Racer A","Hotring Racer B","Bloodring Banger","Rancher","Super GT","Elegant",
  21.     "Journey","Bike","Mountain Bike","Beagle","Cropdust","Stunt","Tanker","RoadTrain","Nebula","Majestic",
  22.     "Buccaneer","Shamal","Hydra","FCR-900","NRG-500","HPV1000","Cement Truck","Tow Truck","Fortune","Cadrona",
  23.     "FBI Truck","Willard","Forklift","Tractor","Combine","Feltzer","Remington","Slamvan","Blade","Freight",
  24.     "Streak","Vortex","Vincent","Bullet","Clover","Sadler","Firetruck","Hustler","Intruder","Primo","Cargobob",
  25.     "Tampa","Sunrise","Merit","Utility","Nevada","Yosemite","Windsor","Monster A","Monster B","Uranus",
  26.     "Jester","Sultan","Stratum","Elegy","Raindance","RC Tiger","Flash","Tahoma","Savanna","Bandito","Freight",
  27.     "Trailer","Kart","Mower","Duneride","Sweeper","Broadway","Tornado","AT-400","DFT-30","Huntley","Stafford",
  28.     "BF-400","Newsvan","Tug","Trailer A","Emperor","Wayfarer","Euros","Hotdog","Club","Trailer B","Trailer C",
  29.     "Andromada","Dodo","RC Cam","Launch","Viatura (LSPD)","Viatura (SFPD)","Viatura (LVPD)","Police Ranger",
  30.     "Picador","S.W.A.T. Van","Alpha","Phoenix","Glendale","Sadler","Luggage Trailer A","Luggage Trailer B",
  31.     "Stair Trailer","Boxville","Farm Plow","Utility Trailer"
  32. };
  33.  
  34. forward CriarTextDraws(playerid);
  35. forward AtualizarVelocimetro(playerid);
  36.  
  37. public OnPlayerConnect(playerid)
  38. {
  39.     CriarTextDraws(playerid);
  40.     return 1;
  41. }
  42.  
  43. public OnPlayerExitVehicle(playerid, vehicleid)
  44. {
  45.     KillTimer(VelocimetroTimer[playerid]);
  46.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][0]);
  47.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][1]);
  48.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][2]);
  49.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][3]);
  50.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][4]);
  51.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][5]);
  52.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][6]);
  53.     return true;
  54. }
  55.  
  56. public OnPlayerStateChange(playerid, newstate, oldstate)
  57. {
  58.     new veiculo = GetPlayerVehicleID(playerid);
  59.     if(newstate == PLAYER_STATE_DRIVER) {
  60.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][0]);
  61.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][1]);
  62.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][2]);
  63.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][3]);
  64.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][4]);
  65.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][5]);
  66.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][6]);
  67.  
  68.         VelocimetroTimer[playerid] = SetTimerEx("AtualizarVelocimetro", 100, true, "i", playerid);
  69.         TextDrawHideForPlayer(playerid, Velocimetro[playerid][2]);
  70.         format(stryng, sizeof(stryng), "Veiculo: ~r~%s", VeiculosNome[GetVehicleModel(veiculo)-400]);
  71.         TextDrawSetString(Velocimetro[playerid][2], stryng);
  72.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][2]);
  73.         return true;
  74.     }
  75.     return 1;
  76. }
  77.  
  78. public CriarTextDraws(playerid)
  79. {
  80.     Velocimetro[playerid][0] = TextDrawCreate(487.000000, 364.000000, "KM/H: 0");
  81.     TextDrawBackgroundColor(Velocimetro[playerid][0], 255);
  82.     TextDrawFont(Velocimetro[playerid][0], 3);
  83.     TextDrawLetterSize(Velocimetro[playerid][0], 0.500000, 1.000000);
  84.     TextDrawColor(Velocimetro[playerid][0], 819849215);
  85.     TextDrawSetOutline(Velocimetro[playerid][0], 0);
  86.     TextDrawSetProportional(Velocimetro[playerid][0], 1);
  87.     TextDrawSetShadow(Velocimetro[playerid][0], 1);
  88.  
  89.     Velocimetro[playerid][1] = TextDrawCreate(643.000000, 362.000000, "_");
  90.     TextDrawBackgroundColor(Velocimetro[playerid][1], 255);
  91.     TextDrawFont(Velocimetro[playerid][1], 1);
  92.     TextDrawLetterSize(Velocimetro[playerid][1], 0.500000, 5.999996);
  93.     TextDrawColor(Velocimetro[playerid][1], -1);
  94.     TextDrawSetOutline(Velocimetro[playerid][1], 0);
  95.     TextDrawSetProportional(Velocimetro[playerid][1], 1);
  96.     TextDrawSetShadow(Velocimetro[playerid][1], 1);
  97.     TextDrawUseBox(Velocimetro[playerid][1], 1);
  98.     TextDrawBoxColor(Velocimetro[playerid][1], 1229539776);
  99.     TextDrawTextSize(Velocimetro[playerid][1], 483.000000, 0.000000);
  100.  
  101.     Velocimetro[playerid][2] = TextDrawCreate(487.000000, 377.000000, "Veiculo: Nenhum");
  102.     TextDrawBackgroundColor(Velocimetro[playerid][2], 255);
  103.     TextDrawFont(Velocimetro[playerid][2], 3);
  104.     TextDrawLetterSize(Velocimetro[playerid][2], 0.500000, 1.000000);
  105.     TextDrawColor(Velocimetro[playerid][2], 819849215);
  106.     TextDrawSetOutline(Velocimetro[playerid][2], 0);
  107.     TextDrawSetProportional(Velocimetro[playerid][2], 1);
  108.     TextDrawSetShadow(Velocimetro[playerid][2], 1);
  109.  
  110.     Velocimetro[playerid][3] = TextDrawCreate(487.000000, 391.000000, "Lataria: 0");
  111.     TextDrawBackgroundColor(Velocimetro[playerid][3], 255);
  112.     TextDrawFont(Velocimetro[playerid][3], 3);
  113.     TextDrawLetterSize(Velocimetro[playerid][3], 0.500000, 1.000000);
  114.     TextDrawColor(Velocimetro[playerid][3], 819849215);
  115.     TextDrawSetOutline(Velocimetro[playerid][3], 0);
  116.     TextDrawSetProportional(Velocimetro[playerid][3], 1);
  117.     TextDrawSetShadow(Velocimetro[playerid][3], 1);
  118.  
  119.     Velocimetro[playerid][4] = TextDrawCreate(487.000000, 404.000000, "Estado: Nenhum");
  120.     TextDrawBackgroundColor(Velocimetro[playerid][4], 255);
  121.     TextDrawFont(Velocimetro[playerid][4], 3);
  122.     TextDrawLetterSize(Velocimetro[playerid][4], 0.500000, 1.000000);
  123.     TextDrawColor(Velocimetro[playerid][4], 819849215);
  124.     TextDrawSetOutline(Velocimetro[playerid][4], 0);
  125.     TextDrawSetProportional(Velocimetro[playerid][4], 1);
  126.     TextDrawSetShadow(Velocimetro[playerid][4], 1);
  127.  
  128.     Velocimetro[playerid][5] = TextDrawCreate(540.000000, 344.000000, "DylaN");
  129.     TextDrawBackgroundColor(Velocimetro[playerid][5], 255);
  130.     TextDrawFont(Velocimetro[playerid][5], 1);
  131.     TextDrawLetterSize(Velocimetro[playerid][5], 0.500000, 1.300000);
  132.     TextDrawColor(Velocimetro[playerid][5], 16711935);
  133.     TextDrawSetOutline(Velocimetro[playerid][5], 0);
  134.     TextDrawSetProportional(Velocimetro[playerid][5], 1);
  135.     TextDrawSetShadow(Velocimetro[playerid][5], 1);
  136.  
  137.     Velocimetro[playerid][6] = TextDrawCreate(620.000000, 344.000000, "_");
  138.     TextDrawBackgroundColor(Velocimetro[playerid][6], 255);
  139.     TextDrawFont(Velocimetro[playerid][6], 1);
  140.     TextDrawLetterSize(Velocimetro[playerid][6], 0.500000, 1.300000);
  141.     TextDrawColor(Velocimetro[playerid][6], -1);
  142.     TextDrawSetOutline(Velocimetro[playerid][6], 0);
  143.     TextDrawSetProportional(Velocimetro[playerid][6], 1);
  144.     TextDrawSetShadow(Velocimetro[playerid][6], 1);
  145.     TextDrawUseBox(Velocimetro[playerid][6], 1);
  146.     TextDrawBoxColor(Velocimetro[playerid][6], 1229539776);
  147.     TextDrawTextSize(Velocimetro[playerid][6], 506.000000, 0.000000);
  148.     return true;
  149. }
  150.  
  151. public AtualizarVelocimetro(playerid)
  152. {
  153.     new Float: Lataria,
  154.         vehicleid = GetPlayerVehicleID(playerid);
  155.     GetVehicleHealth(vehicleid, Lataria);
  156.  
  157.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][0]);
  158.     format(stryng, sizeof(stryng), "KM/H: ~r~%d", GetPlayerSpeed(playerid));
  159.     TextDrawSetString(Velocimetro[playerid][0], stryng);
  160.     TextDrawShowForPlayer(playerid, Velocimetro[playerid][0]);
  161.  
  162.     TextDrawHideForPlayer(playerid, Velocimetro[playerid][3]);
  163.     format(stryng, sizeof(stryng), "Lataria: ~g~%0.f", Lataria);
  164.     TextDrawSetString(Velocimetro[playerid][3], stryng);
  165.     TextDrawShowForPlayer(playerid, Velocimetro[playerid][3]);
  166.  
  167.  
  168.     if(Lataria < 250) {
  169.         TextDrawHideForPlayer(playerid, Velocimetro[playerid][4]);
  170.         TextDrawSetString(Velocimetro[playerid][4], "Estado: ~r~Quebrou");
  171.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][4]);
  172.     }
  173.     else if(Lataria > 250 && Lataria < 500) {
  174.         TextDrawHideForPlayer(playerid, Velocimetro[playerid][4]);
  175.         TextDrawSetString(Velocimetro[playerid][4], "Estado: ~p~Quebrando");
  176.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][4]);
  177.     }
  178.     else if(Lataria > 500 && Lataria < 800) {
  179.         TextDrawHideForPlayer(playerid, Velocimetro[playerid][4]);
  180.         TextDrawSetString(Velocimetro[playerid][4], "Estado: ~b~Bom");
  181.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][4]);
  182.     }
  183.     else if(Lataria > 800) {
  184.         TextDrawHideForPlayer(playerid, Velocimetro[playerid][4]);
  185.         TextDrawSetString(Velocimetro[playerid][4], "Estado: ~g~Otimo");
  186.         TextDrawShowForPlayer(playerid, Velocimetro[playerid][4]);
  187.     }
  188.     return true;
  189. }
  190.  
  191. stock GetPlayerSpeed(playerid)//By Alguem que não sei '-'
  192. {
  193.     new Float:ST[4];                          
  194.     if(IsPlayerInAnyVehicle(playerid))
  195.     GetVehicleVelocity(GetPlayerVehicleID(playerid),ST[0],ST[1],ST[2]);
  196.     else GetPlayerVelocity(playerid,ST[0],ST[1],ST[2]);
  197.     ST[3] = floatsqroot(floatpower(floatabs(ST[0]), 2.0) + floatpower(floatabs(ST[1]), 2.0) + floatpower(floatabs(ST[2]), 2.0)) * 100.3;
  198.     return floatround(ST[3]);
  199. }
Advertisement
Add Comment
Please, Sign In to add comment