Ik had een vraagje, Ik heb laatst nog een Snelheidsmeter toegevoegd aan mijn samp server, maar hij laat de km/uur in het midden van het scherm zien en ik wil hem rechts onder hebben.
Hoe kun je dat oplossen ?
Check plaatje
hier is trouwens nog het script ervan
#include <a_samp>
public OnFilterScriptInit() {
print("\n----------------------------------");
print("Speedometer loaded");
print("----------------------------------\n");
}
public OnFilterScriptExit() {
print("\n----------------------------------");
print("Speedometer un-loaded");
print("----------------------------------\n");
}
enum SavePlayerPosEnum {
Float:LastX,
Float:LastY,
Float:LastZ
}
#define SLOTS 100
new SavePlayerPos[SLOTS][SavePlayerPosEnum];
new SpeedMode = 0;
new UpdateSeconds = 1;
public UpdateSpeed(){
new Float:x,Float:y,Float:z;
new Float:distance,value,string[256];
for(new i=0; i<SLOTS; i++){
if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i)){
GetPlayerPos(i, x, y, z);
distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2));
// Distance: meters in the last second
value = floatround(distance * 3600);
if(UpdateSeconds > 1){
value = floatround(value / UpdateSeconds);
}
// meters an hour
if(SpeedMode){
format(string,sizeof(string),"~b~%d MPH",floatround(value/1600));
GameTextForPlayer(i, string, 1100, 5);
}
else{
format(string,sizeof(string),"~b~%d KM",floatround(value/1000));
GameTextForPlayer(i, string, 1000, 4);
}
SavePlayerPos[i][LastX] = x;
SavePlayerPos[i][LastY] = y;
SavePlayerPos[i][LastZ] = z;
} // End is-player-connected
} // End for-loop
} // eind UpdateSpeed function
new SpeedTimer;
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
SpeedTimer = SetTimer("UpdateSpeed", UpdateSeconds*1000, 1);
return 1;
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
KillTimer(SpeedTimer);
return 1;
}
Heej,
Ik had een vraagje, Ik heb laatst nog een Snelheidsmeter toegevoegd aan mijn samp server, maar hij laat de km/uur in het midden van het scherm zien en ik wil hem rechts onder hebben.
Hoe kun je dat oplossen ?
Check plaatje
hier is trouwens nog het script ervan
#include <a_samp> public OnFilterScriptInit() { print("\n----------------------------------"); print("Speedometer loaded"); print("----------------------------------\n"); } public OnFilterScriptExit() { print("\n----------------------------------"); print("Speedometer un-loaded"); print("----------------------------------\n"); } enum SavePlayerPosEnum { Float:LastX, Float:LastY, Float:LastZ } #define SLOTS 100 new SavePlayerPos[SLOTS][SavePlayerPosEnum]; new SpeedMode = 0; new UpdateSeconds = 1; public UpdateSpeed(){ new Float:x,Float:y,Float:z; new Float:distance,value,string[256]; for(new i=0; i<SLOTS; i++){ if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i)){ GetPlayerPos(i, x, y, z); distance = floatsqroot(floatpower(floatabs(floatsub(x,SavePlayerPos[i][LastX])),2)+floatpower(floatabs(floatsub(y,SavePlayerPos[i][LastY])),2)+floatpower(floatabs(floatsub(z,SavePlayerPos[i][LastZ])),2)); // Distance: meters in the last second value = floatround(distance * 3600); if(UpdateSeconds > 1){ value = floatround(value / UpdateSeconds); } // meters an hour if(SpeedMode){ format(string,sizeof(string),"~b~%d MPH",floatround(value/1600)); GameTextForPlayer(i, string, 1100, 5); } else{ format(string,sizeof(string),"~b~%d KM",floatround(value/1000)); GameTextForPlayer(i, string, 1000, 4); } SavePlayerPos[i][LastX] = x; SavePlayerPos[i][LastY] = y; SavePlayerPos[i][LastZ] = z; } // End is-player-connected } // End for-loop } // eind UpdateSpeed function new SpeedTimer; public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) { SpeedTimer = SetTimer("UpdateSpeed", UpdateSeconds*1000, 1); return 1; } public OnPlayerExitVehicle(playerid, vehicleid) { KillTimer(SpeedTimer); return 1; }Ltrs DarkplayeR
Bewerkt: door Darkplayer