Ir para conteúdo

[BUKKIT] Simples | Como criar varias linhas de lore em java


Guest Fusquete

Posts Recomendados

Guest Fusquete

Bom galera, eu ainda sou iniciante em Bukkit. Mas eu resolvi fazer um código básico (usando ArrayList) para criar várias linhas de lore.

----------

* Funcionalidade ?

-> Sei lá, você pode criar um kit que vem com um item de vários lores (Se você chegou aqui tem utilidade pra você)

P.S -> Só fiz esse código para não usarem skript ;-;

Código:

* EventHandler

@EventHandler

* ArrayList

Observação em baixo de ArrayList (Onde tem lore.add) etc...
É só você fazer assim para outras linhas de lore:

ArrayList lore = new ArrayList<>();			lore.add("§8[§AClique para pegar o §6Kit PvP§8]");			lore.add("§8LINHA 2");			lore.add("§8LINHA 3");			lore.add("§8LINHA 4");etc...

Eu lembro de ter usado um import em ArrayList (ctrl+espaço no Primeiro ArrayList) | Além do @EventHander





P.S² -> Quem é DEV e pode me citar os imports que tem nesse código me avise que vou fazer uma edição [Não lembro todos e não vou confundir a cabeça de vocês mandando todos os imports.




-> Lembrem-se EU SOU INICIANTE EM BUKKIT API ;-;

 

@Não tem import no lore.add

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

Guest Fusquete

precisava de um tutorial pra ensinar a adicionar valores a uma arraylist? .-.

Tem gente que não sabe ;-;

 

@Edit -> E eu coloquei [bUKKIT] Simples | Por ser simples '-'

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

Err, bem iniciante ...

 

  1. Não precisa necessariamente do @EventHandler para fazer isso;
  2. ArrayLists precisam que um tipo de objeto seja especificado entre "<" e ">". Caso seja qualquer coisa, ao menos especifique um "?";
Link para o comentário
Compartilhar em outros sites

Guest Fusquete

 

Err, bem iniciante ...

 

  1. Não precisa necessariamente do @EventHandler para fazer isso;
  2. ArrayLists precisam que um tipo de objeto seja especificado entre "<" e ">". Caso seja qualquer coisa, ao menos especifique um "?";

 

Não é isso e.e, é que eu estava fazendo um plugin de menu gui. Ai eu pensei em colocar isso em um dos itens... No caso o código todo (dentro do código) usava event handler, e o <> é o seguinte código:

package comic.plugin5;


import java.util.ArrayList;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.entity.HumanEntity;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.block.Action;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;

public class Gui implements Listener{
	
	@EventHandler
	public void Inventario(PlayerInteractEvent pie){
		Player p = pie.getPlayer();
		if (pie.getAction()== Action.PHYSICAL || p.getItemInHand().getType() == Material.COMPASS){
			Inventory inv = Bukkit.createInventory(null, 6*9, "§8[§6Kits§8]: " + p.getName());
			
			ItemStack espada = new ItemStack(Material.DIAMOND_SWORD);
			espada.addEnchantment(Enchantment.DAMAGE_ALL, 4);
			ItemMeta espadameta = espada.getItemMeta();
			espadameta.setDisplayName("§8[§eKit PvP§8]");
			ArrayList<String> lore = new ArrayList<>();
			lore.add("§8[§AClique para pegar o §6Kit PvP§8]");
			espadameta.setLore(lore);
			espada.setItemMeta(espadameta);
			
			inv.setItem(4, espada);
			
			p.openInventory(inv);
		}
	}

	@EventHandler
	public void onClick(InventoryClickEvent ice){
		Player p = (Player)ice.getWhoClicked();
		if (ice.getInventory().getName().equalsIgnoreCase("§8[§6Kits§8]: " + p.getName())){
			ice.setCancelled(true);
			if (ice.getCurrentItem().getType() == Material.DIAMOND_SWORD){
				p.getInventory().clear();
				p.getInventory().setItem(0, new ItemStack(Material.DIAMOND_SWORD));
				p.getInventory().setHelmet(new ItemStack(Material.IRON_HELMET));
				p.getInventory().setChestplate(new ItemStack(Material.IRON_CHESTPLATE));
				p.getInventory().setLeggings(new ItemStack(Material.IRON_BOOTS));
				p.closeInventory();
			}
			}
			
			
		}
		
	}
	

Tendeu ?

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...