From 285cb52894039fb842225d94054fd5ec7170afd8 Mon Sep 17 00:00:00 2001 From: simibubi <31564874+simibubi@users.noreply.github.com> Date: Mon, 8 Jun 2020 18:40:21 +0200 Subject: [PATCH] Bug and Lang Fixes - Patched some localization gaps from the registry wipe - TE's with an ItemStackHandler capability are now viable for mounted storage - Fixed pulley placing down ropes when destroyed while moving - Fixed inconsistency with glue removal and placement --- src/generated/resources/.cache/cache | 12 +++---- .../resources/assets/create/lang/en_us.json | 22 ++++++------- .../{drill.json => mechanical_drill.json} | 4 +-- .../{saw.json => mechanical_saw.json} | 4 +-- .../{speed_gauge.json => speedometer.json} | 4 +-- .../{stress_gauge.json => stressometer.json} | 4 +-- ...mmetry_wand.json => wand_of_symmetry.json} | 4 +-- .../contraptions/base/KineticTileEntity.java | 2 +- .../structureMovement/MountedStorage.java | 24 ++++++++++---- .../pulley/PulleyTileEntity.java | 32 ++++++++++--------- .../relays/gauge/SpeedGaugeTileEntity.java | 4 +-- .../relays/gauge/StressGaugeTileEntity.java | 6 ++-- .../curiosities/tools/ExtendoGripItem.java | 2 ++ .../advancement/AllAdvancements.java | 20 ++++++------ .../assets/create/lang/default/tooltips.json | 24 +++++++------- 15 files changed, 92 insertions(+), 76 deletions(-) rename src/generated/resources/data/create/advancements/{drill.json => mechanical_drill.json} (83%) rename src/generated/resources/data/create/advancements/{saw.json => mechanical_saw.json} (84%) rename src/generated/resources/data/create/advancements/{speed_gauge.json => speedometer.json} (84%) rename src/generated/resources/data/create/advancements/{stress_gauge.json => stressometer.json} (84%) rename src/generated/resources/data/create/advancements/{symmetry_wand.json => wand_of_symmetry.json} (81%) diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 2642168e8..e84ceab3e 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -325,7 +325,7 @@ c77b46d8b459e5c7cc495393546f3fcca8a1fa1d assets\create\blockstates\weathered_lim 7f39521b211441f5c3e06d60c5978cebe16cacfb assets\create\blockstates\zinc_block.json b7181bcd8182b2f17088e5aa881f374c9c65470c assets\create\blockstates\zinc_ore.json 4311c87a21caccb97b693bf914c8ce79de3f814b assets\create\lang\en_ud.json -67a3e70e553c0b079967fd1142049641a3d3aa3f assets\create\lang\en_us.json +c3dad9e33623a13cadd63f53e88acf316e9c4ba6 assets\create\lang\en_us.json 846200eb548d3bfa2e77b41039de159b4b6cfb45 assets\create\models\block\acacia_window.json 1930fa3a3c98d53dd19e4ee7f55bc27fd47aa281 assets\create\models\block\acacia_window_pane_noside.json 1763ea2c9b981d187f5031ba608f3d5d3be3986a assets\create\models\block\acacia_window_pane_noside_alt.json @@ -1270,7 +1270,6 @@ e4225555a12384f2607d5ac65e790fb774beecc8 data\create\advancements\crafter.json d1fbc14303c7327e9fc02e505e7e434591b7f785 data\create\advancements\crushing_wheel.json 0761f3e12d587fec7a2ddf326b43969d262771e3 data\create\advancements\deforester.json e4e3c1bd7ecf501b40cffc26d8ad145ab4e89118 data\create\advancements\deployer.json -7280e15d67926f5911b6d75b62369d86fc98af27 data\create\advancements\drill.json 77edd30e3d60b4d492662c673387910f66b5a276 data\create\advancements\dual_extendo_grip.json 04eaf829696d735244c0e4798dd3bdeb26e13a32 data\create\advancements\electron_tube.json 31c9541b0be08cde351b9a07696bd675514bbcb8 data\create\advancements\extendo_grip.json @@ -1278,6 +1277,8 @@ e4e3c1bd7ecf501b40cffc26d8ad145ab4e89118 data\create\advancements\deployer.json 62f3610188f7dbd3900ab305edc2d06282705a38 data\create\advancements\goggles.json 7e12b7ccb198ef0db7964b8cbef152d8347e333c data\create\advancements\its_alive.json 3d0fc63191ef507a018ef996ebf9406a523f3976 data\create\advancements\lava_wheel.json +786c2058805ceca3cd3970cc6e918560b54747f5 data\create\advancements\mechanical_drill.json +41444ae151ce90d2d68dcda0ed3565f98509c594 data\create\advancements\mechanical_saw.json 9c7f0c2484a84ccf42166704475fafcb1f232ce6 data\create\advancements\millstone.json 704c7fc0ed357b1a116ffdc0b6c64fe64e337a5a data\create\advancements\mixer.json a135eec618e448f440d9f42cc7a3e6c63fc45a71 data\create\advancements\overstressed.json @@ -1661,14 +1662,13 @@ e548127075559307b767b802f4809ed52eedd543 data\create\advancements\recipes\create 9790a16fd56e47cb5abbfad4062672303c224d9f data\create\advancements\recipes\create.palettes\weathered_limestone_pillar_from_weathered_limestone_stonecutting.json e0b9edc5e59647e7dd99be17369b263dadf407d4 data\create\advancements\refined_radiance.json fc12b590ab8f5ac901db21c67ba3850f157e1421 data\create\advancements\root.json -48f5e6b05378ef3851892f6df7d706b77255f068 data\create\advancements\saw.json 8529fc7919b6a3240ede2bb8043906bb72fb7f9e data\create\advancements\shadow_end.json c1f162e773518f6b1481221e3e63f9ba33fed647 data\create\advancements\shadow_steel.json 290e1248254abcfd7f1e73906be25662331378ec data\create\advancements\shifting_gears.json -7eac9a5f9f96087a74cab1576c59b1b4a9f99ffe data\create\advancements\speed_gauge.json -b457a54be7202999be24bb6bcce534f310489412 data\create\advancements\stress_gauge.json -1d7fb82b7c05914b399167dc58b84da10f1a5ae3 data\create\advancements\symmetry_wand.json +fedeed4c9be574d7c5ddd68b4ab74588f345d3c6 data\create\advancements\speedometer.json +44910ea5533c1236fbb185587a58b299a30b0c66 data\create\advancements\stressometer.json 6b815a2e05e3cd09354e05578515a0060675b67a data\create\advancements\upgraded_zapper.json +fe37896bb804d2be9b8abf3744c5b9b7bc1c086e data\create\advancements\wand_of_symmetry.json 50935316d27336ef0858d5a7c5ccc563d288a494 data\create\advancements\water_wheel.json 4513d0c4dd40c948028a3fc8e6f3b4d0356c0a90 data\create\advancements\wrench.json 33c1224f4f6a7bb0a3439eb0f8b8af9341b62574 data\create\advancements\zapper.json diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index c8e2ea581..7e16f85d7 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -1138,31 +1138,31 @@ "block.create.radial_chassis.tooltip.control1": "When R-Clicked with Slime Ball", "block.create.radial_chassis.tooltip.action1": "Makes the clicked face _Sticky_. When Chassis move, all designated blocks attached to the sticky side are moved with it.", - "block.create.mechanical_drill.tooltip": "MECHANICAL mechanical_drill", + "block.create.mechanical_drill.tooltip": "MECHANICAL DRILL", "block.create.mechanical_drill.tooltip.summary": "A mechanical device suitable for _breaking_ _blocks_. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_drill.tooltip.condition1": "When Rotated", "block.create.mechanical_drill.tooltip.behaviour1": "Acts as a _stationary_ Block Breaker. Also _hurts_ _entities_ in its effective area.", "block.create.mechanical_drill.tooltip.condition2": "While Moving", - "block.create.mechanical_drill.tooltip.behaviour2": "Breaks Blocks with which the mechanical_drill collides.", + "block.create.mechanical_drill.tooltip.behaviour2": "Breaks Blocks with which the drill collides.", - "block.create.mechanical_harvester.tooltip": "MECHANICAL mechanical_harvester", + "block.create.mechanical_harvester.tooltip": "MECHANICAL HARVESTER", "block.create.mechanical_harvester.tooltip.summary": "A mechanical plant cutter suitable for medium scale crop automation. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_harvester.tooltip.condition1": "While Moving", "block.create.mechanical_harvester.tooltip.behaviour1": "_Harvests_ all _mature_ _crops_ which which the blade collides and reset them to their initial growth state.", - "block.create.mechanical_plough.tooltip": "MECHANICAL mechanical_plough", - "block.create.mechanical_plough.tooltip.summary": "A mechanical mechanical_plough has a variety of uses. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", + "block.create.mechanical_plough.tooltip": "MECHANICAL PLOUGH", + "block.create.mechanical_plough.tooltip.summary": "A mechanical plough has a variety of uses. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_plough.tooltip.condition1": "While Moving", "block.create.mechanical_plough.tooltip.behaviour1": "_Breaks_ _blocks_ which _cannot_ _be_ _collided_ with, such as torches, tracks or snow layers. _Applies_ its _motion_ to _entities_ without hurting them. _Tills_ _soil_ _blocks_ as though a Hoe would be used on them.", - "block.create.mechanical_saw.tooltip": "MECHANICAL mechanical_saw", + "block.create.mechanical_saw.tooltip": "MECHANICAL SAW", "block.create.mechanical_saw.tooltip.summary": "Suitable for _cutting_ _trees_ effectively and for _cutting_ _blocks_ into their carpentered counterparts. It is movable using _Mechanical_ _Pistons_ or _Bearings_.", "block.create.mechanical_saw.tooltip.condition1": "When facing up", - "block.create.mechanical_saw.tooltip.behaviour1": "Applies _mechanical_sawing_ and _Stonecutting_ _Recipes_ to items dropped onto or inserted into it. When multiple outputs are possible, it cycles through them unless a _filter_ is assigned.", + "block.create.mechanical_saw.tooltip.behaviour1": "Applies _Sawing_ and _Stonecutting_ _Recipes_ to items dropped onto or inserted into it. When multiple outputs are possible, it cycles through them unless a _filter_ is assigned.", "block.create.mechanical_saw.tooltip.condition2": "When facing horizontally", - "block.create.mechanical_saw.tooltip.behaviour2": "_Breaks_ _logs_ in front of it. If the log supported a tree on its own, the _tree_ _will_ _collapse_ away from the mechanical_saw.", + "block.create.mechanical_saw.tooltip.behaviour2": "_Breaks_ _logs_ in front of it. If the log supported a tree on its own, the _tree_ _will_ _collapse_ away from the saw.", "block.create.mechanical_saw.tooltip.condition3": "While Moving", - "block.create.mechanical_saw.tooltip.behaviour3": "_Cuts_ all _Trees_ with which the mechanical_saw collides.", + "block.create.mechanical_saw.tooltip.behaviour3": "_Cuts_ all _Trees_ with which the saw collides.", "block.create.stockpile_switch.tooltip": "stockpile_switch", "block.create.stockpile_switch.tooltip.summary": "Toggles a Redstone signal based on the _Storage_ _Space_ in the attached Container.", @@ -1189,10 +1189,10 @@ "block.create.redstone_contact.tooltip": "REDSTONE CONTACT", "block.create.redstone_contact.tooltip.summary": "Only emits redstone power in pairs. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", - "block.create.redstone_contact.tooltip.condition1": "When facing other redstone_contact", + "block.create.redstone_contact.tooltip.condition1": "When facing other Contact", "block.create.redstone_contact.tooltip.behaviour1": "Provides a _Redstone_ _Signal_.", "block.create.redstone_contact.tooltip.condition2": "While Moving", - "block.create.redstone_contact.tooltip.behaviour2": "Triggers all stationary redstone_contacts it passes.", + "block.create.redstone_contact.tooltip.behaviour2": "Triggers all stationary contacts it passes.", "block.create.adjustable_crate.tooltip": "ADJUSTABLE CRATE", "block.create.adjustable_crate.tooltip.summary": "This _Storage_ _Container_ allows Manual control over its capacity. It can hold up to _16_ _Stacks_ of any Item. Supports _Redstone_ _Comparators_.", diff --git a/src/generated/resources/data/create/advancements/drill.json b/src/generated/resources/data/create/advancements/mechanical_drill.json similarity index 83% rename from src/generated/resources/data/create/advancements/drill.json rename to src/generated/resources/data/create/advancements/mechanical_drill.json index a2a642439..141ef5f00 100644 --- a/src/generated/resources/data/create/advancements/drill.json +++ b/src/generated/resources/data/create/advancements/mechanical_drill.json @@ -5,10 +5,10 @@ "item": "create:mechanical_drill" }, "title": { - "translate": "advancement.create.drill" + "translate": "advancement.create.mechanical_drill" }, "description": { - "translate": "advancement.create.drill.desc" + "translate": "advancement.create.mechanical_drill.desc" }, "frame": "task", "show_toast": true, diff --git a/src/generated/resources/data/create/advancements/saw.json b/src/generated/resources/data/create/advancements/mechanical_saw.json similarity index 84% rename from src/generated/resources/data/create/advancements/saw.json rename to src/generated/resources/data/create/advancements/mechanical_saw.json index a4f2210f2..bd328dbe4 100644 --- a/src/generated/resources/data/create/advancements/saw.json +++ b/src/generated/resources/data/create/advancements/mechanical_saw.json @@ -5,10 +5,10 @@ "item": "create:mechanical_saw" }, "title": { - "translate": "advancement.create.saw" + "translate": "advancement.create.mechanical_saw" }, "description": { - "translate": "advancement.create.saw.desc" + "translate": "advancement.create.mechanical_saw.desc" }, "frame": "task", "show_toast": true, diff --git a/src/generated/resources/data/create/advancements/speed_gauge.json b/src/generated/resources/data/create/advancements/speedometer.json similarity index 84% rename from src/generated/resources/data/create/advancements/speed_gauge.json rename to src/generated/resources/data/create/advancements/speedometer.json index 735db4553..46f4cf5cb 100644 --- a/src/generated/resources/data/create/advancements/speed_gauge.json +++ b/src/generated/resources/data/create/advancements/speedometer.json @@ -5,10 +5,10 @@ "item": "create:speedometer" }, "title": { - "translate": "advancement.create.speed_gauge" + "translate": "advancement.create.speedometer" }, "description": { - "translate": "advancement.create.speed_gauge.desc" + "translate": "advancement.create.speedometer.desc" }, "frame": "task", "show_toast": true, diff --git a/src/generated/resources/data/create/advancements/stress_gauge.json b/src/generated/resources/data/create/advancements/stressometer.json similarity index 84% rename from src/generated/resources/data/create/advancements/stress_gauge.json rename to src/generated/resources/data/create/advancements/stressometer.json index 54c093c55..1c80ebc5b 100644 --- a/src/generated/resources/data/create/advancements/stress_gauge.json +++ b/src/generated/resources/data/create/advancements/stressometer.json @@ -5,10 +5,10 @@ "item": "create:stressometer" }, "title": { - "translate": "advancement.create.stress_gauge" + "translate": "advancement.create.stressometer" }, "description": { - "translate": "advancement.create.stress_gauge.desc" + "translate": "advancement.create.stressometer.desc" }, "frame": "task", "show_toast": true, diff --git a/src/generated/resources/data/create/advancements/symmetry_wand.json b/src/generated/resources/data/create/advancements/wand_of_symmetry.json similarity index 81% rename from src/generated/resources/data/create/advancements/symmetry_wand.json rename to src/generated/resources/data/create/advancements/wand_of_symmetry.json index 8b3b3633b..6f5e4c536 100644 --- a/src/generated/resources/data/create/advancements/symmetry_wand.json +++ b/src/generated/resources/data/create/advancements/wand_of_symmetry.json @@ -5,10 +5,10 @@ "item": "create:wand_of_symmetry" }, "title": { - "translate": "advancement.create.symmetry_wand" + "translate": "advancement.create.wand_of_symmetry" }, "description": { - "translate": "advancement.create.symmetry_wand.desc" + "translate": "advancement.create.wand_of_symmetry.desc" }, "frame": "task", "show_toast": true, diff --git a/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java index 0cb19034e..9e22ee09d 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java @@ -381,7 +381,7 @@ public abstract class KineticTileEntity extends SmartTileEntity boolean notFastEnough = !isSpeedRequirementFulfilled() && getSpeed() != 0; if (overStressed && AllConfigs.CLIENT.enableOverstressedTooltip.get()) { - tooltip.add(spacing + GOLD + Lang.translate("gui.stress_gauge.overstressed")); + tooltip.add(spacing + GOLD + Lang.translate("gui.stressometer.overstressed")); String hint = Lang.translate("gui.contraptions.network_overstressed", I18n.format(getBlockState().getBlock() .getTranslationKey())); List cutString = TooltipHelper.cutString(spacing + hint, GRAY, TextFormatting.WHITE); diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/MountedStorage.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/MountedStorage.java index d1922b240..81a43c60e 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/MountedStorage.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/MountedStorage.java @@ -12,6 +12,7 @@ import net.minecraft.tileentity.ChestTileEntity; import net.minecraft.tileentity.ShulkerBoxTileEntity; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityType; +import net.minecraftforge.common.util.LazyOptional; import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.IItemHandlerModifiable; @@ -37,19 +38,26 @@ public class MountedStorage { // Split double chests if (te.getType() == TileEntityType.CHEST || te.getType() == TileEntityType.TRAPPED_CHEST) { - if (te.getBlockState().get(ChestBlock.TYPE) != ChestType.SINGLE) - te.getWorld().setBlockState(te.getPos(), te.getBlockState().with(ChestBlock.TYPE, ChestType.SINGLE)); + if (te.getBlockState() + .get(ChestBlock.TYPE) != ChestType.SINGLE) + te.getWorld() + .setBlockState(te.getPos(), te.getBlockState() + .with(ChestBlock.TYPE, ChestType.SINGLE)); te.updateContainingBlockInfo(); } // Split double flexcrates if (AllTileEntities.ADJUSTABLE_CRATE.is(te)) { - if (te.getBlockState().get(AdjustableCrateBlock.DOUBLE)) - te.getWorld().setBlockState(te.getPos(), te.getBlockState().with(AdjustableCrateBlock.DOUBLE, false)); + if (te.getBlockState() + .get(AdjustableCrateBlock.DOUBLE)) + te.getWorld() + .setBlockState(te.getPos(), te.getBlockState() + .with(AdjustableCrateBlock.DOUBLE, false)); te.updateContainingBlockInfo(); } - IItemHandler teHandler = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY).orElse(dummyHandler); + IItemHandler teHandler = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) + .orElse(dummyHandler); if (teHandler == dummyHandler) return; @@ -82,7 +90,8 @@ public class MountedStorage { } public void fill(TileEntity te) { - IItemHandler teHandler = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY).orElse(dummyHandler); + IItemHandler teHandler = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY) + .orElse(dummyHandler); if (teHandler != dummyHandler && teHandler instanceof IItemHandlerModifiable) { IItemHandlerModifiable inv = (IItemHandlerModifiable) teHandler; for (int slot = 0; slot < Math.min(inv.getSlots(), handler.getSlots()); slot++) @@ -113,6 +122,9 @@ public class MountedStorage { return true; if (te instanceof BarrelTileEntity) return true; + LazyOptional capability = te.getCapability(CapabilityItemHandler.ITEM_HANDLER_CAPABILITY); + if (capability.isPresent() && capability.orElse(null) instanceof ItemStackHandler) + return true; return false; } diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/pulley/PulleyTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/pulley/PulleyTileEntity.java index 9269efb7c..3642285e8 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/pulley/PulleyTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/pulley/PulleyTileEntity.java @@ -92,23 +92,25 @@ public class PulleyTileEntity extends LinearActuatorTileEntity { applyContraptionPosition(); if (!world.isRemote) { - if (offset > 0) { - BlockPos magnetPos = pos.down((int) offset); - world.destroyBlock(magnetPos, world.getBlockState(magnetPos) - .getCollisionShape(world, magnetPos) - .isEmpty()); - world.setBlockState(magnetPos, AllBlocks.PULLEY_MAGNET.getDefaultState(), 66); + if (!removed) { + if (offset > 0) { + BlockPos magnetPos = pos.down((int) offset); + world.destroyBlock(magnetPos, world.getBlockState(magnetPos) + .getCollisionShape(world, magnetPos) + .isEmpty()); + world.setBlockState(magnetPos, AllBlocks.PULLEY_MAGNET.getDefaultState(), 66); + } + + for (int i = 1; i <= ((int) offset) - 1; i++) { + BlockPos ropePos = pos.down(i); + world.destroyBlock(ropePos, world.getBlockState(ropePos) + .getCollisionShape(world, ropePos) + .isEmpty()); + } + for (int i = 1; i <= ((int) offset) - 1; i++) + world.setBlockState(pos.down(i), AllBlocks.ROPE.getDefaultState(), 66); } - for (int i = 1; i <= ((int) offset) - 1; i++) { - BlockPos ropePos = pos.down(i); - world.destroyBlock(ropePos, world.getBlockState(ropePos) - .getCollisionShape(world, ropePos) - .isEmpty()); - } - for (int i = 1; i <= ((int) offset) - 1; i++) - world.setBlockState(pos.down(i), AllBlocks.ROPE.getDefaultState(), 66); - if (movedContraption != null) movedContraption.disassemble(); } diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/SpeedGaugeTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/SpeedGaugeTileEntity.java index 1716a291a..67af6486b 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/SpeedGaugeTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/SpeedGaugeTileEntity.java @@ -49,10 +49,10 @@ public class SpeedGaugeTileEntity extends GaugeTileEntity{ public boolean addToGoggleTooltip(List tooltip, boolean isPlayerSneaking) { super.addToGoggleTooltip(tooltip, isPlayerSneaking); - tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.speed_gauge.title")); + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.speedometer.title")); tooltip.add(spacing + SpeedLevel.getFormattedSpeedText(speed, overStressed)); if (overStressed) - tooltip.add(spacing + TextFormatting.DARK_RED + Lang.translate("gui.stress_gauge.overstressed")); + tooltip.add(spacing + TextFormatting.DARK_RED + Lang.translate("gui.stressometer.overstressed")); return true; } diff --git a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/StressGaugeTileEntity.java b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/StressGaugeTileEntity.java index 66dcbb476..fdd3b864c 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/StressGaugeTileEntity.java +++ b/src/main/java/com/simibubi/create/content/contraptions/relays/gauge/StressGaugeTileEntity.java @@ -65,15 +65,15 @@ public class StressGaugeTileEntity extends GaugeTileEntity { double capacity = getNetworkCapacity(); double stressFraction = getNetworkStress() / (capacity == 0 ? 1 : capacity); - tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stress_gauge.title")); + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stressometer.title")); if (getTheoreticalSpeed() == 0) tooltip.add(TextFormatting.DARK_GRAY + ItemDescription.makeProgressBar(3, -1) - + Lang.translate("gui.stress_gauge.no_rotation")); + + Lang.translate("gui.stressometer.no_rotation")); else { tooltip.add(spacing + StressImpact.getFormattedStressText(stressFraction)); - tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stress_gauge.capacity")); + tooltip.add(spacing + TextFormatting.GRAY + Lang.translate("gui.stressometer.capacity")); double remainingCapacity = capacity - getNetworkStress(); double remainingCapacityAtBase = remainingCapacity / Math.abs(getTheoreticalSpeed()); diff --git a/src/main/java/com/simibubi/create/content/curiosities/tools/ExtendoGripItem.java b/src/main/java/com/simibubi/create/content/curiosities/tools/ExtendoGripItem.java index 3b6f84580..324390eba 100644 --- a/src/main/java/com/simibubi/create/content/curiosities/tools/ExtendoGripItem.java +++ b/src/main/java/com/simibubi/create/content/curiosities/tools/ExtendoGripItem.java @@ -117,6 +117,8 @@ public class ExtendoGripItem extends Item { ClientPlayerEntity player = mc.player; if (mc.world == null || player == null) return; + if (!isHoldingExtendoGrip(player)) + return; // Modified version of GameRenderer#getMouseOver double d0 = player.getAttribute(PlayerEntity.REACH_DISTANCE) diff --git a/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java b/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java index ce746ae89..8652270a3 100644 --- a/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java +++ b/src/main/java/com/simibubi/create/foundation/advancement/AllAdvancements.java @@ -81,8 +81,8 @@ public class AllAdvancements implements IDataProvider { andesiteExpertLane(t, andesite_casing); Advancement drill = - kinecticAdvancement("drill", AllBlocks.MECHANICAL_DRILL.get(), TaskType.NORMAL).withParent(andesite_casing) - .register(t, id + ":drill"); + kinecticAdvancement("mechanical_drill", AllBlocks.MECHANICAL_DRILL.get(), TaskType.NORMAL).withParent(andesite_casing) + .register(t, id + ":mechanical_drill"); Advancement press = advancement("press", AllBlocks.MECHANICAL_PRESS.get(), TaskType.MILESTONE).withParent(andesite_casing) @@ -98,8 +98,8 @@ public class AllAdvancements implements IDataProvider { itemAdvancement("electron_tube", AllItems.ELECTRON_TUBE, TaskType.NORMAL).withParent(rose_quartz) .register(t, id + ":electron_tube"); - Advancement saw = kinecticAdvancement("saw", AllBlocks.MECHANICAL_SAW.get(), TaskType.NORMAL).withParent(press) - .register(t, id + ":saw"); + Advancement saw = kinecticAdvancement("mechanical_saw", AllBlocks.MECHANICAL_SAW.get(), TaskType.NORMAL).withParent(press) + .register(t, id + ":mechanical_saw"); Advancement basin = advancement("basin", AllBlocks.BASIN.get(), TaskType.NORMAL).withParent(press) .withCriterion("0", placeBlock(AllBlocks.BASIN.get())) @@ -143,12 +143,12 @@ public class AllAdvancements implements IDataProvider { .register(t, id + ":goggles"); Advancement speed_gauge = - kinecticAdvancement("speed_gauge", AllBlocks.SPEEDOMETER.get(), TaskType.NORMAL).withParent(goggles) - .register(t, id + ":speed_gauge"); + kinecticAdvancement("speedometer", AllBlocks.SPEEDOMETER.get(), TaskType.NORMAL).withParent(goggles) + .register(t, id + ":speedometer"); Advancement stress_gauge = - kinecticAdvancement("stress_gauge", AllBlocks.STRESSOMETER.get(), TaskType.NORMAL).withParent(goggles) - .register(t, id + ":stress_gauge"); + kinecticAdvancement("stressometer", AllBlocks.STRESSOMETER.get(), TaskType.NORMAL).withParent(goggles) + .register(t, id + ":stressometer"); Advancement shifting_gears = advancement("shifting_gears", AllBlocks.LARGE_COGWHEEL.get(), TaskType.NORMAL).withParent(its_alive) @@ -239,8 +239,8 @@ public class AllAdvancements implements IDataProvider { .register(t, id + ":upgraded_zapper"); Advancement symmetry_wand = - itemAdvancement("symmetry_wand", AllItems.WAND_OF_SYMMETRY, TaskType.NORMAL).withParent(refined_radiance) - .register(t, id + ":symmetry_wand"); + itemAdvancement("wand_of_symmetry", AllItems.WAND_OF_SYMMETRY, TaskType.NORMAL).withParent(refined_radiance) + .register(t, id + ":wand_of_symmetry"); Advancement shadow_end = deadEnd().withParent(shadow_steel) .withCriterion("0", itemGathered(AllItems.SHADOW_STEEL.get())) diff --git a/src/main/resources/assets/create/lang/default/tooltips.json b/src/main/resources/assets/create/lang/default/tooltips.json index b6ab00759..d04816b05 100644 --- a/src/main/resources/assets/create/lang/default/tooltips.json +++ b/src/main/resources/assets/create/lang/default/tooltips.json @@ -236,7 +236,7 @@ "block.create.furnace_engine.tooltip.behaviour1": "_Starts_ _powering_ a _Flywheel_ placed in front of it (1m apart). Use a Blast Furnace for higher speeds.", "block.create.flywheel.tooltip": "FLYWHEEL", - "block.create.flywheel.tooltip.summary": "A large metal wheel to _harness_ _and_ _stabilize_ generated force by an _attached_ _Engine_. Flywheels connect to engines if they are _1m_ _apart_ and at a _90°_ _Angle_ from each other.", + "block.create.flywheel.tooltip.summary": "A large metal wheel to _harness_ _and_ _stabilize_ generated force by an _attached_ _Engine_. Flywheels connect to engines if they are _1m_ _apart_ and at a _90\u00B0_ _Angle_ from each other.", "block.create.flywheel.tooltip.condition1": "When Attached to Running Engine", "block.create.flywheel.tooltip.behaviour1": "Provides _Rotational_ _Force_ to a connected contraption based on the generator's strength and speed.", @@ -314,31 +314,31 @@ "block.create.radial_chassis.tooltip.control1": "When R-Clicked with Slime Ball", "block.create.radial_chassis.tooltip.action1": "Makes the clicked face _Sticky_. When Chassis move, all designated blocks attached to the sticky side are moved with it.", - "block.create.mechanical_drill.tooltip": "MECHANICAL mechanical_drill", + "block.create.mechanical_drill.tooltip": "MECHANICAL DRILL", "block.create.mechanical_drill.tooltip.summary": "A mechanical device suitable for _breaking_ _blocks_. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_drill.tooltip.condition1": "When Rotated", "block.create.mechanical_drill.tooltip.behaviour1": "Acts as a _stationary_ Block Breaker. Also _hurts_ _entities_ in its effective area.", "block.create.mechanical_drill.tooltip.condition2": "While Moving", - "block.create.mechanical_drill.tooltip.behaviour2": "Breaks Blocks with which the mechanical_drill collides.", + "block.create.mechanical_drill.tooltip.behaviour2": "Breaks Blocks with which the drill collides.", - "block.create.mechanical_harvester.tooltip": "MECHANICAL mechanical_harvester", + "block.create.mechanical_harvester.tooltip": "MECHANICAL HARVESTER", "block.create.mechanical_harvester.tooltip.summary": "A mechanical plant cutter suitable for medium scale crop automation. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_harvester.tooltip.condition1": "While Moving", "block.create.mechanical_harvester.tooltip.behaviour1": "_Harvests_ all _mature_ _crops_ which which the blade collides and reset them to their initial growth state.", - "block.create.mechanical_plough.tooltip": "MECHANICAL mechanical_plough", - "block.create.mechanical_plough.tooltip.summary": "A mechanical mechanical_plough has a variety of uses. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", + "block.create.mechanical_plough.tooltip": "MECHANICAL PLOUGH", + "block.create.mechanical_plough.tooltip.summary": "A mechanical plough has a variety of uses. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", "block.create.mechanical_plough.tooltip.condition1": "While Moving", "block.create.mechanical_plough.tooltip.behaviour1": "_Breaks_ _blocks_ which _cannot_ _be_ _collided_ with, such as torches, tracks or snow layers. _Applies_ its _motion_ to _entities_ without hurting them. _Tills_ _soil_ _blocks_ as though a Hoe would be used on them.", - "block.create.mechanical_saw.tooltip": "MECHANICAL mechanical_saw", + "block.create.mechanical_saw.tooltip": "MECHANICAL SAW", "block.create.mechanical_saw.tooltip.summary": "Suitable for _cutting_ _trees_ effectively and for _cutting_ _blocks_ into their carpentered counterparts. It is movable using _Mechanical_ _Pistons_ or _Bearings_.", "block.create.mechanical_saw.tooltip.condition1": "When facing up", - "block.create.mechanical_saw.tooltip.behaviour1": "Applies _mechanical_sawing_ and _Stonecutting_ _Recipes_ to items dropped onto or inserted into it. When multiple outputs are possible, it cycles through them unless a _filter_ is assigned.", + "block.create.mechanical_saw.tooltip.behaviour1": "Applies _Sawing_ and _Stonecutting_ _Recipes_ to items dropped onto or inserted into it. When multiple outputs are possible, it cycles through them unless a _filter_ is assigned.", "block.create.mechanical_saw.tooltip.condition2": "When facing horizontally", - "block.create.mechanical_saw.tooltip.behaviour2": "_Breaks_ _logs_ in front of it. If the log supported a tree on its own, the _tree_ _will_ _collapse_ away from the mechanical_saw.", + "block.create.mechanical_saw.tooltip.behaviour2": "_Breaks_ _logs_ in front of it. If the log supported a tree on its own, the _tree_ _will_ _collapse_ away from the saw.", "block.create.mechanical_saw.tooltip.condition3": "While Moving", - "block.create.mechanical_saw.tooltip.behaviour3": "_Cuts_ all _Trees_ with which the mechanical_saw collides.", + "block.create.mechanical_saw.tooltip.behaviour3": "_Cuts_ all _Trees_ with which the saw collides.", "block.create.stockpile_switch.tooltip": "stockpile_switch", "block.create.stockpile_switch.tooltip.summary": "Toggles a Redstone signal based on the _Storage_ _Space_ in the attached Container.", @@ -365,10 +365,10 @@ "block.create.redstone_contact.tooltip": "REDSTONE CONTACT", "block.create.redstone_contact.tooltip.summary": "Only emits redstone power in pairs. It is movable with _Mechanical_ _Pistons_, _Bearings_ or other controllers.", - "block.create.redstone_contact.tooltip.condition1": "When facing other redstone_contact", + "block.create.redstone_contact.tooltip.condition1": "When facing other Contact", "block.create.redstone_contact.tooltip.behaviour1": "Provides a _Redstone_ _Signal_.", "block.create.redstone_contact.tooltip.condition2": "While Moving", - "block.create.redstone_contact.tooltip.behaviour2": "Triggers all stationary redstone_contacts it passes.", + "block.create.redstone_contact.tooltip.behaviour2": "Triggers all stationary contacts it passes.", "block.create.adjustable_crate.tooltip": "ADJUSTABLE CRATE", "block.create.adjustable_crate.tooltip.summary": "This _Storage_ _Container_ allows Manual control over its capacity. It can hold up to _16_ _Stacks_ of any Item. Supports _Redstone_ _Comparators_.",