Ir para conteúdo

[Tutorial Skript] Usando menu GUI em 2017 (quase 2018).


FerreiraCosta

Posts Recomendados

Bem vindos a mais um tutorial.

 

O motivo para o título é que, após vários reports de glitches e o plugin se tornar ultrapassado, a necessidade de ter um plugin mais completo e livre de bugs se tornou realidade.

 

Muitos dos Scripters usam SkQuery para fazer GUIs, no qual há nada errado, mas ele é limitado em relação do TuSKe quando o assunto é esse.

 

Os motivos para alegar que o Query é ultrapassado são:

  1. Glitch de dupar
  2. Não poder usar functions
  3. Ausência de funções como right ou left click
  4. Estar limitado somente a comandos e "to be unstealable"

 

Você pode fazer o download do plugin aqui. Lembrando que ele é um add-on.

 

Pois bem, vamos ao tutorial.

 

<integer> = números

<string> = textos

<entity> = player, victim, attacker, loop-player...

<item stack> = item

 

1 - Criando um simples GUI

 

É obrigatório termos esse código antes de todos os outros.

 

Para "abrirmos um baú", simplesmente escrevemos:

open virtual chest inventory with size 6 named "&aInventario" to player

Syntaxe:

open virtual chest inventory with size <integer> named "<string>" to <entity>

Nós temos somente o baú aberto, mas nada dentro dele : )

 

2 - Formatando o inventário

 

Existem várias funções e formas, mas vamos começar pelo mais simples:

 

Teremos somente o item e sua localidade, nada mais.

format a gui slot 5 of player with a diamond sword to do nothing

Syntaxe:

format a gui slot <integer> of <entity> with <item stack> to do nothing

Entretanto, poderemos por nomes e lores:

format a gui slot 5 of player with a diamond sword named "&aOla, GB" with lore "&6Ola, Lucas" to do nothing

Syntaxe:

format a gui slot <integer> of <entity> with <item stack> named "<string>" with lore "<string>" to do nothing

Para colocar parágrafos ou linhas nos lores, basta colocar " || " onde desejar.

 

Para usarmos a função de left ou right click, basta escrevermos:

create a gui slot 1 of player with diamond to close with left click

Syntaxe:

create a gui slot <integer> of <entity> with <item stack> to close with <left/click>

Isso fará com que, caso clicarmos com o botao esquerdo, nada acontecerá. Essa função poderá ser mais útil um pouco mais tarde.

 

Para forçarmos o console a executar um comando, basta escrevermos:

create a gui slot 3 of player with diamond to run console command "/broadcast Clicado"

Syntaxe:

create a gui slot <integer> of <entity> <item stack> to run console command "<string>"

É possível determinar que o menu se feche, digitando "to close then run console command ...". O plugin segue um padrão de syntaxe.

 

 

Para usarmos functions, basta escrevermos:

create a gui slot 4 of player with diamond block to run function giveItems(player) with cursor item diamond

Syntaxe:

create a gui slot <integer> of <entity> with <item stack> to run function giveItems(player) with cursor item <item stack>

Entretanto, dessa forma só poderemos usá-la caso tenhamos um diamante em nosso cursor. Não é necessário ter essa função, mas é algo bem interessante, diga-se de passagem.

 

Para usarmos functions, é importante lembrar que é obrigatório seu código estar acima da criação do gui, por exemplo:

function giveItems(p: player):
	give 1 diamond to {_p}

O código deve ser assim:

 

fapN9iHQRAWTOwS6ecbD5w.png

 

 

Também é possível termos o efeito de left e right click no mesmo slot. Ex:

create a gui slot 2 of player with stone to run function giveItems(player) with left click
create a gui slot 2 of player with stone to run function removeItems(player) with right click

O primeiro nos dará itens e, o segundo, nos tirará.

 

O código completo é esse:

function giveItems(p: player):
	give 1 diamond to {_p}
	
function removeItems(p: player):
	remove 1 diamond from {_p}


command gui:
	trigger:
		open virtual chest inventory with size 6 named "&aInventario" to player
		create a gui slot 2 of player with stone to run function giveItems(player) with left click
		create a gui slot 2 of player with stone to run function removeItems(player) with right click

É possível abrir outro GUI usando essa função, portanto, vocês podem fazer Scripts de KitPreview e etc.

 

 

 

 

 

Estarei atualizando o tutorial. Qualquer dúvida, DM ou aqui mesmo :}

Editado por lucasmooon
Link para o comentário
Compartilhar em outros sites

TÓPICO IRREGULAR

O seu tópico foi dado como irregular por não seguir as regras do fórum e/ou as regras da área apropriada à postagem de conteúdos. Entre em contato com a Equipe de Moderação para obter mais informações sobre esta ação.

Equipe de Moderação,
Gamer's Board.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...