Mein Blitzer funktioniert nicht, egal welche max. Geschwindigkeit ich eingebe und diese überschreitet, man wird nicht geblitzt. Eigentlich gibt es dafür folgende Funktionen. Irgendwelche Ideen?
stock Blitzer_Timer()
{
new save, strafe, speeds;
for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
{
save = GetPVarInt(playerid, "BlitzPause");
if(save > 0)
{
save--;
SetPVarInt(playerid, "BlitzPause", save);
continue;
}
if(!IsPlayerInAnyVehicle(playerid) || IsPlayerNPC(playerid)) continue;
for(new i = 0; i < sizeof(Blitzer); i++)
{
if(Blitzer[i][Erstellt] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, Blitzer[i][Radius], Blitzer[i][BlitzerX], Blitzer[i][BlitzerY], Blitzer[i][BlitzerZ]))
{
new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int;
new veh = GetPlayerVehicleID(playerid);
GetVehicleVelocity(veh, speed_x, speed_y, speed_z);
final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*93.0; // 136.666667 = kmph // 85.4166672= mph
final_speed_int = floatround(final_speed,floatround_round);
speeds = final_speed_int;
if(speeds > Blitzer[i][Geschwindigkeit] && !IsACop(playerid) && GetPlayerState(playerid) == 2)
{
new string[128];
SetPVarInt(playerid, "BlitzPause", (BLITZER_TIMER_INTERVALL * BLITZER_PAUSE * 60) / 1000);
strafe = Blitzer[i][Strafe] * (speeds-Blitzer[i][Geschwindigkeit]);
Staatskassengeld += geld;
GivePlayerMoney(playerid, -strafe);
format(string,sizeof(string),"[BLITZER] * Du wurdest mit %d km/h geblitzt. Du musst $%d Bußgeld bezahlen. *",speeds,Blitzer[i][Geschwindigkeit],strafe);
SendClientMessage(playerid,rot, string);
}
}
}
}
}
return 1;
stock ErmittleGeschwindigkeit(playerid,bool:kmhb)
{
new Float:x,Float:y,Float:z,Float:rtn;
if(IsPlayerInAnyVehicle(playerid)) GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z); else GetPlayerVelocity(playerid,x,y,z);
rtn = floatsqroot(x*x+y*y+z*z);
return kmhb?floatround(rtn * 55 * 1.61):floatround(rtn * 100);
}