SA-MP Forums Archive
[Ajuda] Spawn Sem Logar - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Spawn Sem Logar (/showthread.php?tid=472986)



Spawn Sem Logar - Ever_SH - 31.10.2013

Bom eu uso um sistema de login em SII, só que os players conseguem spawnar sem login.

Tentei resolver da seguinte maneira:

News:
Код:
new bool:PlayerLogado[MAX_PLAYERS];
OnPlayerConnect:
Код:
PlayerLogado[playerid] = false;
Junto ao carregamento de dados do player ao apertar logar com a senha correta:
Код:
PlayerLogado[playerid] = true;
OnPlayerRequestClass:
Код:
if(PlayerLogado[playerid]) return GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",7000,4);
Com isso que eu fiz, não aparece mais as skins, e a camera não muda, mas o player clica em logoar sem digitar a senha e continua na mesma tela, só que dai em baixo da dialog de login aparece o botão spawn e da para spawnar.


Re: Spawn Sem Logar - smiiir - 31.10.2013

pawn Код:
if(PlayerLogado[playerid] == false ) return GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",7000,4);



Re: Spawn Sem Logar - Ever_SH - 31.10.2013

Quote:
Originally Posted by iSmirnoff
Посмотреть сообщение
pawn Код:
if(PlayerLogado[playerid] == false ) return GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",7000,4);
Não funciono, fiz isso e agora ainda mostra as skins.


Re: Spawn Sem Logar - smiiir - 31.10.2013

Vocк estб teleportando o jogador depois que ele faz o login?

se nгo use quando ele clicar em login e checar se a senha ta certo
https://sampwiki.blast.hk/wiki/SetSpawnInfo


Re: Spawn Sem Logar - Ever_SH - 31.10.2013

Quote:
Originally Posted by iSmirnoff
Посмотреть сообщение
Vocк estб teleportando o jogador depois que ele faz o login?

se nгo use quando ele clicar em login e checar se a senha ta certo
https://sampwiki.blast.hk/wiki/SetSpawnInfo
Desculpe mas não entendi.

Olha como esta:

OnPlayerConnect:

pawn Код:
public OnPlayerConnect(playerid)
{
    PlayerLogado[playerid] = false;
    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","Sair");
    }
    else
    {
        ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT,""BRANCO"Registrando",""BRANCO"Digite sua senha abaixo para registrar uma nova conta.","Registrar","Sair");
    }
    return 1;
}
OnPlayerRequestClass:

pawn Код:
public OnPlayerRequestClass(playerid, classid)
{
    if(PlayerLogado[playerid]) return GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4);
//Resto do code
e aquele pedaço que carrega os dados:

pawn Код:
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" ) );
                PlayerLogado[playerid] = true;
                PlayerInfo[playerid][pAdmin] = INI_ReadInt("Admin");
                INI_Close();



Re: Spawn Sem Logar - iDreak - 31.10.2013

pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
    GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
    return false;
}
else {
    return true;
}
//Resto do code



Re: Spawn Sem Logar - Ever_SH - 31.10.2013

Quote:
Originally Posted by iDreak
Посмотреть сообщение
pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
    GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
    return false;
}
else {
    return true;
}
//Resto do code
Não tem OnPlayerRequestSpawn no meu gm, então botei como você mostrou acima deu erro, então botei assim:
pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
    GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
    return false;
}
    else
{
    GameTextForPlayer(playerid,"~n~~n~~n~~g~Bom Jogo",3000,4) ;
    return true;
}
    return 1;
}
Deu warning 225: unreachable code

Linha:
pawn Код:
return 1;
@edit
troquei:
pawn Код:
if(PlayerLogado[playerid] == false)
por:

pawn Код:
if(PlayerLogado[playerid])
agora funciona certo, só que a warning continua.


Re: Spawn Sem Logar - iDreak - 31.10.2013

Basta vocк colocar assim:

pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
        GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
        return false;
    } else {
        GameTextForPlayer(playerid,"~n~~n~~n~~g~Bom Jogo",3000,4) ;
        return true;
    }
}



Re: Spawn Sem Logar - zSuYaNw - 31.10.2013

pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
    GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
    return false;
}
    GameTextForPlayer(playerid,"~n~~n~~n~~g~Bom Jogo",3000,4) ;
    return true;
}



Re: Spawn Sem Logar - iDreak - 31.10.2013

Quote:
Originally Posted by zSuYaNw
Посмотреть сообщение
pawn Код:
public OnPlayerRequestSpawn(playerid)
{
    if(PlayerLogado[playerid] == false) {
    GameTextForPlayer(playerid,"~n~~n~~n~~r~Logue-se primeiro",3000,4) ;
    return false;
}
    GameTextForPlayer(playerid,"~n~~n~~n~~g~Bom Jogo",3000,4) ;
    return true;
}
isso nгo irб funcionar.

Vocк nгo colocou o else entao a callback irб retornar false sempre