From aa124109c2bbd9a71227787f8c61cbff9e0558b5 Mon Sep 17 00:00:00 2001 From: snowleo Date: Mon, 9 May 2011 00:12:58 +0000 Subject: [PATCH] [trunk] Add compatibility with backpack plugin. git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1382 e251c2fe-e539-e718-e476-b85c1f46cddb --- .../earth2me/essentials/commands/Commandinvsee.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java b/Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java index 562ee7ad4..c9569feff 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandinvsee.java @@ -1,7 +1,9 @@ package com.earth2me.essentials.commands; import com.earth2me.essentials.User; +import java.util.Arrays; import org.bukkit.Server; +import org.bukkit.inventory.ItemStack; public class Commandinvsee extends EssentialsCommand @@ -37,7 +39,15 @@ public class Commandinvsee extends EssentialsCommand { user.setSavedInventory(user.getInventory().getContents()); } - user.getInventory().setContents(invUser.getInventory().getContents()); + ItemStack[] invUserStack = invUser.getInventory().getContents(); + int userStackLength = user.getInventory().getContents().length; + if (invUserStack.length < userStackLength) { + invUserStack = Arrays.copyOf(invUserStack, userStackLength); + } + if (invUserStack.length > userStackLength) { + throw new Exception("The other users inventory is bigger than yours."); + } + user.getInventory().setContents(invUserStack); user.sendMessage("You see the inventory of " + invUser.getDisplayName() + "."); user.sendMessage("Use /invsee to restore your inventory."); }