Spielernamen ändern

  • Spielernamen ändern

    Heyho Leute,

    ich habe folgendes vor: Ich möchte beim loggin eines Spielers überprüfen ob sein Adminlevel mehr als 1 ist, falls ja, soll er ein [jRP] vor den Namen gesetzt bekommen, falls nein, halt nicht.
    Leider bekomme ich das nich ganz hin, das ist meine Idee/mein Ansatz:

    Spoiler anzeigen
    [pwn]stock LoadPlayerData(playerid)
    {
    new pName[MAX_PLAYER_NAME], path[200];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(path, 200, "/Accounts/%s.ini", pName);
    pData[playerid][pLevel] = SetPlayerScore(playerid, dini_Int(path, "pLevel"));
    pData[playerid][pMoney] = GivePlayerMoney(playerid, dini_Int(path, "pMoney"));
    pData[playerid][pSkin] = SetPlayerSkin(playerid, dini_Int(path, "pSkin"));
    pData[playerid][pGender] = dini_Int(path, "pGender");
    pData[playerid][pAge] = dini_Int(path, "pAge");
    pData[playerid][pFaction] = dini_Int(path, "pFaction");
    pData[playerid][pFaction_Rank] = dini_Int(path, "pFaction_Rank");
    pData[playerid][pFaction_Leader] = dini_Int(path, "pFaction_Leader");
    pData[playerid][pAdmin_Rank] = dini_Int(path, "pAdmin_Rank");
    pData[playerid][pBanned] = dini_Int(path, "pBanned");
    pData[playerid][pLoggedin] = 1;
    if(pData[playerid][pBanned] == 1)
    {
    Dialog_Banned;
    Kick(playerid);
    }
    if(pData[playerid][pAdmin_Rank] >= 1)
    {
    SetPlayerName(playerid, "[jRP]%s", pName(playerid));
    }
    }[/pwn]

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Jay_Carnivora ()

  • [pwn]if(pData[playerid][pAdmin_Rank] >= 1)
    {
    strins(pName, "[jRP]", 0);
    SetPlayerName(playerid, pName);
    }[/pwn]
    Der Code ist eigentlich selbsterklärend. Der Zeichenkette, in welcher der Name enthalten ist, wird mit strins das "[jRP]" vor den Namen gesetzt.
    Bei wenigen Ausnahmefällen könnte es aber vorkommen, dass durch diesen Tag "[jRP]" die maximale Länge von Namen überschritten wird und der Name daher nicht geändert werden kann.