Skip to content
This repository was archived by the owner on Nov 9, 2024. It is now read-only.

Commit afec777

Browse files
authored
Merge pull request #3 from glektarssza/fix-goggle-tags
[bugfix] Fixed Engineer's Goggles from Create not getting the Curios head slot tag
2 parents 43fd464 + c5b6b8c commit afec777

File tree

6 files changed

+68
-11
lines changed

6 files changed

+68
-11
lines changed

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Sessionx.vim
2626
*~
2727

2828
### Auto-generated Tag Files ###
29-
tags
29+
/tags
3030

3131
### Undo Persistence ###
3232
[._]*.un~

forge-update.json

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"homepage": "https://github.com/glektarssza/minecraft-create-goggles-curio",
3+
"1.16.5": {
4+
"0.0.1": "Initial release.",
5+
"0.0.2": "Added a datapack to add the Engineer's Goggles from Create into the Curios head slot tag group."
6+
},
7+
"promos": {
8+
"1.16.5-latest": "0.0.2",
9+
"1.16.5-recommended": "0.0.2"
10+
}
11+
}

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Project #
22
mod_name=Create Goggles Curio
3-
mod_version=0.0.1
3+
mod_version=0.0.2
44
mod_group=com.glektarssza
55
mod_id=creategogglescurio
66
mod_author=G'lek Tarssza

src/main/java/com/glektarssza/creategogglescurio/CreateGogglesCurio.java

Lines changed: 46 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,15 @@
22

33
import net.minecraft.client.Minecraft;
44
import net.minecraft.entity.LivingEntity;
5+
import net.minecraft.util.ResourceLocation;
6+
import net.minecraftforge.api.distmarker.Dist;
7+
import net.minecraftforge.api.distmarker.OnlyIn;
8+
import net.minecraftforge.fml.DistExecutor;
59
import net.minecraftforge.fml.common.Mod;
10+
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
11+
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
12+
import net.minecraftforge.fml.loading.FMLEnvironment;
13+
import net.minecraftforge.registries.ForgeRegistries;
614

715
import java.util.function.Supplier;
816

@@ -33,15 +41,46 @@ public class CreateGogglesCurio {
3341
* Create a new instance.
3442
*/
3543
public CreateGogglesCurio() {
36-
GoggleOverlayRenderer.registerCustomGoggleCondition(new Supplier<Boolean>() {
37-
@Override
38-
public Boolean get() {
39-
return GogglesInCurioSlot();
40-
}
41-
});
44+
FMLJavaModLoadingContext.get().getModEventBus().addListener(this::Init);
4245
}
4346

44-
public boolean GogglesInCurioSlot() {
47+
/**
48+
* Initialize the mod.
49+
*
50+
* @param event The event to handle.
51+
*/
52+
public void Init(FMLCommonSetupEvent event) {
53+
LOGGER.info("Initializing CreateGogglesCurio...");
54+
if (FMLEnvironment.dist.isDedicatedServer()) {
55+
LOGGER.warn("CreateGogglesCurio only provides a datapack for servers!");
56+
LOGGER.warn("Skipping initialization!");
57+
return;
58+
}
59+
if (!ForgeRegistries.ITEMS.containsKey(new ResourceLocation("create", "goggles"))) {
60+
LOGGER.error("Could not find Create Engineer's Goggles, is Create is installed?");
61+
LOGGER.error("Disabling CreateGogglesCurio!");
62+
return;
63+
}
64+
DistExecutor.safeRunWhenOn(Dist.CLIENT, () -> this::RegisterGoggleOverlayPredicate);
65+
LOGGER.info("Finished initializing CreateGogglesCurio!");
66+
}
67+
68+
/**
69+
* Register the predicate for the goggles overlay.
70+
*/
71+
public void RegisterGoggleOverlayPredicate() {
72+
GoggleOverlayRenderer.registerCustomGoggleCondition(this::AreGogglesInCurioSlot);
73+
}
74+
75+
/**
76+
* Check if the player has the Engineer's Goggles from Create in the "head"
77+
* curio slot.
78+
*
79+
* @return `true` if the player has the Engineer's Goggles from Create in
80+
* the "head" curio slot; `false` otherwise.
81+
*/
82+
@OnlyIn(Dist.CLIENT)
83+
public boolean AreGogglesInCurioSlot() {
4584
Minecraft mc = Minecraft.getInstance();
4685
LivingEntity player = mc.player;
4786
ICuriosHelper helper = CuriosApi.getCuriosHelper();

src/main/resources/META-INF/mods.toml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ license = "All rights reserved."
55
modId = "creategogglescurio"
66
version = "${file.jarVersion}"
77
displayName = "Create Goggles Curio"
8+
updateJSONURL = "https://raw.githubusercontent.com/glektarssza/minecraft-create-goggles-curio/master/forge-update.json"
89
displayURL = "https://github.com/glektarssza/minecraft-create-goggles-curio"
910
logoFile = "creategogglescurio_logo.png"
1011
credits = ""
@@ -17,10 +18,10 @@ modId = "create"
1718
mandatory = true
1819
versionRange = "[v0.3.2g,)"
1920
ordering = "NONE"
20-
side = "CLIENT"
21+
side = "BOTH"
2122
[[dependencies.creategogglescurio]]
2223
modId = "curios"
2324
mandatory = true
2425
versionRange = "[1.16.5-4.1.0.0,)"
2526
ordering = "NONE"
26-
side = "CLIENT"
27+
side = "BOTH"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"replace": "false",
3+
"values": [
4+
"create:goggles"
5+
]
6+
}

0 commit comments

Comments
 (0)