Plugin just doesn't wanna work!

Discussion in 'Plugin Development' started by coreymichealroy, Mar 5, 2014.

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

    coreymichealroy

    Hello! I am working on my first plugin called instant respawn! It instantly respawns a player and for some reason it won't work. I get no errors and I can't seem to find the problem. Can someone help me :)

    Code:java
    1. package me.vortex.instantrespawn;
    2.  
    3. import java.lang.reflect.Field;
    4. import java.lang.reflect.Method;
    5.  
    6. import org.bukkit.Bukkit;
    7. import org.bukkit.ChatColor;
    8. import org.bukkit.command.Command;
    9. import org.bukkit.command.CommandSender;
    10. import org.bukkit.entity.Player;
    11. import org.bukkit.event.EventHandler;
    12. import org.bukkit.event.Listener;
    13. import org.bukkit.event.entity.PlayerDeathEvent;
    14. import org.bukkit.plugin.Plugin;
    15. import org.bukkit.scheduler.BukkitRunnable;
    16.  
    17. public class main implements Listener
    18. {
    19.  
    20. private final Plugin plugin;
    21.  
    22. public main( Plugin plugin )
    23. {
    24. this.plugin = plugin;
    25. Bukkit.getPluginManager().registerEvents(this , plugin);
    26. }
    27.  
    28. @EventHandler
    29. public void onPlayerDeath(final PlayerDeathEvent e)
    30. {
    31. new BukkitRunnable()
    32. {
    33. public void run()
    34. {
    35. try
    36. {
    37. Object nmsPlayer = e.getEntity().getClass().getMethod("getHandle").invoke(e.getEntity());
    38. Object con = nmsPlayer.getClass().getDeclaredField("playerConnection").get(nmsPlayer);
    39.  
    40. Class< ? > EntityPlayer = Class.forName(nmsPlayer.getClass().getPackage().getName() + ".EntityPlayer");
    41.  
    42. Field minecraftServer = con.getClass().getDeclaredField("minecraftServer");
    43. minecraftServer.setAccessible(true);
    44. Object mcserver = minecraftServer.get(con);
    45.  
    46. Object playerlist = mcserver.getClass().getDeclaredMethod("getPlayerList").invoke(mcserver);
    47. Method moveToWorld = playerlist.getClass().getMethod("moveToWorld" , EntityPlayer , int.class , boolean.class);
    48. moveToWorld.invoke(playerlist , nmsPlayer , 0 , false);
    49. }
    50. catch (Exception ex)
    51. {
    52. ex.printStackTrace();
    53. }
    54. }
    55. }.runTaskLater(plugin , 2);
    56. }
    57. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String [] args) {
    58. Player player = (Player) sender;
    59. if (commandLabel.equalsIgnoreCase("instantrespawn"));
    60. player.sendMessage(ChatColor.AQUA + "Instant respawn was made by: vortex25565!");
    61. return false;
    62.  
    63. }
    64. }
    65.  
     
  2. Offline

    HungerCraftNL

    PHP:
    public class main extends JavaPlugin implements Listener
     
  3. Offline

    coreymichealroy

    Oops ya I gotta make a listener
     
  4. Offline

    coasterman10

    Where is the Plugin class? You have a listener but no plugin to register it.
     
  5. Offline

    Wolfey

    Yea, your main class needs to extend to JavaPlugin.
     
  6. Offline

    HungerCraftNL

    The Listener register is right:
    PHP:
    Bukkit.getPluginManager().registerEvents(this plugin);
    Only doesn't extend the main class JavaPlugin.
     
  7. Offline

    Wolfey

    actually its...
    Code:java
    1. Bukkit.getPluginManager().registerEvents(plugin, listener);
     
  8. Offline

    HungerCraftNL

  9. Offline

    Wolfey

  10. Offline

    RawCode

Thread Status:
Not open for further replies.

Share This Page