mod for the islanders smp
1package net.radsteve.islanders.mixin;
2
3import net.minecraft.entity.player.PlayerEntity;
4import net.minecraft.entity.player.PlayerInventory;
5import net.minecraft.item.ItemStack;
6import net.minecraft.server.network.ServerPlayerEntity;
7import net.radsteve.islanders.SpecialItem;
8import org.spongepowered.asm.mixin.Final;
9import org.spongepowered.asm.mixin.Mixin;
10import org.spongepowered.asm.mixin.Shadow;
11import org.spongepowered.asm.mixin.injection.At;
12import org.spongepowered.asm.mixin.injection.Inject;
13import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
14
15@Mixin(PlayerInventory.class)
16public class PlayerInventoryMixin {
17 @Shadow
18 @Final
19 public PlayerEntity player;
20
21 @Inject(method = "addStack(ILnet/minecraft/item/ItemStack;)I", at = @At("HEAD"))
22 private void islanders$addStack(int slot, ItemStack stack, CallbackInfoReturnable<Integer> cir) {
23 final SpecialItem item = SpecialItem.Companion.find(stack);
24 if (item == null) {
25 return;
26 }
27
28 item.pickedUp((ServerPlayerEntity) player);
29 }
30}