Plugin does not do anyhting?

Discussion in 'Plugin Development' started by robo47, Dec 3, 2012.

Thread Status:
Not open for further replies.
  1. Offline

    robo47

    hello, i have recently made a plugin that is supposed to blow them up when they join. but when i ran the server and joined noting happend..i tested this with 3 people....i give up

    here is the code:
    main:
    Code:java
    1. [/hello]
    2. package me.hayden.player;
    3.  
    4. import org.bukkit.event.Listener;
    5. import org.bukkit.plugin.java.JavaPlugin;
    6. import org.bukkit.Bukkit;
    7.  
    8. public class player extends JavaPlugin implements Listener {
    9.  
    10. public void onEnable()
    11. {
    12. Bukkit.getPluginManager().registerEvents(new playerListener(), this);
    13. }
    14. public void onDisable()
    15. {
    16.  
    17. }
    18. }
    19.  
    20. [B]listener:[/B]
    21. package me.hayden.player;
    22.  
    23.  
    24.  
    25. import org.bukkit.Location;
    26. import org.bukkit.World;
    27. import org.bukkit.entity.Player;
    28. import org.bukkit.event.EventHandler;
    29. import org.bukkit.event.Listener;
    30. import org.bukkit.event.player.PlayerLoginEvent;
    31.  
    32. public class playerListener implements Listener {
    33. public playerListener(){
    34. }
    35.  
    36. @EventHandler
    37. public void PlayerJoin(PlayerLoginEvent e) {
    38. Player p = e.getPlayer();
    39. Location l= (Location) p.getLocation();
    40. World w =p.getWorld();
    41. w.createExplosion(l, 2);
    42. }
    43. }
     
  2. Offline

    leiger

    Is your plugin called 'player' ?
     
  3. Offline

    robo47

    XD ya i did not want to think of a name for it at the time

    it will change later
     
  4. Use [syntax=java][/syntax] to make you code more readable on these forums.
     
  5. Offline

    robo47

    fixed
     
  6. Offline

    gomeow

    You can put your listener code into your main class. Just register your events with the arguments (this, this)
     
  7. Offline

    robo47

    if you know how to do it i can give you a link to a google document that we can edit
     
  8. Offline

    NinjaW0lf

    No need to implement Listener in main class, unless you have EventHandlers/Listening to events in main class.
    No need to Have onDisable() if u don't plan on putting anything in them.
    Code:java
    1.  
    2. package me.hayden.player;
    3.  
    4. import org.bukkit.event.Listener;
    5. import org.bukkit.plugin.java.JavaPlugin;
    6. import org.bukkit.Bukkit;
    7.  
    8. public class player extends JavaPlugin {
    9.  
    10. public void onEnable() {
    11. Bukkit.getPluginManager().registerEvents(playerListener(), this);
    12. }
    13. }
    14.  


    Playerjoin Method may be better, Player Login is called when player still sees Loading screen when connecting. PlayerJoin is called when player is actually in game, can see chunks/world

    According to standard java coding conventions, Methods should start like this: lowercaseUpperCase E.X. onPlayerTeleport.

    This code should work, in theory.
    Code:java
    1.  
    2. package me.hayden.player;
    3.  
    4.  
    5.  
    6. import org.bukkit.Location;
    7. import org.bukkit.World;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.event.EventHandler;
    10. import org.bukkit.event.Listener;
    11. import org.bukkit.event.player.PlayerJoinEvent;
    12.  
    13. public class playerListener implements Listener {
    14.  
    15. @EventHandler
    16. public void onPlayerJoin(PlayerJoinEvent e) {
    17. Player p = e.getPlayer();
    18. Location l = p.getLocation();
    19. World w = p.getWorld();
    20.  
    21. w.createExplosion(l, 2);
    22. }
    23. }
    24.  
     
  9. Offline

    gomeow

    Example in one class:

    Code:java
    1. package me.gomeow.explode;
    2.  
    3. import org.bukkit.event.Listener;
    4. import org.bukkit.plugin.java.JavaPlugin;
    5. import org.bukkit.Bukkit;
    6. import org.bukkit.Location;
    7. import org.bukkit.World;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.event.EventHandler;
    10. import org.bukkit.event.player.PlayerJoinEvent;
    11.  
    12. public class explode extends JavaPlugin implements Listener {
    13.  
    14. public void onEnable() {
    15. Bukkit.getPluginManager().registerEvents(this, this);
    16. }
    17.  
    18. @EventHandler
    19. public void onPlayerJoin(PlayerJoinEvent e) {
    20. Player p = e.getPlayer();
    21. Location l = p.getLocation();
    22. World w = p.getWorld();
    23.  
    24. w.createExplosion(l, 2);
    25. }
    26.  
    27. }
     
Thread Status:
Not open for further replies.

Share This Page