Moin,
Ich hatte vor ein Blitzer System zu schreiben wo der Blitzer den Spieler auch "angucken" muss.
Wo liegt mein Fehler ?
oder kann man es besser lösen ?
Code
public Blitzer()
{
for(new playerid = 0, j = GetPlayerPoolSize(); playerid <= j; playerid++)
{
if(playerid == INVALID_PLAYER_ID) continue;
if(!pInfo[playerid][pLoggedIn]) continue;
if(!IsPlayerInAnyVehicle(playerid)) continue;
for(new i = 0; i < sizeof(Blitzi); i++)
{
if(!IsPlayerInRangeOfPoint(playerid, 15, Blitzi[i][blitz_x], Blitzi[i][blitz_y], Blitzi[i][blitz_z])) continue;
if(GetPlayerSpeed(playerid) < Blitzi[i][blitz_gesch]-Blitzi[i][blitz_gescht]) continue;
new Float:a;
GetVehicleZAngle(GetPlayerVehicleID(playerid), a);
printf("%f | %f", a , Blitzi[i][blitz_r]);
printf("%f | %f | %f", a, Blitzi[i][blitz_r]+100, Blitzi[i][blitz_r]-100);
if(a > Blitzi[i][blitz_r]+100 && a < Blitzi[i][blitz_r]-100)
{
if(Blitztime[playerid] == 0 || Blitztime[playerid] > gettime())
{
Blitz_Player(playerid);
Blitztime[playerid] = gettime() + 60*10;
}
}
}
}
return 1;
}
Alles anzeigen