Skocz do zawartości
  • 0

Wczytywanie danych z configu


Kris2oo1

Pytanie

Witam,
Od kilku dni próbuję zrozumieć jak działa wczytywanie danych z configu z folderu znajdującego się w "plugins",

Napisałem taki plugin:

Spoiler

package pl.lessnop.pplugin;


import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.plugin.Plugin;
import org.bukkit.plugin.java.JavaPlugin;


public class Main extends JavaPlugin {
    
	Plugin plugin;
	@Override
    public void onEnable() {
    	System.out.println("Właczanie...");
        saveDefaultConfig();


    }

    @Override
    public void onDisable() {
    	System.out.println("Wylaczanie...");
    }
    
    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
    	if(command.getName().equalsIgnoreCase("witaj")) {
            String str = plugin.getConfig().getString("path.to.string");
            System.out.println(str);
    	}
    	return false;
    }   
}

 

config:

Spoiler

path:
  to:
    string: Witam

 

plugin.yml:

Spoiler

main: pl.lessnop.pplugin.Main
version: 0.0.1
name: PierwszyPlugin
commands:
  witaj:

 

I nie wywala błędów podczas wczytywania pluginu, ale gdy wpisze się tą komendę to wywala błąd:

Zarejestruj się lub zaloguj, aby zobaczyć ukrytą treść!

 

Proszę o pomoc, każda podpowiedź się przyda :)
PS uczę się tego dopiero 2 tygodnie (mam na myśli jave pod Bukkita), więc proszę o wyrozumiałość

Odnośnik do komentarza
Udostępnij na innych stronach

3 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
    	if(command.getName().equalsIgnoreCase("witaj")) {
            String str = plugin.getConfig().getString("path.to.string");
            System.out.println(str);

Aha, no dobra. Czyżby config nie powinien wyglądać tak:

   

path:
  to:
    string:
      - ""

 

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

Jeśli robisz listę stringów to tak, ale jeśli normlną wiadomość, która będzie w jednej linijce to:

string: 'eloszka'

Chyba, że chcesz wczytać listę stringów to wtedy config:

path:
  to:
    string:
      - 'cos1'
      - 'cos2'

A potem np.

List<String> string = new ArrayList<String>();
for(String s : getConfig().getStringList("path.to.string"))
{
	string.add(s.replace("cos","cos")); 
}
  
lub:
for(String s : getConfig().getStringList("path.to.string"))
{
  	p.sendMessage(s);
}

lub:
List<String> string = getConfig().getStringList("path.to.string");

 

Odnośnik do komentarza
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...