From 5d89272a10bae9d621872d45a508e50a6d967b3d Mon Sep 17 00:00:00 2001 From: Justin Vitale <4002351+justinvvitale@users.noreply.github.com> Date: Sat, 4 Jan 2020 16:18:34 +1100 Subject: [PATCH] Add WIP textured drain block without logic --- .../machine/misc/DrainBlockEntity.java | 32 ++++++++++++++++++ .../events/StackToolTipHandler.java | 9 ++++- .../java/techreborn/init/TRBlockEntities.java | 2 ++ src/main/java/techreborn/init/TRContent.java | 2 ++ .../assets/techreborn/blockstates/drain.json | 5 +++ .../assets/techreborn/lang/en_us.json | 1 + .../block/machines/tier0_machines/drain.json | 8 +++++ .../assets/techreborn/models/item/drain.json | 4 +++ .../tier0_machines/fluid_drain_bottom.png | Bin 0 -> 749 bytes .../tier0_machines/fluid_drain_side.png | Bin 0 -> 808 bytes .../tier0_machines/fluid_drain_top.png | Bin 0 -> 662 bytes .../techreborn/loot_tables/blocks/drain.json | 19 +++++++++++ 12 files changed, 81 insertions(+), 1 deletion(-) create mode 100644 src/main/java/techreborn/blockentity/machine/misc/DrainBlockEntity.java create mode 100644 src/main/resources/assets/techreborn/blockstates/drain.json create mode 100644 src/main/resources/assets/techreborn/models/block/machines/tier0_machines/drain.json create mode 100644 src/main/resources/assets/techreborn/models/item/drain.json create mode 100644 src/main/resources/assets/techreborn/textures/block/machines/tier0_machines/fluid_drain_bottom.png create mode 100644 src/main/resources/assets/techreborn/textures/block/machines/tier0_machines/fluid_drain_side.png create mode 100644 src/main/resources/assets/techreborn/textures/block/machines/tier0_machines/fluid_drain_top.png create mode 100644 src/main/resources/data/techreborn/loot_tables/blocks/drain.json diff --git a/src/main/java/techreborn/blockentity/machine/misc/DrainBlockEntity.java b/src/main/java/techreborn/blockentity/machine/misc/DrainBlockEntity.java new file mode 100644 index 000000000..1934ba8cc --- /dev/null +++ b/src/main/java/techreborn/blockentity/machine/misc/DrainBlockEntity.java @@ -0,0 +1,32 @@ +package techreborn.blockentity.machine.misc; + +import net.minecraft.block.entity.BlockEntityType; +import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.Inventory; +import reborncore.api.IListInfoProvider; +import reborncore.api.blockentity.InventoryProvider; +import reborncore.client.containerBuilder.IContainerProvider; +import reborncore.client.containerBuilder.builder.BuiltContainer; +import reborncore.common.blockentity.MachineBaseBlockEntity; +import techreborn.init.TRBlockEntities; + +public class DrainBlockEntity extends MachineBaseBlockEntity implements InventoryProvider, IListInfoProvider, IContainerProvider { + + public DrainBlockEntity(){ + this(TRBlockEntities.DRAIN); + } + + public DrainBlockEntity(BlockEntityType blockEntityTypeIn) { + super(blockEntityTypeIn); + } + + @Override + public Inventory getInventory() { + return null; + } + + @Override + public BuiltContainer createContainer(int syncID, PlayerEntity player) { + return null; + } +} diff --git a/src/main/java/techreborn/events/StackToolTipHandler.java b/src/main/java/techreborn/events/StackToolTipHandler.java index cfab32963..589a8a183 100644 --- a/src/main/java/techreborn/events/StackToolTipHandler.java +++ b/src/main/java/techreborn/events/StackToolTipHandler.java @@ -51,12 +51,19 @@ import techreborn.items.ItemUpgrade; import techreborn.utils.ToolTipAssistUtils; import techreborn.utils.WIP; +import java.util.ArrayList; import java.util.List; public class StackToolTipHandler implements ItemTooltipCallback { + private static ArrayList wipBlocks = new ArrayList<>(); + public static void setup() { ItemTooltipCallback.EVENT.register(new StackToolTipHandler()); + + // WIP injection + wipBlocks.add(TRContent.Machine.DRAIN.block); + } @Override @@ -67,7 +74,7 @@ public class StackToolTipHandler implements ItemTooltipCallback { // Machine info and upgrades helper section Block block = Block.getBlockFromItem(item); - if(block instanceof WIP){ + if(wipBlocks.contains(block) || block instanceof WIP){ components.add(new LiteralText(Formatting.RED + StringUtils.t("techreborn.tooltip.wip"))); } diff --git a/src/main/java/techreborn/init/TRBlockEntities.java b/src/main/java/techreborn/init/TRBlockEntities.java index 4ceee67cb..b51561932 100644 --- a/src/main/java/techreborn/init/TRBlockEntities.java +++ b/src/main/java/techreborn/init/TRBlockEntities.java @@ -33,6 +33,7 @@ import net.minecraft.util.registry.Registry; import org.apache.commons.lang3.Validate; import techreborn.TechReborn; import techreborn.blockentity.cable.CableBlockEntity; +import techreborn.blockentity.machine.misc.DrainBlockEntity; import techreborn.blockentity.machine.multiblock.casing.MachineCasingBlockEntity; import techreborn.blockentity.machine.multiblock.FusionControlComputerBlockEntity; import techreborn.blockentity.generator.LightningRodBlockEntity; @@ -82,6 +83,7 @@ public class TRBlockEntities { public static final BlockEntityType DIGITAL_CHEST = register(DigitalChestBlockEntity.class, "digital_chest", TRContent.Machine.DIGITAL_CHEST); public static final BlockEntityType CREATIVE_QUANTUM_CHEST = register(CreativeQuantumChestBlockEntity.class, "creative_quantum_chest", TRContent.Machine.CREATIVE_QUANTUM_CHEST); public static final BlockEntityType CREATIVE_QUANTUM_TANK = register(CreativeQuantumTankBlockEntity.class, "creative_quantum_tank", TRContent.Machine.CREATIVE_QUANTUM_TANK); + public static final BlockEntityType DRAIN = register(DrainBlockEntity.class, "drain", TRContent.Machine.DRAIN); public static final BlockEntityType THERMAL_GEN = register(ThermalGeneratorBlockEntity.class, "thermal_generator", TRContent.Machine.THERMAL_GENERATOR); public static final BlockEntityType INDUSTRIAL_CENTRIFUGE = register(IndustrialCentrifugeBlockEntity.class, "industrial_centrifuge", TRContent.Machine.INDUSTRIAL_CENTRIFUGE); public static final BlockEntityType ROLLING_MACHINE = register(RollingMachineBlockEntity.class, "rolling_machine", TRContent.Machine.ROLLING_MACHINE); diff --git a/src/main/java/techreborn/init/TRContent.java b/src/main/java/techreborn/init/TRContent.java index c636a8642..5bd84c0a7 100644 --- a/src/main/java/techreborn/init/TRContent.java +++ b/src/main/java/techreborn/init/TRContent.java @@ -39,6 +39,7 @@ import team.reborn.energy.EnergySide; import team.reborn.energy.EnergyTier; import techreborn.TechReborn; import techreborn.blockentity.machine.misc.ChargeOMatBlockEntity; +import techreborn.blockentity.machine.misc.DrainBlockEntity; import techreborn.blockentity.storage.fluid.CreativeQuantumTankBlockEntity; import techreborn.blockentity.storage.fluid.QuantumTankBlockEntity; import techreborn.blockentity.machine.tier3.IndustrialCentrifugeBlockEntity; @@ -500,6 +501,7 @@ public class TRContent { WATER_MILL(new GenericGeneratorBlock(null, WaterMillBlockEntity::new)), WIND_MILL(new GenericGeneratorBlock(null, WindMillBlockEntity::new)), + DRAIN(new GenericMachineBlock(null, DrainBlockEntity::new)), //TODO DEPRECATED DIGITAL_CHEST(new OldBlock(null, DigitalChestBlockEntity::new)), diff --git a/src/main/resources/assets/techreborn/blockstates/drain.json b/src/main/resources/assets/techreborn/blockstates/drain.json new file mode 100644 index 000000000..5dd20ced1 --- /dev/null +++ b/src/main/resources/assets/techreborn/blockstates/drain.json @@ -0,0 +1,5 @@ +{ + "variants": { + "": { "model": "techreborn:block/machines/tier0_machines/drain" } + } +} diff --git a/src/main/resources/assets/techreborn/lang/en_us.json b/src/main/resources/assets/techreborn/lang/en_us.json index b6c605847..921ab6e88 100644 --- a/src/main/resources/assets/techreborn/lang/en_us.json +++ b/src/main/resources/assets/techreborn/lang/en_us.json @@ -40,6 +40,7 @@ "block.techreborn.industrial_grinder": "Industrial Grinder", "block.techreborn.chunk_loader": "Industrial Chunkloader", "block.techreborn.diesel_generator": "Diesel Generator", + "block.techreborn.drain": "Drain", "block.techreborn.industrial_electrolyzer": "Industrial Electrolyzer", "block.techreborn.assembly_machine": "Assembling Machine", "block.techreborn.semi_fluid_generator": "Semi Fluid Generator", diff --git a/src/main/resources/assets/techreborn/models/block/machines/tier0_machines/drain.json b/src/main/resources/assets/techreborn/models/block/machines/tier0_machines/drain.json new file mode 100644 index 000000000..6490e112c --- /dev/null +++ b/src/main/resources/assets/techreborn/models/block/machines/tier0_machines/drain.json @@ -0,0 +1,8 @@ +{ + "parent": "minecraft:block/cube_bottom_top", + "textures": { + "top": "techreborn:block/machines/tier0_machines/fluid_drain_top", + "side": "techreborn:block/machines/tier0_machines/fluid_drain_side", + "bottom": "techreborn:block/machines/tier0_machines/fluid_drain_bottom" + } +} diff --git a/src/main/resources/assets/techreborn/models/item/drain.json b/src/main/resources/assets/techreborn/models/item/drain.json new file mode 100644 index 000000000..7f977ea81 --- /dev/null +++ b/src/main/resources/assets/techreborn/models/item/drain.json @@ -0,0 +1,4 @@ +{ + "parent": "techreborn:block/machines/tier0_machines/drain" +} + diff --git a/src/main/resources/assets/techreborn/textures/block/machines/tier0_machines/fluid_drain_bottom.png b/src/main/resources/assets/techreborn/textures/block/machines/tier0_machines/fluid_drain_bottom.png new file mode 100644 index 0000000000000000000000000000000000000000..75d10f991f07130bf3917e3c6cd5918dbc24a732 GIT binary patch literal 749 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0)k0IK~y+TEtE@d z6G0G!Yi4)t`0c<6DG4DbH~~TkA^rn_BLXQ13HY5HI3U4+hs22xIb0!jY_IKo4PTG5 zW6QhUGu2hqy>`d1-i8n=IhV?=rrO9SsRGMlKJ~VT~Vym zZtZB9FI1Mb%3>X3R;1W$l)%&hl5z%U&PA`d<#57X0#Lv@V{$(Et&4wuHACMX3!3Q!3jbHSnzQz=|3TL$l3^8Amd}VtzT-y+==U`|bl>F6IzR zRZ}@3R{>&xaVFpfV#BxQQ$`k>Wv>0hBaKEQ?OwaC{exRtUbn9eU9p%Qt}xNM0|RSFKxYvvM-wrusfwsEz|iKzCeZmT zGTE&1t?4$>wz(=8Pc-Kw=Ci4m04;c4OfR&YPL<~?t;yxfIRJU|#7s0v?)mHY;m*-f zd~uADwbdrBscNb_Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0=-E@K~y+TbyG`g z6HypFGjk`eNkp1zO&VWCtx}61iYO?!a^vrD>CTU&A219U0D?#& ziXu40qRx>rhOz$nTYCOf4X*2=P$)1BI?2vtbW+B)k*29`6tRI27J?u^!Ex|<{XNW> zT~u+m*Vo0W$g(W>o`-s42Xil%5ARG%H_PYp*sA{`B7;pmm{tUnnd zP%#)LOg6MQS;i9XaEO^p7vU3yju{N938US!*(^+x0e)0Wt)tFhFwi-QjDv%r=1axQ zfJGs9Q)e{YAZb2#R-eiOB&0?^VoLeDf}?l#gO!ysX)+H#`58v%l}+?)58r`gXgAPv3vS{IIcsh2>SW zx;;I8`bi0 zxPRxSUguA%jfIspoTTKTROC~ISSCo6o;1qTWChQj&!f?7p}V_>>i8IL%uJ)dw~x-> zT`VoHp;oPMHIrr&L_ozJK6#p+u2mt~Et}0DN@6s7y9oWEHq+=R1WvvHJ{(P|PX#tN zH;I6I04CaPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0xL;GK~y+TZBxsN z6G0R`)m7a+W+2f*^p;3lybC=_{0#2T_$k z7>3A;OuyUh7B+A&A3lDol1C4aWp%JIMgxeds$i{ETZ_n|&t|hh93SEP)iuoN=kw~} zy*v2y<5CV|7#nCnS(aKgu%@;pna?GO*kR;w^7IMLFR$U!JlB9IiZFcnLK$!|fQw*d z=bYO7_v+1CZ2$blF5SYFsGV)-Fc=Kb?RJqQi8{~cbF9~EtX3;s%jHtfjgUM(ZXpgM zIA$mK9goM#go|LmDysZz^hnbbc~*#sI}sStf*g<@9Y&+kzB)k$i^W1&@!PPVKW~Ce zTp_}s$Tjop;ZT3HS}o+FO_O*wo9$T;6jd6pwc#c$yo%HB_y5yiI-TmCIAp-KVrMm> zlTi`FYkxOsa9F+3z=bj!F4Vo_G!aJF-E<4YVReEn7Db^gIvQREhGRULO!gYEwZj`= zi?sD-qd z7I;m8u{zEibF$*_L@vPnySH)i>vx^tBzY|2?9gtv)rpz82-0S?24qVg3eERpCbKhr w&V0I7`m