Fix ender chest get lost across death (#623)

This commit is contained in:
IzzelAliz 2022-06-24 10:33:43 +08:00
parent b2959fa264
commit f98046185e
No known key found for this signature in database
GPG Key ID: EE50E123A11D8338
2 changed files with 1 additions and 9 deletions

View File

@ -20,10 +20,7 @@ A Bukkit server implementation utilizing Mixin.
* Download the jar from [release page](https://github.com/IzzelAliz/Arclight/releases) or build server. (see the table
above)
* There are 2 ways to start Arclight:
* (**Recommended**) Launch with command `java -jar arclight-forge-<mc>-<version>.jar nogui`. The `nogui` argument will disable the
server control panel.
* Drop the downloaded jar into `mods` folder and start a forge server.
* Launch with command `java -jar arclight-forge-<mc>-<version>.jar nogui`. The `nogui` argument will disable the server control panel.
## Support

View File

@ -7,13 +7,10 @@ import net.minecraft.world.entity.player.Player;
import org.bukkit.craftbukkit.v.CraftServer;
import org.bukkit.craftbukkit.v.entity.CraftEntity;
import org.bukkit.craftbukkit.v.entity.CraftHumanEntity;
import org.bukkit.craftbukkit.v.inventory.CraftInventory;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryPlayer;
import org.bukkit.permissions.PermissibleBase;
import org.bukkit.permissions.ServerOperator;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Mutable;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Redirect;
@ -23,7 +20,6 @@ public abstract class CraftHumanEntityMixin extends CraftEntity {
// @formatter:off
@Shadow private CraftInventoryPlayer inventory;
@Shadow @Final @Mutable private CraftInventory enderChest;
// @formatter:on
public CraftHumanEntityMixin(CraftServer server, Entity entity) {
@ -43,6 +39,5 @@ public abstract class CraftHumanEntityMixin extends CraftEntity {
public void setHandle(Entity entity) {
super.setHandle(entity);
this.inventory = new CraftInventoryPlayer(((Player) entity).getInventory());
this.enderChest = new CraftInventory(((Player) entity).getEnderChestInventory());
}
}