• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

PlayerJoinEvent

Ninto

Minecrafter
Registriert
24 Juni 2014
Beiträge
21
Diamanten
0
Hallo Leute...
Ich habe mich dazu entschieden ein wenig zu Programmieren...
Dies klappt auch gut aber leider hab ich bei den Events ein paar probleme.
Hoffe ihr könnt mir Helfen.

Unterclasse:
Code:
package me.luka.randommessages;

import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class JoinListener implements Listener {

    private RandomMessages plugin;

    public JoinListener(RandomMessages plugin) {
        this.plugin = plugin;
    }
   
    public void onJoin(PlayerJoinEvent e) {
        Player p = e.getPlayer();
        if(p.hasPermission("RM.Join")) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        }
        if(p.isOp()) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        } else {
            e.setJoinMessage("");
        }
    }
}

Haupt Klasse:
Code:
package me.luka.randommessages;

import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;

public class RandomMessages extends JavaPlugin implements Listener {
   
    public void onEnable() {
       
        registerEvents();
   
        this.getServer().getPluginManager().registerEvents(this, this);
        System.out.println("[RandomMessages] Plugin wurde gestartet");
       
    }
   
    public void onDisable() {
        System.out.println("[RandomMessages] Plugin wurde beendet");
    }
   
    public void registerEvents() {
        new JoinListener(this);
    }
   
}
 

FelixKlauke

Erzengel
Ehem. Teammitglied
Registriert
5 Januar 2014
Beiträge
1.038
Diamanten
299
Minecraft
FelixKlauke
Hallo Leute...
Ich habe mich dazu entschieden ein wenig zu Programmieren...
Dies klappt auch gut aber leider hab ich bei den Events ein paar probleme.
Hoffe ihr könnt mir Helfen.

Unterclasse:
Code:
package me.luka.randommessages;

import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class JoinListener implements Listener {

    private RandomMessages plugin;

    public JoinListener(RandomMessages plugin) {
        this.plugin = plugin;
    }
 
    public void onJoin(PlayerJoinEvent e) {
        Player p = e.getPlayer();
        if(p.hasPermission("RM.Join")) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        }
        if(p.isOp()) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        } else {
            e.setJoinMessage("");
        }
    }
}

Haupt Klasse:
Code:
package me.luka.randommessages;

import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;

public class RandomMessages extends JavaPlugin implements Listener {
 
    public void onEnable() {
     
        registerEvents();
 
        this.getServer().getPluginManager().registerEvents(this, this);
        System.out.println("[RandomMessages] Plugin wurde gestartet");
     
    }
 
    public void onDisable() {
        System.out.println("[RandomMessages] Plugin wurde beendet");
    }
 
    public void registerEvents() {
        new JoinListener(this);
    }
 
}

Deine Methode RandomMessages#registerEvents erzeugt lediglich eine neue Instanz der Klasse JoinListener, trägt selbige jedoch nicht als Listener ein. Dies erfolgt nur mit der Hauptklasse selbst. Der JoinListener ist einfach nicht registriert und wird deshalb keinerlei Events handeln. In Zeile 22 deiner Hauptklasse müsstest du die Instanz der dann noch als Listener registrieren.
 

Ninto

Minecrafter
Registriert
24 Juni 2014
Beiträge
21
Diamanten
0
Deine Methode RandomMessages#registerEvents erzeugt lediglich eine neue Instanz der Klasse JoinListener, trägt selbige jedoch nicht als Listener ein. Dies erfolgt nur mit der Hauptklasse selbst. Der JoinListener ist einfach nicht registriert und wird deshalb keinerlei Events handeln. In Zeile 22 deiner Hauptklasse müsstest du die Instanz der dann noch als Listener registrieren.
Danke für die schnelle Antwort, doch die Frage ist wie ich dies mache.
 

Ninto

Minecrafter
Registriert
24 Juni 2014
Beiträge
21
Diamanten
0
Irgendwie funktioniert das immer noch nicht

Code:
package me.luka.randommessages;

import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;

public class RandomMessages extends JavaPlugin implements Listener {
   
    public void onEnable() {
       
        this.getServer().getPluginManager().registerEvents(new JoinListener(), this);
        System.out.println("[RandomMessages] Plugin wurde gestartet");
       
    }
   
    public void onDisable() {
        System.out.println("[RandomMessages] Plugin wurde beendet");
    }
}
 

Ninto

Minecrafter
Registriert
24 Juni 2014
Beiträge
21
Diamanten
0
Code:
[12:13:29] [Server thread/INFO]: Starting minecraft server version 1.8.6
[12:13:29] [Server thread/INFO]: Loading properties
[12:13:29] [Server thread/INFO]: Default game type: SURVIVAL
[12:13:29] [Server thread/INFO]: This server is running CraftBukkit version git-Spigot-ae40327-5084899 (MC: 1.8.6) (Implementing API version 1.8.6-R0.1-SNAPSHOT)
[12:13:29] [Server thread/INFO]: Debug logging is disabled
[12:13:29] [Server thread/INFO]: Server Ping Player Sample Count: 12
[12:13:29] [Server thread/INFO]: Using 4 threads for Netty based IO
[12:13:29] [Server thread/INFO]: Generating keypair
[12:13:30] [Server thread/INFO]: Starting Minecraft server on *:25565
[12:13:30] [Server thread/INFO]: Using default channel type
[12:13:31] [Server thread/INFO]: Set PluginClassLoader as parallel capable
[12:13:31] [Server thread/INFO]: [RandomMessage] Loading RandomMessage v1.0
[12:13:31] [Server thread/INFO]: [Info] Loading Info v1.0
[12:13:31] [Server thread/INFO]: [Stuff] Loading Stuff v1.0
[12:13:31] [Server thread/INFO]: **** Beginning UUID conversion, this may take A LONG time ****
[12:13:31] [Server thread/INFO]: Preparing level "world"
[12:13:31] [Server thread/INFO]: -------- World Settings For [world] --------
[12:13:31] [Server thread/INFO]: Item Merge Radius: 2.5
[12:13:31] [Server thread/INFO]: Item Despawn Rate: 6000
[12:13:31] [Server thread/INFO]: Zombie Aggressive Towards Villager: true
[12:13:31] [Server thread/INFO]: Allow Zombie Pigmen to spawn from portal blocks: true
[12:13:31] [Server thread/INFO]: Custom Map Seeds:  Village: 10387312 Feature: 14357617
[12:13:31] [Server thread/INFO]: Max Entity Collisions: 8
[12:13:31] [Server thread/INFO]: View Distance: 10
[12:13:31] [Server thread/INFO]: Chunks to Grow per Tick: 650
[12:13:31] [Server thread/INFO]: Clear tick list: false
[12:13:31] [Server thread/INFO]: Experience Merge Radius: 3.0
[12:13:31] [Server thread/INFO]: Anti X-Ray: true
[12:13:31] [Server thread/INFO]:     Engine Mode: 1
[12:13:31] [Server thread/INFO]:     Hidden Blocks: [14, 15, 16, 21, 48, 49, 54, 56, 73, 74, 82, 129, 130]
[12:13:31] [Server thread/INFO]:     Replace Blocks: [1, 5]
[12:13:31] [Server thread/INFO]: Mob Spawn Range: 4
[12:13:31] [Server thread/INFO]: Cactus Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Cane Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Melon Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Mushroom Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Pumpkin Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Sapling Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Wheat Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: NetherWart Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Max TNT Explosions: 100
[12:13:31] [Server thread/INFO]: Hopper Transfer: 8 Hopper Check: 8 Hopper Amount: 1
[12:13:31] [Server thread/INFO]: Entity Activation Range: An 32 / Mo 32 / Mi 16
[12:13:31] [Server thread/INFO]: Random Lighting Updates: false
[12:13:31] [Server thread/INFO]: Sending up to 10 chunks per packet
[12:13:31] [Server thread/INFO]: Tile Max Tick Time: 50ms Entity max Tick Time: 50ms
[12:13:31] [Server thread/INFO]: Entity Tracking Range: Pl 48 / An 48 / Mo 48 / Mi 32 / Other 64
[12:13:31] [Server thread/INFO]: Structure Info Saving: true
[12:13:31] [Server thread/INFO]: Nerfing mobs spawned from spawners: false
[12:13:31] [Server thread/INFO]: Arrow Despawn Rate: 1200
[12:13:31] [Server thread/INFO]: -------- World Settings For [world_nether] --------
[12:13:31] [Server thread/INFO]: Item Merge Radius: 2.5
[12:13:31] [Server thread/INFO]: Item Despawn Rate: 6000
[12:13:31] [Server thread/INFO]: Zombie Aggressive Towards Villager: true
[12:13:31] [Server thread/INFO]: Allow Zombie Pigmen to spawn from portal blocks: true
[12:13:31] [Server thread/INFO]: Custom Map Seeds:  Village: 10387312 Feature: 14357617
[12:13:31] [Server thread/INFO]: Max Entity Collisions: 8
[12:13:31] [Server thread/INFO]: View Distance: 10
[12:13:31] [Server thread/INFO]: Chunks to Grow per Tick: 650
[12:13:31] [Server thread/INFO]: Clear tick list: false
[12:13:31] [Server thread/INFO]: Experience Merge Radius: 3.0
[12:13:31] [Server thread/INFO]: Anti X-Ray: true
[12:13:31] [Server thread/INFO]:     Engine Mode: 1
[12:13:31] [Server thread/INFO]:     Hidden Blocks: [14, 15, 16, 21, 48, 49, 54, 56, 73, 74, 82, 129, 130]
[12:13:31] [Server thread/INFO]:     Replace Blocks: [1, 5]
[12:13:31] [Server thread/INFO]: Mob Spawn Range: 4
[12:13:31] [Server thread/INFO]: Cactus Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Cane Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Melon Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Mushroom Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Pumpkin Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Sapling Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Wheat Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: NetherWart Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Max TNT Explosions: 100
[12:13:31] [Server thread/INFO]: Hopper Transfer: 8 Hopper Check: 8 Hopper Amount: 1
[12:13:31] [Server thread/INFO]: Entity Activation Range: An 32 / Mo 32 / Mi 16
[12:13:31] [Server thread/INFO]: Random Lighting Updates: false
[12:13:31] [Server thread/INFO]: Sending up to 10 chunks per packet
[12:13:31] [Server thread/INFO]: Tile Max Tick Time: 50ms Entity max Tick Time: 50ms
[12:13:31] [Server thread/INFO]: Entity Tracking Range: Pl 48 / An 48 / Mo 48 / Mi 32 / Other 64
[12:13:31] [Server thread/INFO]: Structure Info Saving: true
[12:13:31] [Server thread/INFO]: Nerfing mobs spawned from spawners: false
[12:13:31] [Server thread/INFO]: Arrow Despawn Rate: 1200
[12:13:31] [Server thread/INFO]: -------- World Settings For [world_the_end] --------
[12:13:31] [Server thread/INFO]: Item Merge Radius: 2.5
[12:13:31] [Server thread/INFO]: Item Despawn Rate: 6000
[12:13:31] [Server thread/INFO]: Zombie Aggressive Towards Villager: true
[12:13:31] [Server thread/INFO]: Allow Zombie Pigmen to spawn from portal blocks: true
[12:13:31] [Server thread/INFO]: Custom Map Seeds:  Village: 10387312 Feature: 14357617
[12:13:31] [Server thread/INFO]: Max Entity Collisions: 8
[12:13:31] [Server thread/INFO]: View Distance: 10
[12:13:31] [Server thread/INFO]: Chunks to Grow per Tick: 650
[12:13:31] [Server thread/INFO]: Clear tick list: false
[12:13:31] [Server thread/INFO]: Experience Merge Radius: 3.0
[12:13:31] [Server thread/INFO]: Anti X-Ray: true
[12:13:31] [Server thread/INFO]:     Engine Mode: 1
[12:13:31] [Server thread/INFO]:     Hidden Blocks: [14, 15, 16, 21, 48, 49, 54, 56, 73, 74, 82, 129, 130]
[12:13:31] [Server thread/INFO]:     Replace Blocks: [1, 5]
[12:13:31] [Server thread/INFO]: Mob Spawn Range: 4
[12:13:31] [Server thread/INFO]: Cactus Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Cane Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Melon Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Mushroom Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Pumpkin Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Sapling Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Wheat Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: NetherWart Growth Modifier: 100%
[12:13:31] [Server thread/INFO]: Max TNT Explosions: 100
[12:13:31] [Server thread/INFO]: Hopper Transfer: 8 Hopper Check: 8 Hopper Amount: 1
[12:13:31] [Server thread/INFO]: Entity Activation Range: An 32 / Mo 32 / Mi 16
[12:13:31] [Server thread/INFO]: Random Lighting Updates: false
[12:13:31] [Server thread/INFO]: Sending up to 10 chunks per packet
[12:13:31] [Server thread/INFO]: Tile Max Tick Time: 50ms Entity max Tick Time: 50ms
[12:13:31] [Server thread/INFO]: Entity Tracking Range: Pl 48 / An 48 / Mo 48 / Mi 32 / Other 64
[12:13:31] [Server thread/INFO]: Structure Info Saving: true
[12:13:31] [Server thread/INFO]: Nerfing mobs spawned from spawners: false
[12:13:31] [Server thread/INFO]: Arrow Despawn Rate: 1200
[12:13:31] [Server thread/INFO]: Preparing start region for level 0 (Seed: 2212231234124117977)
[12:13:32] [Server thread/INFO]: Preparing spawn area: 43%
[12:13:33] [Server thread/INFO]: Preparing start region for level 1 (Seed: 2212231234124117977)
[12:13:33] [Server thread/INFO]: Preparing start region for level 2 (Seed: 2212231234124117977)
[12:13:34] [Server thread/INFO]: [RandomMessage] Enabling RandomMessage v1.0
[12:13:34] [Server thread/INFO]: [RandomMessages] Plugin wurde gestartet
[12:13:34] [Server thread/INFO]: [Info] Enabling Info v1.0
[12:13:34] [Server thread/INFO]: [Info] Plugin wurde gestartet!
[12:13:34] [Server thread/INFO]: [Stuff] Enabling Stuff v1.0
[12:13:34] [Server thread/ERROR]: Error occurred while enabling Stuff v1.0 (Is it up to date?)
java.lang.IllegalArgumentException: Plugin already initialized!
    at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:122) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:66) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at de.Ninto.Stuff.Kommands.Gamemode.<init>(Gamemode.java:11) ~[?:?]
    at de.Ninto.Stuff.Stuff.onEnable(Stuff.java:52) ~[?:?]
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:356) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:316) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.MinecraftServer.s(MinecraftServer.java:418) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.MinecraftServer.k(MinecraftServer.java:382) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.MinecraftServer.a(MinecraftServer.java:337) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:256) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:528) [spigot_server.jar:git-Spigot-ae40327-5084899]
    at java.lang.Thread.run(Thread.java:745) [?:1.8.0_25]
Caused by: java.lang.IllegalStateException: Initial initialization
    at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:125) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:66) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at de.Ninto.Stuff.Stuff.<init>(Stuff.java:26) ~[?:?]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_25]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[?:1.8.0_25]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_25]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:408) ~[?:1.8.0_25]
    at java.lang.Class.newInstance(Class.java:438) ~[?:1.8.0_25]
    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:76) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:329) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugins(CraftServer.java:291) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:198) ~[spigot_server.jar:git-Spigot-ae40327-5084899]
    ... 2 more
[12:13:34] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it
[12:13:34] [Server thread/INFO]: Done (3,010s)! For help, type "help" or "?"
[12:14:37] [User Authenticator #1/INFO]: UUID of player NoobtenLuka is 5b3610f1-8ead-4013-8ebf-73bb38f72769
[12:14:37] [Server thread/INFO]: NoobtenLuka[/127.0.0.1:56803] logged in with entity id 299 at ([world]-252.85906965377134, 97.91425264594972, 228.05952726128217)
[12:17:36] [Server thread/INFO]: NoobtenLuka lost connection: Internal Exception: java.io.IOException: Eine vorhandene Verbindung wurde vom Remotehost geschlossen
[12:17:37] [Server thread/INFO]: NoobtenLuka left the game.

JoinListener.java:
Code:
package me.luka.randommessages;

import org.bukkit.entity.Player;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerJoinEvent;

public class JoinListener implements Listener {
 
    public void onJoin(PlayerJoinEvent e) {
        Player p = e.getPlayer();
        if(p.hasPermission("RM.Join")) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        }
        if(p.isOp()) {
            e.setJoinMessage("§4" + p.getName() + " §bist dem Spiel beigetreten!");
        } else {
            e.setJoinMessage("");
        }
    }
}

Stuff ist ein früheres kaputtes Plugin... Nicht beachten !

//Dean: Logs & Konfigs bitte entweder als Code einfügen oder als Dateianhang, bzw.auf pastebin.com hochladen! Danke!
 
Zuletzt bearbeitet von einem Moderator:

FelixKlauke

Erzengel
Ehem. Teammitglied
Registriert
5 Januar 2014
Beiträge
1.038
Diamanten
299
Minecraft
FelixKlauke
mit system... gehts aber auch
also das kann jeder selbst entscheiden

Das ist eigentlich keine Entscheidungssache. Es wird ein Logger framework verwendet, ich verkneife es mir den Sinn davon zu erklären. Für alle etwas beschränkteren Leute die mit Logging nichts anfangen können und nicht rallen was sie eigentlich tun wurde freundlicherweise der out Stream in den Logger integriert. Man nutzt den Logger.
 
Oben