Abend
Ich habe mal wieder etwas schönes für euch
und zwar wie oben schon geschrieben, habe ich ein Problem mit meinem /fmember Befehl
Der Befehl soll folgendes bewirken, es erscheint eine Nachricht mit einer liste der Fraktions mitglieder die sich gerad in der Fraktion aufhalten
also gerad Online auf dem Server sind.
So das Problem nur ich sehe auch die Fraktions mitglieder aus der anderen Fraktion, warum ?
Code:
ocmd:fmember(playerid,params[])
{
new string[128],bool:online;
//if(isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2) || isPlayerInFrakt(playerid,3))return SendClientMessage(playerid,ORANGE,"Du bist in keiner Fraktion");
for(new i=0; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i))continue;
if(!IsPlayerNPC(i))
if(GetPVarInt(i,"Fraktion") == 1)
{
if(online == false)
{
SendClientMessage(playerid,0x00B71EFF,"Fraktions mitglieder online:");
SendClientMessage(playerid,WEIS,"");
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
online = true;
}
else
{
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
}
return 1;
}
if(GetPVarInt(i,"Fraktion") == 2)
{
if(online == false)
{
SendClientMessage(playerid,0x00B71EFF,"Fraktions mitglieder online:");
SendClientMessage(playerid,WEIS,"");
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
online = true;
}
else
{
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
}
}
}
if(online == false)
{
SendClientMessage(playerid,DUNKELROT,"Derzeit ist kein fraktions mitglied Online");
}
return 1;
}
Hoffe ihr könnt mir weiter helfen,
Grüße
Problem mit /fmember befehl
- Equ
- Geschlossen
- Erledigt
-
-
if(!IsPlayerNPC(i))
zu
if(!IsPlayerNPC(i)) continue; -
Der folgende Code sollte funktionieren, ist aber ungetestet
ocmd:fmember(playerid,params[])
{
new string[128],bool:online;
//if(isPlayerInFrakt(playerid,1) || isPlayerInFrakt(playerid,2) || isPlayerInFrakt(playerid,3))return SendClientMessage(playerid,ORANGE,"Du bist in keiner Fraktion");
for(new i=0; i<GetMaxPlayers(); i++)
{
if(!IsPlayerConnected(i))continue;
if(IsPlayerNPC(i))continue;
if(GetPVarInt(i,"Fraktion") == GetPVarInt(playerid,"Fraktion") && GetPvarInt(playerid,"Fraktion") != 0)
{
if(online == false)
{
SendClientMessage(playerid,0x00B71EFF,"Fraktions mitglieder online:");
SendClientMessage(playerid,WEIS,"");
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
online = true;
}
else
{
format(string,sizeof(string),"%s | Rank: %i",SpielerName(i),GetPVarInt(i,"Rank"));
SendClientMessage(playerid,ORANGE,string);
}
}
}
if(online == false)
{
SendClientMessage(playerid,DUNKELROT,"Derzeit ist kein Fraktionsmitglied Online");
}
return 1;
}Der Befehl ist nun "individuell" für den ausführenden d.h wenn der auführende in Frak 5 ist werden alle aus Frak 5 angezeigt und wenn er aus Frak 2 ist werden alle aus Frak 2 angezeigt. Außerdem hab ich noch eingefügt, dass es nicht für Zivilisten gild(ich bin mal davon ausgegangen, dass diese in Frak 0 sind) das müsstest du eventuelle anpassen
-
breadfish.de
Hat das Thema geschlossen.