Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Config (getConfigurationSection)


pan ktosik

Rekomendowane odpowiedzi

Opublikowano

Cześć, ogarniam po trochu pluginy, ale nie rozumiem tego "getConfigurationSection", z zagranicznych for.

 

Mógłby mi ktoś wyjaśnić + podać jakiś przykład? (Jestem bardziej osobą ,która uczy sie z kodu - lepiej rozumiem)

 

Ogólnie jakby ktoś mógł to prosiłbym o taki przykład:

 

jest w configu coś takiego:

//przykład:
sekcja:
  '1':
    name: "jestem 1!"
    lore:
      - "jestem 1 lore!"
    id-item: 1
  '2':
    name: "jestem 2!"
    lore:
      - "jestem 2 lore!"
    id-item: 2

i chciałbym, aby kod wyczytywał po prostu ile czego jest itd. do inventory.

 

Czyli np.

"sekcja.1" ma byc 1 slotem w ekwipunku, i tak tak aż do 9 slotów (lub wiecej).

Dałby ktoś taki przykład? Z zagranicznych for nie kumam nic ;/

@MarcinWieczorek, @AdamGrzegorz, @Nocny, @mrkacperek, @#Xierip

Opublikowano
package me.yooniks.section;

import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
import org.bukkit.plugin.java.JavaPlugin;

public class SectionPlugin extends JavaPlugin{
	
	private static final Inventory inv = Bukkit.createInventory(null, 9, "Section");
	
	@Override
	public void onEnable(){
		this.getConfig().options().copyDefaults(true);
		this.saveConfig();
	}
	
	@Override
	public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args){
		final Player p = (Player)sender;
		if (cmd.getName().equalsIgnoreCase("section")){
			p.openInventory(inv);
		    for (String s : this.getConfig().getConfigurationSection("section").getKeys(false))
		    {
		      inv.setItem(Integer.parseInt(s), is(this.getConfig().getString("section."+s+".name")));
		    }	
		}
		return false;
	}
	
	private ItemStack is(String name){
		ItemStack its = new ItemStack(Material.DIAMOND_SWORD);
		ItemMeta im = its.getItemMeta();
		im.setDisplayName(name);
		its.setItemMeta(im);
		return its;
	}
}

jest tylko odczytywanie nazwy i numerku, ale powinno ci pomoc.

config:

section:
  1:
    name: "yooniks 1"
  2:
    name: "yooniks 2"

 

 

Aktualnie interesuję się javą, powoli ogarniam java swing i awt, czasem bawię się HTML.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...