Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Version: 0.1
- Author: Milanosie
- Last Updated: 31-07-2012
- Copyright: Milanosie
- */
- #include <a_samp>
- /*=========================Defines=========================*/
- #define kmh 1
- #define mph 2
- #define far 0xF5D5E2FF
- #define medium 0xF2B6CEFF
- #define close 0xF57FAEFF
- #define Model_Plane 1
- #define Model_Heli 2
- #define Model_Boat 3
- #define Model_Car 4
- #define Model_Bike 5
- #define Model_Bicycle 6
- #define Model_Unique 7
- /*=========================Forwards=========================*/
- forward GetVehicleSpeed(vehicleid, unit);
- forward GetClosestVehicleFromPoint(Float:x, Float:y, Float:z);
- forward GetClosestVehicleFromPlayer(playerid);
- forward GetClosestPlayerFromPlayer(playerid);
- forward GetClosestPlayerFromPoint(Float:x, Float:y, Float:z);
- forward LocalChat(playerid, Float:range, text[]);
- forward GetVehicleType(vehicleid);
- /*=========================Callbacks=========================*/
- public GetVehicleSpeed(vehicleid, unit)
- {
- new
- Float:x_speed, Float:y_speed, Float:z_speed, Float:speedf, speed;
- GetVehicleVelocity(vehicleid,x_speed,y_speed,z_speed);
- if(unit == kmh)
- {
- speedf = floatsqroot(((x_speed*x_speed)+(y_speed*y_speed))+(z_speed*z_speed)) * 187.666667;
- }
- else if(unit == mph)
- {
- speedf = floatsqroot(((x_speed*x_speed)+(y_speed*y_speed))+(z_speed*z_speed)) * 116.541;
- }
- speed = floatround(speedf,floatround_round);
- return speed;
- }
- public GetClosestVehicleFromPoint(Float:x, Float:y, Float:z)
- {
- new Float:dis = 99999999.0;
- new veh = -1;
- for(new i = 1; i < MAX_VEHICLES; i++)
- {
- new Float:distance = GetVehicleDistanceFromPoint(i, x, y, z);
- if(distance < dis)
- {
- dis = distance;
- veh = i;
- }
- }
- return veh;
- }
- public GetClosestVehicleFromPlayer(playerid)
- {
- new Float:dis = 99999999.0;
- new veh = -1;
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- for(new i = 1; i < MAX_VEHICLES; i++)
- {
- new Float:distance = GetVehicleDistanceFromPoint(i, x, y, z);
- if(distance < dis)
- {
- dis = distance;
- veh = i;
- }
- }
- return veh;
- }
- public GetClosestPlayerFromPoint(Float:x, Float:y, Float:z)
- {
- new Float:dis = 99999999.0;
- new veh = -1;
- for(new i = 1; i < MAX_PLAYERS; i++)
- {
- new Float:distance = GetPlayerDistanceFromPoint(i, x, y, z);
- if(distance < dis)
- {
- dis = distance;
- veh = i;
- }
- }
- return veh;
- }
- public GetClosestPlayerFromPlayer(playerid)
- {
- new Float:dis = 99999999.0;
- new veh = -1;
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- for(new i = 1; i <= MAX_PLAYERS; i++)
- {
- new Float:distance = GetPlayerDistanceFromPoint(playerid, x, y, z);
- if(distance < dis)
- {
- dis = distance;
- veh = i;
- }
- }
- return veh;
- }
- public LocalChat(playerid, Float:range, text[])
- {
- new vw = GetPlayerVirtualWorld(playerid);
- new int = GetPlayerInterior(playerid);
- new Float:x, Float:y, Float:z;
- GetPlayerPos(playerid, x, y, z);
- for(new i = 0; i <= MAX_PLAYERS; i++)
- {
- if(GetPlayerVirtualWorld(i) == vw)
- {
- if(GetPlayerInterior(i) == int)
- {
- if(IsPlayerInRangeOfPoint(i, range / 3, x, y, z))
- {
- SendClientMessage(i, close, text);
- }
- else if(IsPlayerInRangeOfPoint(i, range / 2, x, y, z))
- {
- SendClientMessage(i, medium, text);
- }
- else if(IsPlayerInRangeOfPoint(i, range, x, y, z))
- {
- SendClientMessage(i, far, text);
- }
- }
- }
- }
- return 1;
- }
- public GetVehicleType(vehicleid)
- {
- new m = GetVehicleModel(vehicleid);
- if(m == 592|| m == 577|| m == 511|| m == 512|| m == 593|| m == 520|| m == 553|| m == 476|| m == 519|| m == 460|| m == 513) return Model_Plane;
- else if(m == 548|| m == 425|| m == 417|| m == 487|| m == 488|| m == 497|| m == 563|| m == 447|| m == 469) return Model_Heli;
- else if(m == 472|| m == 473|| m == 493|| m == 595|| m == 484|| m == 430|| m == 453|| m == 452|| m == 446|| m == 454) return Model_Boat;
- else if(m == 509|| m == 481|| m == 510) return Model_Bicycle;
- else if(m == 462|| m == 448|| m == 581|| m == 522|| m == 461|| m == 521|| m == 523|| m == 463|| m == 586|| m == 468|| m == 471) return Model_Bike;
- else if(m == 406|| m == 435|| m == 411|| m == 449|| m == 450|| m == 464|| m == 465|| m == 501|| m == 537|| m == 538|| m == 539|| m == 564|| m == 569|| m == 570|| m == 584|| m == 590|| m == 591|| m == 594|| m == 606|| m == 607|| m == 608|| m == 610|| m == 611) return Model_Unique;
- else return Model_Car;
- }
Advertisement
Add Comment
Please, Sign In to add comment