End lily recipes
This commit is contained in:
parent
2d1fe18781
commit
3f9e524b54
33 changed files with 221 additions and 44 deletions
|
@ -5,7 +5,10 @@ import net.minecraft.util.Identifier;
|
||||||
import ru.betterend.config.MainConfig;
|
import ru.betterend.config.MainConfig;
|
||||||
import ru.betterend.effects.EndEnchantments;
|
import ru.betterend.effects.EndEnchantments;
|
||||||
import ru.betterend.effects.EndPotions;
|
import ru.betterend.effects.EndPotions;
|
||||||
|
import ru.betterend.recipe.AlloyingRecipes;
|
||||||
import ru.betterend.recipe.CraftingRecipes;
|
import ru.betterend.recipe.CraftingRecipes;
|
||||||
|
import ru.betterend.recipe.SmeltigRecipes;
|
||||||
|
import ru.betterend.recipe.SmithingRecipes;
|
||||||
import ru.betterend.registry.BiomeRegistry;
|
import ru.betterend.registry.BiomeRegistry;
|
||||||
import ru.betterend.registry.BlockEntityRegistry;
|
import ru.betterend.registry.BlockEntityRegistry;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
|
@ -41,6 +44,9 @@ public class BetterEnd implements ModInitializer {
|
||||||
EndEnchantments.register();
|
EndEnchantments.register();
|
||||||
EndPotions.register();
|
EndPotions.register();
|
||||||
CraftingRecipes.register();
|
CraftingRecipes.register();
|
||||||
|
SmeltigRecipes.register();
|
||||||
|
AlloyingRecipes.register();
|
||||||
|
SmithingRecipes.register();
|
||||||
StructureRegistry.register();
|
StructureRegistry.register();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
16
src/main/java/ru/betterend/blocks/BlockChorusGrass.java
Normal file
16
src/main/java/ru/betterend/blocks/BlockChorusGrass.java
Normal file
|
@ -0,0 +1,16 @@
|
||||||
|
package ru.betterend.blocks;
|
||||||
|
|
||||||
|
import net.minecraft.block.BlockState;
|
||||||
|
import ru.betterend.blocks.basis.BlockPlant;
|
||||||
|
import ru.betterend.registry.BlockRegistry;
|
||||||
|
|
||||||
|
public class BlockChorusGrass extends BlockPlant {
|
||||||
|
public BlockChorusGrass() {
|
||||||
|
super(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean isTerrain(BlockState state) {
|
||||||
|
return state.getBlock() == BlockRegistry.CHORUS_NYLIUM;
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,5 +1,10 @@
|
||||||
package ru.betterend.blocks;
|
package ru.betterend.blocks;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.google.common.collect.Lists;
|
||||||
|
|
||||||
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
import net.fabricmc.fabric.api.tool.attribute.v1.FabricToolTags;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
|
@ -8,6 +13,8 @@ import net.minecraft.block.Material;
|
||||||
import net.minecraft.block.ShapeContext;
|
import net.minecraft.block.ShapeContext;
|
||||||
import net.minecraft.fluid.FluidState;
|
import net.minecraft.fluid.FluidState;
|
||||||
import net.minecraft.fluid.Fluids;
|
import net.minecraft.fluid.Fluids;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.loot.context.LootContext;
|
||||||
import net.minecraft.sound.BlockSoundGroup;
|
import net.minecraft.sound.BlockSoundGroup;
|
||||||
import net.minecraft.state.StateManager;
|
import net.minecraft.state.StateManager;
|
||||||
import net.minecraft.state.property.EnumProperty;
|
import net.minecraft.state.property.EnumProperty;
|
||||||
|
@ -18,6 +25,9 @@ import net.minecraft.world.BlockView;
|
||||||
import net.minecraft.world.WorldView;
|
import net.minecraft.world.WorldView;
|
||||||
import ru.betterend.blocks.BlockProperties.TripleShape;
|
import ru.betterend.blocks.BlockProperties.TripleShape;
|
||||||
import ru.betterend.blocks.basis.BlockUnderwaterPlant;
|
import ru.betterend.blocks.basis.BlockUnderwaterPlant;
|
||||||
|
import ru.betterend.registry.BlockRegistry;
|
||||||
|
import ru.betterend.registry.ItemRegistry;
|
||||||
|
import ru.betterend.util.MHelper;
|
||||||
|
|
||||||
public class BlockEndLily extends BlockUnderwaterPlant {
|
public class BlockEndLily extends BlockUnderwaterPlant {
|
||||||
public static final EnumProperty<TripleShape> SHAPE = BlockProperties.TRIPLE_SHAPE;
|
public static final EnumProperty<TripleShape> SHAPE = BlockProperties.TRIPLE_SHAPE;
|
||||||
|
@ -64,4 +74,12 @@ public class BlockEndLily extends BlockUnderwaterPlant {
|
||||||
return up.getBlock() == this && down.getBlock() == this;
|
return up.getBlock() == this && down.getBlock() == this;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<ItemStack> getDroppedStacks(BlockState state, LootContext.Builder builder) {
|
||||||
|
if (state.get(SHAPE) == TripleShape.TOP) {
|
||||||
|
return Lists.newArrayList(new ItemStack(ItemRegistry.END_LILY_LEAF, MHelper.randRange(1, 2, MHelper.RANDOM)), new ItemStack(BlockRegistry.END_LILY_SEED, MHelper.randRange(1, 2, MHelper.RANDOM)));
|
||||||
|
}
|
||||||
|
return Collections.emptyList();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,7 +26,7 @@ import ru.betterend.blocks.basis.BlockSlab;
|
||||||
import ru.betterend.blocks.basis.BlockStairs;
|
import ru.betterend.blocks.basis.BlockStairs;
|
||||||
import ru.betterend.blocks.basis.BlockTrapdoor;
|
import ru.betterend.blocks.basis.BlockTrapdoor;
|
||||||
import ru.betterend.blocks.basis.BlockWoodenButton;
|
import ru.betterend.blocks.basis.BlockWoodenButton;
|
||||||
import ru.betterend.recipe.RecipeBuilder;
|
import ru.betterend.recipe.builders.RecipeBuilder;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
import ru.betterend.util.TagHelper;
|
import ru.betterend.util.TagHelper;
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ import net.minecraft.world.World;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.blocks.EndStoneSmelter;
|
import ru.betterend.blocks.EndStoneSmelter;
|
||||||
import ru.betterend.client.gui.EndStoneSmelterScreenHandler;
|
import ru.betterend.client.gui.EndStoneSmelterScreenHandler;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
import ru.betterend.registry.BlockEntityRegistry;
|
import ru.betterend.registry.BlockEntityRegistry;
|
||||||
|
|
||||||
public class EndStoneSmelterBlockEntity extends LockableContainerBlockEntity implements SidedInventory, RecipeUnlocker, RecipeInputProvider, Tickable {
|
public class EndStoneSmelterBlockEntity extends LockableContainerBlockEntity implements SidedInventory, RecipeUnlocker, RecipeInputProvider, Tickable {
|
||||||
|
|
|
@ -23,7 +23,7 @@ import ru.betterend.blocks.EndStoneSmelter;
|
||||||
import ru.betterend.blocks.entities.EndStoneSmelterBlockEntity;
|
import ru.betterend.blocks.entities.EndStoneSmelterBlockEntity;
|
||||||
import ru.betterend.client.gui.slot.SmelterFuelSlot;
|
import ru.betterend.client.gui.slot.SmelterFuelSlot;
|
||||||
import ru.betterend.client.gui.slot.SmelterOutputSlot;
|
import ru.betterend.client.gui.slot.SmelterOutputSlot;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
|
|
||||||
public class EndStoneSmelterScreenHandler extends AbstractRecipeScreenHandler<Inventory> {
|
public class EndStoneSmelterScreenHandler extends AbstractRecipeScreenHandler<Inventory> {
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ import net.minecraft.client.gui.DrawableHelper;
|
||||||
import net.minecraft.client.util.math.MatrixStack;
|
import net.minecraft.client.util.math.MatrixStack;
|
||||||
import net.minecraft.text.TranslatableText;
|
import net.minecraft.text.TranslatableText;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
import ru.betterend.util.LangUtil;
|
import ru.betterend.util.LangUtil;
|
||||||
|
|
||||||
|
|
|
@ -18,7 +18,7 @@ import net.minecraft.text.TranslatableText;
|
||||||
import net.minecraft.util.Formatting;
|
import net.minecraft.util.Formatting;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import ru.betterend.blocks.entities.EndStoneSmelterBlockEntity;
|
import ru.betterend.blocks.entities.EndStoneSmelterBlockEntity;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
|
|
||||||
public class REIAlloyingDisplay implements TransferRecipeDisplay {
|
public class REIAlloyingDisplay implements TransferRecipeDisplay {
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,7 @@ import me.shedaniel.rei.server.ContainerInfo;
|
||||||
import net.minecraft.recipe.Recipe;
|
import net.minecraft.recipe.Recipe;
|
||||||
import net.minecraft.screen.ScreenHandler;
|
import net.minecraft.screen.ScreenHandler;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import ru.betterend.recipe.AnvilSmithingRecipe;
|
import ru.betterend.recipe.builders.AnvilSmithingRecipe;
|
||||||
|
|
||||||
public class REIAnvilDisplay implements TransferRecipeDisplay {
|
public class REIAnvilDisplay implements TransferRecipeDisplay {
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,7 @@ package ru.betterend.compat;
|
||||||
import me.shedaniel.rei.plugin.containers.CraftingContainerInfoWrapper;
|
import me.shedaniel.rei.plugin.containers.CraftingContainerInfoWrapper;
|
||||||
import me.shedaniel.rei.server.ContainerInfoHandler;
|
import me.shedaniel.rei.server.ContainerInfoHandler;
|
||||||
import ru.betterend.client.gui.EndStoneSmelterScreenHandler;
|
import ru.betterend.client.gui.EndStoneSmelterScreenHandler;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
|
|
||||||
public class REIContainer implements Runnable {
|
public class REIContainer implements Runnable {
|
||||||
|
|
||||||
|
|
|
@ -9,8 +9,8 @@ import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.recipe.BlastingRecipe;
|
import net.minecraft.recipe.BlastingRecipe;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
import ru.betterend.recipe.AnvilSmithingRecipe;
|
import ru.betterend.recipe.builders.AnvilSmithingRecipe;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
|
|
||||||
@Environment(EnvType.CLIENT)
|
@Environment(EnvType.CLIENT)
|
||||||
|
|
|
@ -8,7 +8,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
|
||||||
import net.minecraft.client.recipebook.ClientRecipeBook;
|
import net.minecraft.client.recipebook.ClientRecipeBook;
|
||||||
import net.minecraft.client.recipebook.RecipeBookGroup;
|
import net.minecraft.client.recipebook.RecipeBookGroup;
|
||||||
import net.minecraft.recipe.Recipe;
|
import net.minecraft.recipe.Recipe;
|
||||||
import ru.betterend.recipe.AlloyingRecipe;
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
|
|
||||||
@Mixin(ClientRecipeBook.class)
|
@Mixin(ClientRecipeBook.class)
|
||||||
public abstract class ClientRecipeBookMixin {
|
public abstract class ClientRecipeBookMixin {
|
||||||
|
|
|
@ -19,7 +19,7 @@ import net.minecraft.screen.ScreenHandlerContext;
|
||||||
import net.minecraft.screen.ScreenHandlerType;
|
import net.minecraft.screen.ScreenHandlerType;
|
||||||
import net.minecraft.tag.BlockTags;
|
import net.minecraft.tag.BlockTags;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import ru.betterend.recipe.AnvilSmithingRecipe;
|
import ru.betterend.recipe.builders.AnvilSmithingRecipe;
|
||||||
|
|
||||||
@Mixin(AnvilScreenHandler.class)
|
@Mixin(AnvilScreenHandler.class)
|
||||||
public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler {
|
public abstract class AnvilScreenHandlerMixin extends ForgingScreenHandler {
|
||||||
|
|
|
@ -2,6 +2,7 @@ package ru.betterend.recipe;
|
||||||
|
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
|
import ru.betterend.recipe.builders.AlloyingRecipe;
|
||||||
import ru.betterend.registry.ItemRegistry;
|
import ru.betterend.registry.ItemRegistry;
|
||||||
|
|
||||||
public class AlloyingRecipes {
|
public class AlloyingRecipes {
|
||||||
|
|
|
@ -3,6 +3,7 @@ package ru.betterend.recipe;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
|
import ru.betterend.recipe.builders.RecipeBuilder;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
import ru.betterend.registry.ItemRegistry;
|
import ru.betterend.registry.ItemRegistry;
|
||||||
|
|
||||||
|
@ -68,9 +69,8 @@ public class CraftingRecipes {
|
||||||
RecipeBuilder.make("creeping_moss_dye", Items.CYAN_DYE).setList("#").addMaterial('#', BlockRegistry.CREEPING_MOSS).build();
|
RecipeBuilder.make("creeping_moss_dye", Items.CYAN_DYE).setList("#").addMaterial('#', BlockRegistry.CREEPING_MOSS).build();
|
||||||
RecipeBuilder.make("umbrella_moss_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', BlockRegistry.UMBRELLA_MOSS).build();
|
RecipeBuilder.make("umbrella_moss_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', BlockRegistry.UMBRELLA_MOSS).build();
|
||||||
RecipeBuilder.make("umbrella_moss_tall_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', BlockRegistry.UMBRELLA_MOSS_TALL).build();
|
RecipeBuilder.make("umbrella_moss_tall_dye", Items.YELLOW_DYE).setList("#").addMaterial('#', BlockRegistry.UMBRELLA_MOSS_TALL).build();
|
||||||
|
|
||||||
AlloyingRecipes.register();
|
RecipeBuilder.make("paper", Items.PAPER).setShape("###").addMaterial('#', ItemRegistry.END_LILY_LEAF_DRIED).setOutputCount(3).build();
|
||||||
SmithingRecipes.register();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void registerHelmet(String name, Item material, Item result) {
|
private static void registerHelmet(String name, Item material, Item result) {
|
||||||
|
|
10
src/main/java/ru/betterend/recipe/SmeltigRecipes.java
Normal file
10
src/main/java/ru/betterend/recipe/SmeltigRecipes.java
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
package ru.betterend.recipe;
|
||||||
|
|
||||||
|
import ru.betterend.recipe.builders.FurnaceRecipe;
|
||||||
|
import ru.betterend.registry.ItemRegistry;
|
||||||
|
|
||||||
|
public class SmeltigRecipes {
|
||||||
|
public static void register() {
|
||||||
|
FurnaceRecipe.make("end_lily_leaf_dried", ItemRegistry.END_LILY_LEAF, ItemRegistry.END_LILY_LEAF_DRIED).build();
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
package ru.betterend.recipe;
|
package ru.betterend.recipe;
|
||||||
|
|
||||||
import net.minecraft.item.Items;
|
import net.minecraft.item.Items;
|
||||||
|
import ru.betterend.recipe.builders.AnvilSmithingRecipe;
|
||||||
import ru.betterend.registry.ItemRegistry;
|
import ru.betterend.registry.ItemRegistry;
|
||||||
|
|
||||||
public class SmithingRecipes {
|
public class SmithingRecipes {
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package ru.betterend.recipe;
|
package ru.betterend.recipe.builders;
|
||||||
|
|
||||||
import com.google.gson.JsonArray;
|
import com.google.gson.JsonArray;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
|
@ -21,6 +21,7 @@ import net.minecraft.util.collection.DefaultedList;
|
||||||
import net.minecraft.util.registry.Registry;
|
import net.minecraft.util.registry.Registry;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
|
import ru.betterend.recipe.EndRecipeManager;
|
||||||
import ru.betterend.registry.BlockRegistry;
|
import ru.betterend.registry.BlockRegistry;
|
||||||
|
|
||||||
public class AlloyingRecipe implements Recipe<Inventory> {
|
public class AlloyingRecipe implements Recipe<Inventory> {
|
|
@ -1,4 +1,4 @@
|
||||||
package ru.betterend.recipe;
|
package ru.betterend.recipe.builders;
|
||||||
|
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ import net.minecraft.util.collection.DefaultedList;
|
||||||
import net.minecraft.util.registry.Registry;
|
import net.minecraft.util.registry.Registry;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
|
import ru.betterend.recipe.EndRecipeManager;
|
||||||
import ru.betterend.registry.ItemTagRegistry;
|
import ru.betterend.registry.ItemTagRegistry;
|
||||||
|
|
||||||
public class AnvilSmithingRecipe implements Recipe<Inventory> {
|
public class AnvilSmithingRecipe implements Recipe<Inventory> {
|
|
@ -0,0 +1,69 @@
|
||||||
|
package ru.betterend.recipe.builders;
|
||||||
|
|
||||||
|
import net.minecraft.item.ItemConvertible;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.recipe.Ingredient;
|
||||||
|
import net.minecraft.recipe.RecipeType;
|
||||||
|
import net.minecraft.recipe.SmeltingRecipe;
|
||||||
|
import net.minecraft.util.Identifier;
|
||||||
|
import ru.betterend.BetterEnd;
|
||||||
|
import ru.betterend.recipe.EndRecipeManager;
|
||||||
|
import ru.betterend.util.RecipeHelper;
|
||||||
|
|
||||||
|
public class FurnaceRecipe {
|
||||||
|
private static final FurnaceRecipe INSTANCE = new FurnaceRecipe();
|
||||||
|
|
||||||
|
private ItemConvertible input;
|
||||||
|
private ItemConvertible output;
|
||||||
|
private boolean exist = true;
|
||||||
|
private String group;
|
||||||
|
private String name;
|
||||||
|
private int count;
|
||||||
|
private int time;
|
||||||
|
private float xp;
|
||||||
|
|
||||||
|
private FurnaceRecipe() {}
|
||||||
|
|
||||||
|
public static FurnaceRecipe make(String name, ItemConvertible input, ItemConvertible output) {
|
||||||
|
INSTANCE.name = name;
|
||||||
|
INSTANCE.group = "";
|
||||||
|
INSTANCE.input = input;
|
||||||
|
INSTANCE.output = output;
|
||||||
|
INSTANCE.count = 1;
|
||||||
|
INSTANCE.time = 200;
|
||||||
|
INSTANCE.xp = 0;
|
||||||
|
INSTANCE.exist = RecipeHelper.exists(output) && RecipeHelper.exists(input);
|
||||||
|
return INSTANCE;
|
||||||
|
}
|
||||||
|
|
||||||
|
public FurnaceRecipe setGroup(String group) {
|
||||||
|
this.group = group;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public FurnaceRecipe setOutputCount(int count) {
|
||||||
|
this.count = count;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public FurnaceRecipe setXP(float xp) {
|
||||||
|
this.xp = xp;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public FurnaceRecipe setCookTime(int time) {
|
||||||
|
this.time = time;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void build() {
|
||||||
|
if (exist) {
|
||||||
|
Identifier id = BetterEnd.makeID(name);
|
||||||
|
SmeltingRecipe recipe = new SmeltingRecipe(id, group, Ingredient.ofItems(input), new ItemStack(output, count), xp, time);
|
||||||
|
EndRecipeManager.addRecipe(RecipeType.SMELTING, recipe);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
BetterEnd.LOGGER.debug("Smelting recipe {} couldn't be added", name);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,4 +1,4 @@
|
||||||
package ru.betterend.recipe;
|
package ru.betterend.recipe.builders;
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
@ -16,6 +16,7 @@ import net.minecraft.tag.Tag;
|
||||||
import net.minecraft.util.Identifier;
|
import net.minecraft.util.Identifier;
|
||||||
import net.minecraft.util.collection.DefaultedList;
|
import net.minecraft.util.collection.DefaultedList;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
|
import ru.betterend.recipe.EndRecipeManager;
|
||||||
import ru.betterend.util.RecipeHelper;
|
import ru.betterend.util.RecipeHelper;
|
||||||
|
|
||||||
public class RecipeBuilder {
|
public class RecipeBuilder {
|
|
@ -12,6 +12,7 @@ import ru.betterend.blocks.BlockBlueVine;
|
||||||
import ru.betterend.blocks.BlockBlueVineLantern;
|
import ru.betterend.blocks.BlockBlueVineLantern;
|
||||||
import ru.betterend.blocks.BlockBlueVineSeed;
|
import ru.betterend.blocks.BlockBlueVineSeed;
|
||||||
import ru.betterend.blocks.BlockBubbleCoral;
|
import ru.betterend.blocks.BlockBubbleCoral;
|
||||||
|
import ru.betterend.blocks.BlockChorusGrass;
|
||||||
import ru.betterend.blocks.BlockEndLily;
|
import ru.betterend.blocks.BlockEndLily;
|
||||||
import ru.betterend.blocks.BlockEndLilySeed;
|
import ru.betterend.blocks.BlockEndLilySeed;
|
||||||
import ru.betterend.blocks.BlockEndstoneDust;
|
import ru.betterend.blocks.BlockEndstoneDust;
|
||||||
|
@ -29,7 +30,6 @@ import ru.betterend.blocks.EndStoneSmelter;
|
||||||
import ru.betterend.blocks.EnderBlock;
|
import ru.betterend.blocks.EnderBlock;
|
||||||
import ru.betterend.blocks.TerminiteBlock;
|
import ru.betterend.blocks.TerminiteBlock;
|
||||||
import ru.betterend.blocks.basis.BlockGlowingFur;
|
import ru.betterend.blocks.basis.BlockGlowingFur;
|
||||||
import ru.betterend.blocks.basis.BlockPlant;
|
|
||||||
import ru.betterend.blocks.basis.BlockVine;
|
import ru.betterend.blocks.basis.BlockVine;
|
||||||
import ru.betterend.blocks.complex.WoodenMaterial;
|
import ru.betterend.blocks.complex.WoodenMaterial;
|
||||||
import ru.betterend.tab.CreativeTab;
|
import ru.betterend.tab.CreativeTab;
|
||||||
|
@ -71,7 +71,7 @@ public class BlockRegistry {
|
||||||
public static final Block END_LILY = registerBlockNI("end_lily", new BlockEndLily());
|
public static final Block END_LILY = registerBlockNI("end_lily", new BlockEndLily());
|
||||||
public static final Block END_LILY_SEED = registerBlock("end_lily_seed", new BlockEndLilySeed());
|
public static final Block END_LILY_SEED = registerBlock("end_lily_seed", new BlockEndLilySeed());
|
||||||
|
|
||||||
public static final Block CHORUS_GRASS = registerBlock("chorus_grass", new BlockPlant(true));
|
public static final Block CHORUS_GRASS = registerBlock("chorus_grass", new BlockChorusGrass());
|
||||||
|
|
||||||
// Vines //
|
// Vines //
|
||||||
public static final Block DENSE_VINE = registerBlock("dense_vine", new BlockVine(15, true));
|
public static final Block DENSE_VINE = registerBlock("dense_vine", new BlockVine(15, true));
|
||||||
|
|
|
@ -39,12 +39,14 @@ public class ItemRegistry {
|
||||||
private static final List<Item> MOD_BLOCKS = Lists.newArrayList();
|
private static final List<Item> MOD_BLOCKS = Lists.newArrayList();
|
||||||
private static final List<Item> MOD_ITEMS = Lists.newArrayList();
|
private static final List<Item> MOD_ITEMS = Lists.newArrayList();
|
||||||
|
|
||||||
//Materials
|
// Materials //
|
||||||
public final static Item ENDER_DUST = registerItem("ender_dust", new Item(makeSettings()));
|
public final static Item ENDER_DUST = registerItem("ender_dust", new Item(makeSettings()));
|
||||||
public final static Item TERMINITE_INGOT = registerItem("terminite_ingot", new Item(makeSettings()));
|
public final static Item TERMINITE_INGOT = registerItem("terminite_ingot", new Item(makeSettings()));
|
||||||
public final static Item AETERNIUM_INGOT = registerItem("aeternium_ingot", new Item(makeSettings()));
|
public final static Item AETERNIUM_INGOT = registerItem("aeternium_ingot", new Item(makeSettings()));
|
||||||
|
public final static Item END_LILY_LEAF = registerItem("end_lily_leaf", new Item(makeSettings()));
|
||||||
|
public final static Item END_LILY_LEAF_DRIED = registerItem("end_lily_leaf_dried", new Item(makeSettings()));
|
||||||
|
|
||||||
//Armor
|
// Armor //
|
||||||
public static final Item TERMINITE_HELMET = registerItem("terminite_helmet", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.HEAD, makeSettings()));
|
public static final Item TERMINITE_HELMET = registerItem("terminite_helmet", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.HEAD, makeSettings()));
|
||||||
public static final Item TERMINITE_CHESTPLATE = registerItem("terminite_chestplate", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.CHEST, makeSettings()));
|
public static final Item TERMINITE_CHESTPLATE = registerItem("terminite_chestplate", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.CHEST, makeSettings()));
|
||||||
public static final Item TERMINITE_LEGGINGS = registerItem("terminite_leggings", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.LEGS, makeSettings()));
|
public static final Item TERMINITE_LEGGINGS = registerItem("terminite_leggings", new ArmorItem(EndArmorMaterial.TERMINITE, EquipmentSlot.LEGS, makeSettings()));
|
||||||
|
@ -54,24 +56,24 @@ public class ItemRegistry {
|
||||||
public static final Item AETERNIUM_LEGGINGS = registerItem("aeternium_leggings", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.LEGS, makeSettings()));
|
public static final Item AETERNIUM_LEGGINGS = registerItem("aeternium_leggings", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.LEGS, makeSettings()));
|
||||||
public static final Item AETERNIUM_BOOTS = registerItem("aeternium_boots", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.FEET, makeSettings()));
|
public static final Item AETERNIUM_BOOTS = registerItem("aeternium_boots", new ArmorItem(EndArmorMaterial.AETERNIUM, EquipmentSlot.FEET, makeSettings()));
|
||||||
|
|
||||||
//Tools
|
// Tools //
|
||||||
public static ToolItem TERMINITE_SHOVEL = registerTool("terminite_shovel", new ShovelItem(EndToolMaterial.TERMINITE, 1.5F, -3.0F, makeSettings()));
|
public static final ToolItem TERMINITE_SHOVEL = registerTool("terminite_shovel", new ShovelItem(EndToolMaterial.TERMINITE, 1.5F, -3.0F, makeSettings()));
|
||||||
public static ToolItem TERMINITE_SWORD = registerTool("terminite_sword", new SwordItem(EndToolMaterial.TERMINITE, 3, -2.4F, makeSettings()));
|
public static final ToolItem TERMINITE_SWORD = registerTool("terminite_sword", new SwordItem(EndToolMaterial.TERMINITE, 3, -2.4F, makeSettings()));
|
||||||
public static ToolItem TERMINITE_PICKAXE = registerTool("terminite_pickaxe", new EndPickaxe(EndToolMaterial.TERMINITE, 1, -2.8F, makeSettings()));
|
public static final ToolItem TERMINITE_PICKAXE = registerTool("terminite_pickaxe", new EndPickaxe(EndToolMaterial.TERMINITE, 1, -2.8F, makeSettings()));
|
||||||
public static ToolItem TERMINITE_AXE = registerTool("terminite_axe", new EndAxe(EndToolMaterial.TERMINITE, 6.0F, -3.0F, makeSettings()));
|
public static final ToolItem TERMINITE_AXE = registerTool("terminite_axe", new EndAxe(EndToolMaterial.TERMINITE, 6.0F, -3.0F, makeSettings()));
|
||||||
public static ToolItem TERMINITE_HOE = registerTool("terminite_hoe", new EndHoe(EndToolMaterial.TERMINITE, -3, 0.0F, makeSettings()));
|
public static final ToolItem TERMINITE_HOE = registerTool("terminite_hoe", new EndHoe(EndToolMaterial.TERMINITE, -3, 0.0F, makeSettings()));
|
||||||
public static ToolItem TERMINITE_HAMMER = registerTool("terminite_hammer", new EndHammer(EndToolMaterial.TERMINITE, 5.0F, -3.2F, 0.3D, makeSettings()));
|
public static final ToolItem TERMINITE_HAMMER = registerTool("terminite_hammer", new EndHammer(EndToolMaterial.TERMINITE, 5.0F, -3.2F, 0.3D, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_SHOVEL = registerTool("aeternium_shovel", new ShovelItem(EndToolMaterial.AETERNIUM, 1.5F, -3.0F, makeSettings()));
|
public static final ToolItem AETERNIUM_SHOVEL = registerTool("aeternium_shovel", new ShovelItem(EndToolMaterial.AETERNIUM, 1.5F, -3.0F, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_SWORD = registerTool("aeternium_sword", new SwordItem(EndToolMaterial.AETERNIUM, 3, -2.4F, makeSettings()));
|
public static final ToolItem AETERNIUM_SWORD = registerTool("aeternium_sword", new SwordItem(EndToolMaterial.AETERNIUM, 3, -2.4F, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_PICKAXE = registerTool("aeternium_pickaxe", new EndPickaxe(EndToolMaterial.AETERNIUM, 1, -2.8F, makeSettings()));
|
public static final ToolItem AETERNIUM_PICKAXE = registerTool("aeternium_pickaxe", new EndPickaxe(EndToolMaterial.AETERNIUM, 1, -2.8F, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_AXE = registerTool("aeternium_axe", new EndAxe(EndToolMaterial.AETERNIUM, 5.0F, -3.0F, makeSettings()));
|
public static final ToolItem AETERNIUM_AXE = registerTool("aeternium_axe", new EndAxe(EndToolMaterial.AETERNIUM, 5.0F, -3.0F, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_HOE = registerTool("aeternium_hoe", new EndHoe(EndToolMaterial.AETERNIUM, -3, 0.0F, makeSettings()));
|
public static final ToolItem AETERNIUM_HOE = registerTool("aeternium_hoe", new EndHoe(EndToolMaterial.AETERNIUM, -3, 0.0F, makeSettings()));
|
||||||
public static ToolItem AETERNIUM_HAMMER = registerTool("aeternium_hammer", new EndHammer(EndToolMaterial.AETERNIUM, 6.0F, -3.0F, 0.3D, makeSettings()));
|
public static final ToolItem AETERNIUM_HAMMER = registerTool("aeternium_hammer", new EndHammer(EndToolMaterial.AETERNIUM, 6.0F, -3.0F, 0.3D, makeSettings()));
|
||||||
public static ToolItem IRON_HAMMER = registerTool("iron_hammer", new EndHammer(ToolMaterials.IRON, 5.0F, -3.2F, 0.2D, makeSettings()));
|
public static final ToolItem IRON_HAMMER = registerTool("iron_hammer", new EndHammer(ToolMaterials.IRON, 5.0F, -3.2F, 0.2D, makeSettings()));
|
||||||
public static ToolItem GOLDEN_HAMMER = registerTool("golden_hammer", new EndHammer(ToolMaterials.GOLD, 4.5F, -3.4F, 0.3D, makeSettings()));
|
public static final ToolItem GOLDEN_HAMMER = registerTool("golden_hammer", new EndHammer(ToolMaterials.GOLD, 4.5F, -3.4F, 0.3D, makeSettings()));
|
||||||
public static ToolItem DIAMOND_HAMMER = registerTool("diamond_hammer", new EndHammer(ToolMaterials.DIAMOND, 5.5F, -3.1F, 0.2D, makeSettings()));
|
public static final ToolItem DIAMOND_HAMMER = registerTool("diamond_hammer", new EndHammer(ToolMaterials.DIAMOND, 5.5F, -3.1F, 0.2D, makeSettings()));
|
||||||
public static ToolItem NETHERITE_HAMMER = registerTool("netherite_hammer", new EndHammer(ToolMaterials.NETHERITE, 5.0F, -3.0F, 0.2D, makeSettings()));
|
public static final ToolItem NETHERITE_HAMMER = registerTool("netherite_hammer", new EndHammer(ToolMaterials.NETHERITE, 5.0F, -3.0F, 0.2D, makeSettings()));
|
||||||
|
|
||||||
protected static Item registerItem(String name, Item item) {
|
protected static Item registerItem(String name, Item item) {
|
||||||
if (item != Items.AIR) {
|
if (item != Items.AIR) {
|
||||||
Registry.register(Registry.ITEM, BetterEnd.makeID(name), item);
|
Registry.register(Registry.ITEM, BetterEnd.makeID(name), item);
|
||||||
|
|
|
@ -10,7 +10,7 @@ public class BiomeChorusForest extends EndBiome {
|
||||||
public BiomeChorusForest() {
|
public BiomeChorusForest() {
|
||||||
super(new BiomeDefinition("chorus_forest")
|
super(new BiomeDefinition("chorus_forest")
|
||||||
.setFogColor(87, 26, 87)
|
.setFogColor(87, 26, 87)
|
||||||
.setFogDensity(3)
|
.setFogDensity(1.5F)
|
||||||
.setSurface(BlockRegistry.CHORUS_NYLIUM)
|
.setSurface(BlockRegistry.CHORUS_NYLIUM)
|
||||||
//.setParticles(ParticleRegistry.GLOWING_SPHERE, 0.001F)
|
//.setParticles(ParticleRegistry.GLOWING_SPHERE, 0.001F)
|
||||||
//.setLoop(SoundRegistry.AMBIENT_FOGGY_MUSHROOMLAND)
|
//.setLoop(SoundRegistry.AMBIENT_FOGGY_MUSHROOMLAND)
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
"itemGroup.betterend.items": "Better End",
|
"itemGroup.betterend.items": "Better End",
|
||||||
|
|
||||||
"biome.betterend.foggy_mushroomland": "Foggy Mushroomland",
|
"biome.betterend.foggy_mushroomland": "Foggy Mushroomland",
|
||||||
|
"biome.betterend.chorus_forest": "Chorus Forest",
|
||||||
|
|
||||||
"entity.betterend.dragonfly": "Dragonfly",
|
"entity.betterend.dragonfly": "Dragonfly",
|
||||||
"item.betterend.spawn_egg_dragonfly": "Dragonfly Spawn Egg",
|
"item.betterend.spawn_egg_dragonfly": "Dragonfly Spawn Egg",
|
||||||
|
@ -117,5 +118,14 @@
|
||||||
"block.betterend.chorus_stairs": "Chorus Stairs",
|
"block.betterend.chorus_stairs": "Chorus Stairs",
|
||||||
"block.betterend.chorus_stripped_bark": "Chorus Stripped Bark",
|
"block.betterend.chorus_stripped_bark": "Chorus Stripped Bark",
|
||||||
"block.betterend.chorus_stripped_log": "Chorus Stripped Log",
|
"block.betterend.chorus_stripped_log": "Chorus Stripped Log",
|
||||||
"block.betterend.chorus_trapdoor": "Chorus Trapdoor"
|
"block.betterend.chorus_trapdoor": "Chorus Trapdoor",
|
||||||
|
|
||||||
|
"block.betterend.chorus_nylium": "Chorus Nylium",
|
||||||
|
"block.betterend.chorus_nylium_path": "Chorus Nylium Path",
|
||||||
|
"block.betterend.chorus_grass": "Chorus Grass",
|
||||||
|
|
||||||
|
"block.betterend.end_lily": "End Lily",
|
||||||
|
"block.betterend.end_lily_seed": "End Lily Seed",
|
||||||
|
"item.betterend.end_lily_leaf": "End Lily Leaf",
|
||||||
|
"item.betterend.end_lily_leaf_dried": "End Lily Leaf Dried"
|
||||||
}
|
}
|
|
@ -2,6 +2,7 @@
|
||||||
"itemGroup.betterend.items": "Улучшенный Край",
|
"itemGroup.betterend.items": "Улучшенный Край",
|
||||||
|
|
||||||
"biome.betterend.foggy_mushroomland": "Туманное гриболесье",
|
"biome.betterend.foggy_mushroomland": "Туманное гриболесье",
|
||||||
|
"biome.betterend.chorus_forest": "Хорусовый лес",
|
||||||
|
|
||||||
"entity.betterend.dragonfly": "Стрекоза",
|
"entity.betterend.dragonfly": "Стрекоза",
|
||||||
"item.betterend.spawn_egg_dragonfly": "Яйцо призыва стрекозы",
|
"item.betterend.spawn_egg_dragonfly": "Яйцо призыва стрекозы",
|
||||||
|
@ -14,8 +15,8 @@
|
||||||
"block.betterend.endstone_dust": "Эндерняковая пыль",
|
"block.betterend.endstone_dust": "Эндерняковая пыль",
|
||||||
"block.betterend.flavolite": "Флаволит",
|
"block.betterend.flavolite": "Флаволит",
|
||||||
|
|
||||||
"block.betterend.end_mycelium_path": "Дорога из мицелия края",
|
"block.betterend.end_mycelium_path": "Тропа из мицелия края",
|
||||||
"block.betterend.end_moss_path": "Дорога из мха края",
|
"block.betterend.end_moss_path": "Тропа из мха края",
|
||||||
|
|
||||||
"block.betterend.ender_ore": "Руда Края",
|
"block.betterend.ender_ore": "Руда Края",
|
||||||
"block.betterend.terminite_block": "Блок Терминита",
|
"block.betterend.terminite_block": "Блок Терминита",
|
||||||
|
@ -98,5 +99,33 @@
|
||||||
"block.betterend.bubble_coral": "Пузырчатый коралл",
|
"block.betterend.bubble_coral": "Пузырчатый коралл",
|
||||||
"block.betterend.aurora_crystal": "Кристалл авроры",
|
"block.betterend.aurora_crystal": "Кристалл авроры",
|
||||||
|
|
||||||
"category.rei.damage.amount&dmg": "Износ инструмента: %s"
|
"category.rei.damage.amount&dmg": "Износ инструмента: %s",
|
||||||
|
|
||||||
|
"block.betterend.chorus_bark": "Кора хоруса",
|
||||||
|
"block.betterend.chorus_barrel": "Бочка из хоруса",
|
||||||
|
"block.betterend.chorus_button": "Кнопка из хоруса",
|
||||||
|
"block.betterend.chorus_chest": "Сундук из хоруса",
|
||||||
|
"block.betterend.chorus_crafting_table": "Верстак из хоруса",
|
||||||
|
"block.betterend.chorus_door": "Дверь из хоруса",
|
||||||
|
"block.betterend.chorus_fence": "Забор из хоруса",
|
||||||
|
"block.betterend.chorus_gate": "Калитка из хоруса",
|
||||||
|
"block.betterend.chorus_ladder": "Лестница из хоруса",
|
||||||
|
"block.betterend.chorus_log": "Бревно хоруса",
|
||||||
|
"block.betterend.chorus_planks": "Доски хоруса",
|
||||||
|
"block.betterend.chorus_plate": "Нажимная плита из хоруса",
|
||||||
|
"block.betterend.chorus_sign": "Табличка из хоруса",
|
||||||
|
"block.betterend.chorus_slab": "Плита из хоруса",
|
||||||
|
"block.betterend.chorus_stairs": "Ступени из хоруса",
|
||||||
|
"block.betterend.chorus_stripped_bark": "Обтёсанная кора хоруса",
|
||||||
|
"block.betterend.chorus_stripped_log": "Обтёсанное бревно хоруса",
|
||||||
|
"block.betterend.chorus_trapdoor": "Люк из хоруса",
|
||||||
|
|
||||||
|
"block.betterend.chorus_nylium": "Нилий хоруса",
|
||||||
|
"block.betterend.chorus_nylium_path": "Тропа из нилия хоруса",
|
||||||
|
"block.betterend.chorus_grass": "Трава хоруса",
|
||||||
|
|
||||||
|
"block.betterend.end_lily": "Лилия Края",
|
||||||
|
"block.betterend.end_lily_seed": "Семя лилии Края",
|
||||||
|
"item.betterend.end_lily_leaf": "Лист лилии Края",
|
||||||
|
"item.betterend.end_lily_leaf_dried": "Высушенный лист лилии Края"
|
||||||
}
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"parent": "item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "betterend:block/end_lily_leaf_small"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"parent": "item/generated",
|
||||||
|
"textures": {
|
||||||
|
"layer0": "betterend:item/end_lily_leaf_dried"
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.9 KiB |
Binary file not shown.
After Width: | Height: | Size: 1.8 KiB |
Binary file not shown.
After Width: | Height: | Size: 2.2 KiB |
Loading…
Add table
Add a link
Reference in a new issue