diff --git a/gradle.properties b/gradle.properties index dbe3dd3..32360c4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,19 +3,19 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check these on https://fabricmc.net/versions.html - minecraft_version=1.20.1 - yarn_mappings=1.20.1+build.10 + minecraft_version=1.20.2 + yarn_mappings=1.20.2+build.1 loader_version=0.14.22 # Mod Properties - mod_version = 3.7.1+1.20.1 + mod_version = 3.7.1+1.20.2 maven_group = megaminds.actioninventory archives_base_name = actioninventory # Dependencies - fabric_version=0.86.1+1.20.1 - sgui_version=1.2.2+1.20 - playerdata_version=0.2.2+1.19.3 - placeholder_version=2.1.2+1.20.1 + fabric_version=0.89.2+1.20.2 + sgui_version=1.3.0+1.20.2 + playerdata_version=0.3.0+1.20.2 + placeholder_version=2.2.0+1.20.2 permissions_version=0.2-SNAPSHOT diff --git a/src/main/java/megaminds/actioninventory/actions/RequirementAction.java b/src/main/java/megaminds/actioninventory/actions/RequirementAction.java index e38e37f..f24995e 100644 --- a/src/main/java/megaminds/actioninventory/actions/RequirementAction.java +++ b/src/main/java/megaminds/actioninventory/actions/RequirementAction.java @@ -52,7 +52,7 @@ public void accept(@NotNull ActionInventoryGui gui) { } public boolean test(ServerPlayerEntity player) { - return player.hasPermissionLevel(opLevel) && entityPredicate.test(player, player) && matchesSelector(player); + return player.hasPermissionLevel(opLevel) && (entityPredicate == null || entityPredicate.test(player, player)) && matchesSelector(player); } private boolean matchesSelector(Entity e) { @@ -79,7 +79,6 @@ private void validateSelector() { public void validate() { super.validate(); validateSelector(); - if (entityPredicate==null) entityPredicate = EntityPredicate.ANY; } @Override diff --git a/src/main/java/megaminds/actioninventory/gui/ActionInventoryGui.java b/src/main/java/megaminds/actioninventory/gui/ActionInventoryGui.java index 48b25d5..e1a96db 100644 --- a/src/main/java/megaminds/actioninventory/gui/ActionInventoryGui.java +++ b/src/main/java/megaminds/actioninventory/gui/ActionInventoryGui.java @@ -3,6 +3,7 @@ import eu.pb4.sgui.api.ClickType; import megaminds.actioninventory.actions.BasicAction; import net.minecraft.item.ItemStack; +import net.minecraft.recipe.RecipeEntry; import net.minecraft.screen.slot.SlotActionType; import net.minecraft.util.Identifier; @@ -49,7 +50,7 @@ default boolean onAnyClick(int index, ClickType type, SlotActionType action) { /**@since 3.1*/ default void onCraftRequest(Identifier recipe, boolean shift) { var server = getPlayer().getServer(); - setLastClicked(server.getRecipeManager().get(recipe).map(r -> r.getOutput(server.getRegistryManager())).orElse(ItemStack.EMPTY)); + setLastClicked(server.getRecipeManager().get(recipe).map(RecipeEntry::value).map(r -> r.getResult(server.getRegistryManager())).orElse(ItemStack.EMPTY)); setLastAction("onCraft"); getRecipeAction().onRecipe(recipe, shift, this); } diff --git a/src/main/java/megaminds/actioninventory/openers/EntityOpener.java b/src/main/java/megaminds/actioninventory/openers/EntityOpener.java index 5e5cacf..536d452 100644 --- a/src/main/java/megaminds/actioninventory/openers/EntityOpener.java +++ b/src/main/java/megaminds/actioninventory/openers/EntityOpener.java @@ -37,7 +37,7 @@ public EntityOpener(Identifier guiName, String entitySelector, EntityPredicate e @Override public boolean open(ServerPlayerEntity player, Object... context) { var e = (Entity) context[0]; - if (selector==null || entityPredicate.test(player, e) && matches(e)) { + if ((entityPredicate==null || entityPredicate.test(player, e)) && (selector==null || matches(e))) { return super.open(player, context); } return false; @@ -76,7 +76,6 @@ public static void registerCallbacks() { public void validate() { super.validate(); validateSelector(); - if (entityPredicate==null) entityPredicate = EntityPredicate.ANY; } @Override diff --git a/src/main/java/megaminds/actioninventory/serialization/Serializer.java b/src/main/java/megaminds/actioninventory/serialization/Serializer.java index 19bbdc7..a7958f7 100644 --- a/src/main/java/megaminds/actioninventory/serialization/Serializer.java +++ b/src/main/java/megaminds/actioninventory/serialization/Serializer.java @@ -88,7 +88,7 @@ public static BasicOpener openerFromJson(String json) throws ValidationException .registerTypeAdapter(ScreenHandlerType.class, registryDelegate(Registries.SCREEN_HANDLER)) .registerTypeAdapter(StatusEffect.class, registryDelegate(Registries.STATUS_EFFECT)) .registerTypeAdapter(ParticleType.class, registryDelegate(Registries.PARTICLE_TYPE)) - .registerTypeAdapter(EntityPredicate.class, basic(EntityPredicate::fromJson, EntityPredicate::toJson)) + .registerTypeAdapter(EntityPredicate.class, basic(j -> EntityPredicate.fromJson(j).orElse(null), EntityPredicate::toJson)) .registerTypeAdapterFactory(new WrapperAdapterFactory(new InstancedAdapterWrapper(), new ValidatedAdapterWrapper())) .registerTypeAdapterFactory(new PolyAdapterFactory()) .registerTypeAdapterFactory(new OptionalAdapterFactory()) diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index d43816e..0b8619f 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -21,7 +21,6 @@ }, "depends": { "fabric": "*", - "minecraft": "~1.20", - "java": ">=17" + "minecraft": "~1.20.2" } } \ No newline at end of file