Development Assistance Help with EventPl pls !

Discussion in 'Plugin Help/Development/Requests' started by Jhon_Smith_611, Apr 24, 2015.

Thread Status:
Not open for further replies.
  1. Hi,

    i'm having problems with a plugin i have started in 1.8, here is the code:

    Code:
    package me.remi.Main;
    
    import java.util.ArrayList;
    
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.Material;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.Player;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.PlayerDeathEvent;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.inventory.PlayerInventory;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class Main extends JavaPlugin implements Listener{
       
        ArrayList<String> killers = new ArrayList<String>();
        String tribute;
       
        @EventHandler
        public void onPlayerDeath(PlayerDeathEvent e){
            Player p = e.getEntity();
            Player k = p.getKiller();
            PlayerInventory ki = k.getInventory();
           
            if(!(p instanceof Player)){
            }
           
            if(p.getName() == tribute && !(killers.contains(k.getName()))){
               
                killers.add(k.getName());
                ki.addItem(new ItemStack(Material.DIAMOND, 1));
                k.sendMessage(ChatColor.WHITE + "[" + ChatColor.GOLD + "EventPl" + ChatColor.WHITE +  "] " + "Vous avez tué " + p.getName() + ", vous avez donc gagné un diams !");
               
            }else if(p.getName() == tribute && killers.contains(k.getName())) {
               
                k.sendMessage("you have already kill this man");
            }
        }
       
        public void onEnable(){
            Bukkit.getServer().getPluginManager().registerEvents(this, this);
        }
       
        public void onDisable(){
           
        }
       
        public boolean onCommand(CommandSender s, Command cmd, String commandLabel, String[] args){
            if(cmd.getName().equalsIgnoreCase("envent")){
                Player p = (Player) s;
                Player target = s.getServer().getPlayer(args[0]);
               
                if(!(p.hasPermission("EventPl.event"))){
                    p.sendMessage(ChatColor.WHITE + "[" + ChatColor.GOLD + ChatColor.BOLD + "EventPl" + ChatColor.RESET + ChatColor.WHITE + "]" + ChatColor.RED +
                            "Mhhh, dsl tu ne peux pas faire cette commande !");
                    return true;
                }
               
                if(target == null){
                    p.sendMessage("lol");
                    return true;
                }
               
                tribute = target.getName();
               
                Bukkit.getServer().broadcastMessage("Un lot et donner a celui qui tue " + target.getName());
               
                return true;
            }
            return false;
        }
       
       
       
    }
    when i try to use the /event it replies /event and says that the command is null.

    Why ? pls help thx you

    Doctor611
     
  2. Don't get args[0] if you don't even know if the args length is more than 1!
     
  3. Offline

    mine-care

    Few notices:
    How is it possible for a Player not to be Player?
    Follow java naming conventions (Package names)
    Don't compare Objects with ==
    String tribute is not even initialised untill the command runs :p
    Dont cast without checking
    (Check my signature)

    :- ) hope that helps your code improvement!
     
  4. Offline

    timtower Administrator Administrator Moderator

    Moved to Bukkit alternatives
     
  5. thx every one

    thx every one it works now

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: Jun 12, 2016
Thread Status:
Not open for further replies.

Share This Page