From d43280ca0de5a2b1f1964e8395aca5c3af74bd5e Mon Sep 17 00:00:00 2001 From: IzzelAliz Date: Sun, 18 Jul 2021 12:22:36 +0800 Subject: [PATCH] Update to forge 36.1.62 --- README.md | 2 +- .../common/mixin/core/entity/EntityMixin.java | 2 +- .../mixin/core/entity/LivingEntityMixin.java | 2 +- .../core/entity/player/PlayerEntityMixin.java | 4 ++-- .../tileentity/AbstractFurnaceTileEntityMixin.java | 4 +++- .../mixin/core/world/server/ServerWorldMixin.java | 10 ---------- .../arclight/common/mod/util/ArclightCaptures.java | 14 -------------- build.gradle | 2 +- 8 files changed, 9 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 07dfdd29..feb0976f 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ A Bukkit server implementation utilizing Mixin. | Minecraft | Forge | Status | Build | | :----: | :----: | :---: | :---: | -| 1.16.x | 36.1.24 | ACTIVE | [![1.16 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-16?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-16) | +| 1.16.x | 36.1.62 | ACTIVE | [![1.16 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-16?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-16) | | 1.15.x | 31.2.48 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.15/1.0.19) | [![1.15 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight-15?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight-15) | | 1.14.x | 28.2.0 | [LEGACY](https://github.com/IzzelAliz/Arclight/releases/tag/1.0.6) | [![1.14 Status](https://img.shields.io/appveyor/build/IzzelAliz/arclight?style=flat-square)](https://ci.appveyor.com/project/IzzelAliz/arclight) | diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/EntityMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/EntityMixin.java index 577b2a46..3de4efd5 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/EntityMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/EntityMixin.java @@ -759,7 +759,7 @@ public abstract class EntityMixin implements InternalEntityBridge, EntityBridge, return false; } CraftEventFactory.entityDamage = entity; - if (!this.attackEntityFrom(DamageSource.LIGHTNING_BOLT, 5.0F)) { + if (!this.attackEntityFrom(DamageSource.LIGHTNING_BOLT, amount)) { CraftEventFactory.entityDamage = null; return false; } diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/LivingEntityMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/LivingEntityMixin.java index cd1f60f5..9159e7ee 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/LivingEntityMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/LivingEntityMixin.java @@ -791,8 +791,8 @@ public abstract class LivingEntityMixin extends EntityMixin implements LivingEnt // CraftBukkit end float f3 = this.getHealth(); - this.setHealth(f3 - f); this.getCombatTracker().trackDamage(damagesource, f3, f); + this.setHealth(f3 - f); // Forge: moved to fix MC-121048 // CraftBukkit start if (!human) { this.setAbsorptionAmount(this.getAbsorptionAmount() - f); diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/player/PlayerEntityMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/player/PlayerEntityMixin.java index 5e4ae262..bc25d7aa 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/player/PlayerEntityMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/entity/player/PlayerEntityMixin.java @@ -272,8 +272,8 @@ public abstract class PlayerEntityMixin extends LivingEntityMixin implements Pla if (f > 0.0f || f2 > 0.0f) { final boolean flag = f3 > 0.9f; boolean flag2 = false; - final byte b0 = 0; - int i = b0 + EnchantmentHelper.getKnockbackModifier((PlayerEntity) (Object) this); + float i = (float)this.getAttributeValue(Attributes.ATTACK_KNOCKBACK); // Forge: Initialize this value to the attack knockback attribute of the player, which is by default 0 + i += EnchantmentHelper.getKnockbackModifier((PlayerEntity) (Object) this); if (this.isSprinting() && flag) { this.world.playSound(null, this.getPosX(), this.getPosY(), this.getPosZ(), SoundEvents.ENTITY_PLAYER_ATTACK_KNOCKBACK, this.getSoundCategory(), 1.0f, 1.0f); ++i; diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/tileentity/AbstractFurnaceTileEntityMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/tileentity/AbstractFurnaceTileEntityMixin.java index 970d51af..5c819998 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/tileentity/AbstractFurnaceTileEntityMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/tileentity/AbstractFurnaceTileEntityMixin.java @@ -6,6 +6,7 @@ import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; import net.minecraft.block.Blocks; import net.minecraft.entity.item.ExperienceOrbEntity; import net.minecraft.entity.player.PlayerEntity; +import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; import net.minecraft.item.Items; import net.minecraft.item.crafting.IRecipe; @@ -86,10 +87,11 @@ public abstract class AbstractFurnaceTileEntityMixin extends LockableTileEntityM * @reason */ @Overwrite + @SuppressWarnings("unchecked") private void smelt(@Nullable IRecipe recipe) { if (recipe != null && this.canSmelt(recipe)) { ItemStack itemstack = this.items.get(0); - ItemStack itemstack1 = recipe.getRecipeOutput(); + ItemStack itemstack1 = ((IRecipe) recipe).getCraftingResult((AbstractFurnaceTileEntity)(Object)this); ItemStack itemstack2 = this.items.get(2); CraftItemStack source = CraftItemStack.asCraftMirror(itemstack); diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/world/server/ServerWorldMixin.java b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/world/server/ServerWorldMixin.java index c514aec8..9534349d 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/world/server/ServerWorldMixin.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mixin/core/world/server/ServerWorldMixin.java @@ -169,16 +169,6 @@ public abstract class ServerWorldMixin extends WorldMixin implements ServerWorld return this.convertable; } - @Inject(method = "addEntityIfNotDuplicate", at = @At("HEAD")) - private void arclight$worldGenAddStart(Entity entityIn, CallbackInfoReturnable cir) { - ArclightCaptures.captureWorldGenAddEntity(); - } - - @Inject(method = "addEntityIfNotDuplicate", at = @At("RETURN")) - private void arclight$worldGenAddEnd(Entity entityIn, CallbackInfoReturnable cir) { - ArclightCaptures.resetWorldGenAddEntity(); - } - @Inject(method = "onEntityAdded", at = @At("RETURN")) private void arclight$validEntity(Entity entityIn, CallbackInfo ci) { ((EntityBridge) entityIn).bridge$setValid(true); diff --git a/arclight-common/src/main/java/io/izzel/arclight/common/mod/util/ArclightCaptures.java b/arclight-common/src/main/java/io/izzel/arclight/common/mod/util/ArclightCaptures.java index 08f8b541..7918f0f5 100644 --- a/arclight-common/src/main/java/io/izzel/arclight/common/mod/util/ArclightCaptures.java +++ b/arclight-common/src/main/java/io/izzel/arclight/common/mod/util/ArclightCaptures.java @@ -230,20 +230,6 @@ public class ArclightCaptures { } } - private static transient boolean worldGenAdd; - - public static void captureWorldGenAddEntity() { - worldGenAdd = true; - } - - public static boolean isWorldGenAdd() { - return worldGenAdd; - } - - public static void resetWorldGenAddEntity() { - worldGenAdd = false; - } - private static void recapture(String type) { throw new IllegalStateException("Recapturing " + type); } diff --git a/build.gradle b/build.gradle index 0eaf775f..34d4a644 100644 --- a/build.gradle +++ b/build.gradle @@ -5,7 +5,7 @@ allprojects { ext { agpVersion = '1.17' minecraftVersion = '1.16.5' - forgeVersion = '36.1.24' + forgeVersion = '36.1.62' apiVersion = '1.0.+' toolsVersion = '1.3.+' }