[AJUDA]Quiz com dialog com tempo para responder
#1

Seguinte, estou a uns 3 dias tentando fazer um sistema de quiz com um tempo para responder exemplo : (tipo, o player que apertar F no нcone,naquele momento iniciaria um quiz em "DIALOG_STYLE_LIST",com tempo de 15 segundos para ele responder, do contrбrio ele seria kickado do servidor). Estou buscando algum sistema parecido para o teste do meu batalhгo no servidor.

OBS : So para deixar claro, eu so preciso do sistema de cronometro, que se caso acabasse o tempo, o player que nгo respondeu seria kickado
OBS№: Sim ali esta kick ao inves de ban, pois eu estava testando, dps eu irei mudar para banir o player

Print de como eu queria mais ou menos : https://imgur.com/a/AtGlKCh

PHP код:
public OnDialogResponse(playeriddialogidresponselistiteminputtext[])
{
 if(
dialogid == pergunta_1// Pergunta nє 1 teste PM
    
{
    if(
response == 0)
            {
               new 
string[256];
            
format(stringsizeof(string), "-OpenServer- O Player {FFFFFF}%s {FF7777}foi banido pelo TH BOT por 5 dias | |  Motivo : Deu ESC na pergunta (Pergunta 1)"GetName(playerid));
            
SendClientMessageToAll(0xFF7777AAstring);
            
Kick(playerid);
            }
    if(
response >= 1)
        {
            new 
string[502];
            if(
listitem == 0)
            {
            
format(stringsizeof(string), "-OpenServer- O Player {FFFFFF}%s {FF7777}foi banido pelo TH BOT por 5 dias | |  Motivo : Errou a resposta (Pergunta 1)"GetName(playerid));
            
SendClientMessageToAll(0xFF7777AAstring);
            
Kick(playerid);
            }
            if(
listitem == 1)
            {
            
format(stringsizeof(string), "-OpenServer- O Player {FFFFFF}%s {FF7777}foi banido pelo TH BOT por 5 dias | |  Motivo : Errou a resposta (Pergunta 1)"GetName(playerid));
            
SendClientMessageToAll(0xFF7777AAstring);
            
Kick(playerid);
            }
            if(
listitem == 2)
            {
            
format(stringsizeof(string), "-OpenServer- O Player {FFFFFF}%s {FF7777}foi banido pelo TH BOT por 5 dias | |  Motivo : Errou a resposta (Pergunta 1)"GetName(playerid));
            
SendClientMessageToAll(0xFF7777AAstring);
            
Kick(playerid);
            }
            if(
listitem == 3)
            {
            
SendClientMessage(playeridCOR_PRINCIPAL,"Vocк acertou a pergunta e ganhou 10 pontos");
            
SetPlayerPos(playerid376.5,2501.9004,16.5000);
            }
            if(
listitem == 4)
            {
            
format(stringsizeof(string), "-OpenServer- O Player {FFFFFF}%s {FF7777}foi banido pelo TH BOT por 5 dias | |  Motivo : Errou a resposta (Pergunta 1)"GetName(playerid));
            
SendClientMessageToAll(0xFF7777AAstring);
            
Kick(playerid);
            }
        }
    } 
PHP код:
public OnPlayerKeyStateChange(playeridnewkeysoldkeys)
{
   if(
newkeys == KEY_SECONDARY_ATTACK//pergunta1a
    
{
   if(
IsPlayerInRangeOfPoint(playerid,2.0380.5,2501.9004,16.5000))
    
ShowPlayerDialog(playeridpergunta_1DIALOG_STYLE_LIST"Quem й(sгo) o(s) lider(es) do Batalhгo?""GuiH\nGuiH e Leo\nK2\nK2 e GuiH\nK2 e Leo""Responder""");
    }
          return 
1;
         } 
QUEM CONSEGUIR ME AJUDAR EU AGRADECERIA MUITO
E PARA QUEM QUISER PEGAR O SISTEMA, SINTA-SE A VONTADE
Reply
#2

PHP код:
new TempoPerguntaTimerPM[MAX_PLAYERS];
forward PerguntaPM(playerid);
public 
OnPlayerKeyStateChange(playeridnewkeysoldkeys

   if(
newkeys == KEY_SECONDARY_ATTACK//pergunta1a 
    

   if(
IsPlayerInRangeOfPoint(playerid,2.0380.5,2501.9004,16.5000)) 
    
ShowPlayerDialog(playeridpergunta_1DIALOG_STYLE_LIST"Quem й(sгo) o(s) lider(es) do Batalhгo?""GuiH\nGuiH e Leo\nK2\nK2 e GuiH\nK2 e Leo""Responder""");
TimerPM[playerid] = SetTimerEx("PerguntaPM"1000true"i"playerid); 
    } 
          return 
1
         }
public 
PerguntaPM(playerid);
{
TempoPergunta++;
if(
TempoPergunta == 15)
{
KillTimer(TimerPM[playerid]);
Kick(playerid);
}
return 
1;

Nгo sei se funciona, testa ae :v
Reply
#3

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
PHP код:
new TempoPerguntaTimerPM[MAX_PLAYERS];
forward PerguntaPM(playerid);
public 
OnPlayerKeyStateChange(playeridnewkeysoldkeys

   if(
newkeys == KEY_SECONDARY_ATTACK//pergunta1a 
    

   if(
IsPlayerInRangeOfPoint(playerid,2.0380.5,2501.9004,16.5000)) 
    
ShowPlayerDialog(playeridpergunta_1DIALOG_STYLE_LIST"Quem й(sгo) o(s) lider(es) do Batalhгo?""GuiH\nGuiH e Leo\nK2\nK2 e GuiH\nK2 e Leo""Responder""");
TimerPM[playerid] = SetTimerEx("PerguntaPM"1000true"i"playerid); 
    } 
          return 
1
         }
public 
PerguntaPM(playerid);
{
TempoPergunta++;
if(
TempoPergunta == 15)
{
KillTimer(TimerPM[playerid]);
Kick(playerid);
}
return 
1;

Nгo sei se funciona, testa ae :v
Deram esses erros
Код:
C:\Users\Guilherme\Desktop\Gta Mods e outras coisas\Servidor\gamemodes\FTA1.pwn(3424) : error 055: start of function body without function header
C:\Users\Guilherme\Desktop\Gta Mods e outras coisas\Servidor\gamemodes\FTA1.pwn(3426) : error 010: invalid function or declaration
C:\Users\Guilherme\Desktop\Gta Mods e outras coisas\Servidor\gamemodes\FTA1.pwn(3431) : error 010: invalid function or declaration
C:\Users\Guilherme\Desktop\Gta Mods e outras coisas\Servidor\gamemodes\FTA1.pwn(3433) : warning 203: symbol is never used: "TempoPergunta"
C:\Users\Guilherme\Desktop\Gta Mods e outras coisas\Servidor\gamemodes\FTA1.pwn(3433) : warning 203: symbol is never used: "TimerPM"
Pawn compiler 3.2.3664	 	 	Copyright © 1997-2006, ITB CompuPhase


3 Errors.
Essas sгo as linhas que estгo dando erro
PHP код:
public PerguntaPM(playerid);
3424. {
        
TempoPergunta++;
3426.    if(TempoPergunta == 15)
  {
        
KillTimer(TimerPM[playerid]);
        
Kick(playerid);
  }
3431.    return 1;

Reply
#4

PHP код:

new TempoPergunta;
new 
TimerPergunta[MAX_PLAYERS];
forward PerguntaPM(playerid);
public 
PerguntaPM(playerid)
{
    
TempoPergunta++;
    if(
TempoPergunta == 15)
    {
        
KillTimer(TimerPergunta[playerid]);
        
Kick(playerid);
    }
    return 
1;

Adiciona isso na hora que aparecer a pergunta :

PHP код:

TimerPergunta
[playerid] = SetTimerEx("PerguntaPM"1000true"i"playerid); 
Nгo testei , porйm nгo apresentou nenhum erro no compilador.
Reply
#5

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
PHP код:

new TempoPergunta;
new 
TimerPergunta[MAX_PLAYERS];
forward PerguntaPM(playerid);
public 
PerguntaPM(playerid)
{
    
TempoPergunta++;
    if(
TempoPergunta == 15)
    {
        
KillTimer(TimerPergunta[playerid]);
        
Kick(playerid);
    }
    return 
1;

Adiciona isso na hora que aparecer a pergunta :

PHP код:

TimerPergunta
[playerid] = SetTimerEx("PerguntaPM"1000true"i"playerid); 
Nгo testei , porйm nгo apresentou nenhum erro no compilador.
Cara obg, nгo deu erro na compilaзгo, mas no server esse sistema esta afetando todos os нcones atй o sistema de tutorial que eu adicionei(que tbm й clicando pelo нcone), sabe como consertar?

Print : https://imgur.com/RtM2aCk
Reply
#6

Quote:
Originally Posted by GuiH
Посмотреть сообщение
Cara obg, nгo deu erro na compilaзгo, mas no server esse sistema esta afetando todos os нcones atй o sistema de tutorial que eu adicionei(que tbm й clicando pelo нcone), sabe como consertar?

Print : https://imgur.com/RtM2aCk
Quais icones? Mapa ? Pickups?
Reply
#7

Quote:
Originally Posted by Cauezin
Посмотреть сообщение
Quais icones? Mapa ? Pickups?
Pickups
Reply
#8

Quote:
Originally Posted by GuiH
Посмотреть сообщение
Pickups
O que aconteceu com elas ? pela print que vocк me mandou , estб normal as pickups , explique o que estб acontecendo e se precisar tire prints.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)