Sueta
RU

RunnableItems | Remove your useless code!

0.3

API for items (click-click)

·Plugin

RunnableItems is a API for developers, who want remove trash from code.

For use it, add .jar file to your plugins folder, and use it like a library in your IDE.

Firstry, create class with your item. It must extends RunnableItem.

TEST ITEM 1:

package y.p.n;

import org.bukkit.ChatColor;
import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;

public class CustomItem extends RunnableItem {

    public CustomItem(){
        ItemStack mystack = new ItemStack(Material.SNOW_BALL,1);
        ItemMeta meta = mystack.getItemMeta();
        meta.setDisplayName(ChatColor.translateAlternateColorCodes('&',"&aVery good &6SNOWBALL"));
        mystack.setItemMeta(meta);

        stack = mystack;
        cancelled = true;
    }

    @Override
    public void run(Player player) {
        player.sendMessage("Hello world");
    }
}

TEST ITEM 2:

package y.p.n;

import org.bukkit.Material;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;

public class CustomItem2 extends RunnableItem {

    public CustomItem2(){
        stack = new ItemStack(Material.GRASS,1);
        cancelled = true;
    }

    @Override
    public void run(Player player) {
        player.getInventory().clear();
        player.sendMessage("Your inventory cleared!");
    }

}

Secondly, register your item in onEnable void.

@Override
    public void onEnable() {
        RunnableItems.registerItem(new CustomItem());
    }

It's all! Restart your server and use items!

But also, you can use RunnableItemUseEvent, and cancel any operation.

@EventHandler
    public void onItemUse(RunnableItemUseEvent event){
        if(event.getItem().getStack().getType().equals(Material.BED)){
            event.setCancelled(true);
            event.getPlayer().sendMessage("You can't use bed!");
        }
    }

Similar projects

Plugin →