SA-MP Forums Archive
[Tutorial] Criando um Menu com ZCMD. - 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)
+----- Forum: Lançamentos/Releases (https://sampforum.blast.hk/forumdisplay.php?fid=56)
+----- Thread: [Tutorial] Criando um Menu com ZCMD. (/showthread.php?tid=324108)



Criando um Menu com ZCMD. - Đeagle - 08.03.2012

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


PHP код:
#include <zcmd> 


Definimos o nosso menu, que usaremos. Topo do GameMode/FilterScript.


PHP код:
new Menu:Tutorial
Explicaзгo
Usado para definir o nosso Menu.



Agora vб atй a public OnGameModeInit() , e adicione isso

PHP код:
Tutorial CreateMenu("Menu do Tutorial"150.0180.0200.0200.0);
AddMenuItem(Tutorial0"Tutorial 1");
AddMenuItem(Tutorial0"Tutorial 2"); 
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)

PHP код:
public OnPlayerSelectedMenuRow(playeridrow)
{
    new 
Tutorial:current;
    
current GetPlayerMenu(playerid);
    if(
current == Tutorial)
    {
        switch(
row)
        {
            case 
0:
            {
                 
SendClientMessage(playerid0xFFFFFFAA"[INFO] Vocк perdeu 1000 reais por ver esse Menu.");
                 
GivePlayerMoney(playerid, -1000);
                 
TogglePlayerControllable(playerid1);
            }
            case 
1:
            {
                 
SendClientMessage(playerid0xFFFFFFAA"[INFO] Vocк perdeu 1000 reais por ver esse Menu.");
                 
GivePlayerMoney(playerid, -1000);
                 
TogglePlayerControllable(playerid1);
            }
            case 
2
            }
                  
SendClientMessage(playerid0xFFFFFFAA"[INFO] Vocк optou por cancelar esse Menu.");
                  
TogglePlayerControllable(playerid1);
            }
        }
    }
    return 
1;

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)

PHP код:
public OnPlayerExitedMenu(playerid)
{
    
TogglePlayerControllable(playerid,1);
    return 
1;

Explicaзгo
TogglePlayerControllable - Descongela/Congela o player.



Agora temos que criar o comando, que irб abrir o nosso Menu.

PHP код:
COMMAND:tutorial(playeridparams[])
{
      
TogglePlayerControllable(playerid0);
      
ShowMenuForPlayer(Tutorialplayerid);
      return 
1;

Ou se vocк preferir, pode usar dessa forma

PHP код:
CMD:tutorial(playeridparams[])
{
      
TogglePlayerControllable(playerid0);
      
ShowMenuForPlayer(Tutorialplayerid);
      return 
1;

Explicaзгo
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.



Re: Criando um Menu com ZCMD. - DreeH - 08.03.2012

Ainda se usa Menu em servidores?

Seria legal se vocк explicasse oque significa isso:
pawn Код:
new Tutorial:current;
Nunca ouvi falar dessa Tag.


Re: Criando um Menu com ZCMD. - Hugo_Matos - 08.03.2012

Otimo Tutorial


Re: Criando um Menu com ZCMD. - Đeagle - 08.03.2012

Quote:
Originally Posted by DreeH
Посмотреть сообщение
Ainda se usa Menu em servidores?

Seria legal se vocк explicasse oque significa isso:
pawn Код:
new Tutorial:current;
Nunca ouvi falar dessa Tag.
PHP код:
new Tutorial:current
Ele faz com que sу abra as opзхes naquele Menu, ou seja ele sу executa aquelas funзхes naquele Menu, eu acho.


Re: Criando um Menu com ZCMD. - Eduardo_Cotoco - 08.03.2012

Olha o cara nem sabe o que ta digitando
zueira.

So arruma ali.
porque GivePlayerMoney nгo retira grana, apenas retira de vocк se vocк colocar o sinal de " - "
antes da quantia.


Respuesta: Criando um Menu com ZCMD. - caio.oakey - 08.03.2012

Bom tuto!

Bem explicado.
Parabйs paulin


Re: Criando um Menu com ZCMD. - histire - 08.03.2012

Bom tuto, bem explicado sу aruma o GivePlayerMoney como o eduardo disse ele nao retira grana a nao ser que ponha "-"


Re: Criando um Menu com ZCMD. - Đeagle - 08.03.2012

Cуdigo arrumado.
Obrigado por avisarem. P;


Re: Criando um Menu com ZCMD. - StrondA_ - 08.03.2012

Hoje existe atй site que cria menus, creio que nгo й muito necessбrio esse tutorial, mesmo assim parabйns pela explicaзгo.


Re: Criando um Menu com ZCMD. - Đeagle - 08.03.2012

Quote:
Originally Posted by StrondA_
Посмотреть сообщение
Hoje existe atй site que cria menus, creio que nгo й muito necessбrio esse tutorial, mesmo assim parabйns pela explicaзгo.
Eu desconhecia a existencia do site..


Re: Criando um Menu com ZCMD. - Lуs - 09.03.2012

http://code.******.com/p/sa-menucreator/