Commit Graph

51 Commits

Author SHA1 Message Date
Eric
460abc722e Added permission nodes for shop creation for specific items
Examples:
- "shopchest.create.apple"
- "shopchest.create.stone.2"

But: If a player has permission "shopchest.create", he is allowed to
create shops of all items. Also, the creation of admin shops is not
affected by these permissions.
2017-04-26 16:21:04 +02:00
Eric
d161fc60ac Only show the shop the player targets instead of all the shops he sees
(configurable)
2017-04-19 14:07:22 +02:00
Eric
a4886c8cbb Added debug messages for shop creation (external plugins) 2017-04-19 14:04:57 +02:00
Eric
98275ef57d Switch to Bukkit's inbuilt isSimilar method 2017-04-16 15:48:12 +02:00
Eric
fd9c6beea4 Reduced amount of log messages 2017-04-10 20:01:47 +02:00
Eric
e969aa35da Removed isUUID method 2017-03-30 20:45:09 +02:00
Eric
08f65dbee0 Fixed NPE when creating a shop not in a PlotSquared plot 2017-03-30 20:44:28 +02:00
Eric
4a7202df6f Added support for PlotSquared
Three new custom flags will be available for every plot to set:
- create-shop
- use-shop
- use-admin-shop

These flags can be set to the following values
to allow the flag to that group. If you set the group to
members, trusted members and owners are also allowed the flag:
- owners
- trusted
- members
- everyone
- none

The default value for the flags will be 'none', so be sure to
change it in order to create or use shops!

The flag 'create-shop' can be bypassed by granting the permission
'shopchest.create.protected' (which is not recommended), and the
other flags can be bypassed by granting the permission
'shopchest.external.bypass'.

This closes #87
2017-03-28 14:37:12 +02:00
Eric
b6a233f2b4 Fixed javadoc for methods with a callback as parameter
Also, the getShops() method now always gets all shops from the
database instead of returning the existing one
2017-03-25 15:17:36 +01:00
Eric
dd7a82b49e Added notification about offline revenue on join
Closes #47
2017-03-25 15:17:35 +01:00
Eric
dfafa2930d Added missing null check for callback 2017-03-25 15:17:34 +01:00
Eric
1e38edc7a0 Improved database interaction 2017-03-25 15:17:33 +01:00
Eric
7b3dac61ac Query and update SQL database asynchronously 2017-03-25 15:17:32 +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
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
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
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
8b8c7d4d73 Show and hide holograms asynchronously 2017-02-05 17:22:37 +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
4c5ec37588 Call ShopUpdateEvent synchronously 2017-01-05 14:13:07 +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
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
8e867a7c1d Hopefully fixed item meta issues for good 2017-01-03 13:06:29 +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
Steven M
f4b7df8c92 Add additional check for permissions (#42) 2016-12-08 20:08:28 +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
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
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
fdfc7419d9 Permission constants & No more Vault permission system 2016-11-18 22:29:28 +01:00
Eric
068edfa9ff Fixed book meta for 1.10 2016-11-18 17:58:49 +01:00
Eric
7e044eb7b1 Fixed selling to full admin shops and support for lower versions 2016-11-17 20:16:42 +01:00
Eric
334219cbe1 Fixed issue with BlockStateMeta 2016-11-13 14:00:07 +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
f8dd53bf31 Use #getNMSClass in #sendPacket instead of Class#forName 2016-08-17 13:16:37 +02:00
Eric
f511ff66a0 Added configurable item spawn delay after join
This might fix the issue, that items won't be spawned after joining.
2016-08-17 12:54:19 +02:00
Eric
4bf5472e61 Added way to auto calculate item amount
You can find an explanation here:
- https://www.spigotmc.org/threads/shopchest.87948/page-15#post-1820672
- In the configuration file
2016-08-16 15:06:26 +02:00
Eric
51584a3d04 Removed almost every stack trace that might me printed
Stack traces will now be printed in the debug log (if enabled) and in the console, there will only be displayed an error message without the stack trace
2016-08-10 13:47:25 +02:00
Eric
c713d0f014 Replace deprecated getItemInHand method 2016-08-09 14:41:41 +02:00
Eric
a95106a335 Client-side shop items
All shop items are now spawned with packets and reflection client-side, so probably duplicated items are history (finally). This also allowed me to remove the ClearLag and LWC dependency, as ClearLag can't remove client-side items and LWC's Magnet Sucker can't suck them inside a chest. I also changed a bit in the classes of the nms package, so all required classes have to be found before attempting to do anything.

Fixes #11 and fixes #4
2016-08-08 22:04:29 +02:00
Eric
312e7c9dca Disconnect from database when plugin disables
+ Reconnect to database on shop reload or server reload
+ A few debug messages were added on SQLExceptions
2016-08-06 12:17:53 +02:00