Hey ich habe folgendes Problem ich erstelle müll aber wenn irgendwie wird das Letzte nicht gelöscht wenn ich in der Nähe bin ?
Ich habe schon ein andere von den 3 nach unten gepackt aber geht nicht immer das Object was an letzer stelle steht geht nicht weg die anderen gehen aber warum ?
Code
enum strasenrmuell_enum {
str_modell,
Float:str_x,
Float:str_y,
Float:str_z
}
new strm[][strasenrmuell_enum] = {
{2672, 1748.68, -1698.14, 12.68},
{2840, 1748.54, -1705.48, 12.37},
{2857, 1749.58, -1705.46, 12.37}
};
new strm_ID[sizeof(strm)];
Alles anzeigen
Code
public Clearstr(playerid)
{
if(!IsPlayerInAnyVehicle(playerid)) SendClientMessage(playerid,ROT,"Du musst dich in einem Fahrzeug befinden!");
if(GetVehicleModel(GetPlayerVehicleID(playerid)) != 574) SendClientMessage(playerid,ROT,"Du befindest dich nicht in einem Job Fahrzeug!");
strasenr[playerid][strasenr_timer] ++;
printf("Aktiv");
if(strasenr[playerid][strasenr_timer] == 5)
{
SendClientMessage(playerid,GRÜN,"Deine Reinigungs Bürsten wurde wieder ausgeschalten!");
return 1;
}
else
{
strasenr[playerid][strasenr_timer] = 0;
new id = IsPlayerInRangeOfstrMuell(playerid);
if(id == -1) return SetTimerEx("Clearstr",1000,false,"i",playerid);
DestroyObject(strm_ID[id]);
return SetTimerEx("Clearstr",1000,false,"i",playerid);
}
}
stock IsPlayerInRangeOfstrMuell(playerid)
{
for(new i = 0; i < sizeof(strm); i++)
{
if(strm_ID[i] != -1)
{
if(IsPlayerInRangeOfPoint(playerid,4.0,strm[i][str_x],strm[i][str_y],strm[i][str_z]))
{
return i;
}
}
}
return -1;
}
Alles anzeigen