Commit Graph

172 Commits

Author SHA1 Message Date
Eric
248cf08811 Added tab completion for commands
Had to change the way the custom command is registered,
so I could add a tab completer
2017-03-25 15:12:09 +01:00
Eric
da41151402 Added shift-click to sell stack
Only works when a player does not have an axe in one of his hands.
If he has, the shop will be broken/removed (if he has permission).

Closes #84
2017-03-25 13:45:17 +01:00
Eric
1de56fcf6a Protect holograms from damage 2017-03-25 13:24:05 +01:00
Eric
ea41f6759e Shop chests can only be broken with an axe 2017-03-25 13:18:52 +01:00
Eric
2302962eac Added shift-click to buy stack
Closes #85
2017-03-21 15:40:23 +01:00
Eric
474f734456 Added command "/shop open" to open shops
Shift-click no longer works anywhere to open a shop.
2017-03-21 15:03:12 +01:00
Eric
79660920d8 Updated events
Methods getPlayer() and getShop() don't need to be overridden,
as they are now declared in the ShopEvent superclass.
2017-03-21 14:25:49 +01:00
Eric
bc13dd7a9d Prevent armor items from being taken by the hologram 2017-03-17 15:01:11 +01:00
Eric
d2b75295ca Added null checks for Hologram in WorldGuardListener 2017-03-17 15:00:35 +01:00
Eric
39822fe8df Added AuthMe support
Closes #64
2017-03-17 14:59:34 +01:00
Eric
268d69c077 Only update shops if player has moved 2017-03-17 14:04:29 +01:00
Eric
598f9434e6 Switch from MCStats to bStats
New stats link: https://bstats.org/plugin/bukkit/ShopChest
2017-03-15 18:40:45 +01:00
Eric
6d6595c642 Fixed Events
Added missing static method getHandlerList
2017-03-14 15:54:47 +01:00
Eric
e29da1279b Catch IllegalStateException for getLineOfSight
Closes #79
2017-02-15 17:04:32 +01:00
Eric
00323510bb Only show shops to players who point on the shop (configurable) 2017-02-10 17:59:08 +01:00
Eric
3459a8ccba Stop shop updater when server is empty and restart on join 2017-02-08 21:49:23 +01:00
Eric
9583b77413 Fix NPE on player join
Fixes #77
2017-02-08 14:04:23 +01:00
Eric
8b8c7d4d73 Show and hide holograms asynchronously 2017-02-05 17:22:37 +01:00
Eric
bae02c910a Fixed fallback command "/shopchest:shop" 2017-02-05 17:19:31 +01:00
Eric
4d7f5dc3b7 Fixed holograms in the end world
Fixes #74
2017-02-05 14:51:46 +01:00
Eric
150c178679 Check if item names in config are valid 2017-01-28 12:23:10 +01:00
Eric
c269cea82b Fixed holograms from being displayed too far away after teleporting 2017-01-21 13:30:39 +01:00
Eric
f0a0d760a0 Fixed NPE on hologram updating
Fixes #63
2017-01-13 15:31:28 +01:00
Eric
39e3b4f837 Fixed error when clicking an entity that is not an ArmorStand
(only occurred with WorldGuard)
2017-01-06 13:21:06 +01:00
Eric
30ede5e01e Added configurable maximum prices
Closes #55
2017-01-05 14:35:42 +01:00
Eric
4c5ec37588 Call ShopUpdateEvent synchronously 2017-01-05 14:13:07 +01:00
Eric
4194c72bd4 Added vendor information about a sold out shop 2017-01-04 18:46:50 +01:00
Eric
f6f8d93b85 Improve performance while updating shops
Inspired from the fork of @gonzalociocca but not exactly the same
Closes #39
2017-01-04 17:07:00 +01:00
Eric
e08b09fe3f Allow better customization of hologram lift
Closes #38
2017-01-04 14:50:11 +01:00
Eric
2951ef8349 Only permitted players can remove admin shops
+ Changed permission "shopchest.removeOther" to "shopchest.remove.other"
Closes #36
2017-01-04 14:34:59 +01:00
Eric
f233c626e1 Add way to invert mouse buttons
Closes #35
2017-01-03 15:35:35 +01:00
Eric
f54c2ff7ff Shortened method to check WorldGuard permission 2017-01-03 14:28:54 +01:00
Eric
8217cdef6f Allow customization of custom WorldGuard flags' default values
Closes #45
2017-01-03 13:59:09 +01:00
Eric
49398547f1 Hide WorldGuard message when interacting with hologram 2017-01-03 13:34:34 +01:00
Eric
8e867a7c1d Hopefully fixed item meta issues for good 2017-01-03 13:06:29 +01:00
Eric
f1712a6bce Added 1.11.2 translation values and the missing one for "Nether Wart" 2017-01-02 19:20:41 +01:00
Eric
222b553a8e Fixed Shulker Boxes
Closes #53
2017-01-02 17:50:46 +01:00
Steven M
bedf207210 Fix fireworks (#52)
Fixes #51
2017-01-01 17:52:33 +01:00
gonzalociocca
253e40e8b9 Only compare a world's name to improve performace (#40)
When using .equals() on classes with many variables and methods, means that every single thing on the class would be checked to be equals to the one from the another class, and its taking too much CPU.
2016-12-08 20:11:48 +01:00
Steven M
f4b7df8c92 Add additional check for permissions (#42) 2016-12-08 20:08:28 +01:00
Eric
192b124eb5 Added way to disable vendor messages
(= Messages that a vendor gets after players buy or sell something from/to
his shop)

Closes #33
2016-11-26 17:23:32 +01:00
Eric
98c79f5e8a Fixed issue when shop limit by permission is smaller than default 2016-11-26 17:13:39 +01:00
Eric
73f5d0f79e Change get(...) to getShop(...) in database 2016-11-26 17:07:21 +01:00
Eric
4f894ddac7 Fix ClassCastException when using Shulker Boxes
Closes #34
2016-11-26 17:06:21 +01:00
Eric
1fa0f08073 Shortened getShops method in ShopUtils 2016-11-25 13:55:39 +01:00
Eric
a522197112 Improve performance while reloading shops 2016-11-24 22:00:49 +01:00
Eric
1fbcd76098 Fixed WorldGuard support for lower versions 2016-11-23 17:23:57 +01:00
Eric
e9bcd2dd2f Add config value to enable quality mode 2016-11-23 17:17:09 +01:00
Eric
cda28be3e3 Set ignoreCancelled flag to chest protection events 2016-11-23 17:08:46 +01:00
Eric
eda52af179 Fix support for WorldGuard v6.1.3 and later 2016-11-23 17:08:20 +01:00
Eric
103662c532 Add support for per-world-economy plugins
The money will be withdrawn or deposited on the world of the shop
2016-11-23 16:11:07 +01:00
Eric
d097a15122 Added way to disable WorldGuard/Towny integration
+ Added permission to use shops in WorldGuard regions that deny shop use
2016-11-23 16:05:33 +01:00
Eric
04a6d836b9 Added towny support
- Players can only create shops in shop plots, not in wilderness or normal
  plots
- Added permission "shopchest.extend.protected"
- Changed permission "shopchest.extendOther" to "shopchest.extend.other"
- When creating a shop on a double chest, both chests must not be
  protected/in a protected region
- To extend a shop into a protected region (e.g. WorldGuard/Towny), you
  need permission (shopchest.extend.protected)
- Added no-permission message for "shopchest.extend.protected"
2016-11-20 14:18:36 +01:00
Eric
dcd50bad33 Fixed NPE when database was not initialized 2016-11-20 14:18:35 +01:00
Eric
198f83c738 Fix hologram interaction in 1.8.x 2016-11-19 21:34:59 +01:00
Eric
6dcedc9bff Added messages when WorldGuard denies shop use 2016-11-19 14:45:18 +01:00
Eric
0c127a7d74 Fix hologram bounding box when interaction is enabled 2016-11-19 14:45:17 +01:00
Eric
6223d9393f Fix hologram visibility on join 2016-11-19 14:45:16 +01:00
Eric
0e73880603 Fixed console spam again
(Output of language reload)
2016-11-18 22:29:29 +01:00
Eric
3c822332d1 Allow console to use some commands
This changes the command executor class a lot
2016-11-18 22:29:29 +01:00
Eric
e8100564ff Fix and shorten command registration 2016-11-18 22:29:28 +01:00
Eric
fdfc7419d9 Permission constants & No more Vault permission system 2016-11-18 22:29:28 +01:00
Eric
1d7a534fe4 Added permission for extending other players' shop chests 2016-11-18 22:29:27 +01:00
Eric
ef3bc57381 Allow permitted players to break other players' shops 2016-11-18 22:29:26 +01:00
Eric
58ad504f7f Add hologram interaction (configurable) 2016-11-18 17:58:50 +01:00
Eric
068edfa9ff Fixed book meta for 1.10 2016-11-18 17:58:49 +01:00
Eric
b7aa71599e Add support for 1.11 2016-11-17 20:30:26 +01:00
Eric
7e044eb7b1 Fixed selling to full admin shops and support for lower versions 2016-11-17 20:16:42 +01:00
Eric
2bacca0915 Fix shop limits configuration 2016-11-13 20:58:48 +01:00
Eric
3562a534c7 Fix loading when WorldGuard is not enabled 2016-11-13 20:51:25 +01:00
Eric
334219cbe1 Fixed issue with BlockStateMeta 2016-11-13 14:00:07 +01:00
Eric
ff406abf2d Added WorldGuard support
Might contain issues, as it's not tested extensively
2016-11-13 13:43:03 +01:00
Eric
dbf809ea5b Only show help messages of commands a player can enter 2016-11-12 15:55:36 +01:00
Eric
acef90335c Changed/Fixed hologram appearing
I didn't like the look of the performance saving, as the hologram would appear at a lower distance then it would disappear
2016-11-12 15:43:56 +01:00
Eric
8ecea0d938 Fix NPEs caused by non-existent Shop Items 2016-11-12 15:17:13 +01:00
Eric
3f3ddfe66f Fixed issues with ItemMeta
(Mostly issues with books)
Fixes #30
2016-11-12 15:03:19 +01:00
Eric
b73ad05034 Use permission based shop limits
This also removes the permission "shopchest.limits"
Closes #27
2016-11-12 15:02:10 +01:00
Eric
8452fad8a3 Hide messages in the console on auto reload 2016-10-12 20:09:18 +02:00
Eric
f75e07aad0 Show shop item and hologram on creation 2016-10-12 18:30:51 +02:00
Eric
6009ad20c3 Amount must be greater than 0 2016-10-12 18:25:36 +02:00
Eric
99a15fd8f6 Fix ocelot spawn eggs
Closes #29
2016-09-27 20:26:04 +02:00
Eric
076846d74e Fix error when a book doesn't have a title (e.g. book and quill) 2016-09-27 20:24:50 +02:00
Eric
c9c5b5b37d Slightly improved economy transactions
- Only start the second economy transaction after the first one succeeds
- Undo the first transaction if the second one fails
2016-09-07 17:00:59 +02:00
Eric
94011c997d Improved illogical condition whether buying/selling is enabled 2016-09-06 11:53:20 +02:00
Eric
c9a63c7cbb Display "Disabled" instead of 0$ when selling/buying is disabled 2016-09-06 11:53:06 +02:00
Eric
da772fcbd6 Shop items now protected from spreading and growing blocks 2016-09-06 11:16:36 +02:00
Eric
f76ec6fe2d Added null check for shop item when updating visibility 2016-08-20 12:41:27 +02:00
Eric
6a96e235a6 Readded autoReconnect parameter to MySQL connection url 2016-08-20 12:38:53 +02:00
Eric
684a0b3c8a Use bukkit's ChatColor 2016-08-19 19:47:12 +02:00
Eric
1b51318dbe Fixed shop items after teleporting far or changing worlds 2016-08-19 14:34:02 +02:00
Eric
418c82e4bf Display UUID when a vendor's name is not found 2016-08-19 12:48:59 +02:00
Eric
c8f4e8980e Fixed error message in console after teleporting
p.getWorld() does not return the right world when the process of teleporting has not yet finished. We need to use the world of the passed location object, which in the PlayerTeleportEvent is e.getTo()
2016-08-18 22:59:12 +02:00
MineTheCube
e94463ccbe Make logEconomy asynchronous (#21) 2016-08-18 16:59:57 +02:00
Eric
7c27fc0d54 Added configurable value "allow-decimals-in-price"
When disabled, "auto-calculate-item-amount" will be disabled too, even if it's set to true in the config.
This closes #20
2016-08-18 15:33:58 +02:00
Eric
6205dfbd65 Merge pull request #18 from MineTheCube/master
- Improve listeners performances
- Fixes #17
2016-08-18 15:03:37 +02:00
MineTheCube
1c079b5abe Change method name to what it really does 2016-08-18 14:43:36 +02:00
MineTheCube
55a3bb87d3 Change event priority and ignore cancelled
Make it consistent with ShopItemListener#onPlayerMove(PlayerMoveEvent)
2016-08-18 14:34:43 +02:00
Eric
d1453d5839 Added economy log in database file
Closes #19
2016-08-18 13:30:14 +02:00
MineTheCube
c2b6281410 Improve listeners performances
This should slightly improve performances, especially with a lot of shops.
Now shops are updated only on block changes and not every move event.
It also uses distanceSquared instead of distance to avoid sqrt operations.
2016-08-18 02:14:59 +02:00
Eric
be52d2c623 Added config value "maximal-item-distance"
This should fix the issue, that shop items are despawning and not spawning again after the chunk unloads.
The item spawn delay was removed.
2016-08-17 21:26:55 +02:00