07.04.2011, 19:38
(
Последний раз редактировалось JonathanFeitosa; 24.01.2015 в 21:34.
Причина: Estб Em Atualizaзгo.
)
Agora que aprendemos a Mexer Com Dialog List,( Sem Ler Tem Perigo De Nгo Aprender ), Vamos Criar Abaixo Um Sistema Simples De GPS e Teleporte em Dialog.
Primeiramente vamos definir nosso dialog no topo do GM.
Agora Vamos Fazer o Comando para abrir nosso dialog. Esse serб nosso Dialog Principal.
Ao Digitar o Comando Acima Irб Aparecer o Dialog abaixo:
Agora Vamos Definir Cada Dialog o +1 +2 +3, Porque Tem Isso No Final ? Para Nгo Definir De novo.
Dialog +1 Ou Seja Corrida Que й o Primeiro
Dialog +2 Ou Seja DM
Dialog +3 Ou Seja Stunt =D
Antes de Comeзar Aprenda Sobre a Funзгo: SetPlayerCheckpoint
Ela й Usado Para Setar Um Checkpoint, Ou Seja Ao Digitar Algum Comando Ela Cria, й Para Que o Player Pise Nela й Desative, Use o DisablePlayerCheckpoint. ( Isso й Tudo Muito Fбcil By: Professor de Fнsica. " Nem й " )
Vamos Definir Nosso Dialog No Topo
Por que Definir ? Para Nгo Ficar Bagunзado. Caso Queira Fazer Vбrias Que Nem o De Cima.
Agora Vamos Criar Nosso Comando Em Dialog.
Vamos Criar o Dialog Agora Abaixo :
Para Destruir CheckPoint ao Chegar.
PS : Se Nгo Entendeu Adicione Meu MSN Ou Mande Pelo MP Para Tirar Dъvidas.
PS2 : Para Aprender Vocк Tem que Saber o Bбsico Como Criar um Dialog.
PS3 : Erros Mandar Por MP Ou MSN.
PS4 :"Atualizado !
ATUALIZADO
Criando Teleporte Em Dialog
Primeiramente vamos definir nosso dialog no topo do GM.
pawn Код:
#define Teleporte 1
// Cuidado para Nгo ter Algum Dialog Definido Como " 1 "
pawn Код:
if(!strcmp("/teleportes", cmdtext, true))
{
ShowPlayerDialog(playerid, Teleporte, DIALOG_STYLE_LIST, "Tutorial - Teleporte Avanзado", "Corrida\nDM\nStunt", "Selecionar", "Sair");
// List 1(Corrida), List 2 (DM), List 3 (Stunt). Botгo 1 ( Selecionar ) Botгo 2 ( Sair )
return true;
}
pawn Код:
if(dialogid == Teleporte)// Dialog Definido no TOPO !
{
if(response) // Ao apertar Selecionar
{
if(listitem == 0) // Esse й o "Corrida " Ou Seja " Lista 1 do Dialog Principal "
{
ShowPlayerDialog(playerid, Teleporte+1, DIALOG_STYLE_LIST, "Tutorial - Teleporte - Corrida", "Corrida 1\nCorrida 2", "Correr", "Sair");
// Preste Atenзгo nas ' Listas '. List 1 ( Corrida 1 ) List 2 ( Corrida 2 )
return true;
}
else if(listitem == 1) // Esse й o "DM " Ou Seja " Lista 2 do Dialog Principal "
{
ShowPlayerDialog(playerid, Teleporte+2, DIALOG_STYLE_LIST, "Tutorial - Teleporte - DM ", "DM 1\nDM 2", "Correr", "Sair");
// List 1 - ( DM 1 ) List 2 ( DM 2 )
return true;
}
else if(listitem == 2) // Esse й o "Stunt" Ou Seja " Lista 3 do Dialog Principal "
{
ShowPlayerDialog(playerid, Teleporte+3, DIALOG_STYLE_LIST, "Tutorial - Teleporte - Stunt", "Stunt 1\nStun 2", "Correr", "Sair");
// List 1 - ( Stunt 1 ) List 2 ( Stunt 2 )
return true;
}
}
return true;
}
Dialog +1 Ou Seja Corrida Que й o Primeiro
pawn Код:
if(dialogid == Teleporte+1) // Dialog +1! ( CORRIDA )
{
if(response) // Botгo
{
if(listitem == 0) // Esse й o "Corrida 1 " Ou Seja " Lista 1 "
{ // Ao Apertar na List 1 Da Corrida Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // 100 de Colete
SetPlayerHealth(playerid, 100.0); // 100 de Sangue
return true;
}
else if(listitem == 1) // Esse й o "Corrida 2 " Ou Seja " Lista 2 "
{// Ao Apertar na List 2 Da Corrida Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // Colete
SetPlayerHealth(playerid, 100.0); // Sangue
return true;
}
}
return true;
}
pawn Код:
if(dialogid == Teleporte+2) // Dialog +2! DM =D
{
if(response)
{
if(listitem == 0) // Esse й o "DM 1" Ou Seja " Lista 1 "
{// Ao Apertar na List 1 Do DM Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // Colete
SetPlayerHealth(playerid, 100.0); // Sangue
return true;
}
else if(listitem == 1) // // Esse й o "DM 1" Ou Seja " Lista 2 "
{// Ao Apertar na List 2 Do DM Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // Colete
SetPlayerHealth(playerid, 100.0); // Sangue
return true;
}
}
return true;
}
pawn Код:
if(dialogid == Teleporte+3)// Dialog +3! STUNT :D
{
if(response)
{
if(listitem == 0) // Esse й o "Stunt 1" Ou Seja " Lista 1 "
{// Ao Apertar na List 1 Do Stunt Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // Colete
SetPlayerHealth(playerid, 100.0); // Sangue
return true;
}
else if(listitem == 1) // // Esse й o "Stunt 2" Ou Seja " Lista 2 "
{ // Ao Apertar na List 2 Do Stunt Aparecerб Abaixo :
// Coloque a Funзгo Do Teleporte Abaixo ! Uma Simples Abaixo :
ResetPlayerWeapons(playerid); // Resetar Armas.
SetPlayerPos(playerid,2077.7263,-2402.8582,13.5469); // Coodernadas Onde Ele Vai
SetPlayerArmour(playerid, 100.0); // Colete
SetPlayerHealth(playerid, 100.0); // Sangue
return true;
}
}
return true;
}
Criando um GPS Avanзado
Antes de Comeзar Aprenda Sobre a Funзгo: SetPlayerCheckpoint
Ela й Usado Para Setar Um Checkpoint, Ou Seja Ao Digitar Algum Comando Ela Cria, й Para Que o Player Pise Nela й Desative, Use o DisablePlayerCheckpoint. ( Isso й Tudo Muito Fбcil By: Professor de Fнsica. " Nem й " )
Vamos Definir Nosso Dialog No Topo
pawn Код:
#define GPS 1212
// Cuidado para Nгo ter Algum Dialog Definido Como " 1212 "
Agora Vamos Criar Nosso Comando Em Dialog.
pawn Код:
if(!strcmp("/gps", cmdtext, true))
{
ShowPlayerDialog(playerid, GPS, DIALOG_STYLE_LIST, "CABECALHO DIALOG", "EXEMPLO:DP\nEXEMPLO:PREFEITURA\nEXEMPLO:JFS\nEXEMPLO:EUOWNA", "Selecionar", "Cancelar");
return true;
}
pawn Код:
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == GPS) // Definido la em cima
{
if(response) // Botгo
{ // SELECIONANDO AS OPЗХES IRБ ABRIR :
if(listitem == 0) // LISTA 1 OU SEJA - EXEMPLO DP
{
// TROQUE A COODERNADA PARA ONDE IRБ APARECER O CHECKPOINT
SetPlayerCheckpoint(playerid, 1477.1025,-1764.2405,18.7958,8.0);//Checkpoint Onde aparecerar
SendClientMessage(playerid, 0xFFFFFFAA, "Va Atй o Checkpoint Vermelho em Seu Mapa.");
return true;
}
if(listitem == 1) // EXEMPLO PREFEITURA
{
// TROQUE A COODERNADA PARA ONDE IRБ APARECER O CHECKPOINT
SetPlayerCheckpoint(playerid, 1543.8772,-1676.4253,13.5573,8.0);
SendClientMessage(playerid, 0xFFFFFFAA, "Va Atй o Checkpoint Vermelho em Seu Mapa.");
return true;
}
if(listitem == 2) // EXEMPLO : JFS
{
//Uma Simples Funзгo Abaixo
// TROQUE A COODERNADA PARA ONDE IRБ APARECER O CHECKPOINT
SetPlayerCheckpoint(playerid, 641.8575,-1356.3243,13.4008,8.0);
SendClientMessage(playerid, 0xFFFFFFAA, "Va Atй o Checkpoint Vermelho em Seu Mapa.");
return true;
}
if(listitem == 3) // EXEMPLO EU OWNA
{
//Uma Simples Funзгo Abaixo
// TROQUE A COODERNADA PARA ONDE IRБ APARECER O CHECKPOINT
SetPlayerCheckpoint(playerid, 2478.9063,-1519.4604,23.9956,8.0);
SendClientMessage(playerid, 0xFFFFFFAA, "Va Atй o Checkpoint Vermelho em Seu Mapa.");
return true;
}
}
}
return false;
}
pawn Код:
public OnPlayerEnterCheckpoint(playerid) // Ao Chegar no Checkpoint
{
DisablePlayerCheckpoint(playerid); // Destruirб ao Ficar em Cima Dele.
return true;
}
PS2 : Para Aprender Vocк Tem que Saber o Bбsico Como Criar um Dialog.
PS3 : Erros Mandar Por MP Ou MSN.
PS4 :"Atualizado !
Crйditos : Jonathan Feitosa
ATUALIZADO