08.03.2012, 04:20
(
Последний раз редактировалось Đeagle; 08.03.2012 в 15:52.
)
E aн pessoal.
Eu procurei й nгo achei nada relacionado a isso, entгo eu resolvi criar um tutorial, ensinando passo-a-passo de como criar um Menu usando a include ZCMD, que e praticamente a mais utilizada atualmente.
Introduзгo
# Primeiramente vocк terб que ter a include ZCMD, й уbvio, vocк pode baixa-la clicando aqui.
# Й um simples tutorial, muito simples, mais eu fis com o intuito de ajudar os novatos na бrea.
# Muitos novatos, desconheciam a existencia e somente sabiam do dialog.
# Apesar, de todos preferirem dialog, por ser melhor e mais organizado, eu resolvi postar, para o conhecimento do mesmo.
# Atenзгo, para selecionar algo no Menu, use "ESPAЗO" e nгo "F" ou "ENTER".
Iniciando
# Apуs ter baixado a include, coloque-a na pasta "pawno/include".
# Logo apуs abra o pawno, que se encontra na pasta anterior que vocк colocou as includes, clique File e em seguida clique em New, ou se vocк jб tiver o GameMode/FilterScript pronto, basta abrir-lo, clicando em File e logo em seguida em "Open" selecione o seu GameMode/FilterScript e abra-o, й assim faзa o comando.
Topo do GameMode/FilterScript
Definimos o nosso menu, que usaremos. Topo do GameMode/FilterScript.
Explicaзгo
Usado para definir o nosso Menu.
Agora vб atй a public OnGameModeInit() , e adicione isso
Explicaзгo
Tutorial - Usado para identificar o Menu que criamos.
CreateMenu - Cria o Menu.
Menu do Tutorial - Titulo usado no nosso menu.
AddMenuItem - Usado para adicionar Itens ao nosso Menu.
Tutorial 1/2 - Opзхes disponiveis.
Agora temos de dar a funзгo aos Itens do nosso Menu. Vб atй a public OnPlayerSelectedMenuRow(playerid, row)
Explicaзгo
case 0: - Primeira opзгo, ou seja "Tutorial 1"
case 1: - Segunda opзгo, ou seja "Tutorial 2"
case 2: - Opзгo sair, quando o player opta, por cancelar o Menu.
SendClientMessage - Manda a mensagem somente ao jogador.
GivePlayerMoney(playerid, -1000); - Retira dinheiro do player.
TogglePlayerControllable - Congela/Descongela o player.
Agora temos que fazer a funзгo para "descongelar" o player se fechar o Menu, apertando "F" ou "ENTER" ele nгo ficar congelado. Vб atй a public OnPlayerExitedMenu(playerid)
Explicaзгo
TogglePlayerControllable - Descongela/Congela o player.
Agora temos que criar o comando, que irб abrir o nosso Menu.
Ou se vocк preferir, pode usar dessa forma
Explicaзгo
TogglePlayerControllable - Congela/Descongela o player.
ShowMenuForPlayer - Faz o Menu definido, aparecer para o player, apуs ele digitar aquele comando.
Eu procurei й nгo achei nada relacionado a isso, entгo eu resolvi criar um tutorial, ensinando passo-a-passo de como criar um Menu usando a include ZCMD, que e praticamente a mais utilizada atualmente.
Introduзгo
# Primeiramente vocк terб que ter a include ZCMD, й уbvio, vocк pode baixa-la clicando aqui.
# Й um simples tutorial, muito simples, mais eu fis com o intuito de ajudar os novatos na бrea.
# Muitos novatos, desconheciam a existencia e somente sabiam do dialog.
# Apesar, de todos preferirem dialog, por ser melhor e mais organizado, eu resolvi postar, para o conhecimento do mesmo.
# Atenзгo, para selecionar algo no Menu, use "ESPAЗO" e nгo "F" ou "ENTER".
Iniciando
# Apуs ter baixado a include, coloque-a na pasta "pawno/include".
# Logo apуs abra o pawno, que se encontra na pasta anterior que vocк colocou as includes, clique File e em seguida clique em New, ou se vocк jб tiver o GameMode/FilterScript pronto, basta abrir-lo, clicando em File e logo em seguida em "Open" selecione o seu GameMode/FilterScript e abra-o, й assim faзa o comando.
Topo do GameMode/FilterScript
PHP код:
#include <zcmd>
Definimos o nosso menu, que usaremos. Topo do GameMode/FilterScript.
PHP код:
new Menu:Tutorial;
Usado para definir o nosso Menu.
Agora vб atй a public OnGameModeInit() , e adicione isso
PHP код:
Tutorial = CreateMenu("Menu do Tutorial", 1, 50.0, 180.0, 200.0, 200.0);
AddMenuItem(Tutorial, 0, "Tutorial 1");
AddMenuItem(Tutorial, 0, "Tutorial 2");
Tutorial - Usado para identificar o Menu que criamos.
CreateMenu - Cria o Menu.
Menu do Tutorial - Titulo usado no nosso menu.
AddMenuItem - Usado para adicionar Itens ao nosso Menu.
Tutorial 1/2 - Opзхes disponiveis.
Agora temos de dar a funзгo aos Itens do nosso Menu. Vб atй a public OnPlayerSelectedMenuRow(playerid, row)
PHP код:
public OnPlayerSelectedMenuRow(playerid, row)
{
new Tutorial:current;
current = GetPlayerMenu(playerid);
if(current == Tutorial)
{
switch(row)
{
case 0:
{
SendClientMessage(playerid, 0xFFFFFFAA, "[INFO] Vocк perdeu 1000 reais por ver esse Menu.");
GivePlayerMoney(playerid, -1000);
TogglePlayerControllable(playerid, 1);
}
case 1:
{
SendClientMessage(playerid, 0xFFFFFFAA, "[INFO] Vocк perdeu 1000 reais por ver esse Menu.");
GivePlayerMoney(playerid, -1000);
TogglePlayerControllable(playerid, 1);
}
case 2:
}
SendClientMessage(playerid, 0xFFFFFFAA, "[INFO] Vocк optou por cancelar esse Menu.");
TogglePlayerControllable(playerid, 1);
}
}
}
return 1;
}
case 0: - Primeira opзгo, ou seja "Tutorial 1"
case 1: - Segunda opзгo, ou seja "Tutorial 2"
case 2: - Opзгo sair, quando o player opta, por cancelar o Menu.
SendClientMessage - Manda a mensagem somente ao jogador.
GivePlayerMoney(playerid, -1000); - Retira dinheiro do player.
TogglePlayerControllable - Congela/Descongela o player.
Agora temos que fazer a funзгo para "descongelar" o player se fechar o Menu, apertando "F" ou "ENTER" ele nгo ficar congelado. Vб atй a public OnPlayerExitedMenu(playerid)
PHP код:
public OnPlayerExitedMenu(playerid)
{
TogglePlayerControllable(playerid,1);
return 1;
}
TogglePlayerControllable - Descongela/Congela o player.
Agora temos que criar o comando, que irб abrir o nosso Menu.
PHP код:
COMMAND:tutorial(playerid, params[])
{
TogglePlayerControllable(playerid, 0);
ShowMenuForPlayer(Tutorial, playerid);
return 1;
}
PHP код:
CMD:tutorial(playerid, params[])
{
TogglePlayerControllable(playerid, 0);
ShowMenuForPlayer(Tutorial, playerid);
return 1;
}
TogglePlayerControllable - Congela/Descongela o player.
ShowMenuForPlayer - Faz o Menu definido, aparecer para o player, apуs ele digitar aquele comando.
Crйditos
Đeagle - Criaзгo do Tutorial.
Wiki SA-MP - Funзхes e bases.
Zeex - Criaзгo da include zCMD.
Đeagle - Criaзгo do Tutorial.
Wiki SA-MP - Funзхes e bases.
Zeex - Criaзгo da include zCMD.