mirror of
https://github.com/TotalFreedomMC/OpenInv.git
synced 2024-12-23 00:15:08 +00:00
Right, 1.13 is a thing
This commit is contained in:
parent
ec07637e9f
commit
0f02e6fe66
1 changed files with 19 additions and 2 deletions
|
@ -56,7 +56,7 @@ public class SpecialPlayerInventory extends PlayerInventory implements ISpecialP
|
||||||
private final CraftInventory inventory = new CraftInventory(this);
|
private final CraftInventory inventory = new CraftInventory(this);
|
||||||
private boolean playerOnline;
|
private boolean playerOnline;
|
||||||
private NonNullList<ItemStack> items, armor, extraSlots;
|
private NonNullList<ItemStack> items, armor, extraSlots;
|
||||||
private final List<NonNullList<ItemStack>> f;
|
private List<NonNullList<ItemStack>> f;
|
||||||
|
|
||||||
public SpecialPlayerInventory(final Player bukkitPlayer, final Boolean online) {
|
public SpecialPlayerInventory(final Player bukkitPlayer, final Boolean online) {
|
||||||
super(PlayerDataManager.getHandle(bukkitPlayer));
|
super(PlayerDataManager.getHandle(bukkitPlayer));
|
||||||
|
@ -73,10 +73,14 @@ public class SpecialPlayerInventory extends PlayerInventory implements ISpecialP
|
||||||
EntityPlayer entityPlayer = PlayerDataManager.getHandle(player);
|
EntityPlayer entityPlayer = PlayerDataManager.getHandle(player);
|
||||||
entityPlayer.inventory.transaction.addAll(this.transaction);
|
entityPlayer.inventory.transaction.addAll(this.transaction);
|
||||||
this.player = entityPlayer;
|
this.player = entityPlayer;
|
||||||
this.player.inventory.a(this);
|
for (int i = 0; i < getSize(); ++i) {
|
||||||
|
this.player.inventory.setItem(i, getRawItem(i));
|
||||||
|
}
|
||||||
|
this.player.inventory.itemInHandIndex = this.itemInHandIndex;
|
||||||
this.items = this.player.inventory.items;
|
this.items = this.player.inventory.items;
|
||||||
this.armor = this.player.inventory.armor;
|
this.armor = this.player.inventory.armor;
|
||||||
this.extraSlots = this.player.inventory.extraSlots;
|
this.extraSlots = this.player.inventory.extraSlots;
|
||||||
|
this.f = ImmutableList.of(this.items, this.armor, this.extraSlots);
|
||||||
this.playerOnline = true;
|
this.playerOnline = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -116,6 +120,19 @@ public class SpecialPlayerInventory extends PlayerInventory implements ISpecialP
|
||||||
return list.get(i);
|
return list.get(i);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private ItemStack getRawItem(int i) {
|
||||||
|
NonNullList<ItemStack> list = null;
|
||||||
|
for (NonNullList<ItemStack> next : this.f) {
|
||||||
|
if (i < next.size()) {
|
||||||
|
list = next;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
i -= next.size();
|
||||||
|
}
|
||||||
|
|
||||||
|
return list == null ? ItemStack.a : list.get(i);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IChatBaseComponent getDisplayName() {
|
public IChatBaseComponent getDisplayName() {
|
||||||
return new ChatMessage(this.player.getName());
|
return new ChatMessage(this.player.getName());
|
||||||
|
|
Loading…
Reference in a new issue