[PROBLEM] PlugIn Ordner erstellen

Dieses Thema im Forum "Programmierung" wurde erstellt von ScaryHutman, 4. Januar 2013.

  1. ScaryHutman
    Offline

    ScaryHutman

    Registriert seit:
    1. Januar 2013
    Beiträge:
    205
    Ort:
    NRW
    Minecraft:
    Scary_Hutman
    Hi,
    ich habe im moment ein Problem. Ich will, dass mein PlugIn den Ordner "plugins/<name>" erstellt und darin die Datei "config.yml". Ich hab leider keine Ahnung, wie das geht. Auch Google und YouTube haben mir nicht geholfen. Ich hoffe, jemand kann mir sagen, wie man das anstellt. :)

    ScaryHutman

    P.S: Ich hab im Forum gesucht und keinen anderen Post gefunden. ;)
     
    #1
  2. Crafter6432
    Offline

    Crafter6432

    Registriert seit:
    22. Dezember 2011
    Beiträge:
    686
    Code (Text):
    1.  
    2. new File("plugins/PLUGIN").mkdir();
    3.  
     
    #2
    1 Person gefällt das.
  3. Calenria
    Offline

    Calenria

    Registriert seit:
    28. Juli 2012
    Beiträge:
    387
    Minecraft:
    Calenria
    Code (Text):
    1.  
    2.        if (!new File(this.getDataFolder(), "config.yml").exists()) {
    3.             this.getConfig().options().copyDefaults(true);
    4.             this.saveConfig();
    5.         }
    6.  
    Dazu einfach eine config.yml mit in die jar packen.
     
    #3
    1 Person gefällt das.
  4. ScaryHutman
    Offline

    ScaryHutman

    Registriert seit:
    1. Januar 2013
    Beiträge:
    205
    Ort:
    NRW
    Minecraft:
    Scary_Hutman
    Danke! Es hat funktioniert. Das PlugIn hat den Ordner + config.yml erstellt.
    Ich hab noch eine Frage: Wie kann man aus der config.yml Pfade wie commands.test.message(String, int, double) kriegen? Ich brauche die in einem Listener.

    ScaryHutman
     
    #4
  5. MrFlieder
    Offline

    MrFlieder

    Registriert seit:
    30. Dezember 2011
    Beiträge:
    333
    Ort:
    Österreich
    Minecraft:
    MrFlieder
    Oder man macht es so, Ordner inklusive config.yml wird automatisch erstellt:
    Code (Text):
    1.  
    2. this.getConfig().addDefault("variable", "wert");
    3. this.getConfig().options().copyDefaults(true);
    4. this.saveConfig();
    5.  
    Das Ganze in die onEnable-Methode packen.
     
    #5
  6. Calenria
    Offline

    Calenria

    Registriert seit:
    28. Juli 2012
    Beiträge:
    387
    Minecraft:
    Calenria
    Code (Text):
    1. plugin.getConfig().getInt("commands.test.message");
    2. plugin.getConfig().getString("commands.test.message");
    usw.
     
    #6
  7. ScaryHutman
    Offline

    ScaryHutman

    Registriert seit:
    1. Januar 2013
    Beiträge:
    205
    Ort:
    NRW
    Minecraft:
    Scary_Hutman
    Ich hab das in den JoinListener gescrhrieben:
    Code (Text):
    1. if((plugin.getConfig().getString("messages.player." + p + "join")) != null) {
    2.             if((plugin.getConfig().getString("messages.player." + p + "join")) == "none") {
    3.                 event.setJoinMessage(null);
    4.             } else {
    5.                 event.setJoinMessage(plugin.getConfig().getString("messages.player." + p + "join"));
    6.             }
    7.             } else {
    8.             event.setJoinMessage(plugin.getConfig().getString("messages.join.global"));
    9.         }
    Der Fehler(NullPointer) taucht auf, wenn ein Spieler joint.

    Mein Ziel: Wenn in dem Pfad(messages.player.<Player>.join) "none" steht, dann soll keine Join Message erscheinen. Wenn da etwas anderes steht, dann soll der den Text ausgeben.

    ScaryHutman

    P.S: Ich hab den Fehler im Forum nicht gefunden. ;)
    PP.S: Ich glaube, dass das (wieder) ein dummer Fehler ist. :D
     
    #7
  8. MrFlieder
    Offline

    MrFlieder

    Registriert seit:
    30. Dezember 2011
    Beiträge:
    333
    Ort:
    Österreich
    Minecraft:
    MrFlieder
    Welches Objekt ist denn bei dir "plugin"?
     
    #8
  9. ScaryHutman
    Offline

    ScaryHutman

    Registriert seit:
    1. Januar 2013
    Beiträge:
    205
    Ort:
    NRW
    Minecraft:
    Scary_Hutman
    Ausschnitt aus dem PlayerJoinListener:
    Code (Text):
    1. public void PlayerJoinEvent(Main plugin) {
    2.         this.plugin = plugin;
    3.         plugin.getServer().getPluginManager().registerEvents(this, plugin);
    4.        
    5.     }
     
    #9
  10. f14_tomcat
    Offline

    f14_tomcat

    Registriert seit:
    16. Oktober 2012
    Beiträge:
    12
    Ort:
    /dev
    Minecraft:
    f14_tomcat
    Du solltest lieber erstmal versuchen Java zu lernen, bevor du anfängst Bukkit Plugins zu programmieren. Das geht halt nicht einfach mal so durch ein zwei Youtubetutorials. Man kann einen String nicht durch einen == Operator vergleichen. Ein String ist ein Objekt und folglich musst du .equals() verwenden.
     
    #10