Add Crafting tweaks.
parent
4f68824718
commit
36ded4ce9f
|
@ -8,8 +8,15 @@ A list of all the tweaks current present in this project.
|
||||||
Allows players to use the command `/toggletrample` to toggle their ability to trample farmland.
|
Allows players to use the command `/toggletrample` to toggle their ability to trample farmland.
|
||||||
This tweak also disables crop trampling for villagers and iron golems to help with decorative villages.
|
This tweak also disables crop trampling for villagers and iron golems to help with decorative villages.
|
||||||
|
|
||||||
|
### Crafting tweaks
|
||||||
|
Adds some extra crafting recipes to the game.
|
||||||
|
Currently included:
|
||||||
|
- 8 wood logs -> 4 chests
|
||||||
|
- 2 paper + 1 iron ingot -> 1 name tag
|
||||||
|
- 1 wool (any color) -> 4 string
|
||||||
|
- 3 leather + 2 string + 2 iron ingot -> 1 saddle
|
||||||
|
|
||||||
## Planned tweaks
|
## Planned tweaks
|
||||||
- Crafting tweaks
|
|
||||||
- Dynamite
|
- Dynamite
|
||||||
- Seed drop planting
|
- Seed drop planting
|
||||||
- Sign editing
|
- Sign editing
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
package nl.kallestruik.vanillatweaks.CraftingTweaks;
|
||||||
|
|
||||||
|
import nl.kallestruik.vanillatweaks.config;
|
||||||
|
import org.bukkit.Material;
|
||||||
|
import org.bukkit.NamespacedKey;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.bukkit.inventory.RecipeChoice;
|
||||||
|
import org.bukkit.inventory.ShapedRecipe;
|
||||||
|
import org.bukkit.inventory.ShapelessRecipe;
|
||||||
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
|
public class CraftingTweaks {
|
||||||
|
|
||||||
|
public static void init(JavaPlugin plugin) {
|
||||||
|
RecipeChoice woodLog = new RecipeChoice.MaterialChoice(Material.OAK_LOG, Material.BIRCH_LOG, Material.SPRUCE_LOG, Material.JUNGLE_LOG, Material.ACACIA_LOG, Material.DARK_OAK_LOG);
|
||||||
|
RecipeChoice allWool = new RecipeChoice.MaterialChoice(Material.WHITE_WOOL, Material.BLACK_WOOL, Material.BLUE_WOOL, Material.BROWN_WOOL, Material.CYAN_WOOL, Material.GRAY_WOOL, Material.GREEN_WOOL, Material.LIGHT_BLUE_WOOL, Material.LIGHT_GRAY_WOOL, Material.LIME_WOOL, Material.MAGENTA_WOOL, Material.ORANGE_WOOL, Material.PINK_WOOL, Material.PURPLE_WOOL, Material.RED_WOOL, Material.YELLOW_WOOL);
|
||||||
|
|
||||||
|
// Better chest recipe
|
||||||
|
NamespacedKey chestKey = new NamespacedKey(plugin, "chest");
|
||||||
|
ShapedRecipe chestRecipe = new ShapedRecipe(chestKey, new ItemStack(Material.CHEST, 4));
|
||||||
|
chestRecipe.shape("WWW", "W W", "WWW");
|
||||||
|
chestRecipe.setIngredient('W', woodLog);
|
||||||
|
|
||||||
|
// Name tag recipe
|
||||||
|
NamespacedKey nametagKey = new NamespacedKey(plugin, "nametag");
|
||||||
|
ShapedRecipe nametagRecipe = new ShapedRecipe(nametagKey, new ItemStack(Material.NAME_TAG));
|
||||||
|
nametagRecipe.shape(" I", " P ", "P ");
|
||||||
|
nametagRecipe.setIngredient('I', Material.IRON_INGOT);
|
||||||
|
nametagRecipe.setIngredient('P', Material.PAPER);
|
||||||
|
|
||||||
|
// Wool > String recipe
|
||||||
|
NamespacedKey stringKey = new NamespacedKey(plugin, "string");
|
||||||
|
ShapelessRecipe stringRecipe = new ShapelessRecipe(stringKey, new ItemStack(Material.STRING, 4));
|
||||||
|
stringRecipe.addIngredient(allWool);
|
||||||
|
|
||||||
|
// Saddle
|
||||||
|
NamespacedKey saddleKey = new NamespacedKey(plugin, "saddle");
|
||||||
|
ShapedRecipe saddleRecipe = new ShapedRecipe(saddleKey, new ItemStack(Material.SADDLE));
|
||||||
|
saddleRecipe.shape("LLL", "S S", "I I");
|
||||||
|
saddleRecipe.setIngredient('L', Material.LEATHER);
|
||||||
|
saddleRecipe.setIngredient('S', Material.STRING);
|
||||||
|
saddleRecipe.setIngredient('I', Material.IRON_INGOT);
|
||||||
|
|
||||||
|
// Add recipes
|
||||||
|
if (config.CRAFTING_TWEAKS_BETTER_CHEST) plugin.getServer().addRecipe(chestRecipe);
|
||||||
|
if (config.CRAFTING_TWEAKS_NAME_TAG) plugin.getServer().addRecipe(nametagRecipe);
|
||||||
|
if (config.CRAFTING_TWEAKS_WOOL_TO_STRING) plugin.getServer().addRecipe(stringRecipe);
|
||||||
|
if (config.CRAFTING_TWEAKS_SADDLE) plugin.getServer().addRecipe(saddleRecipe);
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,5 +1,6 @@
|
||||||
package nl.kallestruik.vanillatweaks;
|
package nl.kallestruik.vanillatweaks;
|
||||||
|
|
||||||
|
import nl.kallestruik.vanillatweaks.CraftingTweaks.CraftingTweaks;
|
||||||
import nl.kallestruik.vanillatweaks.ToggleTrample.CommandToggletrample;
|
import nl.kallestruik.vanillatweaks.ToggleTrample.CommandToggletrample;
|
||||||
import nl.kallestruik.vanillatweaks.ToggleTrample.TrampleHandler;
|
import nl.kallestruik.vanillatweaks.ToggleTrample.TrampleHandler;
|
||||||
import org.bukkit.configuration.InvalidConfigurationException;
|
import org.bukkit.configuration.InvalidConfigurationException;
|
||||||
|
@ -15,22 +16,15 @@ public final class VanillaTweaks extends JavaPlugin {
|
||||||
// Config loading
|
// Config loading
|
||||||
config.load(new File(this.getDataFolder(), c.CONFIG_FILE_NAME));
|
config.load(new File(this.getDataFolder(), c.CONFIG_FILE_NAME));
|
||||||
|
|
||||||
/**
|
if (config.TOGGLE_TRAMPLE_ENABLED) {
|
||||||
* Toggle trample
|
TrampleHandler.loadTrampleEnabled(new File(this.getDataFolder(), c.TRAMPLE_ENABLED_FILE_NAME));
|
||||||
*
|
getServer().getPluginCommand("toggletrample").setExecutor(new CommandToggletrample());
|
||||||
* Enable/disable your ability to trample crops with a simple command. Also stops villagers and iron golems
|
getServer().getPluginManager().registerEvents(new TrampleHandler(), this);
|
||||||
* from trampling your crops.
|
}
|
||||||
*/
|
|
||||||
TrampleHandler.loadTrampleEnabled(new File(this.getDataFolder(), c.TRAMPLE_ENABLED_FILE_NAME));
|
|
||||||
getServer().getPluginCommand("toggletrample").setExecutor(new CommandToggletrample());
|
|
||||||
getServer().getPluginManager().registerEvents(new TrampleHandler(), this);
|
|
||||||
|
|
||||||
/**
|
if (config.CRAFTING_TWEAKS_ENABLED) {
|
||||||
* Crafting
|
CraftingTweaks.init(this);
|
||||||
*
|
}
|
||||||
* Add some extra crafting recipes to the game. Examples: 8 logs -> 4 chests, 1 wool -> 4 string,
|
|
||||||
* 8 stairs instead of 6, 2 paper + 1 iron -> name tag.
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Dynamite
|
* Dynamite
|
||||||
|
|
|
@ -9,6 +9,11 @@ import java.io.IOException;
|
||||||
public class config {
|
public class config {
|
||||||
|
|
||||||
public static boolean TOGGLE_TRAMPLE_ENABLED;
|
public static boolean TOGGLE_TRAMPLE_ENABLED;
|
||||||
|
public static boolean CRAFTING_TWEAKS_ENABLED;
|
||||||
|
public static boolean CRAFTING_TWEAKS_BETTER_CHEST;
|
||||||
|
public static boolean CRAFTING_TWEAKS_NAME_TAG;
|
||||||
|
public static boolean CRAFTING_TWEAKS_WOOL_TO_STRING;
|
||||||
|
public static boolean CRAFTING_TWEAKS_SADDLE;
|
||||||
|
|
||||||
public static void load(File file) throws IOException, InvalidConfigurationException {
|
public static void load(File file) throws IOException, InvalidConfigurationException {
|
||||||
if (!file.getParentFile().exists())
|
if (!file.getParentFile().exists())
|
||||||
|
@ -20,5 +25,16 @@ public class config {
|
||||||
|
|
||||||
TOGGLE_TRAMPLE_ENABLED = config.getBoolean("toggle-trample.enabled");
|
TOGGLE_TRAMPLE_ENABLED = config.getBoolean("toggle-trample.enabled");
|
||||||
|
|
||||||
|
CRAFTING_TWEAKS_ENABLED = config.getBoolean("crafting-tweaks.enabled");
|
||||||
|
CRAFTING_TWEAKS_BETTER_CHEST = config.getBoolean("crafting-tweaks.better-chest");
|
||||||
|
CRAFTING_TWEAKS_NAME_TAG = config.getBoolean("crafting-tweaks.name-tag");
|
||||||
|
CRAFTING_TWEAKS_WOOL_TO_STRING = config.getBoolean("crafting-tweaks.wool-to-string");
|
||||||
|
CRAFTING_TWEAKS_SADDLE = config.getBoolean("crafting-tweaks.saddle");
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,2 +1,10 @@
|
||||||
toggle-trample:
|
toggle-trample:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
|
||||||
|
crafting-tweaks:
|
||||||
|
enabled: true
|
||||||
|
better-chest: true
|
||||||
|
name-tag: true
|
||||||
|
wool-to-string: true
|
||||||
|
saddle: true
|
||||||
|
|
||||||
|
|
Reference in New Issue