Szerző Téma: Sebességkorlát by Rupert  (Megtekintve 2776 alkalommal)

Nem elérhető Rupert

  • 2301
    • Profil megtekintése
Sebességkorlát by Rupert
« Dátum: 2012. augusztus 19. - 20:07:56 »
0 Show voters
Sziasztok!
Megírtam egy sebességkorlátos scriptet.
A \"SetVehicleSpeed\" és a \"GetVehicleSpeed\" függvényeket nem én írtam, hanem a hivatalos fórumrol tettem be a scriptbe.
Írjátok be hogy \"/sebességkorlát\", és mellé a kívánt sebességhatárt. Ha nullát írtok, akkor nem lesz sebességkorlát.
Ha autóban vagy és a sebességed nagyobb mint a beállított korlát akkor automatikusan beállítja a jármû sebességét a meghatározott értékre.
Kód:
 

#include <a_samp>
#include <sscanf2>
#include <zcmd>
new seb[MAX_PLAYERS];
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Rupert sebessegkorlatozoja betoltve!\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
print(\"Rupert sebessegkorlatozoja bezarva.\");
return 1;
}
public OnPlayerConnect(playerid)
{
seb[playerid] = 0;
}
public OnPlayerUpdate(playerid)
{
if(IsPlayerInAnyVehicle(playerid))
{
if(seb[playerid] > 0)
{
    new vehid;
   vehid = GetPlayerVehicleID(playerid);
    if(GetVehicleSpeed(vehid) > seb[playerid])
    {
        SetVehicleSpeed(vehid,seb[playerid]);
    }
}
}
return 1;
}
stock SetVehicleSpeed(vehicleid,mph)
{
new Float:Vx,Float:Vy,Float:Vz,Float:DV,Float:multiple;
GetVehicleVelocity(vehicleid,Vx,Vy,Vz);
DV = floatsqroot(Vx*Vx + Vy*Vy + Vz*Vz);
if(DV > 0)
{
multiple = (mph / (DV * 100));
return SetVehicleVelocity(vehicleid,Vx*multiple,Vy*multiple,Vz*multiple);
}
return 0;
}
stock GetVehicleSpeed(const vehicleid, bool:mph = false)
{
    new Float:x, Float:y, Float:z;
    GetVehicleVelocity(vehicleid, x, y, z);
    if(mph) return floatround(((floatpower(x, 2)) + (floatpower(y, 2)) + (floatpower(z, 2))) * 100);
    else return floatround((((floatpower(x, 2)) + (floatpower(y, 2)) + (floatpower(z, 2))) * 100) * 1.6);
}
CMD:sebessegkorlat(playerid,params[])
{
new szam;
if(sscanf(params,\"i\",szam)) return SendClientMessage(playerid,-1,\"Használat: /sebessegkorlat [sebesség]\");
seb[playerid] = szam;
new str[128];
format(str,128,\"A sebességkorlátod beállítva erre: %i\",szam);
SendClientMessage(playerid,-1,str);
return 1;
}

 
Letöltési link: >>Katt ide<<
Tesztelve, mûködik!
« Utoljára szerkesztve: 2012. augusztus 19. - 20:10:18 írta Rupert »

Nem elérhető Rexii

  • 471
    • Profil megtekintése
Sebességkorlát by Rupert
« Válasz #1 Dátum: 2012. augusztus 22. - 12:56:49 »
0 Show voters
RP szeróra jó lehet, grat  :thumbsup:

Kovacs_Bela

  • Vendég
Sebességkorlát by Rupert
« Válasz #2 Dátum: 2012. augusztus 22. - 15:50:29 »
0 Show voters
Idézetet írta: Rexii date=1345633009\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"26471\" data-ipsquote-contentclass=\"forums_Topic
RP szeróra jó lehet, grat  :thumbsup:
 
but no in all cars.
pl csak a drágább autókba lenne :D
szép lett amúgy

Nem elérhető Wiliam Levy

  • 594
  • Wiliam Levy
    • Profil megtekintése
Sebességkorlát by Rupert
« Válasz #3 Dátum: 2012. augusztus 22. - 22:24:39 »
+1 Show voters
ÚÚhh B+ ilyet kerestem mert a busz szkriptembe nem tudtam elég lassan menni a buszokkal óóó vehetem fel az egészet újra majd Nagyon szépen köszönöm Rupert!

Nem elérhető Flash

  • 5726
  • (っ◕‿◕)っ
    • Profil megtekintése
Sebességkorlát by Rupert
« Válasz #4 Dátum: 2012. augusztus 22. - 23:54:43 »
0 Show voters
Jó script lett, de szerintem nem csak RP-knél alkalmazható! :)

Nem elérhető Mike.

  • 720
    • Profil megtekintése
Sebességkorlát by Rupert
« Válasz #5 Dátum: 2012. augusztus 23. - 00:04:43 »
0 Show voters
Szép script lett.

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal