Hier ein Beispiel von mir
ocmd:invite(playerid,params[])
{
if(SpielerInfo[playerid][pLeader] != 0)
{
new pID;
if(sscanf(params,"u",pID))return SendClientMessage(playerid,COLOR_WHITE,"Verwendung: /învite [SpielerName/SpielerID]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_WHITE,"Der angegebene Spieler ist nicht mit dem Spiel verbunden!");
if(pID == playerid) return SendClientMessage(playerid,COLOR_WHITE,"Du kannst sich nicht selber inviten!");
if(SpielerInfo[pID][pFraktion] != 0 || SpielerInfo[pID][pLeader] != 0) return SendClientMessage(playerid,COLOR_WHITE,"Dieser Spieler ist noch als Member in irgendeiner Fraktion tätig!");
{
new string[128];
SpawnPlayer(pID);
format(string,sizeof(string),"Du hast %s Member der Fraktion %s eingeladen.",SpielerName(pID), FraktionsNamen(playerid));
SendClientMessage(playerid,COLOR_BLAU,string);
format(string,sizeof(string),"%s hat dich zur Fraktion %s eingeladen",SpielerName(playerid),FraktionsNamen(playerid));
SendClientMessage(pID,COLOR_BLAU,string);
SendClientMessage(pID,COLOR_BLAU,"Mit /accept invite kannst du diese Einladung annehmen!");
caninvite[pID] = 1, frakid[pID] = SpielerInfo[playerid][pLeader], inviterid[pID] = playerid;
}
return 1;
}
else return SendClientMessage(playerid,COLOR_WHITE,"Dieser Befehl ist nur für Leader gemacht!");
}
ocmd:accept(playerid,params[])
{
new accept[64];
if(sscanf(params,"s",accept)) return SendClientMessage(playerid,COLOR_WHITE,"Verwendung: /accept [Name]");
{
if(!strcmp(accept,"invite",true))
{
if(caninvite[playerid] == 1)
{
SendClientMessage(inviterid[playerid],COLOR_WHITE,"Der Spieler hat deine Einladung angenommen!");
SpielerInfo[playerid][pFraktion] = frakid[playerid];
SendClientMessage(playerid,COLOR_WHITE,"Du hast die Einladung angenommen!");
SpawnPlayer(playerid);
caninvite[playerid] = 0, frakid[playerid] = 0, inviterid[playerid] = 0;
return 1;
}
else return SendClientMessage(playerid,COLOR_WHITE,"Dir hat keiner eine Fraktioneinladung unterbreitet!");
}
}
return 1;
}