Some economy plugins, such as Gringotts, only allow a limited amount of money in an account.
Thus, deposits to an account can fail. Chestshop would ignore the failure, which could cause a seller not
to receive the payment for selling an item.
This commit fixes the problem by canceling a transaction if the seller is not able to receive the money of a sale.
Removed a hasAccount check from add, subtract and hasEnough. These checks should not exist.
The reasons are:
hasEnough: The default for an account may not have enough to pay for anything. Changed to check if Server Account instead.
add & subtract: Changed the check to only isEmpty. This is because money should not just be created or destroyed.
- Copied utilities from ChestShop-4
- Made code really, really nicer to read
- Made every external plugin's wrapper a listener, so it listens to events instead of being hard-coded.
- Switched from YamlConfiguration to BreezeConfiguration (from ChestShop 4)
- Fixed getDouble()
- Instead of checking for Admin Shops, we just pass in a new AdminShop Container
- Created events for shop creation, protection checks and protection creation
- Expanded string data value parsing, for example - you can use "Ocelot Monster" on the sign
- Collected all external plugin wrappers in a single folder
- Instead of using statics, now we use objects
- Fixed enchantments for armour
- Made config more readable
- Added a setting for removing empty shops
- Switched from System.out to logger
- Also, switched from ugly file logging to Java's native one (FileHandler)
- Added an option to tax transactions even when SERVER_ECONOMY_ACCOUNT is empty
- Changed the Container interface
- Formatting
- Warning about old Bukkit version
- Renamed "TOWNY_CANNOT_CREATE_SHOP_HERE" to "CANNOT_CREATE_SHOP_HERE" to avoid confusion
- Renamed "NOT_ENOUGH_LWC_PROTECTIONS" to "NOT_ENOUGH_PROTECTIONS" and changed its message
- Fixed armour enchantments
- Logging shop location
- Fixed Heroes for the newest version
- Removed redutant plugin object
- Added dev-url for CraftBukkitUpToDate
- Removed redutant plugins from softdepend
- Fixed a bug when the player interacts with a shop with a sign in hand
- Added partial transactions (You have 5 items, shop wants 10 - you can sell your items for half the price)
- Added a warning to the HTML generator
- Fixed Towny integration
- Fixed occasional ArrayOutOfBoundsExceptions
- Fixed an error when a shop couldn't be created because a sign (not shop sign) was on other side of the block
- Added SCL (SimpleChestLock) protection plugin to supported plugins
- Updated Metrics (and added a new asynch thread for startup)
- Removed Bukkit-1.0 workaround
- Fixed plugin.yml formatting
- Added shop refund message
- Recoded Register for ChestShop
- Added VAULT support (Register is used when no Vault is found)
- Added Heroes exp option for granting exp for shop creation
- EXPERIMENTAL: Option to cause BlockState.update() every transaction (probably doesn't work, as Block.applyPhysics() is needed)
- Added ChestShop.nofee permission for free shop creation (and no refunds)
- Added a separate Admin Shop tax option
-