[AJUDA] Rampa e Sistema de login
#1

Olб,gostaria de saber como eu faзo para esse sistema que peguei de um tutorial,salvasse Skin e wanted level
pawn Код:
#include <a_samp>
    #include <SII>

    #define DIALOG_REGISTRO 2000
    #define DIALOG_LOGAR 2001

    #define BRANCO "{FFFFFF}"
    #define VERMELHO "{F81414}"
    #define VERDE "{00FF22}"
    #define AZUL CLARO "{00CED1}"

    new gPlayerName[MAX_PLAYERS][MAX_PLAYER_NAME];

    enum pInfo
    {
        pSenha,
        pScore,
        pDinheiro,
        pAdmin
    }


    new PlayerInfo[MAX_PLAYERS][pInfo];

    stock ObterINI(playerid)
    {
        new conta[64];
        format(conta,30,"Contas/%s.ini",gPlayerName[playerid]);
        return conta;
    }

    public OnPlayerConnect(playerid)
    {
        GetPlayerName(playerid, gPlayerName[playerid], MAX_PLAYER_NAME);
        if (fexist(ObterINI(playerid))) {
            ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT,""BRANCO"Login",""BRANCO"Digite sua senha abaixo para efetuar login.","logar","Quit");
        }
        else {
            ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT,""BRANCO"Registrando",""BRANCO"Digite sua senha abaixo para registrar uma nova conta.","Registrar","Quit");
        }
        return 1;
    }

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
        switch( dialogid ) {
            case DIALOG_REGISTRO:
            {
                if (!response) return Kick(playerid);
                if (response) {
                    if(!strlen(inputtext)) {
                        ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, ""BRANCO"Registrando...",""VERMELHO"Vocк digitou uma senha invбlida.\n"BRANCO"Digite sua senha abaixo para registrar uma nova conta.","Registro","Quit");
                    }

                    if(INI_Open(ObterINI(playerid))) {
                        INI_WriteString("Senha",inputtext);
                        INI_WriteInt("Score",1);
                        INI_WriteInt("Dinheiro",5000);
                        INI_WriteInt("Admin",0);
                        INI_Save();
                        INI_Close();
                        ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT,""BRANCO"Logar",""BRANCO"Digite sua senha abaixo para efetuar login.","Logar","Quit");
                    }
                }
            }
            case DIALOG_LOGAR:
            {
                if ( !response ) return Kick ( playerid );
                if( response ) {
                    if(!strlen(inputtext)) {
                        ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT, ""BRANCO"Logar",""VERMELHO"Vocк digitou uma senha invбlida.\n"BRANCO"Digite sua senha abaixo para efetuar login.","Logar","Quit");
                    }

                    if(INI_Open(ObterINI(playerid))) {
                        INI_ReadString(PlayerInfo[playerid][pSenha],"Senha",20);

                        if(strcmp(inputtext,PlayerInfo[playerid][pSenha],false)) {
                            ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT, ""BRANCO"Logar",""VERMELHO"Vocк digitou uma senha incorreta.\n"BRANCO"Digite sua senha abaixo para acessar.","Logar","Quit");
                        }

                        SetPlayerScore( playerid, INI_ReadInt("Score" ) );
                        ResetPlayerMoney( playerid );
                        GivePlayerMoney( playerid, INI_ReadInt( "Dinheiro" ) );
                        PlayerInfo[playerid][pAdmin] = INI_ReadInt("Admin");
                        INI_Close();
                        SpawnPlayer(playerid);
                    }
                }
            }
        }
        return 1;
    }

    public OnPlayerDisconnect(playerid, reason)
    {
        if(INI_Open(ObterINI(playerid))) {

            INI_WriteInt("Score",PlayerInfo[playerid][pScore]);
            INI_WriteInt("Dinheiro",GetPlayerMoney(playerid));
            INI_WriteInt("Admin",PlayerInfo[playerid][pAdmin]);
            INI_Save();
            INI_Close();
        }
        return 1;
    }
E gostaria de saber como faзo um comando para aparecer uma rampa na frente ao apertar CTRL...obrigado
Reply
#2

pawn Код:
INI_WriteInt("Skin",GetPlayerSkin(playerid));
(para salvar)
pawn Код:
INI_WriteInt("Skin",15);
// comesar com skin 15 poen no registro
pawn Код:
GetPlayerSkin(playerid, INI_ReadInt("Skin" ));
no login // nao sei se vai funcionar nao mecho com INI
Reply
#3

pawn Код:
#include <a_samp>
#include <SII>

#define DIALOG_REGISTRO 2000
#define DIALOG_LOGAR 2001

#define BRANCO "{FFFFFF}"
#define VERMELHO "{F81414}"
#define VERDE "{00FF22}"
#define AZUL CLARO "{00CED1}"

new gPlayerName[MAX_PLAYERS][MAX_PLAYER_NAME];

enum pInfo
{
    pSenha,
    pScore,
    pDinheiro,
    pAdmin,
    pSkin,
    pWanted
}


new PlayerInfo[MAX_PLAYERS][pInfo];

stock ObterINI(playerid)
{
    new conta[64];
    format(conta,30,"Contas/%s.ini",gPlayerName[playerid]);
    return conta;
}

public OnPlayerConnect(playerid)
{
    GetPlayerName(playerid, gPlayerName[playerid], MAX_PLAYER_NAME);
    if (fexist(ObterINI(playerid))) {
        ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT,""BRANCO"Login",""BRANCO"Digite sua senha abaixo para efetuar login.","logar","Quit");
    }
    else {
        ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT,""BRANCO"Registrando",""BRANCO"Digite sua senha abaixo para registrar uma nova conta.","Registrar","Quit");
    }
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    switch( dialogid ) {
        case DIALOG_REGISTRO:
        {
            if (!response) return Kick(playerid);
            if (response) {
                if(!strlen(inputtext)) {
                    ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, ""BRANCO"Registrando...",""VERMELHO"Vocк digitou uma senha invбlida.\n"BRANCO"Digite sua senha abaixo para registrar uma nova conta.","Registro","Quit");
                }

                if(INI_Open(ObterINI(playerid))) {
                    INI_WriteString("Senha",inputtext);
                    INI_WriteInt("Score",1);
                    INI_WriteInt("Dinheiro",5000);
                    INI_WriteInt("Admin",0);
                    INI_WriteInt("Skin",0);
                    INI_WriteInt("Procura",0);
                    INI_Save();
                    INI_Close();
                    ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT,""BRANCO"Logar",""BRANCO"Digite sua senha abaixo para efetuar login.","Logar","Quit");
                }
            }
        }
        case DIALOG_LOGAR:
        {
            if ( !response ) return Kick ( playerid );
            if( response ) {
                if(!strlen(inputtext)) {
                    ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT, ""BRANCO"Logar",""VERMELHO"Vocк digitou uma senha invбlida.\n"BRANCO"Digite sua senha abaixo para efetuar login.","Logar","Quit");
                }

                if(INI_Open(ObterINI(playerid))) {
                    INI_ReadString(PlayerInfo[playerid][pSenha],"Senha",20);

                    if(strcmp(inputtext,PlayerInfo[playerid][pSenha],false)) {
                        ShowPlayerDialog(playerid, DIALOG_LOGAR, DIALOG_STYLE_INPUT, ""BRANCO"Logar",""VERMELHO"Vocк digitou uma senha incorreta.\n"BRANCO"Digite sua senha abaixo para acessar.","Logar","Quit");
                    }

                    SetPlayerScore( playerid, INI_ReadInt("Score" ) );
                    ResetPlayerMoney( playerid );
                    GivePlayerMoney( playerid, INI_ReadInt( "Dinheiro" ) );
                    PlayerInfo[playerid][pAdmin] = INI_ReadInt("Admin");
                    PlayerInfo[playerid][pSkin] = INI_ReadInt("Skin");
                    PlayerInfo[playerid][pWanted] = INI_ReadInt("Procura");
                    SetPlayerSkin(playerid, PlayerInfo[playerid][pSkin]);
                    SetPlayerWantedLevel(playerid, PlayerInfo[playerid][pWanted]);
                    INI_Close();
                    SpawnPlayer(playerid);
                }
            }
        }
    }
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    if(INI_Open(ObterINI(playerid))) {

        INI_WriteInt("Score",PlayerInfo[playerid][pScore]);
        INI_WriteInt("Dinheiro",GetPlayerMoney(playerid));
        INI_WriteInt("Admin",PlayerInfo[playerid][pAdmin]);
        INI_WriteInt("Skin",GetPlayerSkin(playerid));
        INI_WriteInt("Procura",PlayerInfo[playerid][pWanted]);
        INI_Save();
        INI_Close();
    }
    return 1;
}
Reply
#4

ae por que quando eu copio e colo o coder vem tudo 1 na frente do outro nao tem como nem ajudar tenho apenas que mandar por parte =[
Reply
#5

Perfeito,obrigado б vocкs...
Reply


Forum Jump:


Users browsing this thread: 3 Guest(s)