Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include a_samp
- #include sscanf2
- #include pawn.cmd
- #define function%0(%1) \
- forward%0(%1); public%0(%1)
- new gVehicleSpeedometer[MAX_PLAYERS]; // Variável do timer que vai atualizar a velocidade pra usar no KillTimer depois
- main(){}
- // ~~~~~~~~~~~~~~~~~~~~~~ //
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_DRIVER) // Entrou no veículo
- gVehicleSpeedometer[playerid] = SetTimerEx("UpdateStateSpeedometer", 100, true, "i", playerid); // Atualizar a public "UpdateStateSpeedometer" em um timer de "100" milissegundos
- if(oldstate == PLAYER_STATE_DRIVER) // Saiu do veículo
- KillTimer(gVehicleSpeedometer[playerid]); // Tirando o timer para não ficar rodando atoa quando o player sair do veículo
- return 1;
- }
- function UpdateStateSpeedometer(playerid)
- {
- new string[24];
- format(string, sizeof(string), "~w~%d ~b~KM/H", GetVehicleSpeed(GetPlayerVehicleID(playerid))); // Formatando a velocidade "%d" do veículo que o player está com "GetVehicleSpeed"
- GameTextForPlayer(playerid, string, 1000, 3); // Mostrando na tela do player a velocidade com a função "GameTextForPlayer"
- return 1;
- }
- GetVehicleSpeed(vehicleid) // Aqui pega a velocidade do veículo
- {
- new Float:Velocity[3];
- GetVehicleVelocity(vehicleid, Velocity[0], Velocity[1], Velocity[2]);
- return floatround(floatsqroot(Velocity[0] * Velocity[0] + Velocity[1] * Velocity[1] + Velocity[2] * Velocity[2]) * 180.0);
- }
- // Comando de criar veículos para testar o sistema:
- CMD:v(playerid, params[])
- {
- new modelid;
- if(sscanf(params, "d", modelid))
- return SendClientMessage(playerid, -1, "[!] Use: /v [modelo]");
- if(!(400 <= modelid <= 611))
- return SendClientMessage(playerid, -1, "[!] Modelo inexistente.");
- new vehicleid, Float:Pos[4];
- GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
- GetPlayerFacingAngle(playerid, Pos[3]);
- vehicleid = CreateVehicle(modelid, Pos[0], Pos[1], Pos[2], Pos[3], -1, -1, -1);
- PutPlayerInVehicle(playerid, vehicleid, 0);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment