RustMC Plugin Help

Discussion in 'Plugin Development' started by MrLizardDogMan, Mar 22, 2014.

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

    MrLizardDogMan

    Mhh i can't seem to get this to work, not sure why. No error or anything (line 72)

    Code:java
    1. package me.MrLizard.Rust;
    2.  
    3. import java.lang.reflect.Field;
    4. import java.lang.reflect.Method;
    5.  
    6.  
    7. import org.bukkit.Bukkit;
    8. import org.bukkit.Material;
    9. import org.bukkit.command.Command;
    10. import org.bukkit.command.CommandSender;
    11. import org.bukkit.entity.Player;
    12. import org.bukkit.event.EventHandler;
    13. import org.bukkit.event.EventPriority;
    14. import org.bukkit.event.Listener;
    15. import org.bukkit.event.entity.PlayerDeathEvent;
    16. import org.bukkit.inventory.ItemStack;
    17. import org.bukkit.plugin.Plugin;
    18. import org.bukkit.plugin.java.JavaPlugin;
    19. import org.bukkit.scheduler.BukkitRunnable;
    20.  
    21.  
    22. public class Rust extends JavaPlugin implements Listener{
    23. public static Rust plugin;
    24.  
    25.  
    26. @Override
    27. public void onDisable() {
    28. }
    29.  
    30. @Override
    31. public void onEnable() {
    32. getServer().getPluginManager().registerEvents(this, this);
    33. }
    34. @EventHandler (priority=EventPriority.HIGHEST)
    35. public void onPlayerDeath(PlayerDeathEvent event) {
    36. final Player player = event.getEntity();
    37. Bukkit.getServer().getScheduler().runTaskLater((Plugin) this, new BukkitRunnable() {
    38. public void run() {
    39. forceRespawn(player);
    40. }
    41. }, 0L);}
    42.  
    43.  
    44. public void forceRespawn(Player player) {
    45. try {
    46. Object nmsPlayer = player.getClass().getMethod("getHandle").invoke(player);
    47. Object con = nmsPlayer.getClass().getDeclaredField("playerConnection").get(nmsPlayer);
    48.  
    49. Class<?> EntityPlayer = Class.forName(nmsPlayer.getClass().getPackage().getName() + ".EntityPlayer");
    50.  
    51. Field minecraftServer = con.getClass().getDeclaredField("minecraftServer");
    52. minecraftServer.setAccessible(true);
    53. Object mcserver = minecraftServer.get(con);
    54.  
    55. Object playerlist = mcserver.getClass().getDeclaredMethod("getPlayerList").invoke(mcserver);
    56. Method moveToWorld = playerlist.getClass().getMethod("moveToWorld", EntityPlayer, int.class, boolean.class);
    57. moveToWorld.invoke(playerlist, nmsPlayer, 0, false);
    58. player.setHealth(20.0);
    59. } catch (Exception e) {
    60. e.printStackTrace();
    61. }
    62. }
    63.  
    64. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
    65. if (!(sender instanceof Player)) {
    66. sender.sendMessage("No No No, You Didn't Say The Magic Word");
    67. }
    68. Player p = (Player) sender;
    69. Player player = (Player) sender;
    70. if(cmd.getName().equalsIgnoreCase("rustmc")){
    71. }
    72. else if (args.length == 2 && args[0].equalsIgnoreCase("weapon") && args[1].equalsIgnoreCase("pistol")){
    73. if(p.getInventory().contains(Material.IRON_INGOT, 40));
    74. if(p.getInventory().contains(Material.WOOD, 30));{
    75. ItemStack[] pistol = {new ItemStack(Material.IRON_INGOT, 40)};
    76. ItemStack[] pistol2 = {new ItemStack(Material.WOOD, 30)};
    77. player.getInventory().removeItem(pistol);
    78. player.getInventory().removeItem(pistol2);
    79. player.performCommand("mw give pistol");
    80. }
    81.  
    82. }
    83. return false;
    84. }
    85. }
     
  2. Offline

    AtomSponge

  3. Offline

    MrLizardDogMan

    It doesn't fix it but ok
     
  4. Offline

    L33m4n123

    Look at what you have

    Code:
    if command is rustmc {
    else if args.length is 2 and so on {
      }
    }
    
    and how you probably wanted to have it. I guess within your code there are even more if and else if issues. I would suggest you look over it again

    Code:
    if command is rustmc {
      if args.length is 2 and so on {
      }
    }
    
     
Thread Status:
Not open for further replies.

Share This Page