831, doesnt seem impossible

This commit is contained in:
modmuss50 2019-05-27 22:21:58 +01:00
parent 4e03ac893c
commit e8396dbc33
48 changed files with 328 additions and 704 deletions

View file

@ -19,7 +19,7 @@ buildscript {
}
}
dependencies {
classpath "net.fabricmc:fabric-loom:0.2.2-SNAPSHOT"
classpath "net.fabricmc:fabric-loom:0.2.3-SNAPSHOT"
classpath "gradle.plugin.net.minecrell:licenser:0.2.1"
classpath 'de.undercouch:gradle-download-task:3.4.3'
//classpath 'net.covers1624:GradleStuff:1.0-SNAPSHOT'
@ -73,16 +73,19 @@ license {
group = 'TechReborn'
dependencies {
minecraft "com.mojang:minecraft:1.14"
mappings "net.fabricmc:yarn:1.14+build.21"
modCompile "net.fabricmc:fabric-loader:0.4.8+build.154"
minecraft "com.mojang:minecraft:1.14.2 Pre-Release 1"
mappings "net.fabricmc:yarn:1.14.2 Pre-Release 1+build.1"
modCompile "net.fabricmc:fabric-loader:0.4.7+build.147"
modCompile "net.fabricmc.fabric-api:fabric-api:0.3.0-pre+build.156"
modCompile ('RebornCore:RebornCore-1.14:4.0.0.14') {
transitive = false
}
modCompile "io.github.prospector.modmenu:ModMenu:1.5.4-85"
// modCompile ('RebornCore:RebornCore-1.14:4.0.0.14') {
// transitive = false
// }
compile 'RebornCore:RebornCore-1.14:4.0.0.14'
compileOnly "com.google.code.findbugs:jsr305:+"
}

View file

@ -26,6 +26,7 @@ package techreborn.api.generator;
import reborncore.common.util.FluidUtils;
import reborncore.fluid.Fluid;
public class FluidGeneratorRecipe {
private final EFluidGenerator generatorType;

View file

@ -27,6 +27,7 @@ package techreborn.api.generator;
import com.google.common.collect.Sets;
import reborncore.common.util.FluidUtils;
import reborncore.fluid.Fluid;
import java.util.HashSet;
import java.util.Optional;

View file

@ -26,6 +26,8 @@ package techreborn.api.generator;
import reborncore.fluid.Fluid;
import java.util.EnumMap;
import java.util.Optional;

View file

@ -27,8 +27,7 @@ package techreborn.api.recipe.recipes;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.Identifier;
import reborncore.common.crafting.Recipe;
import reborncore.common.crafting.RecipeType;
import reborncore.fluid.FluidStack;
import techreborn.tiles.machine.multiblock.TileIndustrialGrinder;
public class IndustrialGrinderRecipe extends Recipe {

View file

@ -27,8 +27,7 @@ package techreborn.api.recipe.recipes;
import net.minecraft.block.entity.BlockEntity;
import net.minecraft.util.Identifier;
import reborncore.common.crafting.Recipe;
import reborncore.common.crafting.RecipeType;
import reborncore.fluid.FluidStack;
import techreborn.tiles.machine.multiblock.TileIndustrialSawmill;
public class IndustrialSawmillRecipe extends Recipe {

View file

@ -50,7 +50,7 @@ import net.minecraft.world.World;
import reborncore.client.models.ModelCompound;
import reborncore.client.models.RebornModelRegistry;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.WorldUtils;
import techreborn.TechReborn;
import techreborn.events.TRRecipeHandler;
@ -130,9 +130,9 @@ public class BlockRubberLog extends LogBlock {
if (stack.isEmpty()) {
return false;
}
ForgePowerItemManager capEnergy = null;
ItemPowerManager capEnergy = null;
if (stack.getItem() instanceof ItemElectricTreetap) {
capEnergy = new ForgePowerItemManager(stack);
capEnergy = new ItemPowerManager(stack);
}
if ((capEnergy != null && capEnergy.getEnergyStored() > 20) || stack.getItem() instanceof ItemTreeTap) {
if (state.get(HAS_SAP) && state.get(SAP_SIDE) == side) {

View file

@ -24,6 +24,7 @@
package techreborn.client.gui;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.entity.player.PlayerEntity;
import reborncore.client.gui.builder.GuiBase;

View file

@ -24,14 +24,14 @@
package techreborn.client.gui;
import net.minecraft.client.gui.ContainerScreen;
import net.minecraft.client.renderer.GlStateManager;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
import net.minecraft.client.resource.language.I18n;
import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.util.Identifier;
import techreborn.tiles.machine.iron.TileIronAlloyFurnace;
public class GuiAlloyFurnace extends ContainerScreen {
public class GuiAlloyFurnace extends AbstractContainerScreen {
private static final Identifier texture = new Identifier("techreborn",
"textures/gui/alloy_furnace.png");

View file

@ -24,7 +24,9 @@
package techreborn.client.gui;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.client.gui.ContainerScreen;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
import net.minecraft.client.gui.widget.ButtonWidget;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.resource.language.I18n;
@ -33,7 +35,7 @@ import net.minecraft.util.Identifier;
import reborncore.client.gui.builder.widget.GuiButtonSimple;
import techreborn.tiles.machine.tier3.TileChunkLoader;
public class GuiChunkLoader extends ContainerScreen {
public class GuiChunkLoader extends AbstractContainerScreen {
private static final Identifier texture = new Identifier("techreborn",
"textures/gui/industrial_chunkloader.png");

View file

@ -25,12 +25,13 @@
package techreborn.client.gui;
import net.minecraft.client.gui.ContainerScreen;
import net.minecraft.client.gui.screen.ingame.AbstractContainerScreen;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.client.resource.language.I18n;
import net.minecraft.container.Container;
import net.minecraft.util.Identifier;
public class GuiDestructoPack extends ContainerScreen {
public class GuiDestructoPack extends AbstractContainerScreen {
private static final Identifier texture = new Identifier("techreborn",
"textures/gui/destructopack.png");

View file

@ -24,6 +24,7 @@
package techreborn.client.gui;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.block.BlockState;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.entity.player.PlayerEntity;

View file

@ -24,6 +24,7 @@
package techreborn.client.gui;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.entity.player.PlayerEntity;
import reborncore.client.gui.builder.GuiBase;

View file

@ -24,6 +24,7 @@
package techreborn.client.gui;
import com.mojang.blaze3d.platform.GlStateManager;
import net.minecraft.client.renderer.GlStateManager;
import net.minecraft.entity.player.PlayerEntity;
import reborncore.client.gui.builder.GuiBase;

View file

@ -24,6 +24,7 @@
package techreborn.client.gui;
import net.minecraft.client.gui.screen.Screen;
import reborncore.client.gui.builder.widget.GuiButtonExtended;
import reborncore.common.network.NetworkManager;

View file

@ -1,221 +0,0 @@
/*
* This file is part of TechReborn, licensed under the MIT License (MIT).
*
* Copyright (c) 2018 TechReborn
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
package techreborn.client.render;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
import net.minecraft.client.render.VertexFormat;
import net.minecraft.client.render.model.BakedModel;
import net.minecraft.client.render.model.BakedQuad;
import net.minecraft.client.render.model.UnbakedModel;
import net.minecraft.client.render.model.json.ModelItemPropertyOverrideList;
import net.minecraft.client.render.model.json.ModelTransformation;
import net.minecraft.client.renderer.model.*;
import net.minecraft.client.texture.Sprite;
import net.minecraft.client.util.ModelIdentifier;
import net.minecraft.resource.ResourceManager;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.Direction;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import java.awt.*;
import java.util.*;
import java.util.function.Function;
//TODO 1.13 very broken, look at ModelDynBucket for help porting this fully
@Environment(EnvType.CLIENT)
public class ModelDynamicCell implements UnbakedModel {
public static final ModelDynamicCell MODEL = new ModelDynamicCell(
new Identifier("techreborn:items/cell_cover"),
new Identifier("techreborn:items/cell_empty")
);
public static final ModelIdentifier MODEL_LOCATION = new ModelIdentifier(new Identifier("techreborn", "dynamic_cell"), "default");
private static final float NORTH_Z_FLUID = 7.6f / 16f;
private static final float SOUTH_Z_FLUID = 8.4f / 16f;
public static void init() {
// ModelLoader.setCustomMeshDefinition(TRContent.CELL, stack -> MODEL_LOCATION);
// ModelBakery.registerItemVariants(TRContent.CELL, MODEL_LOCATION);
ModelLoaderRegistry.registerLoader(new DynamicCellLoader());
}
private final Identifier baseTexture;
private final Identifier emptyTexture;
private final Fluid fluid;
public ModelDynamicCell(Identifier baseTexture, Identifier emptyTexture) {
this(baseTexture, emptyTexture, null);
}
public ModelDynamicCell(Identifier baseTexture, Identifier emptyTexture, Fluid fluid) {
this.baseTexture = baseTexture;
this.emptyTexture = emptyTexture;
this.fluid = fluid;
}
@Override
public Collection<Identifier> getModelDependencies() {
return ImmutableList.of();
}
@Override
public Collection<Identifier> getTextureDependencies(Function<Identifier, UnbakedModel> modelGetter, Set<String> missingTextureErrors) {
return ImmutableList.of(baseTexture, emptyTexture);
}
@Override
public BakedModel bake(Function<Identifier, UnbakedModel> modelGetter, Function<Identifier, Sprite> spriteGetter, IModelState state, boolean uvlock, VertexFormat format) {
ImmutableMap<ModelTransformation.Type, TRSRTransformation> transformMap = PerspectiveMapWrapper.getTransforms(state);
TRSRTransformation transform = state.apply(Optional.empty()).orElse(TRSRTransformation.identity());
ImmutableList.Builder<BakedQuad> builder = ImmutableList.builder();
builder.addAll(new ItemLayerModel(ImmutableList.of(baseTexture)).bake(modelGetter, spriteGetter, state, uvlock, format).getQuads(null, null, new Random()));
Identifier sprite = fluid != null ? fluid.getStill() : emptyTexture;
int color = fluid != null ? fluid.getColor() : Color.WHITE.getRGB();
Sprite fluidSprite = spriteGetter.apply(sprite);
if (fluid != null) {
if (fluidSprite != null) {
builder.add(ItemTextureQuadConverter.genQuad(format, transform, 5, 2, 11, 14, NORTH_Z_FLUID, fluidSprite, Direction.NORTH, color, -1));
builder.add(ItemTextureQuadConverter.genQuad(format, transform, 5, 2, 11, 14, SOUTH_Z_FLUID, fluidSprite, Direction.SOUTH, color, -1));
}
}
return new BakedDynamicCell(builder.build(), this, spriteGetter.apply(baseTexture), format, transformMap);
}
@Override
public IModelState getDefaultState() {
return TRSRTransformation.identity();
}
public static class DynamicCellLoader implements ICustomModelLoader {
@Override
public boolean accepts(Identifier modelLocation) {
return modelLocation.getNamespace().equals("techreborn") && modelLocation.getPath().contains("dynamic_cell");
}
@Override
public UnbakedModel loadModel(Identifier modelLocation) {
return MODEL;
}
@Override
public void onResourceManagerReload(ResourceManager resourceManager) {}
}
public static class BakedDynamicCell extends BakedItemModel {
private final List<BakedQuad> quads;
private final ModelDynamicCell parent;
private final Sprite particle;
private final VertexFormat format;
private final ImmutableMap<ModelTransformation.Type, TRSRTransformation> transformMap;
public BakedDynamicCell(ImmutableList<BakedQuad> quads,
ModelDynamicCell parent,
Sprite particle,
VertexFormat format,
ImmutableMap<ModelTransformation.Type, TRSRTransformation> transformMap) {
super(quads, particle, transformMap, null /* TODO fix this */);
this.transformMap = transformMap;
this.quads = quads;
this.parent = parent;
this.particle = particle;
this.format = format;
}
@Override
public boolean isAmbientOcclusion() {
return true;
}
@Override
public boolean isGui3d() {
return false;
}
@Override
public boolean isBuiltInRenderer() {
return false;
}
@Override
public Sprite getParticleTexture() {
return particle;
}
@Override
public ModelTransformation getItemCameraTransforms() {
return ModelHelper.DEFAULT_ITEM_TRANSFORMS;
}
@Override
public ModelItemPropertyOverrideList getOverrides() {
return OVERRIDES;
}
}
public static final OverrideHandler OVERRIDES = new OverrideHandler();
public static class OverrideHandler extends ModelItemPropertyOverrideList {
private final HashMap<String, BakedModel> modelCache = new HashMap<>();
// private final Function<ResourceLocation, TextureAtlasSprite> textureGetter = location ->
// Minecraft.getInstance().getTextureMapBlocks().getAtlasSprite(location.toString());
// private OverrideHandler() {
// super(ImmutableList.of());
// }
// @Override
// public IBakedModel handleItemState(IBakedModel originalModel, ItemStack stack, World world, EntityLivingBase entity) {
// FluidStack fluidStack = DynamicCell.getFluidHandler(stack).getFluid();
// if (fluidStack == null) {
// //return default bucket
// return originalModel;
// }
// String name = fluidStack.getFluid().getName();
// if (!modelCache.containsKey(name)) {
// BakedDynamicCell bakedCell = (BakedDynamicCell) originalModel;
// ModelDynamicCell model = new ModelDynamicCell(bakedCell.parent.baseTexture, bakedCell.parent.emptyTexture, fluidStack.getFluid());
// modelCache.put(name, model.bake(new SimpleModelState(bakedCell.transformMap), bakedCell.format, textureGetter));
// }
// return modelCache.get(name);
// }
}
}

View file

@ -83,157 +83,157 @@ import java.util.Arrays;
*
*/
@Mod.EventBusSubscriber(modid = TechReborn.MOD_ID, bus = Mod.EventBusSubscriber.Bus.MOD)
public class RegistryEventHandler {
@SubscribeEvent
public static void registerBlocks(RegistryEvent.Register<Block> event) {
Arrays.stream(Ores.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
Arrays.stream(StorageBlocks.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
Arrays.stream(MachineBlocks.values()).forEach(value -> {
RebornRegistry.registerBlock(value.frame, new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(value.casing, new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
});
Arrays.stream(SolarPanels.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
Arrays.stream(Cables.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
Arrays.stream(Machine.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
//TODO need to change this up for the new registry stuff
// Misc. blocks
RebornRegistry.registerBlock(TRContent.COMPUTER_CUBE = InitUtils.setup(new BlockComputerCube(), "computer_cube"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.NUKE = InitUtils.setup(new BlockNuke(), "nuke"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.REFINED_IRON_FENCE = InitUtils.setup(new BlockRefinedIronFence(), "refined_iron_fence"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.REINFORCED_GLASS = InitUtils.setup(new BlockReinforcedGlass(), "reinforced_glass"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.RUBBER_LEAVES = InitUtils.setup(new BlockRubberLeaves(), "rubber_leaves"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.RUBBER_LOG = InitUtils.setup(new BlockRubberLog(), "rubber_log"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.RUBBER_PLANKS = InitUtils.setup(new BlockRubberPlank(), "rubber_planks"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.RUBBER_SAPLING = InitUtils.setup(new BlockRubberSapling(), "rubber_sapling"),
ItemBlockRubberSapling.class,
"rubber_sapling");
RebornRegistry.registerBlock(TRContent.RUBBER_PLANK_SLAB = InitUtils.setup(new BlockRubberPlankSlab(), "rubber_plank_slab"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
RebornRegistry.registerBlock(TRContent.RUBBER_PLANK_STAIR = InitUtils.setup(new BlockRubberPlankStair(), "rubber_plank_stair"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
TechReborn.LOGGER.debug("TechReborns Blocks Loaded");
}
@SubscribeEvent
public static void registerItems(RegistryEvent.Register<Item> event) {
Arrays.stream(Ingots.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Nuggets.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Gems.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Dusts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(SmallDusts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Plates.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Parts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
Arrays.stream(Upgrades.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Gem armor & tools
if (ConfigTechReborn.enableGemArmorAndTools) {
//Todo: repair with tags
RebornRegistry.registerItem(TRContent.BRONZE_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.BRONZE, "ingotBronze"), "bronze_sword"));
RebornRegistry.registerItem(TRContent.BRONZE_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.BRONZE, "ingotBronze"), "bronze_pickaxe"));
RebornRegistry.registerItem(TRContent.BRONZE_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.BRONZE, "ingotBronze"), "bronze_spade"));
RebornRegistry.registerItem(TRContent.BRONZE_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.BRONZE, "ingotBronze"), "bronze_axe"));
RebornRegistry.registerItem(TRContent.BRONZE_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.BRONZE, "ingotBronze"), "bronze_hoe"));
RebornRegistry.registerItem(TRContent.BRONZE_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.HEAD, "ingotBronze"), "bronze_helmet"));
RebornRegistry.registerItem(TRContent.BRONZE_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.CHEST, "ingotBronze"), "bronze_chestplate"));
RebornRegistry.registerItem(TRContent.BRONZE_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.LEGS, "ingotBronze"), "bronze_leggings"));
RebornRegistry.registerItem(TRContent.BRONZE_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.FEET, "ingotBronze"), "bronze_boots"));
RebornRegistry.registerItem(TRContent.RUBY_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.RUBY, "gemRuby"), "ruby_sword"));
RebornRegistry.registerItem(TRContent.RUBY_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.RUBY, "gemRuby"), "ruby_pickaxe"));
RebornRegistry.registerItem(TRContent.RUBY_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.RUBY, "gemRuby"), "ruby_spade"));
RebornRegistry.registerItem(TRContent.RUBY_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.RUBY, "gemRuby"), "ruby_axe"));
RebornRegistry.registerItem(TRContent.RUBY_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.RUBY, "gemRuby"), "ruby_hoe"));
RebornRegistry.registerItem(TRContent.RUBY_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.HEAD, "gemRuby"), "ruby_helmet"));
RebornRegistry.registerItem(TRContent.RUBY_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.CHEST, "gemRuby"), "ruby_chestplate"));
RebornRegistry.registerItem(TRContent.RUBY_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.LEGS, "gemRuby"), "ruby_leggings"));
RebornRegistry.registerItem(TRContent.RUBY_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.FEET, "gemRuby"), "ruby_boots"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_sword"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_pickaxe"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_spade"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_axe"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_hoe"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.HEAD, "gemSapphire"), "sapphire_helmet"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.CHEST, "gemSapphire"), "sapphire_chestplate"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.LEGS, "gemSapphire"), "sapphire_leggings"));
RebornRegistry.registerItem(TRContent.SAPPHIRE_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.FEET, "gemSapphire"), "sapphire_boots"));
RebornRegistry.registerItem(TRContent.PERIDOT_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.PERIDOT, "gemPeridot"), "peridot_sword"));
RebornRegistry.registerItem(TRContent.PERIDOT_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_pickaxe"));
RebornRegistry.registerItem(TRContent.PERIDOT_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.PERIDOT, "gemPeridot"), "peridot_spade"));
RebornRegistry.registerItem(TRContent.PERIDOT_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_axe"));
RebornRegistry.registerItem(TRContent.PERIDOT_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_hoe"));
RebornRegistry.registerItem(TRContent.PERIDOT_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.HEAD, "gemPeridot"), "peridot_helmet"));
RebornRegistry.registerItem(TRContent.PERIDOT_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.CHEST, "gemPeridot"), "peridot_chestplate"));
RebornRegistry.registerItem(TRContent.PERIDOT_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.LEGS, "gemPeridot"), "peridot_leggings"));
RebornRegistry.registerItem(TRContent.PERIDOT_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.FEET, "gemPeridot"), "peridot_boots"));
}
// Battery
RebornRegistry.registerItem(TRContent.RED_CELL_BATTERY = InitUtils.setup(new ItemRedCellBattery(), "red_cell_battery"));
RebornRegistry.registerItem(TRContent.LITHIUM_ION_BATTERY = InitUtils.setup(new ItemLithiumIonBattery(), "lithium_ion_battery"));
RebornRegistry.registerItem(TRContent.LITHIUM_ION_BATPACK = InitUtils.setup(new ItemLithiumIonBatpack(), "lithium_ion_batpack"));
RebornRegistry.registerItem(TRContent.ENERGY_CRYSTAL = InitUtils.setup(new ItemEnergyCrystal(), "energy_crystal"));
RebornRegistry.registerItem(TRContent.LAPOTRON_CRYSTAL = InitUtils.setup(new ItemLapotronCrystal(), "lapotron_crystal"));
RebornRegistry.registerItem(TRContent.LAPOTRONIC_ORB = InitUtils.setup(new ItemLapotronicOrb(), "lapotronic_orb"));
RebornRegistry.registerItem(TRContent.LAPOTRONIC_ORBPACK = InitUtils.setup(new ItemLapotronicOrbpack(), "lapotronic_orbpack"));
// Tools
RebornRegistry.registerItem(TRContent.TREE_TAP = InitUtils.setup(new ItemTreeTap(), "treetap"));
RebornRegistry.registerItem(TRContent.WRENCH = InitUtils.setup(new ItemWrench(), "wrench"));
RebornRegistry.registerItem(TRContent.BASIC_DRILL = InitUtils.setup(new ItemBasicDrill(), "basic_drill"));
RebornRegistry.registerItem(TRContent.BASIC_CHAINSAW = InitUtils.setup(new ItemBasicChainsaw(), "basic_chainsaw"));
RebornRegistry.registerItem(TRContent.BASIC_JACKHAMMER = InitUtils.setup(new ItemBasicJackhammer(), "basic_jackhammer"));
RebornRegistry.registerItem(TRContent.ELECTRIC_TREE_TAP = InitUtils.setup(new ItemElectricTreetap(), "electric_treetap"));
RebornRegistry.registerItem(TRContent.ADVANCED_DRILL = InitUtils.setup(new ItemAdvancedDrill(), "advanced_drill"));
RebornRegistry.registerItem(TRContent.ADVANCED_CHAINSAW = InitUtils.setup(new ItemAdvancedChainsaw(), "advanced_chainsaw"));
RebornRegistry.registerItem(TRContent.ADVANCED_JACKHAMMER = InitUtils.setup(new ItemAdvancedJackhammer(), "advanced_jackhammer"));
RebornRegistry.registerItem(TRContent.ROCK_CUTTER = InitUtils.setup(new ItemRockCutter(), "rock_cutter"));
RebornRegistry.registerItem(TRContent.INDUSTRIAL_DRILL = InitUtils.setup(new ItemIndustrialDrill(), "industrial_drill"));
RebornRegistry.registerItem(TRContent.INDUSTRIAL_CHAINSAW = InitUtils.setup(new ItemIndustrialChainsaw(), "industrial_chainsaw"));
RebornRegistry.registerItem(TRContent.INDUSTRIAL_JACKHAMMER = InitUtils.setup(new ItemIndustrialJackhammer(), "industrial_jackhammer"));
RebornRegistry.registerItem(TRContent.NANOSABER = InitUtils.setup(new ItemNanosaber(), "nanosaber"));
RebornRegistry.registerItem(TRContent.OMNI_TOOL = InitUtils.setup(new ItemOmniTool(), "omni_tool"));
// Armor
RebornRegistry.registerItem(TRContent.CLOAKING_DEVICE = InitUtils.setup(new ItemCloakingDevice(), "cloaking_device"));
// Other
RebornRegistry.registerItem(TRContent.FREQUENCY_TRANSMITTER = InitUtils.setup(new ItemFrequencyTransmitter(), "frequency_transmitter"));
RebornRegistry.registerItem(TRContent.SCRAP_BOX = InitUtils.setup(new ItemScrapBox(), "scrap_box"));
RebornRegistry.registerItem(TRContent.MANUAL = InitUtils.setup(new ItemManual(), "manual"));
RebornRegistry.registerItem(TRContent.DEBUG_TOOL = InitUtils.setup(new ItemDebugTool(), "debug_tool"));
RebornRegistry.registerItem(TRContent.CELL = InitUtils.setup(new DynamicCell(), "cell"));
MinecraftForge.EVENT_BUS.register(BucketHandler.INSTANCE);
// TODO: do we need this at all?
BlockMachineBase.advancedFrameStack = new ItemStack(TRContent.MachineBlocks.ADVANCED.getFrame());
BlockMachineBase.basicFrameStack = new ItemStack(TRContent.MachineBlocks.BASIC.getFrame());
TechReborn.LOGGER.debug("TechReborns Items Loaded");
}
@SubscribeEvent
public static void registerTiles(RegistryEvent.Register<BlockEntityType<?>> event) {
TRTileEntities.TYPES.forEach(tileEntityType -> event.getRegistry().register(tileEntityType));
}
@SubscribeEvent
public static void registerEntityTypes(RegistryEvent.Register<EntityType<?>> event) {
TRContent.ENTITY_NUKE = EntityType.Builder.create(EntityNukePrimed.class, EntityNukePrimed::new).build("nuke");
TRContent.ENTITY_NUKE.setRegistryName(new Identifier(TechReborn.MOD_ID, "nuke"));
event.getRegistry().register(TRContent.ENTITY_NUKE);
}
// public static void registerBlocks() {
// Arrays.stream(Ores.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
// Arrays.stream(StorageBlocks.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
// Arrays.stream(MachineBlocks.values()).forEach(value -> {
// RebornRegistry.registerBlock(value.frame, new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(value.casing, new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// });
// Arrays.stream(SolarPanels.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
// Arrays.stream(Cables.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
// Arrays.stream(Machine.values()).forEach(value -> RebornRegistry.registerBlock(value.block, new Item.Settings().itemGroup(TechReborn.ITEMGROUP)));
//
// // Misc. blocks
// RebornRegistry.registerBlock(TRContent.COMPUTER_CUBE = InitUtils.setup(new BlockComputerCube(), "computer_cube"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.NUKE = InitUtils.setup(new BlockNuke(), "nuke"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.REFINED_IRON_FENCE = InitUtils.setup(new BlockRefinedIronFence(), "refined_iron_fence"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.REINFORCED_GLASS = InitUtils.setup(new BlockReinforcedGlass(), "reinforced_glass"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.RUBBER_LEAVES = InitUtils.setup(new BlockRubberLeaves(), "rubber_leaves"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.RUBBER_LOG = InitUtils.setup(new BlockRubberLog(), "rubber_log"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.RUBBER_PLANKS = InitUtils.setup(new BlockRubberPlank(), "rubber_planks"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.RUBBER_SAPLING = InitUtils.setup(new BlockRubberSapling(), "rubber_sapling"),
// ItemBlockRubberSapling.class,
// "rubber_sapling");
// RebornRegistry.registerBlock(TRContent.RUBBER_PLANK_SLAB = InitUtils.setup(new BlockRubberPlankSlab(), "rubber_plank_slab"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
// RebornRegistry.registerBlock(TRContent.RUBBER_PLANK_STAIR = InitUtils.setup(new BlockRubberPlankStair(), "rubber_plank_stair"), new Item.Settings().itemGroup(TechReborn.ITEMGROUP));
//
// TechReborn.LOGGER.debug("TechReborns Blocks Loaded");
// }
//
// @SubscribeEvent
// public static void registerItems(RegistryEvent.Register<Item> event) {
// Arrays.stream(Ingots.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Nuggets.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Gems.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Dusts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(SmallDusts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Plates.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Parts.values()).forEach(value -> RebornRegistry.registerItem(value.item));
// Arrays.stream(Upgrades.values()).forEach(value -> RebornRegistry.registerItem(value.item));
//
// // Gem armor & tools
// if (ConfigTechReborn.enableGemArmorAndTools) {
// //Todo: repair with tags
// RebornRegistry.registerItem(TRContent.BRONZE_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.BRONZE, "ingotBronze"), "bronze_sword"));
// RebornRegistry.registerItem(TRContent.BRONZE_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.BRONZE, "ingotBronze"), "bronze_pickaxe"));
// RebornRegistry.registerItem(TRContent.BRONZE_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.BRONZE, "ingotBronze"), "bronze_spade"));
// RebornRegistry.registerItem(TRContent.BRONZE_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.BRONZE, "ingotBronze"), "bronze_axe"));
// RebornRegistry.registerItem(TRContent.BRONZE_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.BRONZE, "ingotBronze"), "bronze_hoe"));
//
// RebornRegistry.registerItem(TRContent.BRONZE_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.HEAD, "ingotBronze"), "bronze_helmet"));
// RebornRegistry.registerItem(TRContent.BRONZE_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.CHEST, "ingotBronze"), "bronze_chestplate"));
// RebornRegistry.registerItem(TRContent.BRONZE_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.LEGS, "ingotBronze"), "bronze_leggings"));
// RebornRegistry.registerItem(TRContent.BRONZE_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.BRONZE, EquipmentSlot.FEET, "ingotBronze"), "bronze_boots"));
//
// RebornRegistry.registerItem(TRContent.RUBY_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.RUBY, "gemRuby"), "ruby_sword"));
// RebornRegistry.registerItem(TRContent.RUBY_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.RUBY, "gemRuby"), "ruby_pickaxe"));
// RebornRegistry.registerItem(TRContent.RUBY_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.RUBY, "gemRuby"), "ruby_spade"));
// RebornRegistry.registerItem(TRContent.RUBY_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.RUBY, "gemRuby"), "ruby_axe"));
// RebornRegistry.registerItem(TRContent.RUBY_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.RUBY, "gemRuby"), "ruby_hoe"));
//
// RebornRegistry.registerItem(TRContent.RUBY_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.HEAD, "gemRuby"), "ruby_helmet"));
// RebornRegistry.registerItem(TRContent.RUBY_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.CHEST, "gemRuby"), "ruby_chestplate"));
// RebornRegistry.registerItem(TRContent.RUBY_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.LEGS, "gemRuby"), "ruby_leggings"));
// RebornRegistry.registerItem(TRContent.RUBY_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.RUBY, EquipmentSlot.FEET, "gemRuby"), "ruby_boots"));
//
// RebornRegistry.registerItem(TRContent.SAPPHIRE_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_sword"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_pickaxe"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_spade"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_axe"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.SAPPHIRE, "gemSapphire"), "sapphire_hoe"));
//
// RebornRegistry.registerItem(TRContent.SAPPHIRE_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.HEAD, "gemSapphire"), "sapphire_helmet"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.CHEST, "gemSapphire"), "sapphire_chestplate"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.LEGS, "gemSapphire"), "sapphire_leggings"));
// RebornRegistry.registerItem(TRContent.SAPPHIRE_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.SAPPHIRE, EquipmentSlot.FEET, "gemSapphire"), "sapphire_boots"));
//
// RebornRegistry.registerItem(TRContent.PERIDOT_SWORD = InitUtils.setup(new ItemTRSword(TRToolTier.PERIDOT, "gemPeridot"), "peridot_sword"));
// RebornRegistry.registerItem(TRContent.PERIDOT_PICKAXE = InitUtils.setup(new ItemTRPickaxe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_pickaxe"));
// RebornRegistry.registerItem(TRContent.PERIDOT_SPADE = InitUtils.setup(new ItemTRSpade(TRToolTier.PERIDOT, "gemPeridot"), "peridot_spade"));
// RebornRegistry.registerItem(TRContent.PERIDOT_AXE = InitUtils.setup(new ItemTRAxe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_axe"));
// RebornRegistry.registerItem(TRContent.PERIDOT_HOE = InitUtils.setup(new ItemTRHoe(TRToolTier.PERIDOT, "gemPeridot"), "peridot_hoe"));
//
// RebornRegistry.registerItem(TRContent.PERIDOT_HELMET = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.HEAD, "gemPeridot"), "peridot_helmet"));
// RebornRegistry.registerItem(TRContent.PERIDOT_CHESTPLATE = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.CHEST, "gemPeridot"), "peridot_chestplate"));
// RebornRegistry.registerItem(TRContent.PERIDOT_LEGGINGS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.LEGS, "gemPeridot"), "peridot_leggings"));
// RebornRegistry.registerItem(TRContent.PERIDOT_BOOTS = InitUtils.setup(new ItemTRArmour(TRArmorMaterial.PERIDOT, EquipmentSlot.FEET, "gemPeridot"), "peridot_boots"));
// }
//
// // Battery
// RebornRegistry.registerItem(TRContent.RED_CELL_BATTERY = InitUtils.setup(new ItemRedCellBattery(), "red_cell_battery"));
// RebornRegistry.registerItem(TRContent.LITHIUM_ION_BATTERY = InitUtils.setup(new ItemLithiumIonBattery(), "lithium_ion_battery"));
// RebornRegistry.registerItem(TRContent.LITHIUM_ION_BATPACK = InitUtils.setup(new ItemLithiumIonBatpack(), "lithium_ion_batpack"));
// RebornRegistry.registerItem(TRContent.ENERGY_CRYSTAL = InitUtils.setup(new ItemEnergyCrystal(), "energy_crystal"));
// RebornRegistry.registerItem(TRContent.LAPOTRON_CRYSTAL = InitUtils.setup(new ItemLapotronCrystal(), "lapotron_crystal"));
// RebornRegistry.registerItem(TRContent.LAPOTRONIC_ORB = InitUtils.setup(new ItemLapotronicOrb(), "lapotronic_orb"));
// RebornRegistry.registerItem(TRContent.LAPOTRONIC_ORBPACK = InitUtils.setup(new ItemLapotronicOrbpack(), "lapotronic_orbpack"));
//
// // Tools
// RebornRegistry.registerItem(TRContent.TREE_TAP = InitUtils.setup(new ItemTreeTap(), "treetap"));
// RebornRegistry.registerItem(TRContent.WRENCH = InitUtils.setup(new ItemWrench(), "wrench"));
//
// RebornRegistry.registerItem(TRContent.BASIC_DRILL = InitUtils.setup(new ItemBasicDrill(), "basic_drill"));
// RebornRegistry.registerItem(TRContent.BASIC_CHAINSAW = InitUtils.setup(new ItemBasicChainsaw(), "basic_chainsaw"));
// RebornRegistry.registerItem(TRContent.BASIC_JACKHAMMER = InitUtils.setup(new ItemBasicJackhammer(), "basic_jackhammer"));
// RebornRegistry.registerItem(TRContent.ELECTRIC_TREE_TAP = InitUtils.setup(new ItemElectricTreetap(), "electric_treetap"));
//
// RebornRegistry.registerItem(TRContent.ADVANCED_DRILL = InitUtils.setup(new ItemAdvancedDrill(), "advanced_drill"));
// RebornRegistry.registerItem(TRContent.ADVANCED_CHAINSAW = InitUtils.setup(new ItemAdvancedChainsaw(), "advanced_chainsaw"));
// RebornRegistry.registerItem(TRContent.ADVANCED_JACKHAMMER = InitUtils.setup(new ItemAdvancedJackhammer(), "advanced_jackhammer"));
// RebornRegistry.registerItem(TRContent.ROCK_CUTTER = InitUtils.setup(new ItemRockCutter(), "rock_cutter"));
//
// RebornRegistry.registerItem(TRContent.INDUSTRIAL_DRILL = InitUtils.setup(new ItemIndustrialDrill(), "industrial_drill"));
// RebornRegistry.registerItem(TRContent.INDUSTRIAL_CHAINSAW = InitUtils.setup(new ItemIndustrialChainsaw(), "industrial_chainsaw"));
// RebornRegistry.registerItem(TRContent.INDUSTRIAL_JACKHAMMER = InitUtils.setup(new ItemIndustrialJackhammer(), "industrial_jackhammer"));
// RebornRegistry.registerItem(TRContent.NANOSABER = InitUtils.setup(new ItemNanosaber(), "nanosaber"));
// RebornRegistry.registerItem(TRContent.OMNI_TOOL = InitUtils.setup(new ItemOmniTool(), "omni_tool"));
//
// // Armor
// RebornRegistry.registerItem(TRContent.CLOAKING_DEVICE = InitUtils.setup(new ItemCloakingDevice(), "cloaking_device"));
//
// // Other
// RebornRegistry.registerItem(TRContent.FREQUENCY_TRANSMITTER = InitUtils.setup(new ItemFrequencyTransmitter(), "frequency_transmitter"));
// RebornRegistry.registerItem(TRContent.SCRAP_BOX = InitUtils.setup(new ItemScrapBox(), "scrap_box"));
// RebornRegistry.registerItem(TRContent.MANUAL = InitUtils.setup(new ItemManual(), "manual"));
// RebornRegistry.registerItem(TRContent.DEBUG_TOOL = InitUtils.setup(new ItemDebugTool(), "debug_tool"));
// RebornRegistry.registerItem(TRContent.CELL = InitUtils.setup(new DynamicCell(), "cell"));
// MinecraftForge.EVENT_BUS.register(BucketHandler.INSTANCE);
//
// // TODO: do we need this at all?
// BlockMachineBase.advancedFrameStack = new ItemStack(TRContent.MachineBlocks.ADVANCED.getFrame());
// BlockMachineBase.basicFrameStack = new ItemStack(TRContent.MachineBlocks.BASIC.getFrame());
//
// TechReborn.LOGGER.debug("TechReborns Items Loaded");
// }
//
//
// public static void registerTiles(RegistryEvent.Register<BlockEntityType<?>> event) {
// TRTileEntities.TYPES.forEach(tileEntityType -> event.getRegistry().register(tileEntityType));
// }
//
//
//
// public static void registerEntityTypes(RegistryEvent.Register<EntityType<?>> event) {
// TRContent.ENTITY_NUKE = EntityType.Builder.create(EntityNukePrimed.class, EntityNukePrimed::new).build("nuke");
// TRContent.ENTITY_NUKE.setRegistryName(new Identifier(TechReborn.MOD_ID, "nuke"));
// event.getRegistry().register(TRContent.ENTITY_NUKE);
//
// }
// @SubscribeEvent(priority = EventPriority.LOW)//LOW is used as we want it to load as late as possible, but before crafttweaker
// public static void registerRecipes(RegistryEvent.Register<IRecipe> event) {

View file

@ -44,7 +44,7 @@ import reborncore.api.IListInfoProvider;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.RebornCoreConfig;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.StringUtils;
import techreborn.TechReborn;
@ -61,7 +61,7 @@ public class StackToolTipEvent {
if (item instanceof IListInfoProvider) {
((IListInfoProvider) item).addInfo(event.getToolTip(), false, false);
} else if (event.getItemStack().getItem() instanceof IEnergyItemInfo) {
IEnergyStorage capEnergy = new ForgePowerItemManager(event.getItemStack());
IEnergyStorage capEnergy = new ItemPowerManager(event.getItemStack());
TextComponent line1 = new TextComponent(PowerSystem
.getLocaliszedPowerFormattedNoSuffix(capEnergy.getEnergyStored() / RebornCoreConfig.euPerFU));
line1.append("/");

View file

@ -26,6 +26,7 @@ package techreborn.init;
import net.minecraft.util.Identifier;
import reborncore.fluid.Fluid;
import techreborn.blocks.fluid.BlockFluidTechReborn;
public enum ModFluids {
BERYLLIUM,

View file

@ -27,11 +27,8 @@ package techreborn.init;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
import reborncore.common.crafting.Recipe;
import reborncore.common.crafting.RebornRecipe;
import reborncore.common.crafting.RecipeManager;
import reborncore.common.crafting.RecipeType;
import reborncore.common.registration.RebornRegister;
import techreborn.TechReborn;
import techreborn.api.recipe.recipes.BlastFurnaceRecipe;
@ -42,7 +39,7 @@ import techreborn.api.recipe.recipes.IndustrialSawmillRecipe;
public class ModRecipes {
public static final RecipeType<Recipe> ALLOY_SMELTER = RecipeManager.newRecipeType(Recipe.class, new Identifier("techreborn:alloy_smelter"));
public static final RecipeType<RebornRecipe> ALLOY_SMELTER = RecipeManager.newRecipeType(Recipe.class, new Identifier("techreborn:alloy_smelter"));
public static final RecipeType<Recipe> ASSEMBLING_MACHINE = RecipeManager.newRecipeType(Recipe.class, new Identifier("techreborn:assembling_machine"));
public static final RecipeType<BlastFurnaceRecipe> BLAST_FURNACE = RecipeManager.newRecipeType(BlastFurnaceRecipe.class, new Identifier("techreborn:blast_furnace"));
public static final RecipeType<Recipe> CENTRIFUGE = RecipeManager.newRecipeType(Recipe.class, new Identifier("techreborn:centrifuge"));

View file

@ -40,7 +40,7 @@ import net.fabricmc.api.Environment;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.registration.RebornRegister;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
@ -74,7 +74,7 @@ public class ItemCloakingDevice extends ItemTRArmour implements IEnergyItemInfo
public void onEntityTick(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) {
if (entityIn instanceof PlayerEntity) {
PlayerEntity player = (PlayerEntity) entityIn;
IEnergyStorage capEnergy = new ForgePowerItemManager(stack);
IEnergyStorage capEnergy = new ItemPowerManager(stack);
if (capEnergy != null && capEnergy.getEnergyStored() >= usage) {
capEnergy.extractEnergy(usage, false);
player.setInvisible(true);
@ -98,7 +98,7 @@ public class ItemCloakingDevice extends ItemTRArmour implements IEnergyItemInfo
}
ItemStack uncharged = new ItemStack(TRContent.CLOAKING_DEVICE);
ItemStack charged = new ItemStack(TRContent.CLOAKING_DEVICE);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -37,7 +37,7 @@ import net.fabricmc.api.Environment;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.config.ConfigTechReborn;
@ -63,7 +63,7 @@ public class ItemLapotronicOrbpack extends ArmorItem implements IEnergyItemInfo
}
ItemStack uncharged = new ItemStack(TRContent.LAPOTRONIC_ORBPACK);
ItemStack charged = new ItemStack(TRContent.LAPOTRONIC_ORBPACK);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -38,7 +38,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.config.ConfigTechReborn;
@ -61,7 +61,7 @@ public class ItemLithiumIonBatpack extends ArmorItem implements IEnergyItemInfo
return;
}
ForgePowerItemManager capEnergy = new ForgePowerItemManager(itemStack);
ItemPowerManager capEnergy = new ItemPowerManager(itemStack);
for (int i = 0; i < player.inventory.getInvSize(); i++) {
if (!player.inventory.getInvStack(i).isEmpty()) {
@ -113,7 +113,7 @@ public class ItemLithiumIonBatpack extends ArmorItem implements IEnergyItemInfo
}
ItemStack uncharged = new ItemStack(TRContent.LITHIUM_ION_BATPACK);
ItemStack charged = new ItemStack(TRContent.LITHIUM_ION_BATPACK);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -37,7 +37,7 @@ import net.fabricmc.api.Environment;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
@ -56,7 +56,7 @@ public class ItemBattery extends Item implements IEnergyItemInfo {
@Override
@Environment(EnvType.CLIENT)
public float call(ItemStack stack, @Nullable World worldIn, @Nullable LivingEntity entityIn) {
if (!stack.isEmpty() && new ForgePowerItemManager(stack).getEnergyStored() == 0) {
if (!stack.isEmpty() && new ItemPowerManager(stack).getEnergyStored() == 0) {
return 1.0F;
}
return 0.0F;

View file

@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
@ -48,7 +48,7 @@ public class ItemEnergyCrystal extends ItemBattery {
}
ItemStack uncharged = new ItemStack(TRContent.ENERGY_CRYSTAL);
ItemStack charged = new ItemStack(TRContent.ENERGY_CRYSTAL);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
@ -48,7 +48,7 @@ public class ItemLapotronCrystal extends ItemBattery {
}
ItemStack uncharged = new ItemStack(TRContent.LAPOTRON_CRYSTAL);
ItemStack charged = new ItemStack(TRContent.LAPOTRON_CRYSTAL);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
@ -48,7 +48,7 @@ public class ItemLapotronicOrb extends ItemBattery {
}
ItemStack uncharged = new ItemStack(TRContent.LAPOTRONIC_ORB);
ItemStack charged = new ItemStack(TRContent.LAPOTRONIC_ORB);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.init.TRContent;
public class ItemLithiumIonBattery extends ItemBattery {
@ -47,7 +47,7 @@ public class ItemLithiumIonBattery extends ItemBattery {
}
ItemStack uncharged = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ItemStack charged = new ItemStack(TRContent.LITHIUM_ION_BATTERY);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -29,7 +29,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.init.TRContent;
public class ItemRedCellBattery extends ItemBattery {
@ -47,7 +47,7 @@ public class ItemRedCellBattery extends ItemBattery {
}
ItemStack uncharged = new ItemStack(TRContent.RED_CELL_BATTERY);
ItemStack charged = new ItemStack(TRContent.RED_CELL_BATTERY);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
items.add(uncharged);
items.add(charged);

View file

@ -42,7 +42,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
@ -67,7 +67,7 @@ public class ItemChainsaw extends AxeItem implements IEnergyItemInfo {
@Override
@Environment(EnvType.CLIENT)
public float call(ItemStack stack, @Nullable World worldIn, @Nullable LivingEntity entityIn) {
if (!stack.isEmpty() && new ForgePowerItemManager(stack).getEnergyStored() >= cost
if (!stack.isEmpty() && new ItemPowerManager(stack).getEnergyStored() >= cost
&& entityIn != null && entityIn.getMainHandStack().equals(stack)) {
return 1.0F;
}
@ -79,7 +79,7 @@ public class ItemChainsaw extends AxeItem implements IEnergyItemInfo {
// ItemAxe
@Override
public float getBlockBreakingSpeed(ItemStack stack, BlockState state) {
if (new ForgePowerItemManager(stack).getEnergyStored() >= cost
if (new ItemPowerManager(stack).getEnergyStored() >= cost
&& (state.getBlock().isToolEffective(state, ToolType.AXE) || state.getMaterial() == Material.WOOD)) {
return this.poweredSpeed;
} else {
@ -92,7 +92,7 @@ public class ItemChainsaw extends AxeItem implements IEnergyItemInfo {
public boolean onBlockBroken(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);

View file

@ -41,7 +41,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
@ -65,7 +65,7 @@ public class ItemDrill extends PickaxeItem implements IEnergyItemInfo {
// ItemPickaxe
@Override
public float getBlockBreakingSpeed(ItemStack stack, BlockState state) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (new ItemPowerManager(stack).getEnergyStored() < cost) {
return unpoweredSpeed;
}
if (Items.WOODEN_PICKAXE.getBlockBreakingSpeed(stack, state) > 1.0F
@ -81,7 +81,7 @@ public class ItemDrill extends PickaxeItem implements IEnergyItemInfo {
public boolean onBlockBroken(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);

View file

@ -42,7 +42,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.utils.TagUtils;
@ -66,7 +66,7 @@ public class ItemJackhammer extends PickaxeItem implements IEnergyItemInfo {
@Override
public float getBlockBreakingSpeed(ItemStack stack, BlockState state) {
if ((TagUtils.isOre(state, "stone") || state.getBlock() == Blocks.STONE)
&& new ForgePowerItemManager(stack).getEnergyStored() >= cost) {
&& new ItemPowerManager(stack).getEnergyStored() >= cost) {
return blockBreakingSpeed;
} else {
return 0.5F;
@ -78,7 +78,7 @@ public class ItemJackhammer extends PickaxeItem implements IEnergyItemInfo {
public boolean onBlockBroken(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
@ -95,7 +95,7 @@ public class ItemJackhammer extends PickaxeItem implements IEnergyItemInfo {
@Override
public boolean canHarvestBlock( final ItemStack stack, final BlockState state) {
return TagUtils.isOre(state, "stone")
|| state.getMaterial() == Material.STONE && new ForgePowerItemManager(stack).getEnergyStored() >= cost;
|| state.getMaterial() == Material.STONE && new ItemPowerManager(stack).getEnergyStored() >= cost;
}
@Override

View file

@ -32,7 +32,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemChainsaw;
@ -54,7 +54,7 @@ public class ItemAdvancedChainsaw extends ItemChainsaw {
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_CHAINSAW);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -32,7 +32,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemDrill;
@ -54,7 +54,7 @@ public class ItemAdvancedDrill extends ItemDrill {
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_DRILL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -30,7 +30,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
@ -53,7 +53,7 @@ public class ItemAdvancedJackhammer extends ItemJackhammer {
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_JACKHAMMER);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -42,7 +42,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.config.ConfigTechReborn;
@ -74,7 +74,7 @@ public class ItemRockCutter extends PickaxeItem implements IEnergyItemInfo {
@Override
public float getBlockBreakingSpeed(ItemStack stack, BlockState state) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (new ItemPowerManager(stack).getEnergyStored() < cost) {
return 2F;
} else {
return Items.DIAMOND_PICKAXE.getBlockBreakingSpeed(stack, state);
@ -86,7 +86,7 @@ public class ItemRockCutter extends PickaxeItem implements IEnergyItemInfo {
public boolean onBlockBroken(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) {
Random rand = new Random();
if (rand.nextInt(EnchantmentHelper.getLevel(Enchantments.UNBREAKING, stack) + 1) == 0) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
@ -151,7 +151,7 @@ public class ItemRockCutter extends PickaxeItem implements IEnergyItemInfo {
uncharged.addEnchantment(Enchantments.SILK_TOUCH, 1);
ItemStack charged = new ItemStack(TRContent.ROCK_CUTTER);
charged.addEnchantment(Enchantments.SILK_TOUCH, 1);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);

View file

@ -32,7 +32,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemChainsaw;
@ -52,7 +52,7 @@ public class ItemBasicChainsaw extends ItemChainsaw {
}
ItemStack stack = new ItemStack(TRContent.BASIC_CHAINSAW);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -32,7 +32,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemDrill;
@ -52,7 +52,7 @@ public class ItemBasicDrill extends ItemDrill {
}
ItemStack stack = new ItemStack(TRContent.BASIC_DRILL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -30,7 +30,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
@ -51,7 +51,7 @@ public class ItemBasicJackhammer extends ItemJackhammer {
}
ItemStack stack = new ItemStack(TRContent.BASIC_JACKHAMMER);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -38,7 +38,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
import techreborn.api.TechRebornAPI;
@ -61,7 +61,7 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
// Item
@Override
public ActionResult useOnBlock(ItemUsageContext context) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(context.getItemStack());
ItemPowerManager capEnergy = new ItemPowerManager(context.getItemStack());
if(TechRebornAPI.ic2Helper != null && capEnergy.getEnergyStored() >= cost){
if(TechRebornAPI.ic2Helper.extractSap(context, null) && !context.getWorld().isClient){
capEnergy.extractEnergy(cost, false);
@ -102,7 +102,7 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
}
ItemStack uncharged = new ItemStack(TRContent.ELECTRIC_TREE_TAP);
ItemStack charged = new ItemStack(TRContent.ELECTRIC_TREE_TAP);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);

View file

@ -48,7 +48,7 @@ import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ChatUtils;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
@ -81,7 +81,7 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
}
ItemStack stack = new ItemStack(TRContent.INDUSTRIAL_CHAINSAW);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);
@ -136,7 +136,7 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
public TypedActionResult<ItemStack> use(final World world, final PlayerEntity player, final Hand hand) {
final ItemStack stack = player.getStackInHand(hand);
if (player.isSneaking()) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (new ItemPowerManager(stack).getEnergyStored() < cost) {
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyErrorTo") + " "
+ ChatFormat.GOLD + I18n
@ -170,7 +170,7 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
@Override
public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) {
if (ItemUtils.isActive(stack) && new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (ItemUtils.isActive(stack) && new ItemPowerManager(stack).getEnergyStored() < cost) {
if(entity.world.isClient){
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyError") + " "
@ -202,7 +202,7 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
return;
}
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
if (capEnergy.getEnergyStored() < cost) {
return;
}

View file

@ -48,7 +48,7 @@ import net.minecraft.world.World;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ChatUtils;
import reborncore.common.util.ItemUtils;
import techreborn.config.ConfigTechReborn;
@ -115,7 +115,7 @@ public class ItemIndustrialDrill extends ItemDrill {
public void breakBlock(BlockPos pos, World world, PlayerEntity playerIn, ItemStack drill) {
BlockState blockState = world.getBlockState(pos);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(drill);
ItemPowerManager capEnergy = new ItemPowerManager(drill);
if(capEnergy.getEnergyStored() > cost){
capEnergy.extractEnergy(cost, false);
@ -170,7 +170,7 @@ public class ItemIndustrialDrill extends ItemDrill {
public TypedActionResult<ItemStack> use(final World world, final PlayerEntity player, final Hand hand) {
final ItemStack stack = player.getStackInHand(hand);
if (player.isSneaking()) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (new ItemPowerManager(stack).getEnergyStored() < cost) {
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyErrorTo") + " "
+ ChatFormat.GOLD + I18n
@ -204,7 +204,7 @@ public class ItemIndustrialDrill extends ItemDrill {
@Override
public boolean onEntityItemUpdate(ItemStack stack, ItemEntity entity) {
if (ItemUtils.isActive(stack) && new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (ItemUtils.isActive(stack) && new ItemPowerManager(stack).getEnergyStored() < cost) {
if(entity.world.isClient){
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyError") + " "
@ -241,7 +241,7 @@ public class ItemIndustrialDrill extends ItemDrill {
}
ItemStack stack = new ItemStack(TRContent.INDUSTRIAL_DRILL);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -30,7 +30,7 @@ import net.minecraft.item.ToolMaterials;
import net.minecraft.util.DefaultedList;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
import techreborn.items.tool.ItemJackhammer;
@ -54,7 +54,7 @@ public class ItemIndustrialJackhammer extends ItemJackhammer {
}
ItemStack stack = new ItemStack(TRContent.INDUSTRIAL_JACKHAMMER);
ItemStack charged = stack.copy();
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(stack);

View file

@ -49,7 +49,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ChatUtils;
import reborncore.common.util.ItemUtils;
import techreborn.TechReborn;
@ -77,7 +77,7 @@ public class ItemNanosaber extends SwordItem implements IEnergyItemInfo {
@Nullable
LivingEntity entityIn) {
if (ItemUtils.isActive(stack)) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
if (capEnergy.getMaxEnergyStored() - capEnergy.getEnergyStored() >= 0.9 * capEnergy.getMaxEnergyStored()) {
return 0.5F;
}
@ -91,7 +91,7 @@ public class ItemNanosaber extends SwordItem implements IEnergyItemInfo {
// ItemSword
@Override
public boolean onEntityDamaged(ItemStack stack, LivingEntity entityHit, LivingEntity entityHitter) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
if (capEnergy.getEnergyStored() >= cost) {
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityHitter);
@ -123,7 +123,7 @@ public class ItemNanosaber extends SwordItem implements IEnergyItemInfo {
public TypedActionResult<ItemStack> use(final World world, final PlayerEntity player, final Hand hand) {
final ItemStack stack = player.getStackInHand(hand);
if (player.isSneaking()) {
if (new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (new ItemPowerManager(stack).getEnergyStored() < cost) {
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyErrorTo") + " "
+ ChatFormat.GOLD + I18n
@ -157,7 +157,7 @@ public class ItemNanosaber extends SwordItem implements IEnergyItemInfo {
@Override
public void onEntityTick(ItemStack stack, World worldIn, Entity entityIn, int itemSlot, boolean isSelected) {
if (ItemUtils.isActive(stack) && new ForgePowerItemManager(stack).getEnergyStored() < cost) {
if (ItemUtils.isActive(stack) && new ItemPowerManager(stack).getEnergyStored() < cost) {
if(worldIn.isClient){
ChatUtils.sendNoSpamMessages(MessageIDs.nanosaberID, new TextComponent(
ChatFormat.GRAY + I18n.translate("techreborn.message.nanosaberEnergyError") + " "
@ -210,13 +210,13 @@ public class ItemNanosaber extends SwordItem implements IEnergyItemInfo {
ItemStack inactiveCharged = new ItemStack(TRContent.NANOSABER);
inactiveCharged.setTag(new CompoundTag());
inactiveCharged.getTag().putBoolean("isActive", false);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(inactiveCharged);
ItemPowerManager capEnergy = new ItemPowerManager(inactiveCharged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
ItemStack activeCharged = new ItemStack(TRContent.NANOSABER);
activeCharged.setTag(new CompoundTag());
activeCharged.getTag().putBoolean("isActive", true);
ForgePowerItemManager capEnergy2 = new ForgePowerItemManager(activeCharged);
ItemPowerManager capEnergy2 = new ItemPowerManager(activeCharged);
capEnergy2.setEnergyStored(capEnergy2.getMaxEnergyStored());
itemList.add(inactiveUncharged);

View file

@ -45,7 +45,7 @@ import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
import reborncore.common.powerSystem.PowerSystem;
import reborncore.common.powerSystem.PoweredItemContainerProvider;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import reborncore.common.powerSystem.ItemPowerManager;
import reborncore.common.util.ItemUtils;
import reborncore.common.util.TorchHelper;
import techreborn.TechReborn;
@ -79,7 +79,7 @@ public class ItemOmniTool extends PickaxeItem implements IEnergyItemInfo {
// ItemTool
@Override
public boolean onBlockBroken(ItemStack stack, World worldIn, BlockState blockIn, BlockPos pos, LivingEntity entityLiving) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
capEnergy.extractEnergy(cost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityLiving);
@ -110,7 +110,7 @@ public class ItemOmniTool extends PickaxeItem implements IEnergyItemInfo {
@Override
public boolean onEntityDamaged(ItemStack stack, LivingEntity entityliving, LivingEntity attacker) {
ForgePowerItemManager capEnergy = new ForgePowerItemManager(stack);
ItemPowerManager capEnergy = new ItemPowerManager(stack);
if (capEnergy.getEnergyStored() >= hitCost) {
capEnergy.extractEnergy(hitCost, false);
ExternalPowerSystems.requestEnergyFromArmor(capEnergy, entityliving);
@ -168,7 +168,7 @@ public class ItemOmniTool extends PickaxeItem implements IEnergyItemInfo {
}
ItemStack uncharged = new ItemStack(TRContent.OMNI_TOOL);
ItemStack charged = new ItemStack(TRContent.OMNI_TOOL);
ForgePowerItemManager capEnergy = new ForgePowerItemManager(charged);
ItemPowerManager capEnergy = new ItemPowerManager(charged);
capEnergy.setEnergyStored(capEnergy.getMaxEnergyStored());
itemList.add(uncharged);

View file

@ -25,7 +25,7 @@
package techreborn.utils;
import net.minecraft.block.Block;
import reborncore.fluid.Fluid;
import java.util.Collections;
import java.util.List;

View file

@ -1,114 +0,0 @@
/*
* This file is part of TechReborn, licensed under the MIT License (MIT).
*
* Copyright (c) 2018 TechReborn
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
package techreborn.world.village;
import net.minecraft.block.BlockState;
import net.minecraft.block.Blocks;
import net.minecraft.block.CropBlock;
import net.minecraft.structure.StructurePiece;
import net.minecraft.structure.VillageGenerator;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.ChunkPos;
import net.minecraft.util.math.Direction;
import net.minecraft.util.math.MutableIntBoundingBox;
import net.minecraft.world.IWorld;
import techreborn.init.TRContent;
import techreborn.world.RubberTreeGenerator;
import java.util.List;
import java.util.Random;
public class VillageComponentRubberPlantaion extends VillageGenerator.Field1 {
public static VillageGenerator.Piece buildComponent(VillageGenerator.PieceWeight villagePiece, VillageGenerator.Start startPiece, List<StructurePiece> pieces, Random random, int p1, int p2, int p3, Direction facing, int p5) {
MutableIntBoundingBox structureboundingbox = MutableIntBoundingBox.createRotated(p1, p2, p3, 0, 0, 0, 13, 4, 9, facing);
return canVillageGoDeeper(structureboundingbox) && StructurePiece.method_14932(pieces, structureboundingbox) == null ? new VillageComponentRubberPlantaion(startPiece, p5, random, structureboundingbox, facing) : null;
}
public VillageComponentRubberPlantaion() {
}
public VillageComponentRubberPlantaion(VillageGenerator.Start start, int type, Random rand, MutableIntBoundingBox structureBoundingBox, Direction facing) {
super(start, type, rand, structureBoundingBox, facing);
}
@Override
protected void fillWithBlocks(IWorld worldIn, MutableIntBoundingBox boundingboxIn, int xMin, int yMin, int zMin, int xMax, int yMax, int zMax, BlockState boundaryBlockState, BlockState insideBlockState, boolean existingOnly) {
//Replaces farmland with dirt, its not great but it works.
if (boundaryBlockState.getBlock() == Blocks.FARMLAND) {
boundaryBlockState = Blocks.GRASS.getDefaultState();
insideBlockState = Blocks.GRASS.getDefaultState();
}
//Replaces the water and logs with stone bricks
if (boundaryBlockState.getBlock() == Blocks.WATER || boundaryBlockState.getBlock() == Blocks.OAK_LOG) {
boundaryBlockState = Blocks.STONE_BRICKS.getDefaultState();
insideBlockState = Blocks.STONE_BRICKS.getDefaultState();
}
super.fillWithBlocks(worldIn, boundingboxIn, xMin, yMin, zMin, xMax, yMax, zMax, boundaryBlockState, insideBlockState, existingOnly);
}
@Override
protected void setBlockState(IWorld worldIn, BlockState blockstateIn, int x, int y, int z, MutableIntBoundingBox boundingboxIn) {
if (isCrop(blockstateIn)) {
blockstateIn = TRContent.RUBBER_SAPLING.getDefaultState();
}
super.setBlockState(worldIn, blockstateIn, x, y, z, boundingboxIn);
}
@Override
public boolean addComponentParts(IWorld worldIn, Random randomIn, MutableIntBoundingBox structureBoundingBoxIn, ChunkPos chunkPos) {
super.addComponentParts(worldIn, randomIn, structureBoundingBoxIn, chunkPos);
for (int i = 1; i < 7; i++) {
growRandom(i, 1, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 2, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 4, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 5, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 7, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 8, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 10, structureBoundingBoxIn, randomIn, worldIn);
growRandom(i, 11, structureBoundingBoxIn, randomIn, worldIn);
}
generateChest(worldIn, structureBoundingBoxIn, randomIn, 0, 1, 0, ModLootTables.CHESTS_RUBBER_PLANTATION);
return true;
}
private void growRandom(int coloum, int row, MutableIntBoundingBox structureBoundingBox, Random random, IWorld world) {
if (random.nextInt(10) == 0) {
setBlockState(world, Blocks.AIR.getDefaultState(), row, 1, coloum, structureBoundingBox);
BlockPos pos = new BlockPos(this.getXWithOffset(row, coloum), this.getYWithOffset(1), this.getZWithOffset(row, coloum));
if (!new RubberTreeGenerator(true).growTree(world, random, pos.getX(), pos.getY(), pos.getZ())) {
//Puts the sapling back if the tree did not grow
setBlockState(world, TRContent.RUBBER_SAPLING.getDefaultState(), row, 1, coloum, structureBoundingBox);
}
}
}
private boolean isCrop(BlockState state) {
if (state.getBlock() instanceof CropBlock) {
return true;
}
return false;
}
}

View file

@ -1,52 +0,0 @@
/*
* This file is part of TechReborn, licensed under the MIT License (MIT).
*
* Copyright (c) 2018 TechReborn
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in all
* copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
package techreborn.world.village;
import net.minecraft.structure.StructurePiece;
import net.minecraft.structure.VillageGenerator;
import net.minecraft.util.math.Direction;
import java.util.List;
import java.util.Random;
public class VillagePlantaionHandler implements VillagerRegistry.IVillageCreationHandler {
@Override
public VillageGenerator.PieceWeight getVillagePieceWeight(Random random, int i) {
return new VillageGenerator.PieceWeight(VillageComponentRubberPlantaion.class, 5, 1);
}
@Override
public Class<?> getComponentClass() {
return VillageComponentRubberPlantaion.class;
}
@Override
public VillageGenerator.Piece buildComponent(VillageGenerator.PieceWeight villagePiece, VillageGenerator.Start startPiece, List<StructurePiece> pieces, Random random, int p1, int p2, int p3, Direction facing, int p5) {
return VillageComponentRubberPlantaion.buildComponent(villagePiece, startPiece, pieces, random, p1, p2, p3, facing, p5);
}
}