Initial commit

This commit is contained in:
Paul Reilly
2020-07-11 14:28:42 -05:00
commit 3b6479cfc6
12 changed files with 284 additions and 0 deletions

View File

@ -0,0 +1,83 @@
package dev.coomware;
import org.bukkit.Material;
import org.bukkit.inventory.ShapedRecipe;
public class Craftable {
private Uncraftables plugin;
private CraftingUtils util = Uncraftables.plugin.util;
public Craftable(Uncraftables instance) {
plugin = instance;
}
public void craftables() {
saddle();
leatherHorseArmor();
ironHorseArmor();
goldHorseArmor();
diamondHorseArmor();
nametag();
}
private void saddle() {
ShapedRecipe saddle = util.shaped(Material.SADDLE, "saddle_recipe");
saddle.shape("wlw","sls","wlw");
saddle.setIngredient('w', Material.STICK);
saddle.setIngredient('s', Material.STRING);
saddle.setIngredient('l', Material.LEATHER);
plugin.server.addRecipe(saddle);
}
private void leatherHorseArmor() {
ShapedRecipe armor = util.shaped(Material.LEATHER_HORSE_ARMOR, "leather_horse_armor_recipe");
armor.shape("aal","l*l","lsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('l', Material.LEATHER);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void ironHorseArmor() {
ShapedRecipe armor = util.shaped(Material.IRON_HORSE_ARMOR, "iron_horse_armor_recipe");
armor.shape("aai","i*i","isi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void goldHorseArmor() {
ShapedRecipe armor = util.shaped(Material.GOLDEN_HORSE_ARMOR, "golden_horse_armor_recipe");
armor.shape("aag","g*g","gsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('g', Material.GOLD_INGOT);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void diamondHorseArmor() {
ShapedRecipe armor = util.shaped(Material.DIAMOND_HORSE_ARMOR, "diamond_horse_armor_recipe");
armor.shape("aad","d*d","dsi");
armor.setIngredient('a', Material.AIR);
armor.setIngredient('s', Material.STRING);
armor.setIngredient('d', Material.DIAMOND);
armor.setIngredient('*', Material.SADDLE);
armor.setIngredient('i', Material.IRON_INGOT);
plugin.server.addRecipe(armor);
}
private void nametag() {
ShapedRecipe nametag = util.shaped(Material.NAME_TAG, "nametag_recipe");
nametag.shape("aas","apa","paa");
nametag.setIngredient('a', Material.AIR);
nametag.setIngredient('s', Material.STRING);
nametag.setIngredient('p', Material.PAPER);
plugin.server.addRecipe(nametag);
}
}

View File

@ -0,0 +1,29 @@
package dev.coomware;
import org.bukkit.Material;
import org.bukkit.NamespacedKey;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.ShapedRecipe;
import org.bukkit.inventory.ShapelessRecipe;
public class CraftingUtils {
private Uncraftables plugin;
public CraftingUtils(Uncraftables instance) {
plugin = instance;
}
private NamespacedKey newKey(String string) {
return new NamespacedKey(plugin, string);
}
public ShapedRecipe shaped(Material result, String key) {
ItemStack is = new ItemStack(result);
return new ShapedRecipe(newKey(key), is);
}
public ShapelessRecipe shapeless(Material result, String key) {
ItemStack is = new ItemStack(result);
return new ShapelessRecipe(newKey(key), is);
}
}

View File

@ -0,0 +1,27 @@
package dev.coomware;
import org.bukkit.Server;
import org.bukkit.plugin.java.JavaPlugin;
public class Uncraftables extends JavaPlugin {
public static Uncraftables plugin;
public Server server;
public CraftingUtils util;
@Override
public void onLoad() {
plugin = this;
server = getServer();
util = new CraftingUtils(this);
}
@Override
public void onEnable() {
new Craftable(this).craftables();
}
@Override
public void onDisable() {
}
}

View File

@ -0,0 +1,6 @@
name: Uncraftables
main: dev.coomware.Uncraftables
version: 1.0.0
author: CoomWare
description: Adds in crafting recipes for all uncraftable items.
api-version: 1.16