[AJUDA] Comando parando os outros cmds
#1

Galera tipo, criei um comando no sacrificio para mudar o nome do player salvando tudo dele.
Mais quando eu troco de nome, os comandos do servidor para e ele nгo seta o novo nome nem atualiza na pasta de contas :/
Alguem pode me ajudar?
Comando do /mudarnome:

pawn Код:
if(strcmp(cmd, "/mudarnome", true) == 0)
    {
        if(IsPlayerInRangeOfPoint(playerid, 4.0, 2309.6484, -8.4480, 26.7422))
        {
            if(Autorizado[playerid] == 1)
            {
                tmp = strtok(cmdtext, idx);
                if(!strlen(tmp))
                {
                    SendClientMessage(playerid, 0xC4C4FFAA, "Uso: /mudarnome [Nome]");
                    return 1;
                }
                new diretorio[24], casa[64], IP[24], link[3][256];
                new senha[5][256], conta[64], banco[64], nova[64], novabanco[64];
                format(diretorio, 128, DIRETORIO, tmp);
                if(dini_Exists(diretorio))
                {
                    SendClientMessage(playerid, COR_VERMELHO, "{FF0000}[ ? ]{FFFFFF} Jб existe uma conta criada com esse nome!");
                    return 1;
                }
                format(conta, sizeof(conta), DIRETORIO, nome(playerid));
                format(banco, sizeof(banco), BANCO, nome(playerid));
                link[0] = dini_Get(conta, "NumeroVeiculo1");
                link[1] = dini_Get(conta, "NumeroVeiculo2");
                link[2] = dini_Get(conta, "NumeroVeiculo3");
                senha[0] = dini_Get(conta, "Senha");
                senha[1] = dini_Get(conta, "SenhaPadrao");
                senha[2] = dini_Get(banco, "SenhaPadrao");
                senha[3] = dini_Get(banco, "Senha");
                senha[4] = dini_Get(banco, "Saldo");
                format(casa, sizeof(casa), "/Casas/Usuarios/%s.ini", nome(playerid));
                if(!dini_Exists(casa)){SetTimerEx("SalvandoDados", 8000, false, "i", playerid);TemCasa[playerid]=0;}
                if(dini_Int(conta, "Morando") == 0){if(dini_Exists(casa)){SetPlayerPos(playerid, dini_Int(casa, "CasaX"), dini_Int(casa, "CasaY"), dini_Int(casa, "CasaZ")); SetTimerEx("SalvandoDados", 10000, false, "i", playerid);TemCasa[playerid]=1;}}
                if(dini_Int(conta, "Morando") == 1){if(dini_Exists(casa)){SetPlayerPos(playerid, dini_Int(casa, "CasaX"), dini_Int(casa, "CasaY"), dini_Int(casa, "CasaZ")); SetTimerEx("SalvandoMoradia", 10000, false, "i", playerid);TemCasa[playerid]=3;}}
                dini_Remove(conta); dini_Remove(banco);
                TogglePlayerControllable(playerid, 0);
                SetPlayerName(playerid, tmp);
                format(nova, sizeof(nova), DIRETORIO, tmp);
                format(novabanco, sizeof(novabanco), BANCO, tmp);
                dini_Create(nova); dini_Create(novabanco);
                GetPlayerIp(playerid, IP, sizeof(IP));
                dini_Set(nova, "Usuario", nome(playerid));
                dini_Set(nova, "IP", IP);
                dini_Set(nova, "X", "385.9860");
                dini_Set(nova, "Y", "-1528.2870");
                dini_Set(nova, "Z", "32.2734");
                dini_Set(nova, "A", "0");
                dini_IntSet(nova, "Procurado", GetPlayerWantedLevel(playerid));
                dini_IntSet(nova, "Level", Level[playerid]);
                dini_IntSet(nova, "Experiencia", Experiencia[playerid]);
                dini_IntSet(nova, "Gasolina", Gasolina[playerid]);
                dini_IntSet(nova, "Galao", GalaoCombustivel[playerid]);
                dini_IntSet(nova, "Profissao", Profissao[playerid]);
                dini_IntSet(nova, "Dinheiro", GetPlayerMoneyEx(playerid));
                dini_IntSet(nova, "Terrestre", Habilitacoes[playerid][HAB_TERRESTRE]);
                dini_IntSet(nova, "Aerea", Habilitacoes[playerid][HAB_AEREA]);
                dini_IntSet(nova, "Nautica", Habilitacoes[playerid][HAB_NAUTICA]);
                dini_BoolSet(nova, "Preso", Preso[playerid]);
                dini_IntSet(nova, "ConvenioMedico", ConvenioMedico[playerid]);
                dini_IntSet(nova, "Interior", GetPlayerInterior(playerid));
                dini_IntSet(nova, "Pescas", QtPescas[playerid]);
                dini_IntSet(nova, "Cacas", QtCacas[playerid]);
                dini_Set(nova, "Senha", senha[0]);
                dini_Set(nova, "SenhaPadrao", senha[1]);
                dini_Set(novabanco, "SenhaPadrao", senha[2]);
                dini_Set(novabanco, "Senha", senha[3]);
                dini_Set(novabanco, "Saldo", senha[4]);
                dini_Set(nova, "NumeroVeiculo1", link[0]);
                dini_Set(nova, "NumeroVeiculo2", link[1]);
                dini_Set(nova, "NumeroVeiculo3", link[2]);
                dini_IntSet(nova, "Skin", GetPlayerSkin(playerid));
                dini_Remove(casa);
                SendClientMessage(playerid, COR_AMARELO, "{00FF00}[ ! ]{FFFFFF} Aguarde, estamos salvando os dados da sua conta antiga e transferindo para nova!");
                Autorizado[playerid] = 0;
            }
            else
            {
                SendClientMessage(playerid, 0xFF0000AA, "{FF0000}[ ? ]{FFFFFF} Vocк nгo estб liberado para poder mudar de nome!");
            }
        }
        else
        {
            SendClientMessage(playerid, 0xFF0000AA, "{FF0000}[ ? ]{FFFFFF} Vocк nгo estб em um cartуrio!");
        }
        return 1;
    }
+REP pra quem conseguir resolver :/

Ja tentei de tudo e nгo consigo :/
Reply
#2

Se jб tem um arquivo, nгo tem necessidade de setar tudo novamente, pois os dados jб estarгo armazenados.

Basta renomear o arquivo.
pawn Код:
frename(nomeantigo, nomenovo);
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)