/changename command
#8

This is mine, you'd have to edit it to suit your system though:
pawn Code:
CMD:setname(playerid, params[])
{
    if(PlayerData[playerid][AdminLevel] < 4) return SendUnathorizedMessage(playerid);
    new target, string[126], oldname[126], newname[126], newname2[126];
    if(sscanf(params, "us[126]", target, newname)) return SendClientMessage(playerid, C_SYNTAX, "Syntax:{FFFFFF} /setname [player id/part of name] [new name]");
   
    if(gIsPlayerLoggedIn[playerid] == 0) return SendPlayerNotSpawnedMessage(playerid);
   
    format(string, sizeof(string), "/accounts/%s.ini", newname);
    if(fexist(string)) return SendClientMessage(playerid, C_SYNTAX, "Error:{FFFFFF} That user-account already exists.");

    format(oldname, sizeof(oldname), "%s", GetPlayersName(target));
    SetPlayerName(target, newname);
    format(newname2, sizeof(newname2), "%s", RemoveUnderScore(target));
   
    for(new i = 1; i < sizeof(HouseData); i++) {
        if(strcmp(oldname, HouseData[i][Owner], true) == 0)
        {
            strmid(HouseData[i][Owner], newname2, 0, strlen(newname2), 255);
        }
    }
    for(new i = 1; i < sizeof(BusinessInfo); i++) {
        if(strcmp(oldname, BusinessInfo[i][Owner], true) == 0)
        {
            strmid(BusinessInfo[i][Owner], newname2, 0, strlen(newname2), 255);
        }
    }
   
    yinifrename(oldname, newname2);
    format(string, sizeof(string), "* An admin changed your name from %s to %s", oldname, newname2);
    SendClientMessage(target, C_CYAN, string);
    format(string, sizeof(string), "* You changed %s's name to %s.", oldname, newname2);
    SendClientMessage(playerid, C_CYAN, string);
   
    format(string, sizeof(string), "/accounts/%s.ini", oldname);
    fremove(string);
    return 1;
}

stock yinifrename(oldname[], newname[])
{
    if(!fexist(oldname)) return 1;
    new string[128], File:older, File:newer;
    older = fopen(oldname, io_read);
    newer = fopen(newname, io_write);
    while(fread(older, string))
    {
        StripNewLine(string);
        format(string, sizeof(string), "%s\r\n", string);
        fwrite(newer, string);
    }
    fclose(older);
    fclose(newer);
    fremove(oldname);
    return 1;
}
Reply


Messages In This Thread
/changename command - by killing - 22.06.2014, 04:16
Re: /changename command - by FreAkeD - 22.06.2014, 04:21
Re: /changename command - by killing - 22.06.2014, 05:28
Re: /changename command - by VenomMancer - 22.06.2014, 05:31
Re: /changename command - by killing - 22.06.2014, 05:32
Re: /changename command - by killing - 22.06.2014, 05:36
Re: /changename command - by killing - 22.06.2014, 05:40
Re: /changename command - by Jack_Leslie - 22.06.2014, 05:43
Re: /changename command - by Team_PRO - 22.06.2014, 05:45
Re: /changename command - by killing - 22.06.2014, 05:50

Forum Jump:


Users browsing this thread: 2 Guest(s)