Leider blitzen meine blitzer nicht also wenn ich meine blitzer aufbaue blitzen sie garnicht und wenn ich /radar mache steht da zwar das einer geblitzt wurde und mit was er geblitzt wurde aber nicht mit welcher Geschwindigkeit ich brauche dringend hilfe
#define MAX_BLITZER 15
#define MAX_STANGE 15
enum eStange {
ID, Float:StangeX, Float:StangeY, Float:StangeZ
};
new Stange[MAX_STANGE][eStange];
enum eBlitzer {
ID, Float:BlitzerX, Float:BlitzerY, Float:BlitzerZ, bErstellt
};
new Blitzer[MAX_BLITZER][eBlitzer];
new Float:PlayerLastSpeed[MAX_PLAYERS];
new PlayerBlitzed[MAX_PLAYERS];
forward CheckSpeed();
public CheckSpeed()//blitz
{
new i, j;
for(new v=0; v<sizeof(PolizeiVehs); v++)
for(new e = 0; e < sizeof(Blitzer); e++)
for (i = 0, j = MAX_PLAYERS; i < j; i++)
{
if(PlayerLastSpeed[i] >= 120 && IsPlayerInAnyVehicle(i))
{
new vehicle = GetPlayerVehicleID(i);
if(!IsABike(vehicle) && !IsACopCar(vehicle) && !IsAFBICar(vehicle) && !IsAArmyCar(vehicle) && !IsAPlane(vehicle) && !PlayerBlitzed[i])
{
new Float:X, Float:Y, Float:Z;
GetPlayerPos(i, X, Y, Z);
if(X >= 757.961365 && X <= 783.493713 && Y >= -1061.532227 && Y <= -1041.807617 && Z >= 20 && Z <= 30)
{//Blitzer 1
Blitzed(i);
}
if(X >= 1333.443359 && X <= 1368.484619 && Y >= -1333.933716 && Y <= -1309.607178 && Z >= 12 && Z <= 15)
{//Blitzer 2
Blitzed(i);
}
if(X >= 1540.684570 && X <= 1556.493042 && Y >= -1171.168213 && Y <= -1152.363159 && Z >= 20 && Z <= 26)
{//Blitzer 3
Blitzed(i);
}
if(X >= 825.1093 && X <= 852.2057 && Y >= -1797.9391 && Y <= -1760.6262 && Z >= 10 && Z <= 18)
{//Blitzer 4
Blitzed(i);
}
if(X >= -753.4002 && X <= -1013.8942 && Y >= -739.4754 && Y <= -1000.2639 && Z >= 74 && Z <= 79)
{//Blitzer 5
Blitzed(i);
}
if(IsPlayerInRangeOfPoint(i, 20, Blitzer[e][BlitzerX], Blitzer[e][BlitzerY], Blitzer[e][BlitzerZ]))
{//Blitzer-System
Blitzed(i);
}
}
}
}
}
forward Blitzed(playerid);
public Blitzed(playerid)
{
new money;
new string[256];
if(PlayerLastSpeed[playerid] > 100)
{
if(PlayerLastSpeed[playerid] > 150)
{
if(PlayerLastSpeed[playerid] > 200)
{
if(PlayerLastSpeed[playerid] > 250)
{
money = 125;
}
else
{
money = 100;
}
}
else
{
money = 75;
}
}
else
{
money = 50;
}
}
else
{
money = 25;
}
format(string, sizeof(string), "Du musst $%d bezahlen.", money);
SendClientMessage(playerid, COLOR_LIGHTRED,"Du wurdest gerade geblitzt, da du zu schnell gefahren bist!");
SendClientMessage(playerid, COLOR_WHITE,string);
GameTextForPlayer(playerid, "Du wurdest geblitzt!", 2500, 3);
GivePlayerMoney(playerid, -money);
PlayerBlitzed[playerid] = 1;
PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
return 1;
}
if(strcmp("/radar", cmdtext, true, 10) == 0)
{
if(!IsACop(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Polizist !");
return 1;
}
if(IsPlayerConnected(playerid))
{
new fahrer = GetClosestPlayer(playerid);
new string2[256];
if(GetDistanceBetweenPlayers(playerid,fahrer) < 20 && IsPlayerInAnyVehicle(fahrer))
{
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerName(fahrer, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* %s holt seine Radarpistole heraus und blitzt die Geschwindigkeit von einem/einer %s", playername, VehicleName[GetVehicleModel(GetPlayerVehicleID(fahrer))-400]);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
printf("%s", string);
format(string, sizeof(string), "HQ: Du holst deine Radarpistole heraus und blitzt ein/eine %s.", VehicleName[GetVehicleModel(GetPlayerVehicleID(fahrer))-400]);
SendClientMessage(playerid, TEAM_BLUE_COLOR, string);
printf("%s", string2);
format(string2, sizeof(string2), "HQ: Fahrer: %s | Geschwindigkeit: %.0f", giveplayer, PlayerLastSpeed[fahrer]);
SendClientMessage(playerid, TEAM_BLUE_COLOR, string2);
}
else
{
SendClientMessage(playerid, COLOR_GRAD2, " Es ist kein Spieler in der nähe oder er befindet sich nicht in einem Fahrzeug!");
}
}
return 1;
}
if(strcmp("/aufbauen", cmdtext, true, 10) == 0)
{
if(!IsACop(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Polizist !");
return 1;
}
new Float:x, Float:y, Float:z, Float:a;
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid, a);
for(new i = 0; i < sizeof(Blitzer); i++)
for(new o = 0; o < sizeof(Stange); o++)
{
if(Blitzer[i][bErstellt] == 0)
{
Blitzer[i][BlitzerX] = x;
Blitzer[i][BlitzerY] = y;
Blitzer[i][BlitzerZ] = z;
Blitzer[i][bErstellt] = 1;
Blitzer[i][ID] = CreateObject(1208, x, y, z+1, 0.0, 0.0, a);
Stange[o][StangeX] = x;
Stange[o][StangeY] = y;
Stange[o][StangeZ] = z;
Stange[o][ID] = CreateObject(1233, x, y, z+0.5, 0.0, 0.0, a);
return 1;
}
}
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "HQ: Der Polizist %s hat einen stationären Blitzer aufgebaut.", sendername);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(IsACop(i))
{
//SetPlayerCheckpoint(playerid, X, Y, Z-10, 1.0);
SendClientMessage(i, TEAM_BLUE_COLOR, string);
//if (SpielerInfo[i][pRank] >= 5 && SpielerInfo[i][sMember] || SpielerInfo[i][sLeader] == 1)
//{
// SendClientMessage(i, COLOR_YELLOW, "Du kannst alle stationären Blitzer mit /alleabbauen entfernen.");
//}
}
}
}
return 1;
}
if(strcmp("/abbauen", cmdtext, true, 10) == 0)
{
if(!IsACop(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Polizist !");
return 1;
}
for(new i = 0; i < sizeof(Blitzer); i++)
for(new o = 0; o < sizeof(Stange); o++)
{
if(Blitzer[i][bErstellt] == 1)
{
if(IsPlayerInRangeOfPoint(playerid, 3, Blitzer[i][BlitzerX], Blitzer[i][BlitzerY], Blitzer[i][BlitzerZ]))
{
Blitzer[i][bErstellt] = 0;
Blitzer[i][BlitzerX] = 0.0;
Blitzer[i][BlitzerY] = 0.0;
Blitzer[i][BlitzerZ] = 0.0;
DestroyObject(Blitzer[i][ID]);
Stange[o][StangeX] = 0.0;
Stange[o][StangeY] = 0.0;
Stange[o][StangeZ] = 0.0;
DestroyObject(Stange[o][ID]);
return 1;
}
}
}
return 1;
}
if(strcmp("/alleabbauen", cmdtext, true, 10) == 0)
{
if(!IsACop(playerid))
{
SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Polizist !");
return 1;
}
for(new i = 0; i < sizeof(Blitzer); i++)
for(new o = 0; o < sizeof(Stange); o++)
{
if(Blitzer[i][bErstellt] == 1)
{
Blitzer[i][bErstellt] = 0;
Blitzer[i][BlitzerX] = 0.0;
Blitzer[i][BlitzerY] = 0.0;
Blitzer[i][BlitzerZ] = 0.0;
DestroyObject(Blitzer[i][ID]);
Stange[o][StangeX] = 0.0;
Stange[o][StangeY] = 0.0;
Stange[o][StangeZ] = 0.0;
DestroyObject(Stange[o][ID]);
}
}
return 1;
}
Edit: Kann es sein das PlayerLastSpeed[playerid] falsch definniert ist oder so??