Ir para conteúdo

Aprendizagem


Posts Recomendados

Olá pessoa, estou criando um plugin, e quando estudei, eu não consegui entender bem os arrays, alguém poderia me explicar melhor de uma forma que tenha exemplos? com arrayslist para mensagens na config do minecraft?

 

exemplo:

Mensagem:

               - "Olá pessoal"

                                   - "isso é apenas um teste

Link para o comentário
Compartilhar em outros sites

Para puxar mensagens da config.yml em forma de StringList que você passou não é necessário utilizar ArryList, você pode manusear com uma for.

Normalmente, utilizasse ArryList na Lore de um ItemStack

 

	ArryList<String> lore = new ArryList<>;
	for (String msg : getConfig().getStringList(minhaconfig.exemplo) {
	          lore.add(msg);
	}
	meuitemstackitemmeta.setlore(lore);
	 
	

Link para o comentário
Compartilhar em outros sites

11 minutos atrás, Burpo disse:

Para puxar mensagens da config.yml em forma de StringList que você passou não é necessário utilizar ArryList, você pode manusear com uma for.

Normalmente, utilizasse ArryList na Lore de um ItemStack

 

 


	ArryList<String> lore = new ArryList<>;
	for (String msg : getConfig().getStringList(minhaconfig.exemplo) {
	          lore.add(msg);
	}
	meuitemstackitemmeta.setlore(lore);
	 
	

 

faz assim:

ArrayList<String> config= new ArrayList<String>(getConfig().getStringList(minhaconfig.exemplo));

meuitemstackitemmeta.setlore(config);

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

35 minutos atrás, rubenlousada11 disse:

faz assim:

ArrayList<String> config= new ArrayList<String>(getConfig().getStringList(minhaconfig.exemplo));

meuitemstackitemmeta.setlore(config);

Cara... Seria mais fácil você já pegar a Array de uma config sem declarar novamente a Array.

A exemplo disso, temos isso:
 

ArrayList<String> array = this.getConfig().getStringList("nome");
itemStack.setLore(array);
 

Ao pegar os valores de uma Array pelo "getStringList", ele já cria uma Array pra você e já implementa os valores nela no qual estão colocados na config. Não é necessário criar uma nova array nem nada, apenas é necessário chamar a classe construtor e colocando como valor o "this.getConfig().getStringList();"

 

Na parte "nome" onde coloquei como valor na "getStringList", é onde está a array na config.
Exemplo:

tags:
  mensagens:
    - 'Teste'
    - 'Teste'

Para pegar os valores de "mensagens", você utilizaria: getStringList("tags.mensagens");
Para cada ' : ' que contém na configuração, você o substitui por ' . ' na hora de pegar valores pelo FileConfiguration. 
Quando for obter um valor, a substituição do ' : ' pelo ' . ' só é necessária para quando tiver uma outra configuração dentro de uma configuração.

A exemplo disso temos no caso da mensagens ali em cima. Aí no caso de "não substituição" temos assim:

tags:
  - 'Teste'
  - 'Teste'

Nesse caso não é necessário colocar o ' . ' para obter o valor de "tags". Somente colocando o nome da configuração, que no caso é "tags".

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

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