Ir para conteúdo

» Como fazer um plugin em Kotlin « [Jeito mais fácil]


nekkan

Posts Recomendados

    Olá! Seja bem-vindo a mais um tutorial meu, hoje, pretendo ensinar a vocês a como criar um plugin de Spigot/Bukkit na versão que você quiser no Kotlin sem utilizar Gradle ou qualquer outra dependência, de uma maneira rápida e fácil.

 

requisitos.png.c07dcc3260bd14afc9bab38e5fab353b.png

    Para que você inicie fazendo plugins ou bots em Kotlin, eu recomendo que você saiba lógica de programação e Java intermediário (ou Kotlin básico), para você não se perder durante a aula, pois eu não ensinarei a você sobre Kotlin, só como você pode criar um plugin nele: eventos, comandos e como registrá-los.

 

 

Programas-necessarios.png.06a9b418e89e26cda9da66cebdaecfa7.png

    Para esta aula, você precisará de uma IDE que suporte o Kotlin. Eu recomendo você utilizar o IntellIJ IDEA Community (Versão grátis, que continua sendo boa).

 

 

Dependencias.png.2f22d62799cfbda47560de815b7f443d.png

    Para fazer seu plugin, você precisará do Java Development Kit 8 (JDK 8), no qual pode ser adquirido aqui. Você também precisará do Spigot ou Craftbukkit (recomendo Spigot) para criar seu plugin. Pode ser qualquer versão.

 

 

Projeto.png.ef0c8652c8f192cf8df960d3ef051ebe.png

    Para você criar um projeto no IntellIJ IDEA com as configurações necessárias desta aula, você precisará ir ao menu superior e clicar sobre File. Em seguida, uma janela como esta aparecerá em sua tela:image.png.e4c012ad57c9482ebdfaad7b999c0c5b.png

   

    Você deve marcar a caixa Kotlin/JVM (dentro da aba Java, não na aba Kotlin) e em seguida, clicar em Next. Aparecerá uma tela como esta.

 

image.png.f968dbd0451445cdc6464be024c6f3a1.png

 

    Após concluir os passos citados acima, clique em Finish, caso apareça uma janela pedindo para trocar de janela, selecione "This Window". Feito isso, você deve adicionar a dependência do Spigot/Bukkit ao seu projeto. Para isso, você deve clicar com o botão direito sobre o projeto e clicar em Open Module Settings. Aparecerá uma janela parecida com essa:image.png.dfd2671ac9bbff7f9411005f9e850621.png

 

    Você deve clicar sobre a aba Libraries, em seguida, aparecerá uma janela semelhante a esta:

image.png.3c5c10bc8152f60f387a2f3dfe1bc261.png 

 

     Após fizer os passos citados, você deve procurar pela JAR do seu Spigot/Bukkit, em seguida, clicar em OK e selecionar o projeto.

 

 

Codigos.png.73ff6cc325dd93ace3e83c4badecd45b.png

 

    Agora, clique em Apply e em seguida em OK. Você pode criar sua plugin.yml como se fosse um projeto de Java normal. Agora, crie suas packages e na hora de criar uma classe Java selecione Kotlin File.

image.png.001133dff976638de2519691e60453f9.png 

   

    Clique e logo em seguida clique em Class e troque a visibilidade da classe para pública, em seguida, extenda a classe JavaPlugin.

 

Classe Main:

image.png.6bc2f756c67a571404d0026ea1eb30a2.png

image.png.1d7fe9123d9a229b9910def96a754585.pngimage.png.0c9371739a1f4897b60d25f2ea4a8520.png

 

    Agora, depois de configurar o Kotlin, enfim iremos setar a visibilidade da classe para pública e depois extender a classe JavaPlugin. Logo em seguida faremos o evento onEnable. Nenhum evento muda no Kotlin, apenas a sintaxe. Alguns métodos ao tem seu "get" retirado. Exemplo: getInventory() -> inventory

image.png.7f4bc4e7a823e6ef6609e7527dbfb443.png

 

    Agora, iremos criar um objeto separado da Main e fazer um evento de entrada, em seguida, registraremos no onEnable(), do mesmo jeito que fazemos no Java (Troque object por class)

image.png.31bcca8274415346abb4f6bf924fefd0.png

    Pronto! Eu já registrei o evento no onEnable() utilizando Bukkit.getPluginManager(Evento(), this) (não usamos NEW no Kotlin), mas não mostro pois eu quero encurtar este tutorial. Agora, vamos exportar o projeto! Para exportar o projeto, você ir novamente nas opções de Module (Open Module Settings). Vá até a aba Artifacts, JAR, From modules with dependencies.

image.png.8c118e14b57315df7f8238212bd629bf.png

 

    Agora, aparecerá uma janela na qual você não mexe em nada, apenas clique em OK. 

image.png.3ad2383486ac0622af2c31d565d89316.png  

 

    Então, você marca a caixa Include in Project Build e em Output directory você seleciona onde você quer que a .jar seja salva.image.png.d2a3665ffe0e80e3aaa021705e66e44f.png

 

    Agora, você clica no mais novamente, clique sobre File, procure a plugin.yml e a selecione.

image.png.8693633109815a5cb379020a817bdfe9.png

 

    Agora, você clica sobre Apply -> Ok. Após isso, você vai em BUILD, no IntellIJ e selecione "Build Module NomeDoProjeto". Depois, o arquivo será exportado na localização que você salvou.

 image.png.afa196790e0fa04498e11ff54c4ef547.png

 

 

Bom, hoje fiz uma aula básica sobre o Kotlin e Bukkit, caso você queira que eu ensine a fazer comandos em Kotlin ou continue ensinando a fazer tutoriais de Kotlin Bukkit, comente aqui. Adeus! ^-^

image.png

Editado por nekkan
@nekkkan
Link para o comentário
Compartilhar em outros sites

Em 23/02/2020 em 10:33, TheGeneX disse:

Que massa! Hahahhaha parabéns pelo tutorial, ensinou bem explicado.

 

Em 22/02/2020 em 15:35, RodrigoAndrade disse:

Ótima aula mano! Parabéns. 

Valeu! Desculpa a demorar pra responder.

Em 22/02/2020 em 14:55, c0nect disse:

q tema é esse?

Material Theme

Link para o comentário
Compartilhar em outros sites

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Se você tiver uma conta, a class='ipsType_brandedLink' href='https://gamersboard.com.br/login/' data-ipsDialog data-ipsDialog-size='medium' data-ipsDialog-title='Sign In Now'>acesse agora para postar com sua conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

Processando...
×
×
  • Criar Novo...