Re-Enabled Trinkets

This commit is contained in:
Frank 2023-06-14 13:30:50 +02:00
parent 1db88f8d06
commit 5bdc02c474
7 changed files with 120 additions and 120 deletions

View file

@ -96,9 +96,9 @@ dependencies {
modCompileOnly "me.shedaniel:RoughlyEnoughItems-api-fabric:${project.rei_version}" modCompileOnly "me.shedaniel:RoughlyEnoughItems-api-fabric:${project.rei_version}"
//needed for trinkets, otherwise BetterEnd would require users to install trinkets //needed for trinkets, otherwise BetterEnd would require users to install trinkets
// modApi "dev.onyxstudios.cardinal-components-api:cardinal-components-base:${project.cca_version}" modApi "dev.onyxstudios.cardinal-components-api:cardinal-components-base:${project.cca_version}"
// modCompileOnly "dev.emi:trinkets:${project.trinkets_version}" modCompileOnly "dev.emi:trinkets:${project.trinkets_version}"
modCompileOnly "dev.emi:emi-fabric:${emi_version}:api" modCompileOnly "dev.emi:emi-fabric:${emi_version}:api"
modLocalRuntime "dev.emi:emi-fabric:${emi_version}" modLocalRuntime "dev.emi:emi-fabric:${emi_version}"

View file

@ -21,6 +21,6 @@ archives_base_name=better-end
patchouli_version=1.19-73-FABRIC patchouli_version=1.19-73-FABRIC
bclib_version=3.0.4 bclib_version=3.0.4
rei_version=12.0.622 rei_version=12.0.622
emi_version=1.0.2+1.20 emi_version=1.0.3+1.20
trinkets_version=3.6.0 trinkets_version=3.7.0
cca_version=5.1.0 cca_version=5.2.1

View file

@ -8,6 +8,7 @@ import org.betterx.betterend.commands.CommandRegistry;
import org.betterx.betterend.config.Configs; import org.betterx.betterend.config.Configs;
import org.betterx.betterend.effects.EndPotions; import org.betterx.betterend.effects.EndPotions;
import org.betterx.betterend.integration.Integrations; import org.betterx.betterend.integration.Integrations;
import org.betterx.betterend.integration.trinkets.Elytra;
import org.betterx.betterend.recipe.builders.InfusionRecipe; import org.betterx.betterend.recipe.builders.InfusionRecipe;
import org.betterx.betterend.registry.*; import org.betterx.betterend.registry.*;
import org.betterx.betterend.tab.CreativeTabs; import org.betterx.betterend.tab.CreativeTabs;
@ -80,10 +81,9 @@ public class BetterEnd implements ModInitializer {
} }
}); });
//TODO: 1.20 Re-enable when Trinkets is back if (RUNS_TRINKETS) {
// if (RUNS_TRINKETS) { Elytra.register();
// org.betterx.betterend.integration.trinkets.Elytra.register(); }
// }
} }
public static ResourceLocation makeID(String path) { public static ResourceLocation makeID(String path) {

View file

@ -1,5 +1,6 @@
package org.betterx.betterend.client; package org.betterx.betterend.client;
import org.betterx.betterend.BetterEnd;
import org.betterx.betterend.client.render.BetterEndSkyRenderer; import org.betterx.betterend.client.render.BetterEndSkyRenderer;
import org.betterx.betterend.events.ItemTooltipCallback; import org.betterx.betterend.events.ItemTooltipCallback;
import org.betterx.betterend.interfaces.MultiModelItem; import org.betterx.betterend.interfaces.MultiModelItem;
@ -48,10 +49,9 @@ public class BetterEndClient implements ClientModInitializer {
if (ClientOptions.isCustomSky()) { if (ClientOptions.isCustomSky()) {
DimensionRenderingRegistry.registerSkyRenderer(Level.END, new BetterEndSkyRenderer()); DimensionRenderingRegistry.registerSkyRenderer(Level.END, new BetterEndSkyRenderer());
} }
//TODO: 1.20 Re-Enable with Trinkets if (BetterEnd.RUNS_TRINKETS) {
// if (BetterEnd.RUNS_TRINKETS) { org.betterx.betterend.integration.trinkets.ElytraClient.register();
// org.betterx.betterend.integration.trinkets.ElytraClient.register(); }
// }
} }
public static void registerTooltips() { public static void registerTooltips() {

View file

@ -1,88 +1,88 @@
package org.betterx.betterend.integration.trinkets; package org.betterx.betterend.integration.trinkets;
//import org.betterx.bclib.items.elytra.BCLElytraItem; import org.betterx.bclib.items.elytra.BCLElytraItem;
//import org.betterx.bclib.items.elytra.BCLElytraUtils; import org.betterx.bclib.items.elytra.BCLElytraUtils;
//
//import net.minecraft.util.Tuple; import net.minecraft.util.Tuple;
//import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.EquipmentSlot;
//import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.LivingEntity;
//import net.minecraft.world.item.ElytraItem; import net.minecraft.world.item.ElytraItem;
//import net.minecraft.world.item.Item; import net.minecraft.world.item.Item;
//import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
//
//import net.fabricmc.fabric.api.entity.event.v1.EntityElytraEvents; import net.fabricmc.fabric.api.entity.event.v1.EntityElytraEvents;
//import net.fabricmc.fabric.api.entity.event.v1.FabricElytraItem; import net.fabricmc.fabric.api.entity.event.v1.FabricElytraItem;
//
//import dev.emi.trinkets.api.SlotReference; import dev.emi.trinkets.api.SlotReference;
//import dev.emi.trinkets.api.TrinketComponent; import dev.emi.trinkets.api.TrinketComponent;
//import dev.emi.trinkets.api.TrinketsApi; import dev.emi.trinkets.api.TrinketsApi;
//
//import java.util.List; import java.util.List;
//import java.util.Optional; import java.util.Optional;
//
//public class Elytra { public class Elytra {
// private static boolean isElytra(ItemStack stack) { private static boolean isElytra(ItemStack stack) {
// return stack.getItem() instanceof ElytraItem return stack.getItem() instanceof ElytraItem
// || stack.getItem() instanceof FabricElytraItem; || stack.getItem() instanceof FabricElytraItem;
// } }
//
// public static void register() { public static void register() {
// BCLElytraUtils.slotProvider = (entity, slotGetter) -> { BCLElytraUtils.slotProvider = (entity, slotGetter) -> {
// ItemStack itemStack = slotGetter.apply(EquipmentSlot.CHEST); ItemStack itemStack = slotGetter.apply(EquipmentSlot.CHEST);
// if (isElytra(itemStack)) return itemStack; if (isElytra(itemStack)) return itemStack;
//
// Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity); Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity);
// if (oTrinketComponent.isPresent()) { if (oTrinketComponent.isPresent()) {
// List<Tuple<SlotReference, ItemStack>> equipped = List<Tuple<SlotReference, ItemStack>> equipped =
// oTrinketComponent.get().getEquipped(Elytra::isElytra); oTrinketComponent.get().getEquipped(Elytra::isElytra);
//
// if (!equipped.isEmpty()) return equipped.get(0).getB(); if (!equipped.isEmpty()) return equipped.get(0).getB();
// } }
// return null; return null;
// }; };
//
// BCLElytraUtils.onBreak = (entity, chestStack) -> { BCLElytraUtils.onBreak = (entity, chestStack) -> {
// Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity); Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity);
// if (oTrinketComponent.isPresent()) { if (oTrinketComponent.isPresent()) {
// List<Tuple<SlotReference, ItemStack>> equipped = List<Tuple<SlotReference, ItemStack>> equipped =
// oTrinketComponent.get().getEquipped(Elytra::isElytra); oTrinketComponent.get().getEquipped(Elytra::isElytra);
//
// for (Tuple<SlotReference, ItemStack> slot : equipped) { for (Tuple<SlotReference, ItemStack> slot : equipped) {
// ItemStack slotStack = slot.getB(); ItemStack slotStack = slot.getB();
// if (slotStack == chestStack) { if (slotStack == chestStack) {
// TrinketsApi.onTrinketBroken(slotStack, slot.getA(), entity); TrinketsApi.onTrinketBroken(slotStack, slot.getA(), entity);
// } }
// } }
// } }
// }; };
//
// EntityElytraEvents.CUSTOM.register(Elytra::useElytraTrinket); EntityElytraEvents.CUSTOM.register(Elytra::useElytraTrinket);
// } }
//
// private static boolean useElytraTrinket(LivingEntity entity, boolean tickElytra) { private static boolean useElytraTrinket(LivingEntity entity, boolean tickElytra) {
// Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity); Optional<TrinketComponent> oTrinketComponent = TrinketsApi.getTrinketComponent(entity);
// if (oTrinketComponent.isPresent()) { if (oTrinketComponent.isPresent()) {
// List<Tuple<SlotReference, ItemStack>> equipped = List<Tuple<SlotReference, ItemStack>> equipped =
// oTrinketComponent.get().getEquipped(Elytra::isElytra); oTrinketComponent.get().getEquipped(Elytra::isElytra);
//
// for (Tuple<SlotReference, ItemStack> slot : equipped) { for (Tuple<SlotReference, ItemStack> slot : equipped) {
// ItemStack stack = slot.getB(); ItemStack stack = slot.getB();
// Item item = stack.getItem(); Item item = stack.getItem();
//
// if (item instanceof ElytraItem) { if (item instanceof ElytraItem) {
// if (ElytraItem.isFlyEnabled(stack)) { if (ElytraItem.isFlyEnabled(stack)) {
// BCLElytraItem.vanillaElytraTick(entity, stack); BCLElytraItem.vanillaElytraTick(entity, stack);
// return true; return true;
// } }
// } else if (item instanceof FabricElytraItem fabricElytraItem) { } else if (item instanceof FabricElytraItem fabricElytraItem) {
// if (fabricElytraItem.useCustomElytra(entity, stack, tickElytra)) { if (fabricElytraItem.useCustomElytra(entity, stack, tickElytra)) {
// return true; return true;
// } }
// } }
// } }
// } }
// return false; return false;
// } }
//} }
//

View file

@ -1,22 +1,22 @@
package org.betterx.betterend.integration.trinkets; package org.betterx.betterend.integration.trinkets;
//import net.minecraft.world.item.ElytraItem; import net.minecraft.world.item.ElytraItem;
//
//import net.fabricmc.api.EnvType; import net.fabricmc.api.EnvType;
//import net.fabricmc.api.Environment; import net.fabricmc.api.Environment;
//import net.fabricmc.fabric.api.client.rendering.v1.LivingEntityFeatureRenderEvents; import net.fabricmc.fabric.api.client.rendering.v1.LivingEntityFeatureRenderEvents;
//import net.fabricmc.fabric.api.entity.event.v1.FabricElytraItem; import net.fabricmc.fabric.api.entity.event.v1.FabricElytraItem;
//
//import dev.emi.trinkets.api.TrinketsApi; import dev.emi.trinkets.api.TrinketsApi;
//
//@Environment(EnvType.CLIENT) @Environment(EnvType.CLIENT)
//public class ElytraClient { public class ElytraClient {
// public static void register() { public static void register() {
// LivingEntityFeatureRenderEvents.ALLOW_CAPE_RENDER.register((player) -> TrinketsApi LivingEntityFeatureRenderEvents.ALLOW_CAPE_RENDER.register((player) -> TrinketsApi
// .getTrinketComponent(player) .getTrinketComponent(player)
// .map(trinketComponent -> trinketComponent.getEquipped( .map(trinketComponent -> trinketComponent.getEquipped(
// stack -> stack.getItem() instanceof ElytraItem || stack -> stack.getItem() instanceof ElytraItem ||
// stack.getItem() instanceof FabricElytraItem stack.getItem() instanceof FabricElytraItem
// ).size() == 0).orElse(true)); ).size() == 0).orElse(true));
// } }
//} }

View file

@ -59,7 +59,7 @@
"blockus": ">=2.0.2", "blockus": ">=2.0.2",
"nourish": ">=1.2.0", "nourish": ">=1.2.0",
"colored_lights": ">=1.0.3", "colored_lights": ">=1.0.3",
"trinkets": ">=3.4.0" "trinkets": ">=3.7.0"
}, },
"custom": { "custom": {
"bclib": { "bclib": {