diff --git a/Changelog.md b/Changelog.md index 721c0c5..8cca62c 100644 --- a/Changelog.md +++ b/Changelog.md @@ -1,3 +1,7 @@ +Flan 1.7.9 +================ +- Move pickup check to a better place. Should fix some mod compat issues + Flan 1.7.8 ================ - Add dynmap support for claims diff --git a/common/src/main/java/io/github/flemmli97/flan/mixin/ItemEntityMixin.java b/common/src/main/java/io/github/flemmli97/flan/mixin/ItemEntityMixin.java index e5a03b4..5dcd62b 100644 --- a/common/src/main/java/io/github/flemmli97/flan/mixin/ItemEntityMixin.java +++ b/common/src/main/java/io/github/flemmli97/flan/mixin/ItemEntityMixin.java @@ -1,5 +1,6 @@ package io.github.flemmli97.flan.mixin; +import io.github.flemmli97.flan.event.EntityInteractEvents; import io.github.flemmli97.flan.player.IOwnedItem; import io.github.flemmli97.flan.player.PlayerClaimData; import net.minecraft.nbt.CompoundTag; @@ -41,6 +42,13 @@ public abstract class ItemEntityMixin implements IOwnedItem { this.flanDeathPlayerOrigin = this.flanPlayerOrigin; } + @Inject(method = "playerTouch", at = @At(value = "HEAD"), cancellable = true) + private void pickup(Player player, CallbackInfo info) { + if (!EntityInteractEvents.canCollideWith(player, (ItemEntity) (Object) this)) { + info.cancel(); + } + } + @Override public UUID getDeathPlayer() { return this.flanDeathPlayerOrigin; diff --git a/common/src/main/java/io/github/flemmli97/flan/mixin/PlayerMixin.java b/common/src/main/java/io/github/flemmli97/flan/mixin/PlayerMixin.java index dc1cc31..d4ae964 100644 --- a/common/src/main/java/io/github/flemmli97/flan/mixin/PlayerMixin.java +++ b/common/src/main/java/io/github/flemmli97/flan/mixin/PlayerMixin.java @@ -1,14 +1,11 @@ package io.github.flemmli97.flan.mixin; import io.github.flemmli97.flan.event.EntityInteractEvents; -import net.minecraft.world.entity.Entity; import net.minecraft.world.entity.item.ItemEntity; import net.minecraft.world.entity.player.Player; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; -import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.ModifyVariable; -import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; @Mixin(Player.class) public abstract class PlayerMixin { @@ -18,12 +15,4 @@ public abstract class PlayerMixin { EntityInteractEvents.updateDroppedItem((Player) (Object) this, entity); return entity; } - - @Inject(method = "touch", at = @At(value = "HEAD"), cancellable = true) - private void entityCollide(Entity entity, CallbackInfo info) { - if (!EntityInteractEvents.canCollideWith((Player) (Object) this, entity)) { - info.cancel(); - } - } - } diff --git a/gradle.properties b/gradle.properties index d36243a..70bc177 100644 --- a/gradle.properties +++ b/gradle.properties @@ -11,7 +11,7 @@ forge_version=1.18.2-40.0.3 loader_version=0.13.2 # Mod Properties -mod_version=1.7.8 +mod_version=1.7.9 maven_group=io.github.flemmli97 archives_base_name=flan