Commit Graph

307 Commits

Author SHA1 Message Date
Phoenix616
2459a406fe Auto-correct item code on sign.
This also makes it possible to input IDs on the sign that are longer than the max sign letters that the plugin uses as that just gets auto corrected back down to the correct amount.
2018-09-09 13:26:08 +01:00
Phoenix616
f1ce97dbce Merge branch '1.12' into 1.13 2018-09-05 23:07:49 +01:00
Phoenix616
df76347697 Improve sign price corrections
This includes a new price_precision config entry to set the amount of decimal places to allow on a shop sign (set to 2 by default). Thanks to @andrewkm for this idea.
It also fixes an issue where a zero inside the decimal places was removed instead of it's end and also removes the point and zeros from prices that only have trailing zeros to avoid confusion (e.g. in languages that use the decimal point for thousands)
2018-09-05 23:07:35 +01:00
Phoenix616
5f0bbfff0c Merge branch '1.12' into 1.13 2018-08-29 21:29:52 +01:00
Phoenix616
dd4177e7cb Query server's player cache for missing players
This uses a cache for players that we haven't found before so to not check the cache too often and also checks if the online mode of the queried OfflinePlayer matches the server's mode (gotten from the first logged-in player in order to be compatible with BungeeCord requiring the server to be in offline-mode.
2018-08-29 21:29:27 +01:00
Phoenix616
cf9e5bafde Merge branch '1.12' into 1.13 2018-08-23 22:12:58 +01:00
Phoenix616
836ef56864 Add more message placeholders (Fixes #159) 2018-08-23 22:10:24 +01:00
Phoenix616
e155b98c96 Merge branch '1.12' into 1.13 2018-08-22 00:29:12 +01:00
Phoenix616
fc62ab0823 Use different economy responses and make some events cancellable
Also moved the creation fee subtraction to before the shop was created to be able to cancel the creation
2018-08-22 00:21:34 +01:00
Phoenix616
d4e39a3751 Make it compile with 1.13. No guarantees that it works without issues! 2018-07-26 00:13:06 +01:00
Daniel V
8ae72e5803 Feature: Reserve Support (#143)
This introduces a new AccountCheckEvent to check if a user actually has an account with the used economy plugin. Also fix CurrencyTransferEvent logic (even though it's not used anywhere currently)
2018-07-11 18:09:07 +01:00
Phoenix616
7311907559 Add more per material shop creation permissions 2018-06-24 00:17:35 +01:00
Phoenix616
1cb481097c Don't refund for non-finished signs (Fixes #141) 2018-06-23 15:01:41 +01:00
Phoenix616
5b925171e3 Add support for stored enchantments to /iteminfo and format it better
Partly fixes #135
2018-06-03 19:23:40 +01:00
Phoenix616
036d309965 [CI-SKIP] Fix some formatting inconsistencies
Remove spaces on empty lines and changed doc comment formatting
Also includes some minor comments and import fixes
2018-05-07 15:32:51 +01:00
Phoenix616
b3e62f199f Add option to set the worlds where shops should be removed (Fixes #129)
This also adds the ability to set string lists in the config.
2018-05-05 16:23:30 +01:00
Phoenix616
ae8d1c79e9 Properly check if item is empty (Fixes #123) 2018-04-02 17:41:45 +01:00
Phoenix616
6e9824e6b0 Add better item name shortening. (Fixes #112) 2018-03-12 21:01:28 +01:00
Tim222
21815197c6 Fix Vault-Accountcheck for renamed player (#106) 2018-01-27 17:12:34 +01:00
Phoenix616
c5c9e96b13 Properly stack partial stacks (Fixes #102) 2018-01-23 17:32:54 +01:00
Phoenix616
650d02e401 No need to log console message async (Fixes #101)
Iirc this was only async for database logging or name resolving. Neither of these is done anymore and async access of the Bukkit API can lead to strange problems like the CME described in the mentioned issue.
2018-01-22 01:00:24 +01:00
Phoenix616
1788fa9702 Fix NPE when section doesn't exist (Fixes #99) 2018-01-13 23:35:55 +01:00
Phoenix616
6d4db1c8f6 1.13 preparations: Get rid of numeric item ids 2018-01-12 17:54:57 +01:00
Phoenix616
0176ea1dc5 Check the block that the sign is attached to first (Fixes #97)
Also fix some oddities and duplicate code/method execution
2018-01-11 18:28:45 +01:00
Phoenix616
445ed9574a Send buy notification to shop owner, not to buyer (Fixes #98) 2018-01-11 15:29:04 +01:00
Phoenix616
4fd2bcb836 Send correct message when shop is full. (Fixes #95) 2018-01-09 19:55:37 +01:00
Phoenix616
eaeeb80fd3 Fix issues with partial item transfer due to full inventory 2018-01-08 23:56:58 +01:00
Phoenix616
b2a31b8eb2 Add ability to autofill sign by clicking it
Also disable the worldguard shop flag by default...
2018-01-07 02:11:59 +01:00
Phoenix616
ac73442643 Added ability to show item icons and hover info with ShowItem 2018-01-06 17:44:35 +01:00
Phoenix616
110d98d599 Fix cast exception (Fixes issue #93) 2018-01-06 15:44:51 +01:00
Phoenix616
0e8ef9f2be Revert cancelling change. The events don't and can't extend Cancellable. 2018-01-05 18:34:45 +01:00
Phoenix616
b23a0d238e Allow partial transactions due to missing inventory space (Fixes #88) 2018-01-05 18:30:06 +01:00
Phoenix616
a0505e995e Merge items in logger message 2018-01-03 17:28:31 +01:00
Phoenix616
d84313716f Add old piston checks back in for backwards compatibility. (Fixes #91)
These checks are completely unsupported though!
2017-12-31 01:13:13 +01:00
Phoenix616
7c9dd5c3f3 Check all blocks moved by pistons (Fixes DBO-1247) 2017-12-30 16:08:09 +01:00
Phoenix616
5d73320889 Set sign lines even when the event is cancelled (Fixes #82)
Also get the sign line from the event instead of the sign when checking if it is an admin shop so you can actually change that via an event listener.
2017-11-20 13:44:59 +01:00
Phoenix616
29ef7f25aa Fix errors when server economy account is not defined or invalid 2017-11-15 21:13:07 +01:00
Phoenix616
2d45dcdac0 Get rid of expensive calls to Bukkit#getOfflinePlayer with a username
This changes events to store the database Account instead of an OfflinePlayer and deprecates any event method that uses/returns OfflinePlayer. This is necessary as Bukkit#getOfflinePlayer(String) queries Mojang for the UUID when the user was not found in the local cache. As we already store this information (name to UUID mapping) in our database we should not have no need to rely on querying Mojang. (This might make transactions fail for shop owners that haven't played before but that shouldn't really be an issue in most cases)
2017-10-29 23:50:24 +01:00
Phoenix616
1d80edbf9b Get rid of google dependencies
Mostly replaced with Java 8 features and our own cache
2017-09-23 15:19:00 +01:00
Phoenix616
9b7000272d Merge remote-tracking branch 'origin/master' 2017-09-06 14:20:14 +01:00
Phoenix616
9da7d5198b Fix stacking issues (Fixes #74)
This also fixes some conditions under which the STACK_TO_64 option did not get applied correctly and wrong inventory space checking for items with a max stack size of less than 64
2017-09-06 14:19:34 +01:00
Max Lee
3434c8860c Merge pull request #64 from LukBukkit/master
Fixed an error when trading with a admin shop (Fixes #59, #63 & DevBukkit #1219)
2017-08-27 16:16:11 +01:00
Phoenix616
9368dfea75 Make sure owner name is set (Fixes DevBukkit-1225) 2017-08-15 13:02:26 +01:00
LukBukkit
e672dc5e22
Fixed an error when trading with a admin shop (Fixes #59 & fixes #63) 2017-07-26 15:13:03 +02:00
Phoenix616
b3b9e690dd Fix NPE when server economy account info can't be found (DevBukkit-1216)
Also add a warning to the startup if that happens
2017-07-09 17:00:31 +01:00
Phoenix616
0dea862cd0 Add full shop message, location and respect cstoggle
Inspired by @Brokkonaut's fork this adds a new NOT_ENOUGH_SPACE_IN_YOUR_SHOP message to send to the shop owner when someone tries to sell to his shop. It also adds new %world, %x, %y and %z variables to display the shop's location in the message, adds a config option to make both the full-shop and out-of-stock messages respect /cstoggle and makes values in the locale.yml support ampersand color codes.
2017-07-04 16:06:34 +01:00
Phoenix616
70fa6292b1 Get OfflinePlayer from namewith offline mode UUIDs. Fixes #60 2017-07-02 23:32:06 +01:00
Phoenix616
0525c70452 Rewrite NameManager to support multiple short names per user
This should fix the issue where the player's short name on the shop sign does not reflect the actual player's name. This works by storing every uuid-username combination together with the associated short name and the last time the player logged in with that combination.
2017-07-01 17:14:41 +01:00
Phoenix616
0b65a7cc92 Rewrite (and document) the NameManager
This should fix issues with how name changes are handled and also prevent short names of different players from clashing. It also uses guava caches instead of maps now with a configurable cache size
2017-06-30 20:28:18 +01:00
Phoenix616
cf2497ff91 Fix potential NPE 2017-06-28 22:11:54 +01:00
Dan Mulloy
fa7a196bab Fix static access 2016-11-21 11:43:09 -05:00
L4BORG
2ff945bbe6 Fix Admin Shops 2016-11-10 03:17:27 +01:00
L4BORG
24eb1b1e19 Economy fixes, fix for https://github.com/dmulloy2/ChestShop-3/issues/11 2016-10-13 18:11:23 +02:00
Dan Mulloy
e186635484 Try to fix a few more errors
Fixes #7
2016-09-20 15:45:18 -04:00
mibby
8c7594be51 Revert PlayerKick Behavior
Partial revert of 'Do not let people with already used usernames connect to the server' commit. 

See comments here b0369d8e69 (commitcomment-14185778) and here. 
c169df2265 (commitcomment-12846919)

I personally believe ChestShops should not dictate whether a player is allowed to connect to the server or not. I personally have had issues with ChestShops kicking legitimate players from the server in online mode.
2016-08-27 20:09:09 -07:00
mibby
17eb698e28 Move sign-update() to break listener
This fixes an infinite loop crash where the sign update calls the piston event and the update again and again.
Also signs can't even be pushed by pistons...
2016-08-27 19:58:45 -07:00
Dan Mulloy
5749c84c28 Fix and re-enable AuthMe hook 2016-08-20 16:17:10 -04:00
Dan Mulloy
a13b2c9070 Fix a few NPE's caused by null accounts
Thanks @mibby
2016-07-07 12:15:43 -04:00
Dan Mulloy
123c05a98e Update to 1.9 2016-03-06 14:50:15 -05:00
Andrzej Pomirski
5f7d6776c2 kickPlayer() should be called asynchronously 2015-08-15 19:38:30 +02:00
Gabriele C.
1546461fa2 Update AuthMeChestShopListener.java 2015-08-07 15:18:21 +02:00
Gabriele C.
897127976a Merge pull request #1 from Acrobot/master
Up
2015-08-07 15:16:06 +02:00
Gabriele C.
656c1080ce Update AuthMeChestShopListener.java 2015-08-07 15:15:35 +02:00
Gabriele C
be26bea03c Moved AuthMe hook to ChestShop using the API 2015-08-06 15:59:51 +02:00
Andrzej Pomirski
b0369d8e69 Do not let people with already used usernames connect to the server 2015-08-06 15:19:46 +02:00
Gabriele C
690af050e1 Style fix, removed useless cases 2015-08-06 14:33:15 +02:00
Gabriele C
8c49bfdbf4 Fixes 2015-08-01 09:52:13 +02:00
Andrzej Pomirski
3c949f0450 Remove trailing zeroes from prices 2015-07-12 19:18:31 +02:00
Andrzej Pomirski
7bc452e203 Switch to thread-safe DTOs 2015-07-05 21:56:42 +02:00
Andrzej Pomirski
118f72e805 Speed up SignBreak 2015-07-05 21:55:59 +02:00
Andrzej Pomirski
99959f2ca0 Fix the problem with colour signs
Apparently sign colour plugins do not consider &0 to be a colour that
needs to be removed if there is no other code like that on the sign,
thus ChestShop did not register the initial SignChangeEvent, however
after the server software removes the redundant colour from the sign, it
appeared and worked just like a ChestShop one. This commit "fixes" this
by stripping the colour codes from the sign before it is created.
2015-05-31 18:27:11 +02:00
Andrzej Pomirski
6982ef38d1 Should fix the Mac issues 2015-05-22 13:26:42 +02:00
Andrzej Pomirski
2cde9da196 Remove DB logging 2015-05-22 13:26:28 +02:00
Andrzej Pomirski
cd3781c26c Should fix the lag, hopefully 2015-05-22 13:26:20 +02:00
Andrzej Pomirski
6466b2d6aa Remove logging to database! 2015-05-22 13:25:32 +02:00
Andrzej Pomirski
1bd0e9f8ef Change the priority of the discount handler 2015-03-11 18:02:41 +01:00
Andrzej Pomirski
28f9f08987 Fix money being transferred to the old username 2015-03-11 18:02:30 +01:00
Andrzej Pomirski
f975450130 Fix an issue caused by Spigot/CraftBukkit "forgetting" the usernames
Somehow, OfflinePlayer initiated with an UUID does not contain the
"name" property after a while.
2015-01-17 15:18:32 +01:00
Andrzej Pomirski
116d22dd62 Sign charge fees should go to the server account 2015-01-08 20:24:40 +01:00
Andrzej Pomirski
31003ca29f Add rounding option to tax getter 2015-01-08 20:12:53 +01:00
Andrzej Pomirski
a058b80990 Fix WordGuard + minor fixes 2014-11-30 20:15:27 +01:00
Andrzej Pomirski
a4fdc30e17 Add an additional "%buyer" tag to the out of stock message 2014-08-13 17:23:11 +02:00
Andrzej Pomirski
6bbfc93b27 Fix the "value already present" error 2014-07-22 22:03:50 +02:00
Andrzej Pomirski
be18af86f6 Prevent shops from being ignited 2014-07-13 12:54:30 +02:00
Andrzej Pomirski
d1a79425ed Automatically drop the username on leave 2014-07-03 18:49:12 +02:00
Andrzej Pomirski
1bbf293379 Fix nicknames 2014-06-29 22:22:28 +02:00
Andrzej Pomirski
2a89fb345b NameManager > Bukkit 2014-06-22 14:33:02 +02:00
Andrzej Pomirski
9fa2f92ef8 Switch Vault from names to UUIDs 2014-06-14 20:46:59 +02:00
Andrzej Pomirski
404f7296e0 Remove Register - NO DEFAULT ECONOMY SUPPORT 2014-06-14 20:40:31 +02:00
Andrzej Pomirski
4d5f568e1f Removed the admin shop message, since it is no longer necessary 2014-05-24 11:23:43 +02:00
Andrzej Pomirski
39213b2be1 Refactoring the latest /cstoggle changes 2014-05-24 11:15:54 +02:00
Faris Rehman
4194a09c86 Fixed missing code 2014-05-20 22:18:51 +01:00
KingFaris10
dffbb7f06a Added /cstoggle to disable spam messages. 2014-05-20 22:13:25 +01:00
Andrzej Pomirski
c403c1736f Fix the ? item recognition 2014-04-21 17:08:31 +02:00
Andrzej Pomirski
b4947475e2 Remove the "hacking" message. 2014-04-18 19:41:27 +02:00
Andrzej Pomirski
f193276372 Prevent from breaking signs for non-existant players 2014-04-12 17:27:16 +02:00
Andrzej Pomirski
e02a8bb92e Fix the name autocompletion 2014-04-12 17:16:13 +02:00
Andrzej Pomirski
b37ae0fbc4 UUID changes 2014-04-12 14:22:34 +02:00
Andrzej Pomirski
4107b10f4b More UUID changes 2014-04-12 13:57:39 +02:00
Andrzej Pomirski
7321e6dc07 More UUID changes 2014-04-12 13:38:11 +02:00
Andrzej Pomirski
b0e452ed1d Refactoring 2014-04-12 13:28:13 +02:00
Andrzej Pomirski
0328374951 Clean up the imports 2014-04-11 17:37:53 +02:00
Andrzej Pomirski
dd22c709e0 This should cover the basics of UUID change
WARNING: Users with names longer than 15 characters will not be able to
receive money as long as they do not join the server
2014-04-10 22:52:21 +02:00
Andrzej Pomirski
da7e236c0e Use ORMlite for the UUID->name mapping 2014-04-10 21:52:05 +02:00
Andrzej Pomirski
f5771c28d8 Change the priority of ChestShop's interact event 2014-03-20 16:57:48 +01:00
Jacek Kobus
d63f54d540 Chestshop ignores event cancellation
Plugins with LOWEST priority cancel the event but chestshop ignores that flag and continues anyway.
2014-03-19 01:07:32 +01:00
Andrzej Pomirski
20deb65a57 Add auto-item-fill 2014-03-12 13:27:30 +01:00
Andrzej Pomirski
e18269a7b7 Prevent from scamming 2014-03-12 12:50:39 +01:00
Andrzej Pomirski
9ada7281cd Prevent taxes from being added to cancelled transactions as well 2014-02-10 12:27:52 +01:00
Andrzej Pomirski
d51f52af9e Fix items with name longer than then sign can handle 2014-02-10 12:03:13 +01:00
Acrobot
348cbda185 Fix the hopper protection 2014-01-08 00:12:29 +01:00
Acrobot
6d601fd2bf Fix the message spam 2013-12-07 18:31:25 +01:00
Acrobot
387961d242 WAT. NO. 2013-12-07 18:30:26 +01:00
Acrobot
c8ddf29e91 Fix players not being refunded the money 2013-12-03 18:32:09 +01:00
Acrobot
023cabd849 Change the check 2013-11-01 16:44:57 +01:00
Acrobot
36c33612a0 Fix possible fraud cause 2013-11-01 13:48:54 +01:00
Acrobot
ac523a1112 Add a prevention from NPE 2013-10-27 16:51:20 +01:00
Acrobot
7c5ed4781f Add a prevention from IOUB-exceptions 2013-10-27 16:51:01 +01:00
Acrobot
9dae38593d Add a ShopDestroyed hook 2013-10-27 16:50:19 +01:00
Acrobot
7b8396a3ef Set the priority to monitor 2013-10-04 18:35:34 +02:00
Acrobot
b59f052019 Fix for McMMO compatibility 2013-10-04 18:29:50 +02:00
Acrobot
44c4b282b3 Fix the teleport issue 2013-08-29 00:24:12 +02:00
Acrobot
882f449ba0 Remove debug messages 2013-08-27 00:47:47 +02:00
Acrobot
d66f6b95d2 Add a system to fix invalid signs 2013-08-27 00:45:14 +02:00
Acrobot
8a9f1c52c7 Protect from extremally high balances 2013-08-26 23:36:36 +02:00
Acrobot
bfad819a0a Remove unnecessary imports 2013-08-10 19:53:42 +02:00
Acrobot
aa87b01b68 Fix possible StackOverflowExceptions 2013-08-09 23:00:23 +02:00
Acrobot
900009b103 Fix a bug where the chat was closed on teleport 2013-08-08 20:25:44 +02:00
Acrobot
e1cb30a0e8 Add shop created/removed logging 2013-08-07 02:03:09 +02:00
Acrobot
42ca03b780 Send the transaction message in an async thread 2013-08-05 02:06:01 +02:00
Acrobot
9e1e582d4a Minor performance improvements 2013-08-05 02:05:43 +02:00
Acrobot
77ef3121d3 Fix a possible duplication bug 2013-07-28 16:58:00 +02:00
Acrobot
438e3a6ed0 Fix an NPE when Vault was not found 2013-07-22 21:37:59 +02:00
Acrobot
968296f1bb Fix the issue with Admin Shops 2013-07-21 16:51:36 +02:00
Acrobot
ff4cfb0c7c Automatic code re-format and re-organisation 2013-07-21 16:49:55 +02:00
Acrobot
b1111798ad Fix possible dupe 2013-07-13 23:14:23 +02:00
Acrobot
bca38b8a79 Transfer to new economy handling
No bank support... sorry @jrtc27, it's coming later!
2013-07-13 23:14:10 +02:00
Acrobot
cb265136b0 Update pom.xml 2013-07-13 23:12:02 +02:00
Acrobot
2c0207adb1 Add economical listeners 2013-05-30 16:58:42 +02:00
Acrobot
c86ffb623a Add an external Vault dependency 2013-05-30 16:57:54 +02:00
Acrobot
00e577ff0a Fix the name checker! 2013-05-20 19:09:37 +02:00
Acrobot
94e94e99a2 Fix PriceRestrictionModule 2013-05-03 01:56:43 +02:00
Acrobot
12a1dd87f3 Modify modules + fix maxPrice 2013-04-23 21:04:59 +02:00
James Clarke
6f12dd8464 Added support for bank accounts 2013-04-12 18:23:34 +01:00
Acrobot
f5f883df8e Instead of buy/sell all, shift sells one stack 2013-04-05 14:17:34 +02:00
Acrobot
a3654ea031 Added an option to specify what shift does 2013-03-30 15:58:06 +01:00
Acrobot
c29c132c58 Prevent NPEs from happening 2013-03-25 19:41:49 +01:00
Acrobot
30a514e783 Properly re-write BlockPlace listener 2013-03-24 20:58:09 +01:00
Acrobot
2448af7bcb Make use of the new InventoryMoveEvent 2013-03-24 20:57:54 +01:00
Acrobot
1bc4fbcc78 Do not capitalize the metadata 2013-03-24 00:53:33 +01:00
Acrobot
055684fcbf Fix NPE 2013-03-24 00:53:06 +01:00
Acrobot
775dbe5afe First MC 1.5 version 2013-03-16 19:27:24 +01:00
Acrobot
6576198b69 Fix priorities 2013-03-16 18:33:09 +01:00
Acrobot
5e987b927c Format the fee message 2013-03-16 18:32:59 +01:00
Acrobot
86889b0ffc Rework LWC module 2013-03-16 18:32:41 +01:00
Acrobot
be46ac065f Fix the money bug 2013-03-11 00:32:11 +01:00
Acrobot
a5bfa86bca Mavenized the project
Switched the project to Maven - you're now able to easily build
ChestShop.
2013-03-08 20:31:15 +01:00