-
Příspěvků
3 -
Registrován
-
Aktivní
Content Type
Profiles
Forums
Calendar
Gallery
SA-MP
Příspěvky posted by ShAgGyKing
-
-
Spoiler
new tempomat[MAX_PLAYERS]; //Keď sa pripojí, odpojí alebo odíde z vozidla, tak sa nastaví na -1
Float:GetVehicleSpeed(vehicleid)
{
new
Float:x,
Float:y,
Float:z;if(GetVehicleVelocity(vehicleid, x, y, z))
{
return floatsqroot((x * x) + (y * y) + (z * z)) * 180;
}return 0.0;
}CMD:tempomat (playerid, params[])
{
new tkm;
if(sscanf(params, "i", tkm) && tempomat[playerid] == -1)
{
return SCM(playerid, red, "Použitie: /tempomat [Rýchlosť]");
}
if(sscanf(params, "i", tkm) && tempomat[playerid] != -1)
{
tempomat[playerid] = -1;
return SCM(playerid, green, "Tempomat vypnutý!");
}
if(IsPlayerInAnyVehicle(playerid) == 0)
return SCM(playerid, red, "Nie ste vo vozidle!");
tempomat[playerid] = -1;
new vid;
vid = GetPlayerVehicleID(playerid);
if(tkm < GetVehicleSpeed(vid))
{
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, Float:x, Float:y, Float:z);
if(Float:x == 0 || Float:y == 0 || Float:z == 0)
{
if(Float:x == 0)
{
SetVehicleVelocity(vid, Float:x, Float:y - 0.00005, Float:z + 0.00005);
}
if(Float:y == 0)
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y, Float:z + 0.00005);
}
if(Float:z == 0)
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y - 0.00005, Float:z + 0.00005);
}
}
else
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y - 0.00005, Float:z + 0.00005);
}
}
if(tkm > GetVehicleSpeed(vid))
{
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, Float:x, Float:y, Float:z);
if(Float:x == 0 || Float:y == 0 || Float:z == 0)
{
if(Float:x == 0)
{
SetVehicleVelocity(vid, Float:x, Float:y + 0.00005, Float:z + 0.00005);
}
if(Float:y == 0)
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y, Float:z + 0.00005);
}
if(Float:z == 0)
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y + 0.00005, Float:z + 0.00005);
}
}
else
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y + 0.00005, Float:z + 0.00005);
}
}
tempomat[playerid] = tkm;
return 1;
}public OnPlayerUpdate(playerid)
{
if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{new vid;
vid = GetPlayerVehicleID(playerid);
if(tempomat[playerid] < GetVehicleSpeed(vid) && tempomat[playerid] != -1)
{
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, Float:x, Float:y, Float:z);
if(Float:x == 0 || Float:y == 0 || Float:z == 0)
{
if(Float:x == 0)
{
SetVehicleVelocity(vid, Float:x, Float:y - 0.00005, Float:z + 0.00005);
}
if(Float:y == 0)
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y, Float:z + 0.00005);
}
if(Float:z == 0)
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y - 0.00005, Float:z + 0.00005);
}
}
else
{
SetVehicleVelocity(vid, Float:x - 0.00005, Float:y - 0.00005, Float:z + 0.00005);
}
}if(tempomat[playerid] > GetVehicleSpeed(vid) && tempomat[playerid] != -1)
{
new Float:psx, Float:psy, Float:psz;
GetVehiclePos(vid, Float:psx, Float:psy, Float:psz);
new Float:x, Float:y, Float:z;
GetVehicleVelocity(vid, Float:x, Float:y, Float:z);
if(Float:x == 0 || Float:y == 0 || Float:z == 0)
{
if(Float:x == 0)
{
SetVehicleVelocity(vid, Float:x, Float:y + 0.00005, Float:z + 0.00005);
}
if(Float:y == 0)
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y, Float:z + 0.00005);
}
if(Float:z == 0)
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y + 0.00005, Float:z + 0.00005);
}
}
else
{
SetVehicleVelocity(vid, Float:x + 0.00005, Float:y + 0.00005, Float:z + 0.00005);
}
}}
return 1;
}
Pri compile to nehádže žiadne errory ani warningy, ale keď zadám príkaz, tak auto začne spomaľovať, a po chvíli sa úplne zastaví.
- 1
-
Zdravím, nemáte niekto script na tempomat? Skúšal som vlastný cez SetVehicleVelocity, ale nefunguje.
Tempomat
v Herní (SA:MP, CS apod.)
Odesláno:
Už som to vyriešil :D