Skip to content

Commit 4e8befb

Browse files
committed
Update JEI, add JEI info for PSD and Machines
1 parent 0b2728d commit 4e8befb

File tree

5 files changed

+46
-16
lines changed

5 files changed

+46
-16
lines changed

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ mod_id=compactmachines
1111
mod_version=4.0.0-beta.2
1212

1313
# Dependencies and Libs
14-
jei_mc_version=1.16.4
15-
jei_version=7.6.1.71
16-
top_version=1.16-3.0.7-13
14+
jei_mc_version=1.16.5
15+
jei_version=7.7.1.110
16+
top_version=1.16-3.1.4-22
1717

1818
# Curseforge
1919
cf_project=224218
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package dev.compactmods.machines.api.core;
2+
3+
import com.mojang.datafixers.kinds.Const;
4+
import net.minecraft.util.ResourceLocation;
5+
6+
public class JeiInfo {
7+
public static final ResourceLocation MACHINE = new ResourceLocation(Constants.MOD_ID, "machines");
8+
9+
public static final ResourceLocation SHRINKING_DEVICE = new ResourceLocation(Constants.MOD_ID, "shrinking_device");
10+
}

src/main/java/dev/compactmods/machines/compat/jei/CompactMachinesJeiPlugin.java

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,21 @@
11
package dev.compactmods.machines.compat.jei;
22

3+
import java.util.Arrays;
34
import dev.compactmods.machines.CompactMachines;
5+
import dev.compactmods.machines.api.core.JeiInfo;
6+
import dev.compactmods.machines.api.core.Messages;
7+
import dev.compactmods.machines.block.BlockCompactMachine;
48
import dev.compactmods.machines.core.Registration;
9+
import dev.compactmods.machines.reference.EnumMachineSize;
10+
import dev.compactmods.machines.util.TranslationUtil;
511
import mezz.jei.api.IModPlugin;
612
import mezz.jei.api.JeiPlugin;
13+
import mezz.jei.api.constants.VanillaTypes;
14+
import mezz.jei.api.ingredients.IIngredientType;
15+
import mezz.jei.api.registration.IRecipeRegistration;
716
import mezz.jei.api.registration.ISubtypeRegistration;
817
import mezz.jei.api.runtime.IJeiRuntime;
18+
import net.minecraft.item.ItemStack;
919
import net.minecraft.util.ResourceLocation;
1020

1121
@JeiPlugin
@@ -15,6 +25,22 @@ public ResourceLocation getPluginUid() {
1525
return new ResourceLocation(CompactMachines.MOD_ID, "main");
1626
}
1727

28+
@Override
29+
public void registerRecipes(IRecipeRegistration registration) {
30+
Arrays.stream(EnumMachineSize.values())
31+
.map(BlockCompactMachine::getItemBySize)
32+
.forEach(i -> registration.addIngredientInfo(
33+
new ItemStack(i),
34+
VanillaTypes.ITEM,
35+
TranslationUtil.jeiInfo(JeiInfo.MACHINE)));
36+
37+
38+
registration.addIngredientInfo(
39+
new ItemStack(Registration.PERSONAL_SHRINKING_DEVICE.get()),
40+
VanillaTypes.ITEM,
41+
TranslationUtil.jeiInfo(JeiInfo.SHRINKING_DEVICE));
42+
}
43+
1844
@Override
1945
public void registerItemSubtypes(ISubtypeRegistration registration) {
2046
registration.useNbtForSubtypes(Registration.ITEM_TUNNEL.get());

src/main/java/dev/compactmods/machines/util/TranslationUtil.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,4 +45,8 @@ public static TranslationTextComponent advancementTitle(ResourceLocation advance
4545
public static TranslationTextComponent advancementDesc(ResourceLocation advancement) {
4646
return new TranslationTextComponent(Util.makeDescriptionId("advancement", advancement) + ".desc");
4747
}
48+
49+
public static TranslationTextComponent jeiInfo(ResourceLocation jei) {
50+
return new TranslationTextComponent(Util.makeDescriptionId("jei", jei));
51+
}
4852
}
Lines changed: 3 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,39 @@
11
{
22
"itemGroup.compactmachines": "Compact Machines",
3-
43
"tooltip.compactmachines.machine.id": "Machine ID: %s",
54
"tooltip.compactmachines.machine.owner": "Owner: %s",
65
"tooltip.compactmachines.machine.size": "Internal Size: %1$sx%1$sx%1$s",
76
"tooltip.compactmachines.unknown_player": "Unknown Player",
87
"tooltip.compactmachines.tunnel_type": "Type ID: %1$s",
9-
108
"tooltip.compactmachines.hint.hold_shift": "Hold shift for details.",
119
"tooltip.compactmachines.details.psd": "Used as in-game documentation and to enter Compact Machines.",
1210
"tooltip.compactmachines.details.solid_wall": "Warning! Unbreakable for non-creative players!",
13-
1411
"message.compactmachines.new_machine": "New Machine",
1512
"message.compactmachines.cannot_enter": "You fumble with the shrinking device, to no avail. It refuses to work.",
1613
"message.compactmachines.spawnpoint_set": "New spawn point set.",
1714
"message.compactmachines.no_machine_data": "No machine data loaded; report this.",
1815
"message.compactmachines.teleport_oob": "An otherworldly force prevents your teleportation.",
1916
"message.compactmachines.fixbiome_bad_dim": "Cannot use fixbiome command outside of a machine room.",
20-
2117
"block.compactmachines.machine": "Compact Machine",
2218
"block.compactmachines.machine_tiny": "Compact Machine (Tiny)",
2319
"block.compactmachines.machine_small": "Compact Machine (Small)",
2420
"block.compactmachines.machine_normal": "Compact Machine (Normal)",
2521
"block.compactmachines.machine_large": "Compact Machine (Large)",
2622
"block.compactmachines.machine_giant": "Compact Machine (Giant)",
2723
"block.compactmachines.machine_maximum": "Compact Machine (Maximum)",
28-
2924
"block.compactmachines.solid_wall": "Solid Compact Machine Wall",
3025
"block.compactmachines.wall": "Compact Machine Wall",
3126
"block.compactmachines.tunnel_wall": "Solid Compact Machine Wall (with Tunnel)",
32-
3327
"item.compactmachines.machine_tiny": "Compact Machine (Tiny)",
3428
"item.compactmachines.machine_small": "Compact Machine (Small)",
3529
"item.compactmachines.machine_normal": "Compact Machine (Normal)",
3630
"item.compactmachines.machine_large": "Compact Machine (Large)",
3731
"item.compactmachines.machine_giant": "Compact Machine (Giant)",
3832
"item.compactmachines.machine_maximum": "Compact Machine (Maximum)",
39-
4033
"item.compactmachines.personal_shrinking_device": "Personal Shrinking Device",
41-
4234
"item.compactmachines.tunnels.item": "Item Tunnel",
4335
"item.compactmachines.tunnels.redstone_in": "Redstone Tunnel (In)",
4436
"item.compactmachines.tunnels.redstone_out": "Redstone Tunnel (Out)",
45-
4637
"compactmachines.connected_block": "Connected: %s",
4738
"compactmachines.direction.side": "Side: %s",
4839
"compactmachines.direction.up": "Up",
@@ -51,12 +42,9 @@
5142
"compactmachines.direction.south": "South",
5243
"compactmachines.direction.west": "West",
5344
"compactmachines.direction.east": "East",
54-
5545
"compactmachines.psd.pages.machines.title": "Compact Machines",
5646
"compactmachines.psd.pages.machines": "Compact Machines are the core mechanic of this mod. They allow you to build large rooms in a single block space connected to the outside world. They come in various sizes ranging from 3x3x3 to 13x13x13.\n\nYou can use Tunnels to connect the outside block faces with any of the inside walls to transport items, fluids etc.\n\nYou can enter a Compact Machine by right-clicking it with a Personal Shrinking Device. Please use JEI to look up crafting recipes.",
57-
5847
"compactmachines.errors.unknown_tunnel_type": "Unknown Tunnel Type (%s)",
59-
6048
"advancement.compactmachines.root": "Compact Machines",
6149
"advancement.compactmachines.root.desc": "",
6250
"advancement.compactmachines.how_did_you_get_here": "How Did You Get Here?!",
@@ -76,5 +64,7 @@
7664
"advancement.compactmachines.claimed_machine_giant": "Got Enough Space?",
7765
"advancement.compactmachines.claimed_machine_giant.desc": "Claim a giant compact machine.",
7866
"advancement.compactmachines.claimed_machine_max": "Room for Activities!",
79-
"advancement.compactmachines.claimed_machine_max.desc": "Claim a maximum compact machine."
67+
"advancement.compactmachines.claimed_machine_max.desc": "Claim a maximum compact machine.",
68+
"jei.compactmachines.shrinking_device": "Use the Personal Shrinking Device (PSD) on a machine in order to enter a compact space. You can also right click it in the overworld for more info.",
69+
"jei.compactmachines.machines": "Machines are used to make pocket dimensions. Craft a machine and place it in world, then use a Personal Shrinking Device to go inside."
8070
}

0 commit comments

Comments
 (0)