Hey. Ich habe vorhin insgesamt 6 Gangzonen fertig gestellt. 2 in LS, 2 in SF und 2 in LV.
Wie mache ich es, wenn einer aus der Fraktion (fraktionssystem vorhanden) in der Gangzone ist und /gangfight eingibt und dann die Gangzone in den Farben blinkt?
Also wenn Ballas ein Gebiet von der GS einnehmen möchte, das es dann Lila / Grün blinkt. Wie mache ich es?
Abfragen, ob jemand in der Gangzone ist.
- Legendary
- 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
-
-
stock IsPlayerInArea(playerid,Float:minX,Float:minY,Float:maxX,Float:maxY)
{
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
if(pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) return 1;
else return 0;
}Danach kannst du mit if(IsPlayerInArea(playerid,minx,miny,maxx,maxy)); abfragen.
lG
-
wo füge ich das denn mit IsPlayerinarena ein?
In einem befehl?z.B
if(strcmp("/ok",cmdtext,true,10)==0)
{
if(IsPlayerInArea(playerid,1992.4084,-1455.9352,1842.1436,-1346.1754))
{
SendClientMessage(playerid,ROT,"OK");
return 1;
}
} -
yes!
-
Sollte richtig sein, einfach mal ausprobieren
-
Hab ich ausprobiert. Spuckt bei mir: Server: Unknown command raus xD
-
Hast du unter diesem Befehl bei OnPlayerCommandText "return 0;" stehen?
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp........
return 0;
}
So? -
Da stand gar nichts hab dann einfach ein return 1 eingefügt und nun steht da gar nichts im chat
-
Zeig mal dein OnPlayerCommandText.
-
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/ok",cmdtext,true,10)==0)
{
if(IsPlayerInArea(playerid,1992.4084,-1455.9352,1842.1436,-1346.1754))
{
SendClientMessage(playerid,ROT,"OK");
return 1;
}
return 1;
}
if(strcmp("/skinauswahl",cmdtext,true,10)==0)
{
if(IsPlayerInFraktion(playerid,6))
{
CallLocalFunction("OnPlayerRequestClass","d","playerid,classid");
AddPlayerClass(113,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(114,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(115,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(116,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
}
else SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion!");
return 1;
}Die 1. zwei commands. Hab dort seehr seehr viele Befehle bei onplayercommandtext. Andere Befehle funktionieren ja auch bis auf /ok xD
-
-
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/ok",cmdtext,true)==0)
{
if(IsPlayerInArea(playerid,1992.4084,-1455.9352,1842.1436,-1346.1754))
{
SendClientMessage(playerid,ROT,"OK");
return 1;
}
return 1;
}
if(strcmp("/skinauswahl",cmdtext,true)==0)
{
if(IsPlayerInFraktion(playerid,6))
{
CallLocalFunction("OnPlayerRequestClass","d","playerid,classid");
AddPlayerClass(113,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(114,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(115,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
AddPlayerClass(116,-50.2117,-289.1533,5.4297,178.9876,0,0,0,0,0,0); // Testsafe
}
else SendClientMessage(playerid,ROT,"Du bist in keiner Fraktion!");
return 1;
}
hab jeweils das ,10 aus strcmp rausgenommen, deshalb fand der den befehl auch nicht. -
Geht immernoch nicht. Wie gesagt, andere Befehle funktionieren perfekt
-
Unter der letzten Klammer von dem letzten Befehl mach da ein return 0;
-
nichts..
-
if(strcmp("/ok",cmdtext,true,10)==0)
{
if(IsPlayerInArea(playerid,1992.4084,-1455.9352,1842.1436,-1346.1754))
{
SendClientMessage(playerid,ROT,"OK");
}
return 1;
}Der muss gehen
lG
-
Nein geht nicht.
Also diese Koordinaten sind die, von einer Gangzone, die ich erstellt habe. Dort gebe ich dann /ok ein und es passiert nix xD -
breadfish.de
Hat das Thema geschlossen.