Skip to content

Commit 226eefc

Browse files
committed
reinstate curios compat
1 parent c5e8935 commit 226eefc

File tree

15 files changed

+76
-26
lines changed

15 files changed

+76
-26
lines changed

build.gradle

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ repositories {
2727
maven {
2828
url = "https://maven.theillusivec4.top/"
2929
}
30+
maven {
31+
url = uri("https://maven.octo-studios.com/releases")
32+
}
3033
}
3134

3235
base {
@@ -98,8 +101,7 @@ dependencies {
98101
compileOnly "mezz.jei:jei-${minecraft_version}-neoforge-api:${jei_version}"
99102
runtimeOnly "mezz.jei:jei-${minecraft_version}-neoforge:${jei_version}"
100103

101-
// runtimeOnly "top.theillusivec4.curios:curios-neoforge:${curios_version}"
102-
// compileOnly "top.theillusivec4.curios:curios-neoforge:${curios_version}:api"
104+
implementation "top.theillusivec4.curios:curios-neoforge:${curios_version}"
103105

104106
compileOnly "vazkii.patchouli:Patchouli:${patchouli_version}:api"
105107
runtimeOnly "vazkii.patchouli:Patchouli:${patchouli_version}"

gradle.properties

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ neo_version_range=[21.1.0,)
1919
loader_version_range=[4,)
2020

2121
jei_version=19.18.3.204
22-
# TODO what to do about curios being discontinued? try out https://www.curseforge.com/minecraft/mc-mods/adorned?
23-
# curios_version=7.2.0+1.20.4
22+
curios_version=9.0.11+1.21
2423
patchouli_version=1.21-87-NEOFORGE
2524

2625
## Mod Properties
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"values": [
3+
"naturesaura:aura_cache",
4+
"naturesaura:aura_trove"
5+
]
6+
}
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"values": [
3+
"naturesaura:eye",
4+
"naturesaura:eye_improved"
5+
]
6+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"values": [
3+
"naturesaura:shockwave_creator"
4+
]
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"values": [
3+
"naturesaura:death_ring"
4+
]
5+
}
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
{
2+
"entities": [
3+
"minecraft:player"
4+
],
5+
"slots": [
6+
"charm",
7+
"belt",
8+
"ring",
9+
"necklace"
10+
]
11+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"add_cosmetic": true,
3+
"size": 1
4+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"add_cosmetic": true,
3+
"size": 1
4+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"add_cosmetic": true,
3+
"size": 1
4+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"add_cosmetic": true,
3+
"size": 1
4+
}

src/main/java/de/ellpeck/naturesaura/Helper.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import de.ellpeck.naturesaura.api.misc.ILevelData;
99
import de.ellpeck.naturesaura.blocks.tiles.BlockEntityImpl;
1010
import de.ellpeck.naturesaura.chunk.AuraChunk;
11+
import de.ellpeck.naturesaura.compat.Compat;
1112
import de.ellpeck.naturesaura.misc.LevelData;
1213
import de.ellpeck.naturesaura.packet.PacketHandler;
1314
import de.ellpeck.naturesaura.packet.PacketParticles;
@@ -50,6 +51,8 @@
5051
import net.neoforged.neoforge.capabilities.ICapabilityProvider;
5152
import net.neoforged.neoforge.items.IItemHandler;
5253
import net.neoforged.neoforge.items.IItemHandlerModifiable;
54+
import top.theillusivec4.curios.api.CuriosApi;
55+
import top.theillusivec4.curios.api.SlotResult;
5356

5457
import java.lang.reflect.Modifier;
5558
import java.util.List;
@@ -300,15 +303,14 @@ public static <T> void populateObjectHolders(Class<?> clazz, Registry<T> registr
300303
}
301304

302305
public static ItemStack getEquippedItem(Predicate<ItemStack> predicate, Player player, boolean hotbarOnly) {
303-
// TODO curios?
304-
/* if (Compat.hasCompat("curios")) {
306+
if (Compat.hasCompat("curios")) {
305307
var inventory = CuriosApi.getCuriosInventory(player);
306308
if (inventory.isPresent()) {
307309
var stack = inventory.get().findFirstCurio(predicate).map(SlotResult::stack);
308310
if (stack.isPresent())
309311
return stack.get();
310312
}
311-
}*/
313+
}
312314
var invSize = hotbarOnly ? 9 : player.getInventory().getContainerSize();
313315
for (var i = 0; i < invSize; i++) {
314316
var slot = player.getInventory().getItem(i);

src/main/java/de/ellpeck/naturesaura/compat/Compat.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ public final class Compat {
1919
@SuppressWarnings("Convert2MethodRef") // bleh classloading compat issues
2020
private static final Map<String, Supplier<ICompat>> MODULE_TYPES = ImmutableMap.<String, Supplier<ICompat>>builder()
2121
.put("patchouli", () -> new PatchouliCompat())
22-
// TODO curios?
23-
//.put("curios", () -> new CuriosCompat())
22+
.put("curios", () -> new CuriosCompat())
2423
//.put("enchantability", EnchantibilityCompat::new)
2524
.build();
2625
private static final Map<String, ICompat> MODULES = new HashMap<>();

src/main/java/de/ellpeck/naturesaura/compat/CuriosCompat.java

Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
// TODO curios?
2-
/*
31
package de.ellpeck.naturesaura.compat;
42

53
import com.google.common.collect.ImmutableMap;
@@ -26,13 +24,13 @@
2624
public class CuriosCompat implements ICompat {
2725

2826
private static final Map<Item, String> TYPES = ImmutableMap.<Item, String>builder()
29-
.put(ModItems.EYE, "charm")
30-
.put(ModItems.EYE_IMPROVED, "charm")
31-
.put(ModItems.AURA_CACHE, "belt")
32-
.put(ModItems.AURA_TROVE, "belt")
33-
.put(ModItems.SHOCKWAVE_CREATOR, "necklace")
34-
.put(ModItems.DEATH_RING, "ring")
35-
.build();
27+
.put(ModItems.EYE, "charm")
28+
.put(ModItems.EYE_IMPROVED, "charm")
29+
.put(ModItems.AURA_CACHE, "belt")
30+
.put(ModItems.AURA_TROVE, "belt")
31+
.put(ModItems.SHOCKWAVE_CREATOR, "necklace")
32+
.put(ModItems.DEATH_RING, "ring")
33+
.build();
3634

3735
@Override
3836
public void addCapabilities(RegisterCapabilitiesEvent event) {
@@ -69,7 +67,7 @@ public void gatherData(GatherDataEvent event) {
6967
@Override
7068
public void addItemTags(ItemTagProvider provider) {
7169
for (var entry : CuriosCompat.TYPES.entrySet()) {
72-
var tag = ItemTags.create(new ResourceLocation("curios", entry.getValue()));
70+
var tag = ItemTags.create(ResourceLocation.fromNamespaceAndPath("curios", entry.getValue()));
7371
provider.tag(tag).add(entry.getKey());
7472
}
7573
}
@@ -82,12 +80,12 @@ public CuriosProvider(PackOutput output, ExistingFileHelper fileHelper, Completa
8280

8381
@Override
8482
public void generate(HolderLookup.Provider provider, ExistingFileHelper existingFileHelper) {
85-
for (var type : CuriosCompat.TYPES.values()) {
86-
this.createSlot(type);
87-
}
83+
var types = CuriosCompat.TYPES.values().stream().distinct().toArray(String[]::new);
84+
this.createEntities("entities").addPlayer().addSlots(types);
85+
for (var type : types)
86+
this.createSlot(type).size(1).addCosmetic(true);
8887
}
8988

9089
}
9190

9291
}
93-
*/

src/main/java/de/ellpeck/naturesaura/renderers/PlayerLayerTrinkets.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import de.ellpeck.naturesaura.ModConfig;
66
import de.ellpeck.naturesaura.api.render.ITrinketItem;
77
import de.ellpeck.naturesaura.api.render.ITrinketItem.RenderType;
8+
import de.ellpeck.naturesaura.compat.Compat;
89
import net.minecraft.client.model.PlayerModel;
910
import net.minecraft.client.player.AbstractClientPlayer;
1011
import net.minecraft.client.renderer.MultiBufferSource;
@@ -17,6 +18,7 @@
1718
import net.minecraft.world.item.ItemStack;
1819
import net.neoforged.api.distmarker.Dist;
1920
import net.neoforged.api.distmarker.OnlyIn;
21+
import top.theillusivec4.curios.api.CuriosApi;
2022

2123
import java.util.HashSet;
2224
import java.util.Set;
@@ -57,15 +59,14 @@ private void render(Player player, RenderType type, ItemStack main, ItemStack se
5759
this.renderStack(player.getInventory().getItem(i), player, type, main, second, matrices, buffer, packedLight);
5860
}
5961

60-
// TODO curios?
61-
/* if (Compat.hasCompat("curios")) {
62+
if (Compat.hasCompat("curios")) {
6263
var inventory = CuriosApi.getCuriosInventory(player).orElse(null);
6364
if (inventory != null) {
6465
var handler = inventory.getEquippedCurios();
6566
for (var i = 0; i < handler.getSlots(); i++)
6667
this.renderStack(handler.getStackInSlot(i), player, type, main, second, matrices, buffer, packedLight);
6768
}
68-
}*/
69+
}
6970
}
7071

7172
private void renderStack(ItemStack stack, Player player, RenderType type, ItemStack main, ItemStack second, PoseStack matrices, MultiBufferSource buffer, int packedLight) {

0 commit comments

Comments
 (0)