mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-19 19:25:48 +00:00
Merge branch 'master' into feature/miner
This commit is contained in:
commit
013696a759
@ -24,14 +24,18 @@
|
||||
* Added Dried Kelp Blocks recipe to the Electric Press
|
||||
* Added Bone Blocks recipe to the Electric Press
|
||||
* Added thai translations
|
||||
* Dried Kelp Blocks can now be used in the Coal Generator
|
||||
* Added Industrial Miner
|
||||
* Added Advanced Industrial Miner
|
||||
* Added Cocoa Organic Food
|
||||
* Added Cocoa Fertilizer
|
||||
|
||||
#### Changes
|
||||
* Fixed a few memory leaks
|
||||
* Removed Digital Miner
|
||||
* Removed Advanced Digital Miner
|
||||
* Dried Kelp Blocks can now be used in the Coal Generator
|
||||
* Crafting Organic Food/Fertilizer yields more output now
|
||||
* Organic Food (Melon) now uses Melon Slices instead of Melon blocks
|
||||
|
||||
#### Fixes
|
||||
* Fixed Ore Washer recipes showing up twice
|
||||
|
@ -53,7 +53,7 @@ While "stable" builds most definitely contain more bugs than development builds
|
||||
</details>
|
||||
|
||||
## Discord
|
||||
You can find Slimefun's community on Discord and connect with **over 1800** users of this plugin from all over the world.<br>
|
||||
You can find Slimefun's community on Discord and connect with **over 2000** users of this plugin from all over the world.<br>
|
||||
Click the badge down below to join the server for suggestions/questions or other discussions about this plugin.<br>
|
||||
We are also hosting a community event every so often, join us to find out more.<br>
|
||||
**Important**: We do **not** accept bug reports on discord, please use our [Issue Tracker](https://github.com/TheBusyBiscuit/Slimefun4/issues) to submit bug reports!
|
||||
|
2
pom.xml
2
pom.xml
@ -151,7 +151,7 @@
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-shade-plugin</artifactId>
|
||||
<version>3.2.3</version>
|
||||
<version>3.2.4</version>
|
||||
|
||||
<configuration>
|
||||
|
||||
|
@ -1,10 +1,13 @@
|
||||
package io.github.thebusybiscuit.slimefun4.core.services;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Optional;
|
||||
import java.util.function.Consumer;
|
||||
|
||||
import org.apache.commons.lang.Validate;
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.inventory.FurnaceRecipe;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.Recipe;
|
||||
@ -29,6 +32,8 @@ import io.github.thebusybiscuit.slimefun4.implementation.guide.ChestSlimefunGuid
|
||||
public class MinecraftRecipeService {
|
||||
|
||||
private final Plugin plugin;
|
||||
private final List<Consumer<RecipeSnapshot>> subscriptions = new LinkedList<>();
|
||||
|
||||
private RecipeSnapshot snapshot;
|
||||
|
||||
/**
|
||||
@ -49,6 +54,23 @@ public class MinecraftRecipeService {
|
||||
*/
|
||||
public void refresh() {
|
||||
snapshot = new RecipeSnapshot(plugin);
|
||||
|
||||
for (Consumer<RecipeSnapshot> subscriber : subscriptions) {
|
||||
subscriber.accept(snapshot);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* This method subscribes to the underlying {@link RecipeSnapshot}.
|
||||
* When the {@link Server} has finished loading and a {@link Collection} of all
|
||||
* {@link Recipe Recipes} is created, the given callback will be run.
|
||||
*
|
||||
* @param subscription
|
||||
* A callback to run when the {@link RecipeSnapshot} has been created.
|
||||
*/
|
||||
public void subscribe(Consumer<RecipeSnapshot> subscription) {
|
||||
Validate.notNull(subscription, "Callback must not be null!");
|
||||
subscriptions.add(subscription);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -61,7 +83,7 @@ public class MinecraftRecipeService {
|
||||
* @return An {@link Optional} describing the furnace output of the given {@link ItemStack}
|
||||
*/
|
||||
public Optional<ItemStack> getFurnaceOutput(ItemStack input) {
|
||||
if (input == null) {
|
||||
if (snapshot == null || input == null) {
|
||||
return Optional.empty();
|
||||
}
|
||||
|
||||
@ -114,7 +136,7 @@ public class MinecraftRecipeService {
|
||||
* @return An array of {@link Recipe Recipes} to craft the given {@link ItemStack}
|
||||
*/
|
||||
public Recipe[] getRecipesFor(ItemStack item) {
|
||||
if (item == null) {
|
||||
if (snapshot == null || item == null) {
|
||||
return new Recipe[0];
|
||||
}
|
||||
else {
|
||||
|
@ -111,6 +111,7 @@ public class Translators {
|
||||
|
||||
// Translators - Hebrew
|
||||
addTranslator("dhtdht020", EmbeddedLanguage.HEBREW, false);
|
||||
addTranslator("Eylonnn", EmbeddedLanguage.HEBREW, false);
|
||||
|
||||
// Translators - Japanese
|
||||
addTranslator("bito-blosh", "Bloshop", EmbeddedLanguage.JAPANESE, false);
|
||||
|
@ -1,15 +1,12 @@
|
||||
package io.github.thebusybiscuit.slimefun4.implementation.items.electric.machines;
|
||||
|
||||
import java.util.Iterator;
|
||||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.inventory.FurnaceRecipe;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
import org.bukkit.inventory.Recipe;
|
||||
import org.bukkit.inventory.RecipeChoice;
|
||||
import org.bukkit.inventory.RecipeChoice.MaterialChoice;
|
||||
|
||||
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.abstractItems.AContainer;
|
||||
@ -23,12 +20,9 @@ public abstract class ElectricFurnace extends AContainer {
|
||||
|
||||
@Override
|
||||
public void registerDefaultRecipes() {
|
||||
Iterator<Recipe> iterator = Bukkit.recipeIterator();
|
||||
while (iterator.hasNext()) {
|
||||
Recipe recipe = iterator.next();
|
||||
|
||||
if (recipe instanceof FurnaceRecipe) {
|
||||
RecipeChoice choice = ((FurnaceRecipe) recipe).getInputChoice();
|
||||
SlimefunPlugin.getMinecraftRecipes().subscribe(snapshot -> {
|
||||
for (FurnaceRecipe recipe : snapshot.getRecipes(FurnaceRecipe.class)) {
|
||||
RecipeChoice choice = recipe.getInputChoice();
|
||||
|
||||
if (choice instanceof MaterialChoice) {
|
||||
for (Material input : ((MaterialChoice) choice).getChoices()) {
|
||||
@ -36,7 +30,7 @@ public abstract class ElectricFurnace extends AContainer {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -3,7 +3,10 @@ package io.github.thebusybiscuit.slimefun4.implementation.items.electric.machine
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import io.github.thebusybiscuit.slimefun4.api.MinecraftVersion;
|
||||
import io.github.thebusybiscuit.slimefun4.core.attributes.RecipeDisplayItem;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.misc.OrganicFertilizer;
|
||||
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
@ -18,15 +21,19 @@ public abstract class FoodComposter extends AContainer implements RecipeDisplayI
|
||||
|
||||
@Override
|
||||
protected void registerDefaultRecipes() {
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.WHEAT_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.WHEAT_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.CARROT_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.CARROT_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.POTATO_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.POTATO_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.SEEDS_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.SEEDS_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.BEETROOT_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.BEETROOT_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.MELON_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.MELON_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.APPLE_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.APPLE_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.SWEET_BERRIES_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.KELP_ORGANIC_FOOD }, new ItemStack[] { SlimefunItems.KELP_FERTILIZER });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.WHEAT_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.WHEAT_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.CARROT_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.CARROT_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.POTATO_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.POTATO_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.SEEDS_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SEEDS_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.BEETROOT_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.BEETROOT_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.MELON_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.MELON_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.APPLE_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.APPLE_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.KELP_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.KELP_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.COCOA_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.COCOA_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_14)) {
|
||||
registerRecipe(30, new ItemStack[] { SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SWEET_BERRIES_FERTILIZER, OrganicFertilizer.OUTPUT) });
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -4,6 +4,7 @@ import org.bukkit.Material;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import io.github.thebusybiscuit.slimefun4.api.MinecraftVersion;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.misc.OrganicFood;
|
||||
import me.mrCookieSlime.Slimefun.SlimefunPlugin;
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
|
||||
@ -19,17 +20,18 @@ public abstract class FoodFabricator extends AContainer {
|
||||
|
||||
@Override
|
||||
protected void registerDefaultRecipes() {
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT) }, new ItemStack[] { SlimefunItems.WHEAT_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.CARROT) }, new ItemStack[] { SlimefunItems.CARROT_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.POTATO) }, new ItemStack[] { SlimefunItems.POTATO_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT_SEEDS) }, new ItemStack[] { SlimefunItems.SEEDS_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.BEETROOT) }, new ItemStack[] { SlimefunItems.BEETROOT_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.MELON) }, new ItemStack[] { SlimefunItems.MELON_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.APPLE) }, new ItemStack[] { SlimefunItems.APPLE_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.DRIED_KELP) }, new ItemStack[] { SlimefunItems.KELP_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.WHEAT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.CARROT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.CARROT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.POTATO) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.POTATO_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.WHEAT_SEEDS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SEEDS_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.BEETROOT) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.BEETROOT_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.MELON_SLICE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.MELON_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.APPLE) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.APPLE_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.DRIED_KELP) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.KELP_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.COCOA_BEANS) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.COCOA_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_14)) {
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.SWEET_BERRIES) }, new ItemStack[] { SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD });
|
||||
registerRecipe(12, new ItemStack[] { SlimefunItems.CAN, new ItemStack(Material.SWEET_BERRIES) }, new ItemStack[] { new SlimefunItemStack(SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, OrganicFood.OUTPUT) });
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -0,0 +1,18 @@
|
||||
package io.github.thebusybiscuit.slimefun4.implementation.items.misc;
|
||||
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||
import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||
|
||||
public class OrganicFertilizer extends SlimefunItem {
|
||||
|
||||
public static final int OUTPUT = 2;
|
||||
|
||||
public OrganicFertilizer(Category category, SlimefunItemStack item, SlimefunItemStack ingredient) {
|
||||
super(category, item, RecipeType.FOOD_COMPOSTER, new ItemStack[] { ingredient, null, null, null, null, null, null, null, null }, new SlimefunItemStack(item, OUTPUT));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package io.github.thebusybiscuit.slimefun4.implementation.items.misc;
|
||||
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import me.mrCookieSlime.Slimefun.Lists.RecipeType;
|
||||
import me.mrCookieSlime.Slimefun.Lists.SlimefunItems;
|
||||
import me.mrCookieSlime.Slimefun.Objects.Category;
|
||||
import me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem;
|
||||
import me.mrCookieSlime.Slimefun.api.SlimefunItemStack;
|
||||
|
||||
public class OrganicFood extends SlimefunItem {
|
||||
|
||||
public static final int OUTPUT = 2;
|
||||
|
||||
public OrganicFood(Category category, SlimefunItemStack item, Material ingredient) {
|
||||
super(category, item, RecipeType.FOOD_FABRICATOR, new ItemStack[] { SlimefunItems.CAN, new ItemStack(ingredient), null, null, null, null, null, null, null }, new SlimefunItemStack(item, OUTPUT));
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
/**
|
||||
* This package holds any miscellaneous {@link me.mrCookieSlime.Slimefun.Objects.SlimefunItem.SlimefunItem}
|
||||
* implementations.
|
||||
*/
|
||||
package io.github.thebusybiscuit.slimefun4.implementation.items.misc;
|
@ -200,14 +200,14 @@ public final class ResearchSetup {
|
||||
register("energized_gps_transmitter", 189, "Top Tier Transmitter", 44, SlimefunItems.GPS_TRANSMITTER_4);
|
||||
register("energy_regulator", 190, "Energy Networks 101", 6, SlimefunItems.ENERGY_REGULATOR);
|
||||
register("butcher_androids", 191, "Butcher Androids", 32, SlimefunItems.PROGRAMMABLE_ANDROID_BUTCHER);
|
||||
register("organic_food", 192, "Organic Food", 25, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.WHEAT_ORGANIC_FOOD, SlimefunItems.CARROT_ORGANIC_FOOD, SlimefunItems.POTATO_ORGANIC_FOOD, SlimefunItems.SEEDS_ORGANIC_FOOD, SlimefunItems.BEETROOT_ORGANIC_FOOD, SlimefunItems.MELON_ORGANIC_FOOD, SlimefunItems.APPLE_ORGANIC_FOOD, SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, SlimefunItems.KELP_ORGANIC_FOOD);
|
||||
register("organic_food", 192, "Organic Food", 25, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.WHEAT_ORGANIC_FOOD, SlimefunItems.CARROT_ORGANIC_FOOD, SlimefunItems.POTATO_ORGANIC_FOOD, SlimefunItems.SEEDS_ORGANIC_FOOD, SlimefunItems.BEETROOT_ORGANIC_FOOD, SlimefunItems.MELON_ORGANIC_FOOD, SlimefunItems.APPLE_ORGANIC_FOOD, SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, SlimefunItems.KELP_ORGANIC_FOOD, SlimefunItems.COCOA_ORGANIC_FOOD);
|
||||
register("auto_breeder", 193, "Automated Feeding", 25, SlimefunItems.AUTO_BREEDER);
|
||||
register("advanced_android", 194, "Advanced Androids", 60, SlimefunItems.PROGRAMMABLE_ANDROID_2);
|
||||
register("advanced_butcher_android", 195, "Advanced Androids - Butcher", 30, SlimefunItems.PROGRAMMABLE_ANDROID_2_BUTCHER);
|
||||
register("advanced_fisherman_android", 196, "Advanced Androids - Fisherman", 30, SlimefunItems.PROGRAMMABLE_ANDROID_2_FISHERMAN);
|
||||
register("animal_growth_accelerator", 197, "Animal Growth Manipulation", 32, SlimefunItems.ANIMAL_GROWTH_ACCELERATOR);
|
||||
register("xp_collector", 198, "XP Collector", 36, SlimefunItems.XP_COLLECTOR);
|
||||
register("organic_fertilizer", 199, "Organic Fertilizer", 36, SlimefunItems.FOOD_COMPOSTER, SlimefunItems.WHEAT_FERTILIZER, SlimefunItems.CARROT_FERTILIZER, SlimefunItems.POTATO_FERTILIZER, SlimefunItems.SEEDS_FERTILIZER, SlimefunItems.BEETROOT_FERTILIZER, SlimefunItems.MELON_FERTILIZER, SlimefunItems.APPLE_FERTILIZER, SlimefunItems.SWEET_BERRIES_FERTILIZER, SlimefunItems.KELP_FERTILIZER);
|
||||
register("organic_fertilizer", 199, "Organic Fertilizer", 36, SlimefunItems.FOOD_COMPOSTER, SlimefunItems.WHEAT_FERTILIZER, SlimefunItems.CARROT_FERTILIZER, SlimefunItems.POTATO_FERTILIZER, SlimefunItems.SEEDS_FERTILIZER, SlimefunItems.BEETROOT_FERTILIZER, SlimefunItems.MELON_FERTILIZER, SlimefunItems.APPLE_FERTILIZER, SlimefunItems.SWEET_BERRIES_FERTILIZER, SlimefunItems.KELP_FERTILIZER, SlimefunItems.COCOA_FERTILIZER);
|
||||
register("crop_growth_accelerator", 200, "Crop Growth Acceleration", 40, SlimefunItems.CROP_GROWTH_ACCELERATOR);
|
||||
register("better_crop_growth_accelerator", 201, "Upgraded Crop Growth Accelerator", 44, SlimefunItems.CROP_GROWTH_ACCELERATOR_2);
|
||||
register("reactor_essentials", 202, "Reactor Essentials", 36, SlimefunItems.REACTOR_COOLANT_CELL, SlimefunItems.NEPTUNIUM, SlimefunItems.PLUTONIUM);
|
||||
|
@ -130,6 +130,8 @@ import io.github.thebusybiscuit.slimefun4.implementation.items.medical.Medicine;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.medical.Rag;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.medical.Splint;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.medical.Vitamins;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.misc.OrganicFertilizer;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.misc.OrganicFood;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.multiblocks.ArmorForge;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.multiblocks.AutomatedPanningMachine;
|
||||
import io.github.thebusybiscuit.slimefun4.implementation.items.multiblocks.Compressor;
|
||||
@ -2803,44 +2805,38 @@ public final class SlimefunItemSetup {
|
||||
|
||||
}.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.WHEAT_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.WHEAT), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.WHEAT_ORGANIC_FOOD, Material.WHEAT)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.CARROT_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.CARROT), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.CARROT_ORGANIC_FOOD, Material.CARROT)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.POTATO_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.POTATO), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.POTATO_ORGANIC_FOOD, Material.POTATO)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.SEEDS_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.WHEAT_SEEDS), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.SEEDS_ORGANIC_FOOD, Material.WHEAT_SEEDS)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.BEETROOT_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.BEETROOT), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.BEETROOT_ORGANIC_FOOD, Material.BEETROOT)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.MELON_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.MELON), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.MELON_ORGANIC_FOOD, Material.MELON_SLICE)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.APPLE_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.APPLE), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.APPLE_ORGANIC_FOOD, Material.APPLE)
|
||||
.register(plugin);
|
||||
|
||||
if (SlimefunPlugin.getMinecraftVersion().isAtLeast(MinecraftVersion.MINECRAFT_1_14)) {
|
||||
new SlimefunItem(categories.misc, SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.SWEET_BERRIES), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, Material.SWEET_BERRIES)
|
||||
.register(plugin);
|
||||
}
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.KELP_ORGANIC_FOOD, RecipeType.FOOD_FABRICATOR,
|
||||
new ItemStack[] {SlimefunItems.CAN, new ItemStack(Material.DRIED_KELP), null, null, null, null, null, null, null})
|
||||
new OrganicFood(categories.misc, SlimefunItems.KELP_ORGANIC_FOOD, Material.DRIED_KELP)
|
||||
.register(plugin);
|
||||
|
||||
new OrganicFood(categories.misc, SlimefunItems.COCOA_ORGANIC_FOOD, Material.COCOA_BEANS)
|
||||
.register(plugin);
|
||||
|
||||
new AutoBreeder(categories.electricity, SlimefunItems.AUTO_BREEDER, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {SlimefunItems.GOLD_18K, SlimefunItems.CAN, SlimefunItems.GOLD_18K, SlimefunItems.ELECTRIC_MOTOR, new ItemStack(Material.HAY_BLOCK), SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.LEAD_INGOT, SlimefunItems.FOOD_FABRICATOR, SlimefunItems.LEAD_INGOT})
|
||||
.register(plugin);
|
||||
@ -2897,42 +2893,36 @@ public final class SlimefunItemSetup {
|
||||
|
||||
}.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.WHEAT_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.WHEAT_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.WHEAT_FERTILIZER, SlimefunItems.WHEAT_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.CARROT_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.CARROT_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.CARROT_FERTILIZER, SlimefunItems.CARROT_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.POTATO_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.POTATO_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.POTATO_FERTILIZER, SlimefunItems.POTATO_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.SEEDS_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.SEEDS_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.SEEDS_FERTILIZER, SlimefunItems.SEEDS_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.BEETROOT_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.BEETROOT_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.BEETROOT_FERTILIZER, SlimefunItems.BEETROOT_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.MELON_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.MELON_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.MELON_FERTILIZER, SlimefunItems.MELON_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.APPLE_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.APPLE_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.APPLE_FERTILIZER, SlimefunItems.APPLE_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.SWEET_BERRIES_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.SWEET_BERRIES_FERTILIZER, SlimefunItems.SWEET_BERRIES_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new SlimefunItem(categories.misc, SlimefunItems.KELP_FERTILIZER, RecipeType.FOOD_COMPOSTER,
|
||||
new ItemStack[] {SlimefunItems.KELP_ORGANIC_FOOD, null, null, null, null, null, null, null, null})
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.KELP_FERTILIZER, SlimefunItems.KELP_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new OrganicFertilizer(categories.misc, SlimefunItems.COCOA_FERTILIZER, SlimefunItems.COCOA_ORGANIC_FOOD)
|
||||
.register(plugin);
|
||||
|
||||
new CropGrowthAccelerator(categories.electricity, SlimefunItems.CROP_GROWTH_ACCELERATOR, RecipeType.ENHANCED_CRAFTING_TABLE,
|
||||
new ItemStack[] {null, SlimefunItems.BLISTERING_INGOT_3, null, SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.PROGRAMMABLE_ANDROID_FARMER, SlimefunItems.ELECTRIC_MOTOR, SlimefunItems.ELECTRO_MAGNET, SlimefunItems.ANIMAL_GROWTH_ACCELERATOR, SlimefunItems.ELECTRO_MAGNET}) {
|
||||
|
||||
|
@ -727,6 +727,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack APPLE_ORGANIC_FOOD = new SlimefunItemStack("ORGANIC_FOOD_APPLE", ORGANIC_FOOD, "&aOrganic Food", "&7Content: &9Apple");
|
||||
public static final SlimefunItemStack SWEET_BERRIES_ORGANIC_FOOD = new SlimefunItemStack("ORGANIC_FOOD_SWEET_BERRIES", ORGANIC_FOOD, "&aOrganic Food", "&7Content: &9Sweet Berries");
|
||||
public static final SlimefunItemStack KELP_ORGANIC_FOOD = new SlimefunItemStack("ORGANIC_FOOD_KELP", ORGANIC_FOOD, "&aOrganic Food", "&7Content: &9Dried Kelp");
|
||||
public static final SlimefunItemStack COCOA_ORGANIC_FOOD = new SlimefunItemStack("ORGANIC_FOOD_COCOA", ORGANIC_FOOD, "&aOrganic Food", "&7Content: &9Cocoa Beans");
|
||||
|
||||
public static final SlimefunItemStack FERTILIZER = new SlimefunItemStack("FERTILIZER", "b439e3f5acbee9be4c4259289d6d9f35c635ffa661114687b3ea6dda8c79", "&aOrganic Fertilizer", "&7Content: &9???");
|
||||
public static final SlimefunItemStack WHEAT_FERTILIZER = new SlimefunItemStack("FERTILIZER_WHEAT", FERTILIZER, "&aOrganic Fertilizer", "&7Content: &9Wheat");
|
||||
@ -738,6 +739,7 @@ public final class SlimefunItems {
|
||||
public static final SlimefunItemStack APPLE_FERTILIZER = new SlimefunItemStack("FERTILIZER_APPLE", FERTILIZER, "&aOrganic Fertilizer", "&7Content: &9Apple");
|
||||
public static final SlimefunItemStack SWEET_BERRIES_FERTILIZER = new SlimefunItemStack("FERTILIZER_SWEET_BERRIES", FERTILIZER, "&aOrganic Fertilizer", "&7Content: &9Sweet Berries");
|
||||
public static final SlimefunItemStack KELP_FERTILIZER = new SlimefunItemStack("FERTILIZER_KELP", FERTILIZER, "&aOrganic Fertilizer", "&7Content: &9Dried Kelp");
|
||||
public static final SlimefunItemStack COCOA_FERTILIZER = new SlimefunItemStack("FERTILIZER_COCOA", FERTILIZER, "&aOrganic Fertilizer", "&7Content: &9Cocoa beans");
|
||||
|
||||
public static final SlimefunItemStack ANIMAL_GROWTH_ACCELERATOR = new SlimefunItemStack("ANIMAL_GROWTH_ACCELERATOR", Material.HAY_BLOCK, "&bAnimal Growth Accelerator", "", "&rRuns on &aOrganic Food", "", LoreBuilder.machine(MachineTier.END_GAME, MachineType.MACHINE), LoreBuilder.powerBuffer(1024), LoreBuilder.powerPerSecond(28));
|
||||
public static final SlimefunItemStack CROP_GROWTH_ACCELERATOR = new SlimefunItemStack("CROP_GROWTH_ACCELERATOR", Material.LIME_TERRACOTTA, "&aCrop Growth Accelerator", "", "&rRuns on &aOrganic Fertilizer", "", LoreBuilder.machine(MachineTier.END_GAME, MachineType.MACHINE), "&8\u21E8 &7Radius: 7x7", "&8\u21E8 &7Speed: &a3/time", LoreBuilder.powerBuffer(1024), LoreBuilder.powerPerSecond(50));
|
||||
|
@ -88,6 +88,11 @@ public class SlimefunItemStack extends CustomItem {
|
||||
setID(id);
|
||||
}
|
||||
|
||||
public SlimefunItemStack(SlimefunItemStack item, int amount) {
|
||||
this(item.getItemId(), item);
|
||||
setAmount(amount);
|
||||
}
|
||||
|
||||
public SlimefunItemStack(String id, ItemStack item, Consumer<ItemMeta> consumer) {
|
||||
super(item, consumer);
|
||||
|
||||
|
26
src/main/resources/languages/resources_he.yml
Normal file
26
src/main/resources/languages/resources_he.yml
Normal file
@ -0,0 +1,26 @@
|
||||
---
|
||||
tooltips:
|
||||
results: תוצאות סריקת - GEO
|
||||
chunk: חלקה סרוקה
|
||||
world: עולם
|
||||
unit: יחידה
|
||||
units: יחידות
|
||||
resources:
|
||||
slimefun:
|
||||
oil: שמן
|
||||
nether_ice: 'קרח גיהינום
|
||||
|
||||
'
|
||||
salt: מלח
|
||||
uranium: אורניום
|
||||
slimefunorechunks:
|
||||
iron_ore_chunk: נתח עפרת ברזל
|
||||
gold_ore_chunk: נתח עפרת זהב
|
||||
copper_ore_chunk: נתח עפרת נחושת
|
||||
tin_ore_chunk: נתח עפרת בדיל
|
||||
silver_ore_chunk: נתח עפרת כסף
|
||||
aluminum_ore_chunk: נתח עפרת אלומיניום
|
||||
lead_ore_chunk: נתח עופרת
|
||||
zinc_ore_chunk: נתח עפרת אבץ
|
||||
nickel_ore_chunk: נתח עפרת ניקל
|
||||
cobalt_ore_chunk: נתח עופרת קובלט
|
Loading…
Reference in New Issue
Block a user