
When calling net.milkbowl.vault.economy.Economy#withdrawPlayer and net.milkbowl.vault.economy.Economy#depositPlayer, checks should be added to make sure the EconomyResponse that these methods return is EconomyResponse.SUCCESS before going ahead with the transaction.
The reason why this is important is because there is a potential case whereby a Vault economy provider plugin has a maximum balance, and if a player sells an item that would result in their balance exceeding the maximum, the economy provider would return EconomyResponse.FAILURE and not add the amount to their balance. However, even in this case, ShopGUI+ will still say that the item was sold and remove the item from the player’s inventory, resulting in the player losing the item without getting any money for it.
