Hey.
Ich bin langsam am verzweifeln.
Wie kann ich es machen, dass man Pickups erstellt (z.B. eine Rüstung für armour) und dass nur die bestimme Fraktion, Heal bekommt.
BSP:
In der Army Base läuft ein Soldat in das Herzpickup, was soll passieren?
Er bekommt 100HP.
Aber wenn jetzt jemand von der GroveStreet dortrein läuft, soll er keinen Heal bekommen.
Also es soll praktisch nichts passieren.
Habs mit iwie isplayerinfrak versucht, aber das funktionierte nicht so , wie ich es wollte.
Healpickup für eine Fraktion
- Touran
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Poste mal den Kompletten Code vom Pickup
-
Deine Lösung if abfrage
if(pickupid == Healpickuparmy)
{
if(SpielerInfo[playerid][Leader] == 1)
{
SetPlayerHealth(playerid,100);
}
if(SpielerInfo[playerid][Member] == 1)
{
SetPlayerHealth(playerid,100);
}
return 1;
} -
Dankeschön, auch an Baumann
-
Ich hab nur noch eine Frage, ich mache:
Oben im Script:
new armyheal;
new armyarmor;Dann unter Ongamemodeinit:
armyheal = CreatePickup(1242,2,245.0989,1860.9608,14.0840,-1);//Rüstung
armyarmor = CreatePickup(1240,2,243.0204,1861.0739,14.0840,-1);//HerzUnd dann noch unter onplayerpickuppickup:
if(pickupid == armyheal)
{
if(SpielerInfo[playerid][Leader] == 3)
{
SetPlayerHealth(playerid,100);
}
if(SpielerInfo[playerid][Member] == 3)
{
SetPlayerHealth(playerid,100);
}
return 1;
}
else if(pickupid == armyarmor)
{
if(SpielerInfo[playerid][Leader] == 3)
{
SetPlayerArmour(playerid,100);
}
if(SpielerInfo[playerid][Member] == 3)
{
SetPlayerArmour(playerid,100);
}
return 1;Wieso können sich trotzdem noch alle heal und armor holen??????
-
if(pickupid == armyheal)
{
if(SpielerInfo[playerid][Leader] == 3)
{
SetPlayerHealth(playerid,100);
}
if(SpielerInfo[playerid][Member] == 3)
{
SetPlayerHealth(playerid,100);
}
return 1;
}
if(pickupid == armyarmor)
{
if(SpielerInfo[playerid][Leader] == 3)
{
SetPlayerArmour(playerid,100);
}
if(SpielerInfo[playerid][Member] == 3)
{
SetPlayerArmour(playerid,100);
}
return 1;
}Mach mal das hier.
-
Ich denke mal nicht das das am einrücken liegt
-
das einrücken hat nichts damit zu tun ob etwas funktioniert, eher liegt es am den "else if" das kannste löschen, da du eh returnst
ups, da haben wir beide es übersehen sry^^
-
Hey,
Ehm hast du denn auch alles an dein Script angepasst?
Wenn du das nicht angepasst hast, kann das nicht funktionieren
MfG Ber912edit:
Ich hätte es ja soo gemacht:if(pickupid == armyheal)
{
if(SpielerInfo[playerid][Leader] == 3 || SpielerInfo[playerid][Member] == 3)
{
SetPlayerHealth(playerid,100);
}
return 1;
}
if(pickupid == armyarmor)
{
if(SpielerInfo[playerid][Leader] == 3 || SpielerInfo[playerid][Member] == 3)
{
SetPlayerArmour(playerid,100);
}
return 1;
} -
breadfish.de
Hat das Thema geschlossen.