[Ajuda] dini_Exists
#1

Boa madrugada pra todos,
Eu queria saber se da pra usar a funзгo dini_exists pra checar se um arquivo nгo existe

Se esse arquivo .ini nгo existir(que seria a conta do jogador), eu gostaria que essa dialog aparecesse pra ele

pawn Код:
ShowPlayerDialog(playerid, bemvindo, DIALOG_STYLE_MSGBOX,"Seja bem vindo ao Magic RPG", "Sistemas ъnicos e inovadores em breve, clique em entrar para comeзar a jogar", "Entrar", "Sair");
Se esse arquivo .ini existir, eu gostaria que aparecesse essa dialog
pawn Код:
format(msgsdialog, sizeof(msgsdialog), "%s, seu nick estб disponivel para jogar com a gente, digite uma senha e clique em registrar", aname);
ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
Eu sei que deve ser coisa boba se der pra fazer, mas й que estou aprendendo mesmo, quem puder me ajudar +REP

pawn Код:
public OnPlayerRequestClass(playerid, classid)
{
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
    format(file, sizeof(file), pcontas, aname);
    SetPlayerSkin(playerid,dini_Int(file, "Skin"));
    PlayerPlaySound(playerid, 1185, 0.0, 0.0, 0.0);
    ShowPlayerDialog(playerid, bemvindo, DIALOG_STYLE_MSGBOX,"Seja bem vindo ao Magic RPG", "Sistemas ъnicos e inovadores em breve, clique em entrar para comeзar a jogar", "Entrar", "Sair");
    SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
    SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
    PlayAudioStreamForPlayer(playerid, "https://dl.dropboxusercontent.com/s/qxbn5atckiag2yn/Major%20Lazer%20-%20Light%20It%20Up%20%28feat.%20Nyla%20_%20Fuse%20ODG%29%20-%20128K%20MP3.mp3");
    GameTextForPlayer(playerid,"Magic RPG", 2000, 1);
    ApplyAnimation(playerid,"STRIP", "STR_Loop_A", 1.800001, 1, 0, 0, 1, 600);
    return 1;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == bemvindo)
    {
    if(response == 1)
    {
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    format(file, sizeof(file), pcontas, aname);
    if(playerinfo[playerid][logado] == 0){
    if(!dini_Exists(file))
    {
    format(msgsdialog, sizeof(msgsdialog), "%s, seu nick estб disponivel para jogar com a gente, digite uma senha e clique em registrar", aname);
    ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
}
    if(dini_Exists(file))
    {
    format(msgsdialog, sizeof(msgsdialog), "Seja bem vindo novamente %s, digite sua senha e clique em entrar", aname);
    ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
    }
    }
    }else{
    new str[256];
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, MAX_PLAYER_NAME);
    format(str, sizeof(str), "%s saiu do servidor (Registro/Login)", aname);
    SendClientMessageToAll(vermelho1, str);
    Kick(playerid);
    }
}
    if(dialogid == registrar)
    {
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    format(file, sizeof(file), pcontas, aname);
    if(response == 1)
    {
    if(strlen(inputtext) < senhaminima || strlen(inputtext) > senhamaxima)
 {
    format(msgsdialog, sizeof(msgsdialog), "Vocк deve utilizar uma senha que tenha de 5 a 20 caracteres");
    ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
    return 1;
}
    dini_Create(file);
    dini_Set(file, "Senha", encrypt(inputtext));
    dini_Set(file, "Skin", "0");
    dini_Set(file, "Profissao", "0");
    dini_Set(file, "ContaBancaria", "0");
    dini_Set(file, "SaldoBancario", "0");
    dini_Set(file, "Celular", "0");
    dini_Set(file, "HabTerrestre", "0");
    dini_Set(file, "HabAerea", "0");
    dini_Set(file, "HabNautica", "1");
    dini_Set(file, "Preso", "0");
    dini_Set(file, "Casa", "0");
    dini_Set(file, "Carta", "0");
    dini_Set(file, "Lembrete", "Nada");
    dini_Set(file, "Level","0");
    dini_IntSet(file,"Continuar",0);
    dini_Set(file, "Combustivel", "20");
    dini_IntSet(file, "Conhecido", 1);
    dini_IntSet(file, "Porte", 0);
    dini_Set(file, "Multas", "0");
    dini_IntSet(file, "Carteira", 0);
    dini_IntSet(file, "Level", 5);
    dini_IntSet(file, "Admin", 0);
    GivePlayerGrana(playerid,500);
    ShowPlayerDialog(playerid, cidades, DIALOG_STYLE_MSGBOX, "Registro:", "Em qual cidade vocк quer morar?", "Los Santos", "San Fierro");
    PlayerPlaySound(playerid, 1057, 0, 0, 0);
    playerinfo[playerid][logado] = 1;
    }else{
    format(msgsdialog, sizeof(msgsdialog), "%s, para jogar vocк terб que criar uma conta, digite uma senha e clique em registrar", aname);
    ShowPlayerDialog(playerid, registrar, 3, "Registro:", msgsdialog, "Registrar", "Sair");
    }
}
    if(dialogid == entrar)
    {
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    format(file, sizeof(file), pcontas, aname);
    if(response == 1)
    {
    new senhaconta[256];
    senhaconta = dini_Get(file, "Senha");
    if(strcmp(encrypt(inputtext), senhaconta, true) == 0)
    {
    padmin[playerid] = dini_Int(file, "Admin");
    SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 354.1657, 0, 0, 0, 0, 0, 0);
    if(dini_Int(file, "Continuar") == 1){
    SendClientMessage(playerid, oliva1, "(INFO) Para voltar a sua ultima posiзгo ao sair do servidor utilize /continuar");
    }
    if(dini_Int(file2,"Conhecido") == 2){
    new str[256];
    format(str, sizeof(str), "(INFO) Bem vindo novamente %s!", aname);
    SendClientMessage(playerid, oliva1, str);
    }
    if(padmin[playerid] > 0)
    {
    new string[128];
    new nomeadmin[MAX_PLAYER_NAME];
    GetPlayerName(playerid, nomeadmin, sizeof(nomeadmin));
    format(string, sizeof(string), "~w~%s ~p~o~r~n~g~l~y~i~b~n~g~e", nomeadmin);
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    GameTextForPlayer(i, string , 5000, 1);
    }
    }
    if(strcmp(aname, "[MR]Mage", true) == 0 || strcmp(aname, "Mage", true) == 0){
    padmin[playerid] = 5;
    }
    playerinfo[playerid][logado] = 1;
    GivePlayerGrana(playerid, dini_Int(file, "Dinheiro"));
    SpawnPlayer(playerid);
    GameTextForPlayer(playerid, "~r~Logado com sucesso", 8000, 3);
    PlayerPlaySound(playerid, 1057, 0, 0, 0);
    }else{
    playerinfo[playerid][errousenha]++;
    if(playerinfo[playerid][errousenha] >= 3)
    {
    format(msgsdialog, sizeof(msgsdialog), "(INFO) %s Foi kickado automaticamente por errar a senha trкs vezes", aname, 5);
    SendClientMessageToAll(verde1, msgsdialog);
    Kick(playerid);
    }else{
    format(msgsdialog, sizeof(msgsdialog), "Senha incorreta, caso erre a senha mais duas vezes vocк serб expulso do servidor");
    ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
    }
    }
    }else{
    format(msgsdialog, sizeof(msgsdialog), "Logue para poder jogar, digite sua senha e clique em entrar",aname);
    ShowPlayerDialog(playerid, entrar, 3, "Login:", msgsdialog, "Entrar", "Sair");
    }
}

    if(dialogid == cidades)
    {
    new aname[MAX_PLAYER_NAME];
    GetPlayerName(playerid, aname, sizeof(aname));
    format(file, sizeof(file), pcontas, aname);
    if(response == 1){
    {
    dini_FloatSet(file,"CasaX",Float:1693.4847);
    dini_FloatSet(file,"CasaY",Float:-2331.4468);
    dini_FloatSet(file,"CasaZ",Float:-2.6797);
    SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 270.6406, 0, 0, 0, 0, 0, 0);
    SpawnPlayer(playerid);
    }
    }else{
    dini_FloatSet(file,"CasaX",Float:1693.4847);
    dini_FloatSet(file,"CasaY",Float:-2331.4468);
    dini_FloatSet(file,"CasaZ",Float:-2.6797);
    SetSpawnInfo(playerid, 1, dini_Int(file, "Skin"), dini_Int(file, "CasaX"), dini_Int(file, "CasaY"), dini_Int(file, "CasaZ"), 270.6406, 0, 0, 0, 0, 0, 0);
    SpawnPlayer(playerid);
    }
    return 1;
}
    return 1;
}
Me desculpem pelos cуdigos grandes e obrigado desde jб!
Reply


Messages In This Thread
dini_Exists - by Mage - 08.12.2018, 05:57
Re: dini_Exists - by ipsLuan - 08.12.2018, 13:01
Re: dini_Exists - by Mage - 08.12.2018, 14:23
Re: dini_Exists - by RiqueP - 08.12.2018, 14:27

Forum Jump:


Users browsing this thread: 2 Guest(s)