Hey, ich möchte ein Repair Pickup erstellen. Das heißt wen ein Auto dadurch fährt wird es repariert. Das Funktioniort auch aber dann verschwindet das Pickup es soll aber die ganze zeit dableiben. Ich habe es auch schon hinbekommen das es dableibt aber dann Repairt das Auto nicht mehr. Ich habe schon verschiedene Types für Pickups ausprobiert doch nix hat geklappt. Ich hoffe mir kann einer helfen.
sapdrep = CreatePickup(3096,1,1597.4547,-1625.9310,13.6382,0);
fbirep = CreatePickup(3096,1,-1712.9836,976.3098,17.7859,0);
if(pickupid == fbirep)
{
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14)
{
new vIDD = GetPlayerVehicleID(playerid);
if(IsPlayerInAnyVehicle(playerid))
{
SetVehicleHealth(vIDD, 1000);
RepairVehicle(vIDD);
SendClientMessage(playerid, BLAU, "Fahrzeug repariert.");
}
else
{
SendClientMessage(playerid, ROT, "Du bist Kein Beamter.");
return 1;
}
}
}
if(pickupid == sapdrep)
{
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14)
{
new vIDD = GetPlayerVehicleID(playerid);
if(IsPlayerInAnyVehicle(playerid))
{
SetVehicleHealth(vIDD, 1000);
RepairVehicle(vIDD);
SendClientMessage(playerid, BLAU, "Fahrzeug repariert.");
}
else
{
SendClientMessage(playerid, ROT, "Du bist Kein Beamter.");
return 1;
}
}
}
Repair Pickup Probleme
- Mister.Anonym
- Geschlossen
- Erledigt
-
-
Sollte nun funktionieren - hab dein Code bisschen Optimiert.
Spoiler anzeigen if(pickupid == fbirep)
{
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14)
{
if(IsPlayerInAnyVehicle(playerid))
{
RepairVehicle(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, BLAU, "Fahrzeug repariert.");
}
}else {
return SendClientMessage(playerid, ROT, "Du bist Kein Beamter.");
}
}Spoiler anzeigen if(pickupid == sapdrep)
{
if(Spieler[playerid][Team] == 1 || Spieler[playerid][Team] == 2 || Spieler[playerid][Team] == 14)
{
if(IsPlayerInAnyVehicle(playerid))
{
RepairVehicle(GetPlayerVehicleID(playerid));
SendClientMessage(playerid, BLAU, "Fahrzeug repariert.");
}
}else {
return SendClientMessage(playerid, ROT, "Du bist Kein Beamter.");
}
} -
Nein es geht leider noch nicht.
-
Auch wenn es schon von dir erwähnt wurde, probier es bitte noch mal so.
sapdrep = CreatePickup(3096,0,1597.4547,-1625.9310,13.6382,0); -
Du musst den Pickup Type 14 benutzen und das Pickup neu erstellen, da die anderen Pickup Type's nicht im Fahrzeug aufgerufen werden bzw. das Callback nicht aufrufen wird.
Wenn dir das zu dumm ist mit dem neu erstellen gibt es auch noch andere Methoden, wie einen Timerzu erstellen oder mit OnPlayerKeyStateChangeund einer Tastezu arbeiten. -
Wie meinst du das mit dem neuerstellen? Das Pickup nochmal ganz neu setzen oder wie?
-
Den Type bei CreatePickup(... von 0 bzw 1 auf 14 umändern.
-
Dann Repairt das Auto zwar aber das Pickup verschwindet immer noch.
-
Ich glaube das funktioniert so nicht. Du müsstest den Type 14 nehmen, und das Pickup dann destroyen und neu hinsetzen, das wäre die beste Methode dir mir jetzt spontan einfällt.
-
Habe es jetzt hinbekommen!
-
@CurryKING1810:
Dürfte man wissen wie? Andere Leute wollen die Lösung auch wissen -
breadfish.de
Hat das Thema geschlossen.