Hallo Leute,
ich habe ein kleines Problem, und zwar habe ich in meinen Befehlen einen kleinen Feher.
Zum Beispiel mein '/makeleader'-Befehl.
Es funktioniert alles, bis auf das, die Namen nicht richtig wiedergegeben werden.
Beispiel:
Admin Peter_Lustig (ID:0) will den Spieler Lars (ID:1) mit '/makeleader 1 6" zum leader der Fraktion 6 machen.
Alles funktioniert eigentlich, bis auf dass Admin Peter_Lustig folgende Nachrichten bekommt:
"[06:33:09] Du hast Peter_Lustig zum Leader der Fraktion 'Gummibärenbande' gemacht!" <- Spielernachricht
"[06:33:09] Peter_Lustig hat Peter_Lustig zum Leader der Fraktion 'Gummibärenbande' gemacht!" <- Adminnachricht
Und Spieler Lars bekommt folgende Nachricht:
"[06:33:09] Peter_Lusitg hat dich zum Leader der Fraktion 'Gummibärenbande' gemacht!" <- Spielernachricht
Nun heißt es, dass der Admin sich lt. Chat selbst zum Leader der Gummibärenbande gemacht hat, was aber lt. Scriptzeile (Zeile 25, string1) nicht stimmt.
dcmd_makeleader(playerid,params[]) //Adminbefehl
{
new pID, fID, string[128], string1[128], string2[128], frakname[64], aname[MAX_PLAYER_NAME], name[MAX_PLAYER_NAME]; GetPlayerName(playerid,aname,sizeof(aname)); GetPlayerName(pID,name,sizeof(name));
if(SpielerInfo[playerid][pPerso] != 1) return 1;
if(SpielerInfo[playerid][pAdmin] < 4) return 1;
if(sscanf(params,"ud",pID,fID)) return SendClientMessage(playerid,GRAU,"Verwendung: /makeleader [ID] [Fraktions-ID] | Gebe '/frakids' für die Fraktions-ID's ein!");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,ROT,"Dieser Spieler wurde nicht gefunden!");
if(SpielerInfo[pID][pFraktion] == fID && SpielerInfo[pID][pLeader] == 1) return SendClientMessage(playerid,ROT,"Der Spieler ist bereits Leader dieser Fraktion!");
if(fID < 1 || fID > 11) return SendClientMessage(playerid,ROT,"Ungültige Angabe!");
switch(fID)
{
case 1:(frakname=frakname1);
case 2:(frakname=frakname2);
case 3:(frakname=frakname3);
case 4:(frakname=frakname4);
case 5:(frakname=frakname5);
case 6:(frakname=frakname6);
case 7:(frakname=frakname7);
case 8:(frakname=frakname8);
case 9:(frakname=frakname9);
case 10:(frakname=frakname10);
case 11:(frakname=frakname11);
}
SpielerInfo[pID][pFraktion] = fID; SpielerInfo[pID][pLeader] = 1; SpielerInfo[pID][pFrakRang] = 1;
format(string,sizeof(string),"Du hast %s zum Leader der Fraktion '%s' gemacht!",name,frakname); format(string1,sizeof(string1),"%s hat %s zum Leader der Fraktion '%s' gemacht!",aname,name,frakname); format(string2,sizeof(string2),"%s hat dich zum Leader der Fraktion '%s' gemacht!",aname,frakname);
SendClientMessage(playerid,GELB,string); SendAdminMessage(PINK,string1); SendClientMessage(pID,GELB,string2);
return SavePlayer(pID);
}
Scheinbar hat es was mit "pID" zutun, eine Lösung habe ich bisher aber noch nicht gefunden.
Wäre nett wenn mir da jemand helfen würde.
Gruß
AlphaGen