11.07.2011, 01:53
Pessoal to com um problema no OnPlayerText. eu fiz umas questхes para responder quando o jogador for novato:
Mais eu respondo a 1, e a 2 daн volta para o 1 ao invйs de ir para 3. alguйm ajuda aн por favor
pawn Код:
public OnPlayerText(playerid, text[])
{
new idx;
new tmp[256];
tmp = strtok(text, idx);
if(JogadorInfo[playerid][Pergunta] == 0)
{
Pergunt = 1;
SendClientMessage(playerid, COLOR_GREEN, "--[Seja Bem-Vindo ao Servidor de Pilotos]--");
SendClientMessage(playerid, COLOR_RED, "------Questгo 1: O que й um Piloto?------");
SendClientMessage(playerid, COLOR_WHITE, "1: Piloto й um Motorista que dirige o carro levando pessoas para viajar");
SendClientMessage(playerid, COLOR_WHITE, "2: Piloto й um Homem que trabalha em um restaurante entregando refeiзхes");
SendClientMessage(playerid, COLOR_WHITE, "3: Piloto й Alguйm que Pilota uma aeronave, viajando a vбrios paнses e levando...");
SendClientMessage(playerid, COLOR_WHITE, "... passageiros para o seu destino e que treina sempre.");
if((strcmp("3", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("3")))
{
Questao += 1;
Pergunt = 2;
Porcento += 30;
Final = 0;
}
else
{
Pergunt = 2;
Final = 0;
return 0;
}
if(Pergunt == 2)
{
SendClientMessage(playerid, COLOR_RED, "------Questгo 2: Explique o que й ADF?------");
SendClientMessage(playerid, COLOR_WHITE, "1: ADF - Automatic Direction Finder, Acha a Rota desejada para o Aviгo");
SendClientMessage(playerid, COLOR_WHITE, "2: ADF - Бgua Dura Federaзгo");
SendClientMessage(playerid, COLOR_WHITE, "3: ADF - Й uma coisa que tem no carro?");
if((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))
{
Questao2 += 1;
Pergunt = 3;
Porcento += 30;
Final = 0;
}
else
{
Pergunt = 3;
Final = 0;
return 0;
}
}
if(Pergunt == 3)
{
SendClientMessage(playerid, COLOR_RED, "------Questгo 3: O que й TCAS?------");
SendClientMessage(playerid, COLOR_WHITE, "1: TCAS - Traffic Collision Avoidance System");
SendClientMessage(playerid, COLOR_WHITE, "2: TCAS - Transiзгo Cara Apagar Sistema");
SendClientMessage(playerid, COLOR_WHITE, "3: TCAS - Serve para formatar o computador");
if((strcmp("1", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("1")))
{
Questao3 += 1;
Porcento += 40;
Final = 1;
}
else
{
Final = 1;
return 0;
}
if(Questao == 1 && Final == 1)
{
SendClientMessage(playerid, COLOR_GREEN, "Vocк passou a Primeira Questгo");
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "Vocк errou a Primeira Questгo");
//return 1;
}
if(Questao2 == 2 && Final == 1)
{
SendClientMessage(playerid, COLOR_GREEN, "Vocк passou a Segunda Questгo");
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "Vocк errou a Segunda Questгo");
//return 1;
}
if(Questao3 == 3 && Final == 1)
{
SendClientMessage(playerid, COLOR_GREEN, "Vocк passou a Terceira Questгo");
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "Vocк errou a Terceira Questгo");
//return 1;
}
if(Porcento == 100 && Final == 1)
{
SendClientMessage(playerid, COLOR_GREEN, "Vocк foi aprovado no teste!");
new string[64], Enviador[MAX_PLAYER_NAME];
GetPlayerName(playerid,Enviador,MAX_PLAYER_NAME);
format(string,sizeof string,"[Servidor de Pilotos] %s passou o teste de Aviaзгo e foi aprovado! Boas Vindas a Ele!",Enviador);
SendClientMessageToAll(COLOR_GREEN,string);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_RED, "Vocк foi Reprovado");
Kick(playerid);
return 1;
}
}
}
return 1;
}