SA-MP Forums Archive
[Ajuda] Sobre Kikcar - 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] Sobre Kikcar (/showthread.php?tid=527763)



Sobre Kikcar - FernandoSS - 24.07.2014

Estou com uma dificuldade em como fazer um player ser kickado ao apertar sair de um menu, nгo dialogs.
Por que esta acontecendo o seguinte.
O player vai se cadastrar, ai abre um menu com as opзoes, se ele der esc, ele consegue jogar mas nao fica registrado, e se ele apertar sair, acontece o mesmo.
Quero saber se tem como ou o que fazer para o player ser kickado ao fazer isso.

Menu que abre para o player
pawn Код:
if(dialogid == DIALOG_MENU)
    {
        if(response)
        {
            if(listitem == 0)
            {
                GetPlayerName(playerid, StrContas, sizeof(StrContas));
                format(StrContas, sizeof(StrContas), "Contas/%s.ini", Nome(playerid));
                if(!DOF2_FileExists(StrContas))
                {
                     ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "{FFFFFF}Server - Registro", "{FFFFFF}Bem vindo ao servidor vocк nгo possue registro conosco\n{FFFFFF}Digite uma senha para pode se registrar.", "Registrar", "Cancelar");
                }
                else
                {
                    SendClientMessage(playerid, VERMELHO, "| INFO | {FFFFFF}Vocк foi expulso do servidor. {FF0000}Motivo: {FFFFFF}Cancelou o Registro!");
                    SetTimerEx("Kickar", 500, false, "d", playerid);
                    return 1;
                }
            }
        }
    }



Re: Sobre Kikcar - darkxdll - 24.07.2014

PHP код:
"response" .

if(
response//clicou no botгo 1
{
//funзхes.... lists , inputs etc
}else if(!response)//clicou no botгo 2 ou apertou Esc .. 
{
Kick(playerid);




Re: Sobre Kikcar - FernandoSS - 24.07.2014

Quote:
Originally Posted by darkxdll
Посмотреть сообщение
PHP код:
"response" .
if(
response//clicou no botгo 1
{
//funзхes.... lists , inputs etc
}else if(!response)//clicou no botгo 2 ou apertou Esc .. 
{
Kick(playerid);

Fiz do jeito que vc me deu, mas continua nгo kickando.

pawn Код:
if(dialogid == DIALOG_MENU)
    {
        if(response)
        {
            if(listitem == 0)
            {
                GetPlayerName(playerid, StrContas, sizeof(StrContas));
                format(StrContas, sizeof(StrContas), "Contas/%s.ini", Nome(playerid));
                if(!DOF2_FileExists(StrContas))
                {
                     ShowPlayerDialog(playerid, DIALOG_REGISTRO, DIALOG_STYLE_INPUT, "{FFFFFF}Server - Registro", "{FFFFFF}Bem vindo ao servidor vocк nгo possue registro conosco\n{FFFFFF}Digite uma senha para pode se registrar.", "Registrar", "Cancelar");
                }
                else if(!response)
                {
                    SendClientMessage(playerid, VERMELHO, "| INFO | {FFFFFF}Vocк foi expulso do servidor. {FF0000}Motivo: {FFFFFF}Cancelou o Login!");
                    SetTimerEx("Kickar", 500, false, "d", playerid);
                    return 1;
                }
            }
        }
    }



Re: Sobre Kikcar - BrunoPasqualini - 24.07.2014

pawn Код:
if(listitem == 0)
            {
                GetPlayerName(playerid, StrContas, sizeof(StrContas));
                format(StrContas, sizeof(StrContas), "Contas/%s.ini", Nome(playerid));
                if(!DOF2_FileExists(StrContas))
                {
                    /// Se ele nгo tiver conta vai entrar aqui e nгo vai executar o else if(!response)
                    /// entгo verifica primeiro o response pra ver se funciona
                }
                else if(!response)
                {
                    ///Aqui provavelmente sу vai cair quando tiver conta e o response for false
                }
            }



Re: Sobre Kikcar - FernandoSS - 24.07.2014

Entгo, foi isso que eu fiz, mas ainda continua nao kickando.
Tem alguma coisa haver porque й menu, igual menu de escolher profs, e nao dialog input, box....
Porque na onPlayerConnect la ele chama o menu que tem a opзao de registrar, e se eu clicar nela, ela abre o dialog de registro, se eu nao me registrar eu sou kickado, mas sу que eu queria que se ele sair do menu principal tbm ser kickado, e isso nao esta acontecendo.


Re: Sobre Kikcar - BrunoPasqualini - 24.07.2014

tipo depois de vocк comparar o id do dialog vocк compara se o response


Re: Sobre Kikcar - UPsamp - 24.07.2014

PHP код:
if(dialogid == DIALOG_MENU)
{
    
    if(
response)
    {
        
        if(
listitem == 0)
        {
            
            
GetPlayerName(playeridStrContassizeof(StrContas));
            
format(StrContassizeof(StrContas), "Contas/%s.ini"Nome(playerid));
            if(!
DOF2_FileExists(StrContas))
            {
                
                
ShowPlayerDialog(playeridDIALOG_REGISTRODIALOG_STYLE_INPUT"{FFFFFF}Server - Registro""{FFFFFF}Bem vindo ao servidor vocк nгo possue registro conosco\n{FFFFFF}Digite uma senha para pode se registrar.""Registrar""Cancelar");
            }
        }
    }
    else {
        
SendClientMessage(playeridVERMELHO"| INFO | {FFFFFF}Vocк foi expulso do servidor. {FF0000}Motivo: {FFFFFF}Cancelou o Registro!");
        
SetTimerEx("Kickar"500false"d"playerid);
        return 
1;
    }
    return 
1;