Compare commits

...

636 Commits

Author SHA1 Message Date
Johan af02eb3f14
#579 Updated for the stock counter to be updated on any hopper input (#591) 2024-05-14 13:07:05 +01:00
Max Lee 7dbc1ad5d3
Merge pull request #592 from Johanmans10/bypass-price-limit 2024-04-30 01:20:52 +01:00
Phoenix616 9f4037c312
Disable Paper's NMS remapping introduced in 1.20.5. 2024-04-30 01:09:55 +01:00
Phoenix616 b6b7a6bf43
Improve EnumParser to better take in the closeness of names into account
This is necessary to support new 1.20.5 items as well as better support some older ones.

Also use the properly formatted name when trying to valueOf get the Enum directly.
2024-04-30 01:06:49 +01:00
Phoenix616 60b10a83b6
Adjust to use "new" potion API and improve custom effects
This makes it compile with 1.20.5
2024-04-30 00:24:14 +01:00
Phoenix616 b54824052d
Build against 1.20.5 2024-04-30 00:23:10 +01:00
Johanmans10 8a26b15ea9 #539 Implemented permissions for bypassing min/max sell/buy prices 2024-04-30 01:00:13 +02:00
Phoenix616 09170f6d51
Add official RedProtect repo and update dependency (Fixes #589) 2024-04-26 17:22:34 +01:00
Phoenix616 488cd2e9d5
Use doubles for tax amount in config instead of int (Fixes #578)
For some reason this already was a float internally but not exposed in the config? Wat.
2024-04-26 16:51:42 +01:00
Phoenix616 46d4f583ba
Revert adventure-text-serializer-gson to 4.14.0 (Fixes #590)
Newer versions don't seem to be compatible with current platform release :S
2024-04-23 00:32:27 +01:00
Phoenix616 7a73d66939
Update adventure (Fixes #582) 2024-04-19 16:56:09 +01:00
Phoenix616 6f5b56d20a
Fix Folia compatibility by using own ExecutorService (Fixes #587) 2024-03-25 22:40:03 +01:00
Phoenix616 b386cacb5e
Improve the Updater (Fixes #541, #586)
- Use Modrinth for version checks and downloads
- Fix a possible deadlock in the version check
- Actually compare the version numbers in the check
- Add verification of the sha1 hash sum of the downloaded file
2024-03-04 19:28:02 +01:00
Phoenix616 df17fe7483
[CI-SKIP] Fix wrong author and add some more docs 2024-02-07 17:20:29 +01:00
Phoenix616 d3f8abb80e
Add release update notification (#541)
Also add that config option to our metrics
2024-02-07 16:10:08 +01:00
Phoenix616 2388da62a5
Log tax messages to the shop logger too
This makes it possible to turn these messages off or reroute them to the shop log file
2023-10-08 20:55:38 +01:00
Phoenix616 53aa75d9b4
Fix that Double Chests weren't supported in some cases (Fixes #568) 2023-09-28 17:26:37 +01:00
Phoenix616 a413e86ccf
Fix transaction message getting sent twice when server economy account is set
This was due to the ServerAccountCorrector calling the economy events another time with the new account.
 Directly setting the new account is the far better approach and has been adjusted for all currency events.
2023-09-26 20:22:15 +01:00
Phoenix616 0fcbcbbb11
Fix ChestShop not starting if an error occurred hooking into a dependency 2023-09-25 12:55:42 +01:00
Phoenix616 a9cb8096e6
Use InventoryHolder couldBeShopContainer check (Might help with #566) 2023-09-22 01:45:45 +01:00
Phoenix616 17bd2a1fcb
Fix issues with spaces in shortened item names 2023-08-27 16:29:06 +01:00
Phoenix616 d426492561
Fix issues with new 1.20 back side of signs
This basically blocks any text on the backside of a sign if the front is a valid shop
 and with that also fixes an issue where valid shop sign syntax was detected on back
 side sign changes.
2023-08-27 15:55:53 +01:00
Joo200 f3cf4cd96e
catch ClassCastException in the ItemDatabase update method (#563) 2023-08-14 20:01:49 +01:00
Phoenix616 9bbd6028d0
Add log message that informs about the server being rate limited. 2023-08-13 19:48:18 +01:00
Phoenix616 2b36b7314f
Work around potential issues with Mojang API ratelimites on startup (#560) 2023-08-13 19:46:44 +01:00
Phoenix616 0b8fe80443
Further item name shortening fixes 2023-07-08 16:13:29 +01:00
Phoenix616 3ef02d05cd
Restore spaces in string that might be already be shortened (Fixes #558) 2023-06-21 18:32:47 +01:00
Phoenix616 3a1885e2f3
Improve logger handling
- Log transactions with custom logger `ChestShop Shops`
- Fix that non-shop log messages show in log file (Fixes #551)
- Fix shop removal logging being broken
- Allow reloading `LOG_TO_FILE` and `LOG_TO_CONSOLE` config options
- Fix the wording in the comments on `LOG_TO_CONSOLE` and `LOG_ALL_SHOP_REMOVALS`
2023-06-18 22:12:08 +01:00
Phoenix616 54cc1ce842
Fix wrong capitalization of item names (Fixes #549, #557)
Regression caused from change in ed642ccf
2023-06-17 14:53:47 +01:00
Phoenix616 dc6aa21a91
Fix compatibility with older versions (Fixes #556) 2023-06-15 16:24:00 +01:00
Phoenix616 6ba8e092b8
Add some more detailed server type statistics 2023-06-15 15:47:35 +01:00
Phoenix616 97ffc31d2b
Separate economy adapter from other dependencies in metrics 2023-06-15 15:27:03 +01:00
Phoenix616 ed642ccf3c
Compile against 1.20.1 and fix some short name issues
Partially helps with #516, #521, #549
2023-06-15 00:28:47 +01:00
Phoenix616 999f596125
Add metrics for used economy and hooked dependencies 2023-06-14 15:50:43 +01:00
Phoenix616 30ff61d14f
Improve INCLUDE_SETTINGS_IN_METRICS option comment 2023-06-14 15:46:44 +01:00
Phoenix616 978f1270f5
Send ShopDestroyedEvent for sign edits that break a shop 2023-06-13 00:22:30 +01:00
Phoenix616 7203ec17cd
Add compatibility for new sign-editing in 1.20
This allows editing of signs if you hold a sign in hand but block any other interaction.
2023-06-13 00:11:48 +01:00
Max Lee 6602be68e3
Merge pull request #553 from Krakenied/strip-price-colors
Add option to strip price colors
2023-05-20 14:46:08 +01:00
Krakenied 2fb82a2529
Strip price colors 2023-05-20 14:56:06 +02:00
Phoenix616 05ebe2d054
Properly shutdown ExecutorService 2023-03-29 16:54:10 +01:00
Phoenix616 013a21159f
Ensure NameManager caches stay consistent with multiple threads accessing them 2023-03-24 00:13:41 +01:00
Phoenix616 d52c329618
Make compatible with Folia by using own ExecutorService
Our async tasks were already pretty world-independent (update checker as
 well as some logging so this should work pretty well)

For the rest the ORMLite library should already be able to handle access from
 different threads and whether economy plugins are compatible with Folia is
 up to them, not us...
2023-03-23 23:50:43 +01:00
Phoenix616 b425dfb69f
[CI-SKIP] Add Qodana project to readme 2023-03-01 18:44:56 +01:00
Phoenix616 0a16ec1d08
Add qodana baseline of accepted warnings 2023-03-01 18:42:40 +01:00
Phoenix616 362dd856d3
Cleanup: Properly log errors 2023-03-01 18:36:46 +01:00
Phoenix616 385672ecd4
Cleanup: Fix potential NPE in Updater 2023-03-01 18:34:21 +01:00
Phoenix616 92a013dd10
Cleanup: Properly log errors 2023-03-01 18:27:04 +01:00
Phoenix616 7a09c53bde
Cleanup: Better specify exception catch and remove unused import 2023-03-01 18:16:14 +01:00
Phoenix616 93f14a330d
Cleanup: Use String#join instead of Stream#collect 2023-03-01 18:15:27 +01:00
Phoenix616 199573df59
Fix potential NullPointerExceptions 2023-03-01 18:14:18 +01:00
Phoenix616 a38f309453
Cleanup: Properly log errors 2023-03-01 18:11:35 +01:00
Phoenix616 02ef09c586
Use non-deprecated setScale, remove duplicate division calls, NPE-Fix 2023-03-01 18:10:25 +01:00
Phoenix616 aa7bfbb7ee
DoubleChest left/right side holder might be null/not BlockStates. Check that. 2023-03-01 18:06:35 +01:00
Phoenix616 7d92cb820d
Don't check block type twice
This also prevents it from getting it multiple types which would result in a chunk data query too...
2023-03-01 18:03:34 +01:00
Phoenix616 4de1f1e8c5
Fix potential out of bounds and NPE 2023-03-01 18:01:33 +01:00
Phoenix616 7ee8d07242
Cleanup: Use chained StringBuilder#append 2023-03-01 17:59:02 +01:00
Phoenix616 37c7b97fe8
Improve protection type mapping
This will return if a non-compatible type is used instead of using private.
2023-03-01 17:57:31 +01:00
Phoenix616 0d8d37eb85
Cleanup: Use 0-sized arrays and fix division 2023-03-01 17:54:31 +01:00
Phoenix616 e6a2d2f1c5
Cleanup: Properly log errors and remove unnecessary early return 2023-03-01 17:51:56 +01:00
Phoenix616 ada8cf3ae8
Cleanup: 0-sized arrays, NPE, Math.min usage 2023-03-01 17:48:07 +01:00
Phoenix616 fbfe789bfa
Fix potential NPE and properly log exceptions 2023-03-01 17:44:39 +01:00
Phoenix616 f547995164
Cleanup: Mark EconomyAPI as Nullable and fix potential NPE 2023-03-01 17:37:22 +01:00
Phoenix616 d6673c8afd
Cleanup: Use try-with and small fixes like NPE
Also make class final so that no class can extend it and start the thread
2023-03-01 17:33:34 +01:00
Phoenix616 f0661656a0
Cleanup: Use try-with and other small improvements 2023-03-01 17:24:47 +01:00
Phoenix616 967a315ff8
Add Qodana code quality checker 2023-03-01 16:26:51 +01:00
Phoenix616 59e82c7078
Add metrics for settings as separate charts
bStats has unfortunately not implemented advanced bar charts
 in years and not accepted my PR for it either :( We do it the
 hart way then...
2023-02-05 22:02:10 +01:00
Phoenix616 236c4b1b37
Add links to IssueHunt.
Also remove Patreon and deprecate dev-Bukkit bug tracker in the readme
2023-02-04 15:23:50 +01:00
Phoenix616 32879ad3cd
Update maven repos
- WorldGuard is now on enginehub.org domain
- RedProtect is in central and doesn't need repo anymore
2023-01-22 21:35:39 +01:00
Phoenix616 c15afb4d0b
Update adventure and MineDown 2023-01-22 21:29:09 +01:00
Phoenix616 852f20a50e
Add ItemBridge support (Resolves #361)
This also slightly changes how the max width is applied for generating sign item IDs
2022-12-29 15:25:26 +01:00
Phoenix616 e3ab44ae32
Don't fail account UUID checks on players that are online
This should fix some issues with Floodgate which kept popping up
2022-11-23 22:15:21 +01:00
Phoenix616 9233064273
Adjust comment regarding floodgate to their current default prefix 2022-11-17 23:28:09 +01:00
Phoenix616 93e2895645
Remove deprecated reflection API usage 2022-10-13 14:14:20 +01:00
Phoenix616 e99ae1eb1e
Fix spigot build profile by using same version as paper dependency 2022-10-12 16:53:00 +01:00
Felipe Foschiera 9842f47f37
Trigger transaction message from CurrencyTransferEvent and consider tax (#534)
Triggers TransactionMessageSender from CurrencyTransferEvent, wrapping TransactionEvent inside of it.
Add logic to showamount after taxes on the message.
2022-10-12 16:37:18 +01:00
Max Lee 34df7e368a
Merge pull request #527 from JLLeitschuh/fix/JLL/use_https_to_resolve_dependencies_maven
[SECURITY] Use HTTPS to resolve dependencies in Maven Build
2022-09-12 23:26:02 +01:00
Jonathan Leitschuh 5066a21a5f
vuln-fix: Use HTTPS instead of HTTP to resolve deps CVE-2021-26291
This fixes a security vulnerability in this project where the `pom.xml`
files were configuring Maven to resolve dependencies over HTTP instead of
HTTPS.

Weakness: CWE-829: Inclusion of Functionality from Untrusted Control Sphere
Severity: High
CVSSS: 8.1
Detection: CodeQL & OpenRewrite (https://public.moderne.io/recipes/org.openrewrite.maven.security.UseHttpsForRepositories)

Reported-by: Jonathan Leitschuh <Jonathan.Leitschuh@gmail.com>
Signed-off-by: Jonathan Leitschuh <Jonathan.Leitschuh@gmail.com>

Bug-tracker: https://github.com/JLLeitschuh/security-research/issues/8

Co-authored-by: Moderne <team@moderne.io>
2022-07-14 22:41:37 +00:00
Phoenix616 da3928b723
Add meta information for more item types 2022-07-06 22:08:55 +01:00
Phoenix616 d0af977212
Fix issue when creating sign with own name without existing account
This was only an issue if the autofill functionality for the own name wasn't used.
Now if there is no account with a certain name then the player can use it if it matches their user name
2022-07-06 20:05:21 +01:00
Phoenix616 e3cd50cf75
Add some debug logging for shop sign creation 2022-07-06 00:54:44 +01:00
Phoenix616 a78b925181
Update dependencies (mainly ORMLite and bStats)
Also fixed the outdated Reserve maven repository. That massively slowed down builds...
2022-06-28 16:24:17 +01:00
Phoenix616 5b712f9ed5
Back to development builds 2022-06-28 16:12:44 +01:00
Phoenix616 c54ed6b2f5
Prepare 3.12.2 release 2022-06-28 14:54:20 +01:00
Max Lee f57d1b04a2
New Crowdin updates (#518)
* New translations lang.en.yml (Chinese Simplified)

* New translations lang.en.yml (Turkish)

* New translations lang.en.yml (Russian)

* New translations lang.en.yml (Ukrainian)

* New translations lang.en.yml (Ukrainian)

* New translations lang.en.yml (Spanish)

* New translations lang.en.yml (French)

* New translations lang.en.yml (Italian)

* New translations lang.en.yml (Ukrainian)

* New translations lang.en.yml (Ukrainian)

* New translations lang.en.yml (Italian)

* New translations lang.en.yml (Ukrainian)
2022-06-28 12:44:19 +01:00
Max Lee 6b372883ac
Merge pull request #522 from Krakenied/master
Fix zero partial price exploit
2022-06-28 12:21:31 +01:00
Krakenied fd969cd996 Fix zero partial price exploit 2022-06-28 11:09:29 +02:00
Phoenix616 fd0035a99c
Build against 1.19 and replace apache-commons-lang 2022-06-13 22:52:26 +01:00
Phoenix616 4285358910
Back to snapshots for development 2022-06-04 14:51:40 +01:00
Phoenix616 dc731919e3
Prepare 3.12.1 release 2022-06-04 14:51:18 +01:00
Phoenix616 a112c50d55
Update language files with latest Crowdin translations. 2022-06-04 14:49:48 +01:00
Phoenix616 4c7b018f8c
Ignore formatting when parsing sign lines (#503) 2022-02-17 21:29:43 +01:00
Krakenied 2ebc2f285b
Fix NFE and some other possible issues (#502)
Fixes #499
2022-02-17 16:34:25 +01:00
Phoenix616 e40b5567b8
Require count digit on quantity line if module is enabled
Also use the same pattern for validating the line in QuantityUtil and ChestShoSign.
2022-02-04 16:28:44 +01:00
Phoenix616 419527efaa
Fix item id not being valid with numbers and underscore (Fixes #498) 2022-01-29 22:23:51 +01:00
Phoenix616 99a609b423
Unify sign line parsing and strip owner line whitespace 2022-01-26 20:35:42 +01:00
jeffry1829 5ec2ab61e5
Make Unicode character valid in ChestShop Sign (#497) 2022-01-26 14:26:03 +01:00
Phoenix616 d1bbcfce47
Sync log4j version with updated server version
The log4j bugs weren't an issue as log4j wasn't included in the plugin directly
 but simply depended on the version the server provided. This just syncs it with
 the commonly used server version again. (And shuts up dependabot)
2022-01-10 17:07:59 +01:00
Phoenix616 fa924f0212
Full message support on 1.18 2021-12-03 19:12:18 +01:00
Phoenix616 f9a0bf90a3
Don't search unknown players by default
This shouldn't be needed in any of the internal usage of the event
 and could lead to unexpected network lookups.
2021-11-17 14:03:51 +01:00
Phoenix616 02dd167024
Add better message for when the shop's sell price is above the buy price 2021-10-15 15:50:04 +01:00
Phoenix616 8655870077
Add clarifying comment to buy tax bypass 2021-10-15 15:39:01 +01:00
Phoenix616 01b7cddaa3
Use correct tax amount 🙈 2021-10-15 15:26:44 +01:00
Phoenix616 6962ae2590
Added log messages to tax and discount module (#478) 2021-10-15 15:17:09 +01:00
Phoenix616 03317c2c78
Fix prefix not getting parsed with MineDown 2021-10-15 14:22:14 +01:00
Max Lee a84cd7a2aa Improve agreements 2021-10-15 01:15:52 +01:00
TreyRuffy bb7bd3415c
ChestShop Sign Dying (#479)
Signed-off-by: TreyRuffy <TreyRuffy@users.noreply.github.com>
2021-10-12 23:30:49 +01:00
Phoenix616 4f8e7938e2
Update Adventure (Fixes #474) 2021-09-10 22:22:16 +01:00
Phoenix616 986a22fb73
Make sure to not load chunks to check for shops (Fixes #473) 2021-09-01 16:30:14 +01:00
Phoenix616 f7aa80e566
[CI-SKIP] Convert to issue form system 2021-08-05 22:19:10 +01:00
Phoenix616 d193812392
Fix shop not buying/selling errors being the wrong way around 2021-07-25 22:31:11 +01:00
Phoenix616 13b727c779
Fix possible NPE when loading material sets from config 2021-07-09 11:26:30 +01:00
Phoenix616 129663650f
Build and test against 1.17
Also update maven-compiler-plugin
2021-07-04 14:20:43 +01:00
Phoenix616 d3cb06acc0
Use the correct messages 🙈 (Fixes #462) 2021-06-26 23:06:21 +01:00
Phoenix616 965d931978
Include prices in price restriction messages (Resolves #461) 2021-06-24 19:40:58 +01:00
Phoenix616 1b85bda656
Fix some block place and break access message issues
Messages were missing on block break and placement sent multiple.
2021-06-21 16:16:19 +01:00
Phoenix616 42a7cc4789
Check if sign actually applies to container (Fixes #460) 2021-06-21 16:07:42 +01:00
Phoenix616 a549b4ef51
[CI-SKIP] Update issue templates to include link to dev builds 2021-06-19 19:25:00 +01:00
Phoenix616 988420992c
Sync version of adventure gson serializer dependency with api 2021-06-18 22:52:05 +01:00
Phoenix616 df2e4394c4
Use more exact shop detection with /shopinfo 2021-06-13 15:48:04 +01:00
Phoenix616 63f68d5444
Fix test profiles activation 2021-06-13 15:47:41 +01:00
Phoenix616 6f4be10065
Prepare next version and update Minedown 2021-06-09 00:47:42 +01:00
Phoenix616 8cb78165a3
3.12 release 2021-06-06 22:02:53 +01:00
Max Lee 3cc219e86b
New Crowdin updates (#399) 2021-06-06 22:01:55 +01:00
Phoenix616 052560393c
Add additional plugin, server and java version stats 2021-06-04 00:35:27 +01:00
Phoenix616 2545b95d54
Fix ShowItem not working in messages 2021-05-16 19:53:30 +01:00
Phoenix616 f825995a85
Don't automatically add prefix to certain messages 2021-05-16 19:39:53 +01:00
Phoenix616 2be9207faa
Differentiate between shop accessing and administrating
This fixes LWC donation and display protections not working correctly
2021-05-16 00:31:33 +01:00
Phoenix616 5b214e09f5
Fix turning off default protection if protected externally (Fixes #445) 2021-05-16 00:17:25 +01:00
Phoenix616 d3ed650b74
Make LWC donation and display protections work with shops 2021-05-16 00:15:59 +01:00
Phoenix616 c9b8e136d1
Fix that shop info doesn't show when protected externally 2021-05-16 00:06:01 +01:00
Phoenix616 ca25dca6b0
Fix writing of config values with backslashes (Fixes #444)
The VALID_PLAYERNAME_REGEXP setting needs to be changed to "^\\w+$" to work properly.
2021-05-15 14:22:55 +01:00
Phoenix616 b09a1255a7
Allow building against latest Paper 2021-05-15 14:13:13 +01:00
Phoenix616 b8899c8333
Turn off internal protection for more protection plugins (Resolves #442)
This expands the TURN_OFF_DEFAULT_PROTECTION_WHEN_PROTECTED_EXTERNALLY
 config option so that it applies to more protection plugins rather than
 just LWC. Currently supported: BlockLocker, Deadbolt, Lockette (1.x),
 LockettePro (2.x) and SimpleChestLock
2021-05-04 16:36:32 +01:00
Phoenix616 07a22fa534
Try to create an account when creating shop for other players 2021-04-18 18:24:22 +01:00
Phoenix616 4172d8d484
Cancel sign change and interact if previous events are cancelled
This fixes that blocks get placed/items used when trying to auto-fill
 a shop sign and the sign is getting destroyed for some reason
2021-04-16 21:03:37 +01:00
Phoenix616 02cd9d4ec0
Work around getItemMeta returning null in some cases (Fixes #432) 2021-04-12 16:08:03 +01:00
Phoenix616 0c51af6b45
Further improve item name shortening for alias system (#425)
This will correctly shorten dashes and ignore the case when comparing
 name starts
2021-03-27 21:07:18 +01:00
Phoenix616 76e3f5b3c8
Add check if item has meta as that could've returned null (Fixes #427) 2021-03-27 18:44:04 +01:00
Phoenix616 66201a9062
Directly use Regex group matching to get playername (Fixes #428) 2021-03-27 18:34:03 +01:00
Phoenix616 ce7cade0a5
Fix potential case issues on item alias part matching 2021-03-26 15:57:38 +01:00
Phoenix616 b93361cd07
Fix shortened item aliases not working (Fixes #425) 2021-03-26 15:55:29 +01:00
Phoenix616 a3c5ec618a
Allow multiline comments and improve comment about Floodgate 2021-03-18 14:41:34 +01:00
Daniel B f68a3203ac
Allow specifying of valid player names (#410)
This allows plugins which allow differently named players to work e.g. Floodgate. (Fixes #383)

Co-authored-by: Phoenix616 <max@themoep.de>
2021-03-17 22:46:05 +01:00
Rutger Kok e6b05ff982 Add support for BlockLocker
It's no longer possible to open shops on chests that were protected by someone else.
2021-03-17 22:11:54 +01:00
Phoenix616 aadfaff397
Update MineDown to 1.7.0 and adventure to 4.7.0 2021-03-17 22:09:13 +01:00
Phoenix616 227e3e77f0
Update double chests too after transactions (Fixes #412) 2021-03-03 18:16:14 +01:00
Phoenix616 7b2fe6c1f3
Rework how accounts are queried from (short form) user names
The AccountQueryEvent will now check both, short names as well as full
 names and the getAccountFromShortName method will no longer check full
 names or offline player names. (Names in a short format wouldn't match
 them anyways)
This should not change the overal behaviour as the plugin uses the
 AccountQueryEvent internally as that is now checking for full name/
 offline player accounts. (And short names are matched first)
2021-02-24 15:18:15 +01:00
Phoenix616 68c9df2078
Re-add ability to quickly create buy shops by only specifying price
The change to the more advanced patterns required it to always specify B
2021-02-24 15:01:10 +01:00
Phoenix616 3ec68dcd50
Just use latest instead of specific version 2021-02-19 13:38:35 +01:00
Phoenix616 ebdebb81df
Implement /shopinfo command/chest click for shop info (Resolves #203)
The shop information can include the owner, available stock, the buy/
 sell prices and detailed item information from the ItemInfoEvent.
This also includes an item component in both /iteminfo and /shopinfo if
 ShowItem is installed.
2021-02-15 17:28:33 +01:00
Phoenix616 2f0e7b81a8
Add separate error message for invalid names 2021-02-05 15:26:39 +01:00
Phoenix616 320d9ad9fb
Fix adapter backwards compatiblity (and getHolder loading 🙈) 2021-01-28 17:33:40 +01:00
Phoenix616 65df4c40c6
Improve performance by using Paper's non-snapshot states if available 2021-01-28 17:18:42 +01:00
Phoenix616 22d3f262f5
Improve NameManager OfflinePlayer and UUID version handling (#383)
This also removes the deprecated methods which might interact with the
 changed methods in unintended ways from the NameManager and the
 PreTransactionEvent.
2021-01-28 15:26:23 +01:00
Phoenix616 ba47b82ba1
Make Admin Shops use containers if available (Resolves #402)
Admin Shops can now be stocked the same way as player shops if a valid
 shop container is nearby. If no container is nearby it will just work
 as an unlimited shop.

This behaviour can be disabled with the FORCE_UNLIMITED_ADMIN_SHOP
 config option so that an admin shop is unlimited even though a valid
 container is next to it.
2021-01-24 23:33:36 +01:00
Phoenix616 9843e92525
Make price line pattern matcher more strict (Fixes #401) 2021-01-14 19:01:04 +01:00
Phoenix616 71e8ef732f
Fix error in short item code generation logic (Fixes #395) 2021-01-06 20:08:38 +01:00
Phoenix616 66eaab7c4d
Include log level (if not INFO) and error stack trace in log file 2021-01-04 22:42:17 +01:00
Phoenix616 0d6f588e45
[CI-SKIP] Improve display of custom funding links and add Ko-fi 2021-01-03 20:53:21 +01:00
Phoenix616 f12e6ed3b6
Use full item name instead of shortened for aliases
This fixes an issue where aliases would not show up in transaction
 messages when the aliases item's string was shortened.

Also remove an unnecessary string length calculation from the
 MaterialUtil getName method if there was no max width set.
2021-01-03 20:47:07 +01:00
Phoenix616 819f028774
Don't use contains check when searching alias without meta (Fixes #394) 2021-01-03 20:13:26 +01:00
Phoenix616 b774258051
Remove OddItem support and implement own alias system (Resolves #360)
Reasoning why this is part of the core and not a separate addon:
The impact of this function is extremely lightweight when (almost) no
 aliases are defined so someone who isn't using this should not have a
 worse experience.
Additionally including it in the core (similarly to the discounts,
 taxes and restrictions) promotes it's availability while not massively
 increasing the maintainability.

As for the OddItem removal:
That plugin hasn't been developed for over 7 years and such unique
 plugin support should really be added via separate addon using the
 events system which, with the new ItemStringQueryEvent, now actually
 supports doing that from an external plugin.
If someone really managed to run their own private fork of OddItem for
 all those years then they should be able to also provide such a simple
 addon.
2021-01-03 01:55:01 +01:00
Phoenix616 9dce41aa30
Work around internal issue with ender chests
At the moment they can't be shops anyways so this shouldn't have any impact.
2020-12-20 14:50:57 +01:00
Max Lee 4c44e49c54
New Crowdin updates (#375)
* New translations lang.en.yml (German)

* New translations lang.en.yml (Hungarian)

* New translations lang.en.yml (Czech)

* New translations lang.en.yml (Romanian)

* New translations lang.en.yml (Norwegian)

* New translations lang.en.yml (Chinese Traditional)

* New translations lang.en.yml (Portuguese, Brazilian)

* New translations lang.en.yml (Vietnamese)

* New translations lang.en.yml (Chinese Simplified)

* New translations lang.en.yml (Ukrainian)

* New translations lang.en.yml (Turkish)

* New translations lang.en.yml (Swedish)

* New translations lang.en.yml (Serbian (Cyrillic))

* New translations lang.en.yml (Russian)

* New translations lang.en.yml (Polish)

* New translations lang.en.yml (Dutch)

* New translations lang.en.yml (French)

* New translations lang.en.yml (Korean)

* New translations lang.en.yml (Japanese)

* New translations lang.en.yml (Italian)

* New translations lang.en.yml (Hebrew)

* New translations lang.en.yml (Finnish)

* New translations lang.en.yml (Greek)

* New translations lang.en.yml (Danish)

* New translations lang.en.yml (Catalan)

* New translations lang.en.yml (Arabic)

* New translations lang.en.yml (Afrikaans)

* New translations lang.en.yml (Spanish)

* New translations lang.en.yml (Spanish, Mexico)

* Include languages_mapping in crowdin config file
2020-12-07 18:13:04 +01:00
Phoenix616 395f0513a6
Improve ignore config setting comments to make it more clear 2020-12-04 15:01:26 +01:00
Phoenix616 4e40823d23
Fix ShowItem incompatibility as well as update adventure 2020-12-04 14:53:27 +01:00
Phoenix616 af32b041ff
Implement missing Inventory#isEmpty method in AdminInventory 2020-12-01 20:05:11 +01:00
Phoenix616 51e9d5f267
Use adventure text api in order to fix hover issues
This also has the side-effect of restoring CraftBukkit compatibility

Also move all libraries into a dedicated Libs package
2020-12-01 19:48:26 +01:00
Phoenix616 8aff3da550
Add ENSURE_CORRECT_PLAYERID to properties metrics chart
Also fix missing new line in metrics chart code.
2020-11-18 15:31:44 +01:00
Phoenix616 fd81bc143e
Ignore signs and transactions made by players with invalid names 2020-11-18 15:10:58 +01:00
Phoenix616 9bf6e1abc1
Check permission for shop name again after querying it
This protects people that use valid player names as admin shop names
 from people with the same username as well as other cases where the API
 is used to manage access to shops with certain special names.
2020-11-17 19:54:08 +01:00
Phoenix616 00fa83c56a
Improve UUID version handling (Fixes #382, #337)
This adds a new config option ENSURE_CORRECT_PLAYERID which lets one
 disable the check whether or not a player's UUID version matches the
 server's online/offline mode UUID version. Due to potential issues with
 offline players which might occur when this isn't checked disabling
 this can't really be supported and any issues should first be tested if
 they still occur with this option enabled.

This also forces the UUID to version 4 if the server runs in online mode
 as it should not be necessary in any normal setup to detect the UUID
 version dynamically in that case. (Dynamic detection is only necessary
 for offline mode which might potentially run behind a proxy)
2020-11-16 14:09:07 +01:00
Phoenix616 cbb605df81
Set default locale to English if it is set to an invalid one in config 2020-11-12 23:16:40 +01:00
Phoenix616 4bd443c69f
Fix NPE in StockCounter for admin shops/missing containers 2020-11-02 01:08:15 +01:00
Phoenix616 7a1c091c74
Fix NPE in StockCounter on autofill/no item found (Fixes #376) 2020-11-02 01:06:48 +01:00
Phoenix616 b43454531e
Add crowdin setup 2020-10-31 21:56:35 +01:00
Phoenix616 9a08e8897b
Don't allow opening of shops via sign by default
This has caused lots of confusion in the past regarding the first time
setup and might be a feature that people don't even want to have.
(e.g. to allow coloring of the signs with dyes)
2020-10-31 20:59:15 +01:00
Phoenix616 f0bf9a08ec
Add message to access and creative mode ignoring 2020-10-31 20:59:07 +01:00
Phoenix616 717dcc8d9d
Add German language file 2020-10-30 23:25:13 +01:00
Daniel Dušek c7b07e04d2
Add - Czech localization file (#362) 2020-10-30 22:52:53 +01:00
Brice Frisco 8d98958c2d
Stock Counter (Resolves #365) (#368) 2020-10-30 22:45:16 +01:00
dependabot[bot] 15b9382b09
Bump junit from 4.12 to 4.13.1 (#367)
Bumps [junit](https://github.com/junit-team/junit4) from 4.12 to 4.13.1.
- [Release notes](https://github.com/junit-team/junit4/releases)
- [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.12.md)
- [Commits](https://github.com/junit-team/junit4/compare/r4.12...r4.13.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2020-10-14 18:15:32 +01:00
Phoenix616 a14aaa7235
Fix issues with LWC Single/Double Chest protections (Fixes #359) 2020-09-24 16:54:36 +01:00
Phoenix616 9dd56385eb
Update lang to 1.3. Fixes legacy local.yml loading issue. 2020-09-24 15:27:39 +01:00
Phoenix616 de14a1affb
Don't parse player name as count in /csgive (Fixes #355) 2020-09-14 14:36:10 +01:00
Corey Shupe 282c39c975
Implement LockettePro support and improve soft dependency handling (#354) 2020-09-10 14:32:34 +01:00
Phoenix616 741a10cb95
Update server economy account warning to include shop creation and uuid 2020-09-08 12:20:19 +01:00
Phoenix616 ea5318dcf1
[CI-SKIP] Improve bug report template 2020-09-02 21:46:31 +01:00
Phoenix616 b02cc9f909
[CI-SKIP] Update version 2020-07-28 00:30:56 +01:00
Phoenix616 5f40273756
[CI-SKIP] Improve issue templates.
This will auto-hide the instructions and format the config/log better :)
2020-07-28 00:29:01 +01:00
Phoenix616 89ba3d0559
Fix default profile activation 2020-07-08 21:43:34 +01:00
Phoenix616 5bc23214e0
Fix issue with items that have a single character in name (Fixes #339) 2020-07-08 21:40:06 +01:00
Phoenix616 6a34054bc7
Add latest test profile 2020-07-08 21:38:54 +01:00
Phoenix616 d1f6b1616b
Fix sign sticker on 1.14+ 2020-07-08 21:01:33 +01:00
Phoenix616 8c1c80e138
Don't log SERVER_ECONOMY_ACCOUNT warning if it's not set 2020-07-04 18:18:59 +01:00
Phoenix616 efe9ff7024
Fix TURN_OFF_SIGN_PROTECTION not working (Fixes #233) 2020-07-03 18:56:29 +01:00
Phoenix616 742f838f09
Add support for component bungee messages
Requires at least BungeeCord commit a64c34d
2020-07-03 18:24:14 +01:00
Phoenix616 98985efd63
Fix legacy %material placeholder not working 2020-07-03 18:13:40 +01:00
Phoenix616 9cbf33f68f
Cancel before sending message so that access is denied in case of error 2020-07-03 17:26:13 +01:00
Phoenix616 493784c2dd
Fix that the legacy locale is not automatically used 2020-07-03 17:15:36 +01:00
Phoenix616 18c3f8f5ef
Prepare next version 2020-07-03 17:15:08 +01:00
Phoenix616 908c128a10
3.11 release 2020-06-29 15:51:06 +01:00
Phoenix616 3c51f8ed87
Move more info to hover in shop messages to clean up chat
Also fix placeholders not working in not enough stock message
2020-06-28 23:00:45 +01:00
Phoenix616 a0630db6f8
Fix typo in iteminfo book generation message key 2020-06-28 18:09:00 +01:00
Phoenix616 6ee7c4759a
Add multi-language and component message support (Requires Spigot)
Message configs are now selected based on the client's language (can be
 toggled in the config) and will use MineDown formatting to allow
 display of component messages as well as usage of RGB colors in 1.16.
If found the legacy local.yml will be used instead of the per-language
 files. Move your local.yml to the correct lang config to if you want to
 use the per-client language option.
Version was also changed to 3.11 due to the many internal changes that
 have accumulated over time
2020-06-28 18:00:09 +01:00
Phoenix616 cbd427f561 Cancel left click event on shop sign
This should improve compatibility with other plugins that handle left
 click interactions too and shouldn't apply to shop signs you don't have
 access to.
Also includes a small improvement to not run the same permission check
 twice in certain cases.
2020-06-24 16:00:16 +01:00
Phoenix616 4a04a623a7 Improve metrics additions 2020-06-21 19:09:25 +01:00
Phoenix616 4885092435 Include license and readme in jar file 2020-06-19 21:47:50 +01:00
Phoenix616 183c724583 Improve Metrics and add /csmetrics command
This adds some more logging to the metrics for some interesting plugin
 settings as well as player account and transaction counts. This data
 about account count and average transaction and item counts is also
 exposed ingame via the /csmetrics command.

This also removes the outdated mcstats metrics as that site is long dead
 now, the last data is from two years ago...
2020-06-19 21:47:28 +01:00
Phoenix616 1f8fd09dd2 Only update player name on join, don't create new accounts 2020-06-19 20:57:22 +01:00
Phoenix616 0b39fd1a5e Make auto-fill check both buy and sell permission separately (#325)
Also slightly changes how the auto fill message is sent to not send two
 messages (autofill and no-permission)
2020-06-19 18:58:00 +01:00
Phoenix616 7161c0bfdf Add Jenkins test build notifier
This will only send a notification into the log once for each new build
 and can be disabled in the config or the new jenkinsBuildNotifier.yml
2020-06-18 21:19:35 +01:00
Phoenix616 d3f717deef Do not enabled automatic updates by default without user interaction 2020-06-18 18:14:53 +01:00
Phoenix616 3e061dda8d Add config option to limit trading with shops via protections 2020-06-18 17:01:52 +01:00
Phoenix616 e520544d3a Add ability to reload discount and restriction module (Resolves #252) 2020-06-10 14:03:22 +01:00
Phoenix616 4acd3efda1 Allow metadata ID to be used in shop transaction permission 2020-06-01 23:05:59 +01:00
Phoenix616 080597c515 Allow metadata ID to be used in shop creation permission 2020-06-01 22:58:34 +01:00
Phoenix616 9f84ca8551 Add option to sell/buy all with shift (#320) 2020-05-31 14:50:53 +01:00
Max Lee f0641abf2e Automatically add enhancement label to issues 2020-05-30 13:51:37 +01:00
Phoenix616 9dfbca3f81 Add more links to issue template config 2020-05-27 21:38:28 +01:00
Phoenix616 24d89dbc44 Add ability to mark all economic events as handled
This resolves issues when multiple listeners try to handle the same
 events e.g. for group support which would've passed it onto the normal
 listeners leading to errors
2020-05-21 01:08:00 +01:00
Phoenix616 d868fe8af6 Put the correct sign type into the chest on empty remove (Fixes #313) 2020-05-20 00:43:20 +01:00
Phoenix616 e22a50e1cf Only close our own inventories on teleport (Fixes #312) 2020-05-16 22:33:52 +01:00
Phoenix616 7f32a7a722 Fix InventoryOpenEvent listener not applying to non chest containers 2020-05-16 22:30:14 +01:00
Phoenix616 009febb5c2 Call add and subtract event to give listeners a chance to handle them 2020-05-13 23:56:47 +01:00
Phoenix616 7b978ae022 Fix shop sign getting broken with autofill marker (Fixes #310) 2020-05-13 23:13:56 +01:00
Phoenix616 f044938b80 0 is a legal price now, reflect that in the tests 2020-05-06 22:00:15 +01:00
Phoenix616 a427c8c5a0 Fix shop removal with partial transactions (Fixes #307) 2020-05-06 20:53:59 +01:00
Phoenix616 7fbf50cefe Allow 0 for a free shop (Resolves #297) 2020-05-06 20:38:41 +01:00
Phoenix616 8e6bc01d97 Fix automatic setting of item lines (Fixes #308) 2020-05-06 20:17:50 +01:00
Phoenix616 3bf54529db Add support for LWC LimitsV2 module (#293)
This adds a new OTHER_BREAK PreShopCreationEvent outcome to indicate
that the sign should get broken. To keep it backwards compatible with
other plugins setCancelled still sets OTHER and will not lead to a sign
break. The breaking logic is also moved out of the ErrorMessageSender
as it didn't make sense to have there. (It also wasted a tiny bit of CPU
by getting the block of the state again)

Do do this it now fully depend on LWCX, it's the only active version anways.

Also fixed a possible out of index error with the sign lines.
2020-05-04 22:33:46 +01:00
Phoenix616 bb4eece790 Fix pre-events not being uncancellable 2020-05-04 22:16:09 +01:00
Phoenix616 0c1b82c9d8 Fix /iteminfo coloring 2020-05-04 21:40:39 +01:00
Phoenix616 432c505806 Add more information to /iteminfo command and make messages configurable 2020-05-03 15:05:24 +01:00
Phoenix616 0d08880ed2 Some cleanup of code and deprecated stuff
Also deprecate amount and account setters on the CurrencyCheckEvent,
these values will be final in a future version. Changing them here does
not make sense in the internal structure.
2020-05-03 02:37:06 +01:00
Phoenix616 9ae6725c5d Listen on low so that other plugins could hook into before
This is necessary if you want to do something like automatic completion
of the sign for group/bank accounts.
2020-05-03 02:34:57 +01:00
Phoenix616 4673a3f00c Use AccountQueryEvent in NameManager#canUseName utility method 2020-05-02 19:25:44 +01:00
Phoenix616 8c83be59ba Option to block shop creation when LWC limit is reached (Resolves #293) 2020-05-02 15:57:42 +01:00
Phoenix616 3bed1261aa Move account access check to an event
This should be the final addition that allows other plugins to implement
multi-owner/group shops like requested in #119 and #133 by listening to
all the transaction events to handle money flow and shop/account access
events to enable access to the actual shop.
2020-05-02 15:32:48 +01:00
Phoenix616 c6f6672188 Fix uuid version check 2020-04-27 21:39:46 +01:00
Phoenix616 744b02a447 Add ability to configure server economy account UUID
This adds better support for fake server economy accounts by not
requiring that a player with the name already has an account but allow
automatic creation of the account with the fake UUID provided in the
config.

Old configs that only define the name will still work though.
2020-04-27 21:00:46 +01:00
Phoenix616 e57bf94923 Don't continue checking if account can hold currency if already done 2020-04-24 14:54:48 +01:00
Phoenix616 781e017ae9 Add debug logging for configuration loading 2020-04-17 15:10:27 +01:00
Phoenix616 2426aef969 Add space at start of comments when writing config 2020-04-17 15:10:09 +01:00
Phoenix616 e8034e20b0 Change hard limit to one million 2020-04-17 14:51:37 +01:00
Phoenix616 bb17cc35a0 Add ability to set max amount and improve error messages 2020-03-24 00:31:08 +01:00
Phoenix616 059abc569c 3.10.2 snapshot development 2020-03-24 00:30:46 +01:00
Josh Roy 809546ecab
Update bStats to 1.7 (#295)
Also updates bStats maven repo to new one
2020-03-08 18:26:52 +01:00
Phoenix616 86ea093994 3.10.1 release 2020-02-22 17:43:47 +01:00
Phoenix616 7bd00f23be Block change block event for shop containers/signs 2020-02-22 17:43:17 +01:00
Phoenix616 9d6c2f8c1b Improve LWC shop protection messages 2020-02-15 18:20:55 +01:00
Phoenix616 3fe35cd0a5 Clean cache after protection registration and fire post event 2020-02-15 18:10:18 +01:00
Phoenix616 23ceaff2ed Remove old LWC artifact in local repo 2020-02-15 18:05:40 +01:00
Phoenix616 2a37304113 Specify locale when changing case (Fixes #291) 2020-01-29 16:35:04 +01:00
Phoenix616 d4bb775086 Check WorldGuard's chest protection too 2020-01-17 17:41:22 +01:00
Max Lee 584a2bd51c
Create FUNDING.yml 2020-01-16 00:20:55 +01:00
Phoenix616 d0919e78d7 Fix BuildPermissionEvent logic
This makes it possible for other plugins to force allow placing of shops
and avoid potential issues in the check if multiple plugins are changing
the allow settings.

ALso while the allow counters were a nice idea they might not have even
worked correctly because in the case of only one plugin disallowing it
they would've still returned true at the end. Only if one listener
allowed it and another disallowed it the end result would be disallow.

This also makes the BuildPermissionEvent implement Cancellable (which is
an inverted allowed) in order to easily ignore events that are already
disallowed by another listener.
2020-01-16 00:04:28 +01:00
Phoenix616 bd8f2dfc19 Add RedProtect support 2020-01-15 23:44:34 +01:00
Phoenix616 3d83bfdddd Add GriefPrevention support (Resolves #227)
Also slightly cleanup dependency logic loading to not have per-plugin
code in Dependencies class
2020-01-15 23:40:42 +01:00
Phoenix616 37b7669acb Fix players being allowed to build outside regions (Fixes #278)
Basically players were allowed to build shops outside regions in the
case where no region manager was available.
2020-01-15 23:13:18 +01:00
Phoenix616 4067427650 Add ability to define type of LWC protection in config 2020-01-15 22:55:40 +01:00
Phoenix616 d5198bd155 [CI-SKIP] Prepare next version 2019-12-09 22:59:41 +01:00
Phoenix616 e15633a4a8 3.10 release 2019-12-09 22:54:29 +01:00
Phoenix616 2075693e12 Add ability to send shop owner notifications via BungeeCord 2019-11-19 21:50:17 +01:00
Phoenix616 38f93c1d1d Fix default maven profile activation 2019-11-04 17:42:33 +01:00
Phoenix616 40467e3522 Add support for Paper's BlockDestroyEvent for sign breaks (Fixes #214)
Instead of using different modules we use a bukkit profile to test backwards compatibility with pure-Bukkit servers and use the paper-api in the default profile. This should really be done with modules in the future. The actual selection which listener to use is handled by checking if the event class exists on event registration.
2019-11-04 17:26:43 +01:00
Phoenix616 35dd13f917 Slightly change access_denied message to indicate container access error
This is necessary as the no_permission error was worded exactly the same making debugging more difficulty. Also this way someone who thinks he needs to access the chest doesn't think that he doesn't have access to the shop at all.
2019-11-04 17:26:22 +01:00
g--o 88a23a38db Added toggle access command (#271)
Thanks to @g--o and @JRoy
2019-09-16 12:56:30 +01:00
Phoenix616 c028015d5e Improve /cstoggle by using UUIDs and HashSet instead of ArrayList 2019-09-14 23:49:40 +01:00
Phoenix616 d51a512ab8 Fix Vault CurrencyAmountEvent listener returning wrong balance 2019-09-06 13:31:19 +01:00
Phoenix616 bc680afcaf Slightly rework item comparison to fix legacy spawn eggs (Fixes #264) 2019-09-06 13:23:49 +01:00
Phoenix616 58cf96dca8 Fix issues with double chests not begin detected as shops in some cases 2019-08-31 11:20:02 +01:00
Phoenix616 b718fcc429 Use shop owner for LWC protections and not the creator
Also fix a bug where it was possible for shops to be created with shop owners that did not have a valid Account information when other plugins manipulated the name line after the NameChecker checked it. Now it gets checked twice, once at the start (to abort early and to populate the ownerAccount field) and once at the end to check again when the name line changed.
2019-08-22 14:03:27 +01:00
Phoenix616 f90d23cfc3 Update LWC protection and support more LWC forks (LWCX and Modern-LWC) 2019-08-22 13:09:54 +01:00
Phoenix616 285b6b9089 Fix othername permissions 2019-08-20 22:41:17 +01:00
Phoenix616 5eb467a1d3 Set UUID version if players are online when manager loads (Fixes #265) 2019-08-20 13:15:41 +01:00
Phoenix616 930b2cc07b Use prepared queries to avoid special character issues (Fixes #258) 2019-07-29 18:50:26 +01:00
Phoenix616 e972a7d657 Add further workarounds for comparing meta data (Fixes #250)
This is especially obvious for books where all the text will have color codes after dumping and loading them from the database. In order to be able to still compare to them we will load the item the item and then dump it again if it doesn't match the original one.
2019-07-08 18:05:50 +01:00
Phoenix616 6c5e5ece81 Block editing of shop signs that user can't destroy (BUKKIT-1293) 2019-07-08 17:21:21 +01:00
Phoenix616 481e2bdf9e Fix issue with sign sticker 2019-06-09 15:04:14 +01:00
Phoenix616 b0523b2199 Add cooldown for empty/full shop owner notifications 2019-05-27 17:11:09 +01:00
Max Lee cef571223e
Create SECURITY.md 2019-05-26 17:16:10 +01:00
Phoenix616 26daa4531d Always register WorldGuard shop flag (Fixes #230)
The configuration isn't loaded yet when the plugin loaded and the flag initialised so we can't check that there. The config option is checked at the point where the flag is handled though so there is no difference from the intended functionality when registering the flag anyways. The only downside is that this could be a tiny bit confusing to the user in the end but I think that is a small price to pay when it wouldn't be working at all otherwise.
2019-05-13 00:16:57 +01:00
Phoenix616 17e7ab781b Fix shops creation message getting send on auto fill
The NameChecker now catches any exception that might be thrown when querying the account in order to properly cancel in the case of an unknown account or an error that occurred in the event to not let players create shops that they don't have access to if an exception occurs.
2019-05-08 00:22:16 +01:00
Phoenix616 2907706399 Actually send error message and break sign on unknown player error 2019-05-08 00:11:47 +01:00
Phoenix616 a8c57bc0ab Set name line empty if name isn't usable and always use account name 2019-05-07 23:57:56 +01:00
Phoenix616 ca94031ddf Fix wrong UUID version comparison logic 2019-05-07 23:48:04 +01:00
Phoenix616 a95f7316d6 Fix ProtectionCheckEvent not being used when accessing shop 2019-05-07 16:13:56 +01:00
Phoenix616 b300798a62 Make querying of accounts by (short) name an event too 2019-05-06 23:49:16 +01:00
Phoenix616 dcd1dd9057 Add different issue templates 2019-05-06 20:08:12 +01:00
Phoenix616 619ac17cd5 Also use registry to get the allow-shop flag 2019-05-06 18:19:33 +01:00
Phoenix616 2e0c5a3cac Fix issues with user account storage on shop creation
This fixes a bug where shop owner accounts would not be created in certain cases e.g. when the owner had certain admin permissions or created the account for another player while having certain admin permissions.
2019-05-05 19:23:04 +01:00
Phoenix616 4769ae2cf7 Allow loading of different numbers to BigDecimal (Fixes #225)
Also catch wrong types when loading the config better without completely disabling the plugin and revert "Make sure special parsers are setup" and register the parsers static again.
2019-05-03 21:08:56 +01:00
Phoenix616 da1dd94705 Make sure special parsers are setup (Might prevent #225)
There might have been a case where when trying to pair the yml file with the Properties class the parsers weren't actually registered yet as nothing was called on the Properties file yet.
2019-05-02 18:35:45 +01:00
Phoenix616 816fe77f27 Use registry to register WorldGuard flags 2019-05-01 17:21:46 +01:00
Phoenix616 04f91aa55b Add warnings about unknown OfflinePlayer to VaultListener
Also improve the ReserveListener by removing the query for the OfflinePlayer object as that's not necessary to use the Reserve economy API as it directly provides methods for UUID usage (and account existence has usually been checked before already)
Also use canAddHoldings to check if economy user can hold money instead of adding and removing.
2019-05-01 17:13:47 +01:00
Phoenix616 0b57382cd0 Don't use sign Material as that's going to change in 1.14 2019-05-01 17:01:43 +01:00
Phoenix616 c538f4a3dc Remove all usage of old MaterialData and other outdated code
This should make it more future-proof and possibly even work with 1.14 already.
2019-04-30 21:31:24 +01:00
Phoenix616 6773f89221 Improve internal precision of calculations (Fixes #221) 2019-04-30 16:02:01 +01:00
Phoenix616 8cf9934a32 Properly set scale and rounding mode for divisions (Fixes #220) 2019-04-28 15:41:20 +01:00
Phoenix616 f0bc277566 Move to BigDecimal in all events and use the CurrencyTransferEvent
Also add tax bypass permissions (#204, ChestShop.notax.buy/sell). When buying with that permission the buyer does not have to pay the tax (the seller will still get the reduced amount), when selling the seller will get the full amount instead of one lowered by the tax.
The permissions of the shop owner play no role due to there not being a good way of checking offline player permissions and it being a bit non-obvious for the buying/selling player if a shop would be with or without tax. This way all that gets changed is the amount the player pays/receives and not the shop owner (and the player should know their permissions/rank already)

The transfer event was necessary in order to correctly resolve who triggered the transaction. Economy adapters are now required to implement a listener for each of the events. It's also recommended that economy adapters that support transfers directly use that instead of passing it through subtract and add with the processTransfer method.
2019-04-25 18:44:22 +01:00
Phoenix616 6e78fea880 Update the container on item transfers (Fixes #217)
This was removed when the item transfer code changed which stopped comparators from working. This shouldn't be a true block update that observers can detect but only a notification for surrounding blocks that the content might have changed.
2019-04-23 18:00:21 +01:00
Phoenix616 eb7abda01f Add missing item permissions and remove duplicate ones (Fixes #215) 2019-04-08 15:25:56 +01:00
Phoenix616 28fb5cbeff Fix message amount display error when buying from admin shops
Also fix that the stock items were modified when buying from the admin shop
2019-04-07 13:48:16 +01:00
Phoenix616 53ae07b779 Fix error that prevented selling to admin shops 2019-04-07 13:47:18 +01:00
Phoenix616 8a09e91e62 Better catch for potential exceptions when de-serializing items
For some reason items might corrupt in the encoding and decoding process leading to invalid YAML strings. There's also another issue of the server not being able to load certain old itemstacks. (seems to be especially an issue with old entity types)
2019-04-06 18:39:49 +01:00
Phoenix616 52492f8469 Support registering of economy providers after the plugin loaded 2019-04-06 16:24:20 +01:00
Phoenix616 5a99180aab Fix Admin Shops by adding more implementation to AdminInventory
This is required as we now move items between inventories instead of individually removing and adding. This basically adds the stock represented by the admin shop sign to the AdminInventory so all transactions should always be possible.
2019-04-05 15:17:15 +01:00
Phoenix616 1952e5cb46 Directly transfer items (Fixes #169) 2019-04-05 14:49:27 +01:00
Phoenix616 c1509dc03a Let's not kid ourselves, this update is too big to be a patch version
This also uses the Bukkit API again instead of spigot (it doesn't use anything from spigot) and also makes sure to exclude any other Bukkit version from the dependency tree
2019-04-02 19:23:52 +01:00
Phoenix616 2007c4a7fb Fix ShopDestroyEvent not getting called in certain cases
This could be triggered by updating a column of physics blocks with a shop attached
2019-04-01 13:55:21 +01:00
Phoenix616 be5f47cb1f Add config option to toggle if all shop removals should be logged
Removals that happened due to no player being present will always be logged
2019-04-01 13:49:48 +01:00
Phoenix616 03589b3fef Catch Vault issues with null usernames (#158, #194, #205, #209) 2019-03-30 16:09:48 +01:00
Phoenix616 b37bf12e7f Convert old item metadata to newest version (Fixes #202) 2019-03-30 15:40:31 +01:00
Phoenix616 8cd89bf8ee Work around issue with serialising explorer maps
This is due to a bug in CraftBukkit not properly supporting localised/translatable display names when serialising item meta.
This also adds/improves the message when no valid item ID could be generated.
2019-03-19 19:08:53 +01:00
Phoenix616 355fa58ac4 Properly detect if reserve economy is provided (Fixes #210) 2019-03-18 15:10:18 +01:00
Phoenix616 b931393a62 Fix more issues with the shop access permissions (#207) 2019-03-08 22:52:08 +01:00
Phoenix616 de5b505ec5 Fix issues with shop sign opening and access permissions (Fixes #207) 2019-03-07 17:33:47 +01:00
Phoenix616 6d99210dd7 Really fix price restriction 2019-01-19 00:40:50 +01:00
Phoenix616 20228dd645 Fix amount in price restriction not working correctly
Also fix copy and paste error in SELL_PRICE_BELOW_MIN error message.
2019-01-18 22:27:40 +01:00
Phoenix616 91a372bd05 Make Item and Material parsing events 2019-01-17 19:50:47 +01:00
Phoenix616 c8d0590614 Add different error messages when price limits are exceeded (#193) 2019-01-17 18:08:54 +01:00
Phoenix616 6fe6f80538 Use Bukkit's inbuilt command permissions system (Fixes #186)
Also fix plugin not disabling when dependencies aren't loaded correctly
2018-11-25 00:59:13 +01:00
Phoenix616 bc14736a37 Ignore cancelled sign change events 2018-11-21 00:45:39 +01:00
Phoenix616 b853afbd52 Fix issues with the permissions for using different player names
This adds separate permissions for accessing, creating and destroying of shops.
It also adds a config entry to allow using of a shop even if someone have access to it due to their permissions.
2018-11-19 21:10:48 +01:00
Phoenix616 b17a471c21 Check if dependency is enabled (Fixes #181) 2018-11-12 15:03:13 +01:00
Phoenix616 727f49fc28 Update to new Vector API in WorldEdit/WorldGuard 7 2018-11-06 15:35:28 +01:00
Phoenix616 7adf02e532 Improve hopper protection
The InventoryMoveItemEvent is now only used for Hopper Minecarts, other blocks that could move items (Hoppers and Droppers) are checked on place. That way players that have access to a shop can just use the blocks normally but other players can't place them.
2018-10-23 19:27:39 +01:00
Phoenix616 fe85dafec5 Allow configuring what containers can be used for shops (Fixes #175) 2018-10-23 19:14:21 +01:00
Phoenix616 b5f77d67b5 Fix color of ShowItem insert bleeding into message 2018-10-23 19:02:09 +01:00
Phoenix616 470f9d8d99 Allow admins to create shops for other users (Fixes #176) 2018-10-23 16:06:27 +01:00
Phoenix616 2243c2fbc6 Update to new AuthMeReloaded API (Fixes #174) 2018-10-15 20:27:38 +01:00
Phoenix616 4ef24c3828 Update to official WG/WE repository 2018-10-15 20:22:42 +01:00
Phoenix616 26d800132c Merge branch '1.12' into 1.13 2018-09-26 17:02:21 +01:00
Phoenix616 b30688b635 Fix issues with admin shops, ops and creative mode (Fixes #168) 2018-09-26 17:02:13 +01:00
Phoenix616 39a522716f Merge branch '1.12' into 1.13 2018-09-18 00:09:07 +01:00
Phoenix616 96b5a675d6 Allow admins to use the admin shop in all cases
This fixes issues with the auto complete right click functionality not working with admin shops
2018-09-18 00:08:54 +01:00
Phoenix616 0c6aaaa6f7 Fix damage not getting set properly 2018-09-10 01:11:42 +01:00
Phoenix616 adf5340932 Remove spaces from shortened strings for better readability
This is necessary due to the extended length of some material names in 1.13 as they directly include the variation into the material where previously only the data value was used. (E.g. BLACK_STAINED_GLASS_PANE) By removing the spaces and using uppercase characters to separate parts the string stays both readable to the user and parseable by the plugin. It should also be backwards compatible with the old format. (At least with 1.13 material names)
2018-09-10 00:33:27 +01:00
Phoenix616 e1998bcd7c Merge branch '1.12' into 1.13
# Conflicts:
#	src/main/java/com/Acrobot/Breeze/Utils/MaterialUtil.java
2018-09-10 00:31:26 +01:00
Phoenix616 12d2107ce1 Fix passing Material enum strings directly to getShortenedName 2018-09-10 00:25:25 +01:00
Phoenix616 173991ab4a Use spaces and proper casing for calculating width (Fixes #166)
This also slightly changes which name part gets shortened first. It will first shorten the longest name and then the rest.
2018-09-09 22:43:49 +01:00
Phoenix616 54b3b6966c Merge branch '1.12' into 1.13
# Conflicts:
#	src/main/java/com/Acrobot/Breeze/Utils/MaterialUtil.java
#	src/test/java/com/Acrobot/Breeze/Tests/MaterialTest.java
2018-09-09 14:47:32 +01:00
Phoenix616 516eefc5b6 Allow longer item names on signs by calculating the width
This uses hardcoded widths for the main characters used in Minecraft and might not be precise for some characters but better than the previous 15 char hard limit.
2018-09-09 14:37:09 +01:00
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 afab90d021 Fix wording in of incorrect item id message 2018-09-09 13:24:26 +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 01ebedcc84 Merge branch '1.12' into 1.13 2018-08-31 13:55:54 +01:00
Phoenix616 06e4e1bf17 Don't search offline players when checking for existing (Fixes #162) 2018-08-31 13:55:36 +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 640364e7e7 Actually return the block that the sign is attached to 2018-08-29 21:02:06 +01:00
Brokkonaut f5b3aa6b75 1.13 allows single chests besides each other. Handle that correctly. 2018-08-29 20:57:48 +01:00
Brokkonaut b972e79132 Update to WorldGuard 7.0.0 (for 1.13) 2018-08-29 20:32: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 3ae71cf13a Indicate server version in project version 2018-08-21 23:51:19 +01:00
Phoenix616 89dcde83de Differentiate between wall and standing signs (Fixes #147) 2018-07-29 15:05:45 +01:00
Phoenix616 c38af9d5b3 Fix plugin.yml (Fixes #146) 2018-07-28 19:41:02 +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
Phoenix616 5680b22345 Prepare next version 2018-07-25 22:54:51 +01:00
Phoenix616 6c15890c7e Update version for 3.9.2 release 2018-07-15 21:45:18 +01:00
Phoenix616 d24cbe515c Remove mcstats maven repo as it is offline
Don't give up on the site yet and add it to the local repo though
2018-07-11 18:17:05 +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 247b2d239e Fix issues with alternative block materials forms
This also removes the number in the name from /iteminfo and the autocompletion
2018-06-18 20:04:17 +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 c39720b449 Don't try to get the MaterialData from every damage (Fixes #131)
We will have to add a new way of handling that for 1.13 anyways when data isn't using damage values anymore.
2018-05-15 23:58:34 +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 34b6ab2cf2 Update spigot-api and ormlite-jdbc
This might fix the Xerial driver warning from #9/BUKKIT-1073
2018-04-18 14:58:15 +01:00
Phoenix616 88bffc6fde Move comments in above config fields.
This should help avoid confusions as it matches the class' annotation layout and almost every other plugin does it like this.
2018-04-02 18:20:52 +01:00
Phoenix616 ae8d1c79e9 Properly check if item is empty (Fixes #123) 2018-04-02 17:41:45 +01:00
Phoenix616 e40865ac26 Prepare next version 2018-03-22 18:59:12 +01:00
Phoenix616 cceb5844ad Update version for 3.9.1 release 2018-03-22 18:33:41 +01:00
Phoenix616 68ce9d56f6 Allow lowercase config keys too 2018-03-22 18:33:11 +01:00
Phoenix616 d28e44f377 Make sure to set the item if removed manually 2018-03-22 17:01:56 +01:00
Phoenix616 40427e427c Fix BukkitDev link and add SpigotMC site 2018-03-20 14:13:13 +01:00
Phoenix616 679000de15 Improve MaterialData handling
- Adds ability to shorten MaterialData type strings
- Removes Banner color string in name
2018-03-16 18:30:51 +01:00
Phoenix616 dd44217132 Fix issues with metadata IDs
Also log more info when the code couldn't be generated and send it to the sender when the iteminfo command is used
2018-03-16 18:24:52 +01:00
Phoenix616 51495cdefb Fix issues with banners and display their color
Also print more info when the code couldn't be generated.
2018-03-14 18:53:34 +01:00
Phoenix616 26ddb52434 Properly split the material name (Fixes #114) 2018-03-14 15:08:51 +01:00
Phoenix616 d04e17450b Make material name shortening testable and move test to proper package 2018-03-14 15:07:13 +01:00
Phoenix616 58a14bc508 Optimize StringUtil 2018-03-12 21:02:57 +01:00
Phoenix616 6e9824e6b0 Add better item name shortening. (Fixes #112) 2018-03-12 21:01:28 +01:00
Phoenix616 b22d8fd95d Move cache to own class in Breeze package 2018-03-12 21:01:03 +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 e4fb9f9872 Use lowercase name instead of full lowercase permission 2018-01-22 00:39:42 +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 39443a2ad3 Update maven plugins and pom 2018-01-11 15:29:31 +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 fe68f20997 Remove the pound sign from the build number
This gets rid of annoying auto mentions of github issues...
2018-01-09 19:53:00 +01:00
Phoenix616 89b949ef61 Prepare next version 2018-01-09 01:04:45 +01:00
Phoenix616 5f2b671f1f Increment version and mark for release
I decided to increment the minor version because this update does more than just patch issues (e.g. it changes the NameManager and adds new features like the autofill)
2018-01-09 00:08:42 +01:00
Phoenix616 eaeeb80fd3 Fix issues with partial item transfer due to full inventory 2018-01-08 23:56:58 +01:00
Phoenix616 3ad0849c3d Merge similar stacks when showing the ShowItem message 2018-01-08 22:53:44 +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 a493cbf59d Add issue template 2017-12-15 21:48:58 +01:00
Phoenix616 8687b94e22 Make sure the maxStackSize isn't zero (Fixes #87)
By returning an empty array here we completely stop the transaction if the max stack size somehow manages to be zero.
2017-12-04 16:39:23 +01:00
Phoenix616 0354258251 Migrate all versions and disable on fail.
This should make it possible to theoretically upgrade from version 1 to version 3 databases.
2017-11-26 18:57:32 +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 1276c6f031 Add method to get the last account information from a shortened name 2017-11-17 22:08:06 +01:00
Phoenix616 29ef7f25aa Fix errors when server economy account is not defined or invalid 2017-11-15 21:13:07 +01:00
Phoenix616 4075b2e38a Use the alias on the sign if one is defined in OddItem 2017-11-15 21:08:32 +01:00
Phoenix616 d332603fb4 Do not automatically color config strings (Fixes BUKKIT-1241)
This is necessary so that we still store the messages with the & code internally as they would get saved back to the config file using the converted color code (section sign) which could lead to encoding issues on different operating systems. (It also fixes issues with strings that contain an and sign that isn't supposed to be a color code) Instead we load the real string and color messages via the prefix method which should get called in every instance where a message is send.
2017-11-13 15:11:22 +01:00
Phoenix616 519a4fca8a Names with a colon are valid (Fixes #81)
The NameManager appends a unique id for every player that has the same short name as another already existing one with a colon to the end of the clashing usernames. This is necessary so that a player can't just change their name to another user's old name and get access to all his shops.
2017-11-10 00:05:59 +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 61c08a3b18 Calculate the amount instead of using a loop (Fixes #78) 2017-10-25 15:22:26 +01:00
Phoenix616 e81077143e Also check for full account name permission 2017-09-26 15:39:08 +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 7199acb8ef Added progress to migration and made error messages prettier (#67) 2017-08-17 21:38:05 +01:00
Phoenix616 9368dfea75 Make sure owner name is set (Fixes DevBukkit-1225) 2017-08-15 13:02:26 +01:00
Phoenix616 9a9e89206b Fix NPE that occurs when STACK_TO_64 is true (DevBukkit-1222) 2017-08-06 11:40:20 +01:00
Phoenix616 0413f24e64 Fix error in config comment 2017-08-06 11:40:02 +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 4a71af39af Return account by normal name if name is longer than 15 cars (DevBukkit-1217) 2017-07-09 17:30:26 +01: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 4120455974 Strings already get colored by the Breeze library 2017-07-05 23:51:49 +01:00
Phoenix616 9269fc4049 Added bstats metrics as mcstats isn't really stable anymore 2017-07-05 15:23:28 +01:00
Phoenix616 2e7613ae9c Create LWC protections with UUIDs instead of the name
Thanks to @Brokkonaut for noticing this
2017-07-04 16:18:21 +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
Max Lee ce4525d46e Add missing LGPLv2.1 license
The project is under the LGPLv2.1 according to the dev bukkit page at https://dev.bukkit.org/projects/chestshop
2017-07-04 15:23:15 +01:00
Phoenix616 b9f9166d6c Add permission check to version and reload command 2017-07-04 15:18:00 +01:00
Phoenix616 cae36a94bd Reload the NameManager when reloading the config 2017-07-04 15:14:57 +01:00
Phoenix616 f4e060071d Make accounts v3 migration more robust to errors (Fixes #58) 2017-07-03 00:46:43 +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 aa2437f76b Update spigot-api dependency to 1.12-R0.1 2017-07-01 17:11:31 +01:00
Phoenix616 7271cebd91 Properly use the plugin's logger 2017-06-30 21:00:30 +01:00
Phoenix616 4abb9ae518 Fix NPE when slot in chest is empty 2017-06-30 20:38:58 +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 fc174a2b6e Include compile time when manually building 2017-06-28 23:56:45 +01:00
Phoenix616 cf2497ff91 Fix potential NPE 2017-06-28 22:11:54 +01:00
Phoenix616 5d01a8ed0e Update to Java 8 2017-06-28 21:37:45 +01:00
Phoenix616 ab1596632b Update spigot-api dependency to 1.12 pre6 and to log4j 2.1.0 2017-06-05 19:29:29 +01:00
Phoenix616 d399d5b2af Link to github's contributors page instead of trying to list all names 2017-05-23 14:50:38 +01:00
Phoenix616 20ba0f9674 Add SNAPSHOT to the version as these are not releases 2017-05-09 15:00:31 +01:00
Phoenix616 53725defe7 Update scm url 2017-05-09 14:55:28 +01:00
Phoenix616 1948156b42 Update residence dependency 2017-05-09 14:54:32 +01:00
Phoenix616 fc5d84eebb Fix issue with selling written books (#1107)
Also improved the manual add method.
2017-05-04 18:54:49 +01:00
Phoenix616 93a769539b Format type name comments better 2017-04-27 15:17:12 +01:00
Phoenix616 d18a5695f1 Add missing permissions for 1.8, 1.10 and 1.11 items/blocks 2017-04-27 15:12:43 +01:00
Max Lee 555b7efb70 Update build server link 2017-03-13 21:59:14 +01:00
Phoenix616 051a8511d4 Escape version string as yaml treats number signs as comments 2017-02-26 22:10:54 +01:00
Phoenix616 90a463abcd Add build number to version and fix authors in plugin.yml 2017-02-26 21:33:37 +01:00
Phoenix616 583c50438c Revert "Fix merging of items that aren't actually equal. (Like skulls with textures)"
This reverts commit 11d2280d3e.

The method isn't actually the issue and the workaround introduces new
issues.
2017-02-20 00:39:30 +01:00
Phoenix616 11d2280d3e Fix merging of items that aren't actually equal. (Like skulls with textures) 2017-02-19 17:22:07 +01:00
Phoenix616 765548e0e5 Use Bukkit's addItem method if maxStackSize equals the item's natural stack size 2017-02-19 17:17:42 +01:00
Phoenix616 90f7dd5b0f No need to use the workaround anymore as CB adds large itemstacks properly now 2017-02-19 16:50:31 +01:00
Dan Mulloy 5961c9f3df Update README.md 2017-01-16 13:56:39 -05:00
Dan Mulloy 5a39b6fd62 Merge pull request #47 from dmulloy2/master
Merge changes from fork
2017-01-16 13:55:24 -05:00
Dan Mulloy 87071ca384 Merge branch 'master' into master 2017-01-16 13:53:21 -05:00
Dan Mulloy e44d9e9710 Merge pull request #17 from Eredrim/master
Update residence comptibility
2017-01-08 10:44:18 -05:00
Eredrim fc3c134c2a Update residence comptibility 2017-01-07 23:14:27 +01:00
Dan Mulloy fa7a196bab Fix static access 2016-11-21 11:43:09 -05:00
Dan Mulloy be96a17968 Merge branch 'master' of git+ssh://git@github.com/dmulloy2/ChestShop-3.git 2016-11-21 11:42:24 -05:00
Dan Mulloy 93c978ce02 Update to 1.11 2016-11-21 11:42:17 -05:00
Dan Mulloy a79aa9d733 Merge pull request #14 from L4BORG/master
Fix Admin Shops
2016-11-10 16:21:25 -05:00
L4BORG 2ff945bbe6 Fix Admin Shops 2016-11-10 03:17:27 +01:00
Dan Mulloy 96699114c6 Merge pull request #12 from L4BORG/master
Economy fixes, fix for https://github.com/dmulloy2/ChestShop-3/issues/11
2016-11-06 21:58:38 -05: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 24df17fde2 Restore compatibility with 1.8
Fixes #9
2016-09-22 11:57:49 -04:00
Dan Mulloy e186635484 Try to fix a few more errors
Fixes #7
2016-09-20 15:45:18 -04:00
Dan Mulloy 3fa939983b Merge branch 'master' of git+ssh://git@github.com/dmulloy2/ChestShop-3.git 2016-09-20 15:40:49 -04:00
Dan Mulloy 050ce61347 Try to fix (or just ignore) a weird null pointer
Fixes #6
2016-09-20 15:40:41 -04:00
Dan Mulloy 35f18e947a Merge pull request #5 from mibby/master
Few 'Quality of Life' improvements.
2016-08-28 12:22:53 -04:00
mibby 58258c858f Re-add database suppression.
Re-add database suppression for SQLite driver start-up log warnings.

https://dev.bukkit.org/bukkit-plugins/chestshop/tickets/1059-warning-you-seem-to-not-be-using-the-xerial-sqlite/
https://dev.bukkit.org/bukkit-plugins/chestshop/tickets/1086-error-com-acrobot-chest-shop-ormlite-db-sqlite-database/
2016-08-27 20:20:46 -07: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 e11b1430b4 Add download link to the readme 2016-08-27 12:44:39 -04:00
Dan Mulloy 8f962f9345 Fix heroes dependency 2016-08-26 20:36:35 -04:00
Dan Mulloy f31e5b2602 Try to get it to compile 2016-08-26 20:19:02 -04:00
Dan Mulloy 5749c84c28 Fix and re-enable AuthMe hook 2016-08-20 16:17:10 -04:00
Dan Mulloy 02d18df559 Fix an error with empty signs
Fixes #3
2016-08-20 16:08:46 -04:00
Andrzej Pomirski 6d6b6c9950 Merge pull request #46 from Libter/master
Metrics update
2016-07-20 15:09:31 +02:00
Libter 2169a3dc1c Metrics update 2016-07-19 14:41:44 +02: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 218e3b4acd Merge pull request #2 from VoxileRu/master
Metrics R8
2016-07-06 19:44:17 -04:00
Stanislav Usenkov c4c879117a We should update Metrics! 2016-07-06 18:55:40 +06:00
Dan Mulloy a9f2f228d6 Update to 1.10, attempt fix for item overflow 2016-06-09 22:38:15 -04:00
Dan Mulloy bf2d3f6c78 Merge pull request #1 from Brianetta/PR_fix_compile
Implement missing methods so that this compiles without errors
2016-05-07 19:49:33 -04:00
Brian Ronald ef5ccbb775 Implement missing methods so that this compiles without errors 2016-05-08 00:29:20 +01:00
Andrzej Pomirski cfd8cff209 Merge pull request #44 from sgdc3/1.8.X
Fix authme hook (final)
2016-04-06 11:34:06 +02:00
Gabriele C 973ce58461 Fix authme hook 2016-04-05 22:23:50 +02:00
Gabriele C b040eafcc1 Merge pull request #2 from Acrobot/master
Up
2016-04-05 22:07:39 +02: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
Andrzej Pomirski c169df2265 Merge pull request #43 from sgdc3/master
Moved AuthMe hook to ChestShop using the API
2015-08-07 16:53:16 +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 532e50c64b Bump version 2015-08-06 16:10:26 +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
Andrzej Pomirski 757fa85cb7 Merge pull request #42 from sgdc3/master
Minor code smell fixes
2015-08-06 15:10:55 +02:00
Gabriele C 27688735ad Readded suppress warning 2015-08-06 14:36:16 +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 04ae242ad1 Merge pull request #39 from sgdc3/master
Exclude Bukkit/CraftBukkit from dependencies, update the plugins and repos
2015-07-12 21:46:35 +02:00
Gabriele C. 4f7f2c395f Update pom.xml 2015-07-12 21:45:01 +02:00
Gabriele C. cfbb000748 Update pom.xml 2015-07-12 21:40:50 +02:00
Gabriele C. a8ea05a70c Update pom.xml 2015-07-12 20:32:58 +02:00
Andrzej Pomirski 0b01c22041 Bump version 2015-07-12 19:19:43 +02:00
Andrzej Pomirski c70fa03a6c Remove database suppression 2015-07-12 19:19:23 +02:00
Andrzej Pomirski 416e15a96c Add new tests to price checking 2015-07-12 19:19:12 +02:00
Andrzej Pomirski 17c2f943c6 Do not let players create shops on donation chests 2015-07-12 19:18:53 +02:00
Andrzej Pomirski 3c949f0450 Remove trailing zeroes from prices 2015-07-12 19:18:31 +02:00
Andrzej Pomirski 1d550874fb Grammar! 2015-07-12 19:18:06 +02:00
Andrzej Pomirski 693b1e3691 Bump version 2015-07-05 21:56:52 +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 e5953cd740 Speed up the isSign method
Theoretically, block.getState() returns a thread-safe instance of a
block, so getting it when not needed might have hurt performance of
ChestShop
2015-07-05 21:48:17 +02:00
Andrzej Pomirski 2b3a4b2bd3 Version bump 2015-05-31 18:27:18 +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 44d801db46 Remove obsolete configuration options 2015-05-22 13:31:43 +02:00
Andrzej Pomirski c0ed70743f Bump version for real 2015-05-22 13:27:44 +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 02673dec94 Make DB code nicer 2015-05-22 13:26:07 +02:00
Andrzej Pomirski 6466b2d6aa Remove logging to database! 2015-05-22 13:25:32 +02:00
Andrzej Pomirski 9200928dca Bump version, include Spigot 2015-05-22 13:24:57 +02:00
Andrzej Pomirski 8b24b065d3 Bump version 2015-03-21 16:11:38 +01:00
Andrzej Pomirski 13d83ec92a Fix Essentials' Eco problem 2015-03-21 16:11:33 +01:00
Andrzej Pomirski 2c729789e8 Add a warning for Residence 2015-03-21 16:11:23 +01:00
Andrzej Pomirski 0f75d3638e Bump version 2015-03-17 11:37:10 +01:00
Andrzej Pomirski ff267654f2 Update lockette 2015-03-17 11:37:04 +01:00
Andrzej Pomirski fac9a18b8f Add a simple shop edited event, not yet working 2015-03-17 11:36:55 +01:00
Andrzej Pomirski 20e686f3b8 Add a price test 2015-03-17 11:36:37 +01:00
Andrzej Pomirski cb126f22cf Fix the price exploit 2015-03-17 11:36:19 +01:00
Andrzej Pomirski 6ca16ce7e2 Bump version 2015-03-11 18:02:46 +01: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 d25dbd5cce Migrate the database 2015-03-11 18:01:50 +01:00
Andrzej Pomirski af72147446 Version bump 2015-02-04 20:15:08 +01:00
Andrzej Pomirski fa85153407 Vault must be present for ChestShop to work 2015-02-04 20:15:02 +01:00
Andrzej Pomirski 8c77057703 Fix the issue with name changes 2015-02-04 20:14:35 +01:00
Andrzej Pomirski ee9fcaba23 Bump the version of ChestShop and Vault 2015-01-17 15:18:42 +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 22af388402 Bump version 2015-01-08 20:28:36 +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 f6aad7e397 Fix a problem with invalid item IDs 2015-01-08 20:12:38 +01:00
Andrzej Pomirski a058b80990 Fix WordGuard + minor fixes 2014-11-30 20:15:27 +01:00
Andrzej Pomirski 91c08045b8 Bump version 2014-08-13 17:23:36 +02: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 c646dd16a0 FOUND THE CULPRIT. 2014-08-13 17:22:52 +02:00
Andrzej Pomirski 42b971c8b8 Version bump 2014-07-28 20:59:51 +02:00
Andrzej Pomirski bed883f7ae A small bugfix 2014-07-28 20:51:04 +02:00
Andrzej Pomirski 6bbfc93b27 Fix the "value already present" error 2014-07-22 22:03:50 +02:00
Andrzej Pomirski 50f90cb9ec Bump version 2014-07-13 12:58:21 +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 75c6e37446 Update Heroes 2014-06-29 22:22:20 +02:00
Andrzej Pomirski c3bc9068e1 Remove the unnecessary .jar 2014-06-29 17:53:38 +02:00
Andrzej Pomirski e39825aa1f Update Residence 2014-06-29 17:35:49 +02:00
Andrzej Pomirski 3cb4a17be5 CRLF -> LF 2014-06-29 16:40:49 +02:00
Andrzej Pomirski 8e9d856354 Remove unnecessary dependencies 2014-06-22 19:08:40 +02:00
Andrzej Pomirski db966d82ed Bump version 2014-06-22 14:33:20 +02:00
Andrzej Pomirski 2a89fb345b NameManager > Bukkit 2014-06-22 14:33:02 +02:00
Andrzej Pomirski f6457e3d47 Add alternative fallbacks 2014-06-22 14:32:50 +02:00
Andrzej Pomirski ddf32eda04 Add an option to not remove LWC protections 2014-06-22 14:32:40 +02:00
Andrzej Pomirski 9fa2f92ef8 Switch Vault from names to UUIDs 2014-06-14 20:46:59 +02:00
Andrzej Pomirski a158b7eb4a Remove the unnecessary dependencies 2014-06-14 20:44:39 +02:00
Andrzej Pomirski 404f7296e0 Remove Register - NO DEFAULT ECONOMY SUPPORT 2014-06-14 20:40:31 +02:00
Andrzej Pomirski 58e2599991 Bump version 2014-06-01 20:32:28 +02:00
Andrzej Pomirski bdecaa1727 Add prefixes to commands 2014-05-24 11:50:27 +02:00
Andrzej Pomirski a1a688c110 Update updater (yo dawg) 2014-05-24 11:38:13 +02:00
Andrzej Pomirski 83dbce40fd Add a warning if people try to run the new ChestShop version with an older CraftBukkit version 2014-05-24 11:37:51 +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
Andrzej Pomirski c82d2b81c0 Merge pull request #34 from KingFaris10/master
Added /cstoggle command
2014-05-21 14:36:41 +02:00
Faris Rehman 482ea412b2 Made usage for the command 2014-05-20 22:20:14 +01: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 bd0a40e16c Cache names in NameManager 2014-05-06 11:55:33 +02:00
Andrzej Pomirski a0f824d526 Merge pull request #31 from Yive/master
Fixed maven compiling in 1.3
2014-05-01 13:22:37 +02:00
Yive 908a9b2b87 Update pom.xml
Try and fix the bug where maven compiles in JDK 1.3
2014-04-25 06:08:05 -07:00
Andrzej Pomirski c403c1736f Fix the ? item recognition 2014-04-21 17:08:31 +02:00
Andrzej Pomirski 11ffd64952 Fix the version file not saving 2014-04-21 17:08:20 +02:00
Andrzej Pomirski 38279fade4 Do not download updates if you're using a dev version 2014-04-18 19:43:00 +02:00
Andrzej Pomirski b4947475e2 Remove the "hacking" message. 2014-04-18 19:41:27 +02:00
Andrzej Pomirski 6d27ca7bea Remove the unnecessary database logging 2014-04-18 19:41:15 +02:00
Andrzej Pomirski b05840dd98 Fix the updater not to download dev versions 2014-04-15 16:00:57 +02:00
Andrzej Pomirski 7842be5f75 Prepare for database migrations 2014-04-12 17:37:23 +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 6117e03c1d Update CraftBukkit version 2014-04-12 16:52:47 +02:00
Andrzej Pomirski 554c0291b5 Add a fake Admin Shop account 2014-04-12 16:52:21 +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 b508d08bba Refactoring 2014-04-12 13:28:37 +02:00
Andrzej Pomirski 786c140ebd More refactoring + UUID changes 2014-04-12 13:28:29 +02:00
Andrzej Pomirski b0e452ed1d Refactoring 2014-04-12 13:28:13 +02:00
Andrzej Pomirski 012dd4568d Document the functions 2014-04-12 13:28:02 +02:00
Andrzej Pomirski 6845f6a0cb Change the name to be more appropriate 2014-04-12 13:27:49 +02:00
Andrzej Pomirski 0328374951 Clean up the imports 2014-04-11 17:37:53 +02:00
Andrzej Pomirski 22d3c7f575 Remove unnecessary imports 2014-04-11 17:23:04 +02:00
Andrzej Pomirski 2cd4a1fb45 Fix the NPEs 2014-04-11 17:17:20 +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 03320b7db6 Include ORMlite for SQL management 2014-04-10 21:51:31 +02:00
Andrzej Pomirski 4c65fbf9ef Start preparing for 1.7.6 2014-04-06 19:51:47 +02:00
Andrzej Pomirski bc218746ae Change the shell 2014-04-06 19:51:30 +02:00
Andrzej Pomirski fd159779e8 Bump the version 2014-04-01 15:47:36 +02:00
Andrzej Pomirski e29f9681a1 Fix a dupe bug 2014-04-01 15:47:19 +02:00
Andrzej Pomirski f5771c28d8 Change the priority of ChestShop's interact event 2014-03-20 16:57:48 +01:00
Andrzej Pomirski b9b4d1b29c Add a config option for the update check 2014-03-20 16:57:32 +01:00
Andrzej Pomirski 9b855a70f3 Add an update checker 2014-03-20 16:57:19 +01:00
Andrzej Pomirski 9b243e8e7d Merge pull request #29 from jkobus/patch-1
Fix for Chestshop ignoring event cancellation
2014-03-20 16:22:29 +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 385fe2acbf Bump version 2014-03-14 20:44:50 +01:00
Andrzej Pomirski 20deb65a57 Add auto-item-fill 2014-03-12 13:27:30 +01:00
Andrzej Pomirski 467cd34316 Add a test for price checking 2014-03-12 13:07:34 +01:00
Andrzej Pomirski e18269a7b7 Prevent from scamming 2014-03-12 12:50:39 +01:00
303 changed files with 64597 additions and 4546 deletions

8
.crowdin.yml Normal file
View File

@ -0,0 +1,8 @@
files:
- source: /src/main/resources/languages/lang.en.yml
translation: /src/main/resources/languages/lang.%two_letters_code%.yml
languages_mapping:
two_letters_code:
zh-TW: zh_TW
pt-BR: pt_BR
es-MX: es_MX

6
.github/FUNDING.yml vendored Normal file
View File

@ -0,0 +1,6 @@
# These are supported funding model platforms
github: Phoenix616
custom: ['https://acrobot-paypal.phoenix616.dev', 'https://tip.phoenix616.dev']
issuehunt: ChestShop-authors/ChestShop-3
ko_fi: Phoenix616

89
.github/ISSUE_TEMPLATE/bug-report.yml vendored Normal file
View File

@ -0,0 +1,89 @@
name: Bug report
description: Report an error that happens in the plugin.
labels: []
body:
- type: markdown
attributes:
value: >
Please check if there are already similar issues open, also please test if your issue
isn't already fixed by trying the latest development build: https://ci.minebench.de/job/ChestShop-3/
- type: textarea
attributes:
label: What is happening?
description: Explain what happens and what steps should be done to reproduce the issue. Ideally with pictures and the full error log!
validations:
required: true
- type: textarea
attributes:
label: What did you expect to happen?
description: Explain what you expected to happen after performing the previously described steps
validations:
required: true
- type: input
attributes:
label: Plugin Version
description: The full plugin version that you are running from `/version ChestShop`
validations:
required: true
- type: textarea
attributes:
label: Plugin Config
description: The full `config.yml` file of ChestShop.
value: |
<details>
<summary>Config</summary>
```yaml
[Put the config here]
```
</details>
validations:
required: true
- type: input
attributes:
label: Server Version
description: The full server version that you are running from `/version`.
validations:
required: true
- type: textarea
attributes:
label: Server Log
description: The full `latest.log` file, especially important if you have a stack trace
value: |
<details>
<summary>Log</summary>
```
[Your log here]
```
</details>
validations:
required: true
- type: textarea
attributes:
label: What other plugins are you running?
description: List of your plugins, ideally with the version
validations:
required: true
- type: checkboxes
attributes:
label: Agreements
description: Please agree to the following.
options:
- label: I have checked if there are already similar issues open.
- label: I am running the latest development version available from https://ci.minebench.de/job/ChestShop-3/.
- label: The version [has support](https://github.com/ChestShop-authors/ChestShop-3/security/policy#supported-versions) for this type of issue.
- label: I have provided all requested information and agree to the terms of the [project's license](https://github.com/ChestShop-authors/ChestShop-3/blob/master/LICENSE)
required: true
- type: textarea
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here.

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@ -0,0 +1,8 @@
blank_issues_enabled: false
contact_links:
- name: "#chestshop IRC channel on irc.spi.gt"
url: "https://kiwiirc.com/client/irc.spi.gt/#chestshop"
about: Live chat with the devs and other members of the community
- name: SpigotMC discussion thread
url: https://www.spigotmc.org/threads/chestshop.295890/
about: Ask and answer questions or discuss the plugin in general

43
.github/ISSUE_TEMPLATE/enhancement.yml vendored Normal file
View File

@ -0,0 +1,43 @@
name: Enhancement
description: Request a feature or suggest an idea for this project
labels: [enhancement]
body:
- type: markdown
attributes:
value: >
Please check if there are already similar issues open, also please test if your request
isn't already implemented by trying the latest development build: https://ci.minebench.de/job/ChestShop-3/
- type: textarea
attributes:
label: Is your feature request related to a problem? Please describe.
description: A clear and concise description of what the problem is. Ex. I'm always frustrated when...
validations:
required: true
- type: textarea
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered.
- type: checkboxes
attributes:
label: Agreements
description: Please agree to the following.
options:
- label: I have checked if there are already similar issues open.
required: true
- label: I have checked that the latest build doesn't already implement the feature.
required: true
- type: textarea
attributes:
label: Additional context
description: Add any other context or screenshots about the feature request here.

21
.github/workflows/code_quality.yml vendored Normal file
View File

@ -0,0 +1,21 @@
name: Qodana
on:
workflow_dispatch:
pull_request:
push:
branches:
- master
jobs:
qodana:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: 'Qodana Scan'
uses: JetBrains/qodana-action@v2022.3.4
env:
QODANA_TOKEN: ${{ secrets.QODANA_TOKEN }}
with:
args: --baseline,.github/workflows/qodana/qodana.sarif.json

50233
.github/workflows/qodana/qodana.sarif.json vendored Normal file

File diff suppressed because it is too large Load Diff

504
LICENSE Normal file
View File

@ -0,0 +1,504 @@
GNU LESSER GENERAL PUBLIC LICENSE
Version 2.1, February 1999
Copyright (C) 1991, 1999 Free Software Foundation, Inc.
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
(This is the first released version of the Lesser GPL. It also counts
as the successor of the GNU Library Public License, version 2, hence
the version number 2.1.)
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
Licenses are intended to guarantee your freedom to share and change
free software--to make sure the software is free for all its users.
This license, the Lesser General Public License, applies to some
specially designated software packages--typically libraries--of the
Free Software Foundation and other authors who decide to use it. You
can use it too, but we suggest you first think carefully about whether
this license or the ordinary General Public License is the better
strategy to use in any particular case, based on the explanations below.
When we speak of free software, we are referring to freedom of use,
not price. Our General Public Licenses are designed to make sure that
you have the freedom to distribute copies of free software (and charge
for this service if you wish); that you receive source code or can get
it if you want it; that you can change the software and use pieces of
it in new free programs; and that you are informed that you can do
these things.
To protect your rights, we need to make restrictions that forbid
distributors to deny you these rights or to ask you to surrender these
rights. These restrictions translate to certain responsibilities for
you if you distribute copies of the library or if you modify it.
For example, if you distribute copies of the library, whether gratis
or for a fee, you must give the recipients all the rights that we gave
you. You must make sure that they, too, receive or can get the source
code. If you link other code with the library, you must provide
complete object files to the recipients, so that they can relink them
with the library after making changes to the library and recompiling
it. And you must show them these terms so they know their rights.
We protect your rights with a two-step method: (1) we copyright the
library, and (2) we offer you this license, which gives you legal
permission to copy, distribute and/or modify the library.
To protect each distributor, we want to make it very clear that
there is no warranty for the free library. Also, if the library is
modified by someone else and passed on, the recipients should know
that what they have is not the original version, so that the original
author's reputation will not be affected by problems that might be
introduced by others.
Finally, software patents pose a constant threat to the existence of
any free program. We wish to make sure that a company cannot
effectively restrict the users of a free program by obtaining a
restrictive license from a patent holder. Therefore, we insist that
any patent license obtained for a version of the library must be
consistent with the full freedom of use specified in this license.
Most GNU software, including some libraries, is covered by the
ordinary GNU General Public License. This license, the GNU Lesser
General Public License, applies to certain designated libraries, and
is quite different from the ordinary General Public License. We use
this license for certain libraries in order to permit linking those
libraries into non-free programs.
When a program is linked with a library, whether statically or using
a shared library, the combination of the two is legally speaking a
combined work, a derivative of the original library. The ordinary
General Public License therefore permits such linking only if the
entire combination fits its criteria of freedom. The Lesser General
Public License permits more lax criteria for linking other code with
the library.
We call this license the "Lesser" General Public License because it
does Less to protect the user's freedom than the ordinary General
Public License. It also provides other free software developers Less
of an advantage over competing non-free programs. These disadvantages
are the reason we use the ordinary General Public License for many
libraries. However, the Lesser license provides advantages in certain
special circumstances.
For example, on rare occasions, there may be a special need to
encourage the widest possible use of a certain library, so that it becomes
a de-facto standard. To achieve this, non-free programs must be
allowed to use the library. A more frequent case is that a free
library does the same job as widely used non-free libraries. In this
case, there is little to gain by limiting the free library to free
software only, so we use the Lesser General Public License.
In other cases, permission to use a particular library in non-free
programs enables a greater number of people to use a large body of
free software. For example, permission to use the GNU C Library in
non-free programs enables many more people to use the whole GNU
operating system, as well as its variant, the GNU/Linux operating
system.
Although the Lesser General Public License is Less protective of the
users' freedom, it does ensure that the user of a program that is
linked with the Library has the freedom and the wherewithal to run
that program using a modified version of the Library.
The precise terms and conditions for copying, distribution and
modification follow. Pay close attention to the difference between a
"work based on the library" and a "work that uses the library". The
former contains code derived from the library, whereas the latter must
be combined with the library in order to run.
GNU LESSER GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License Agreement applies to any software library or other
program which contains a notice placed by the copyright holder or
other authorized party saying it may be distributed under the terms of
this Lesser General Public License (also called "this License").
Each licensee is addressed as "you".
A "library" means a collection of software functions and/or data
prepared so as to be conveniently linked with application programs
(which use some of those functions and data) to form executables.
The "Library", below, refers to any such software library or work
which has been distributed under these terms. A "work based on the
Library" means either the Library or any derivative work under
copyright law: that is to say, a work containing the Library or a
portion of it, either verbatim or with modifications and/or translated
straightforwardly into another language. (Hereinafter, translation is
included without limitation in the term "modification".)
"Source code" for a work means the preferred form of the work for
making modifications to it. For a library, complete source code means
all the source code for all modules it contains, plus any associated
interface definition files, plus the scripts used to control compilation
and installation of the library.
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running a program using the Library is not restricted, and output from
such a program is covered only if its contents constitute a work based
on the Library (independent of the use of the Library in a tool for
writing it). Whether that is true depends on what the Library does
and what the program that uses the Library does.
1. You may copy and distribute verbatim copies of the Library's
complete source code as you receive it, in any medium, provided that
you conspicuously and appropriately publish on each copy an
appropriate copyright notice and disclaimer of warranty; keep intact
all the notices that refer to this License and to the absence of any
warranty; and distribute a copy of this License along with the
Library.
You may charge a fee for the physical act of transferring a copy,
and you may at your option offer warranty protection in exchange for a
fee.
2. You may modify your copy or copies of the Library or any portion
of it, thus forming a work based on the Library, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) The modified work must itself be a software library.
b) You must cause the files modified to carry prominent notices
stating that you changed the files and the date of any change.
c) You must cause the whole of the work to be licensed at no
charge to all third parties under the terms of this License.
d) If a facility in the modified Library refers to a function or a
table of data to be supplied by an application program that uses
the facility, other than as an argument passed when the facility
is invoked, then you must make a good faith effort to ensure that,
in the event an application does not supply such function or
table, the facility still operates, and performs whatever part of
its purpose remains meaningful.
(For example, a function in a library to compute square roots has
a purpose that is entirely well-defined independent of the
application. Therefore, Subsection 2d requires that any
application-supplied function or table used by this function must
be optional: if the application does not supply it, the square
root function must still compute square roots.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Library,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Library, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote
it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Library.
In addition, mere aggregation of another work not based on the Library
with the Library (or with a work based on the Library) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may opt to apply the terms of the ordinary GNU General Public
License instead of this License to a given copy of the Library. To do
this, you must alter all the notices that refer to this License, so
that they refer to the ordinary GNU General Public License, version 2,
instead of to this License. (If a newer version than version 2 of the
ordinary GNU General Public License has appeared, then you can specify
that version instead if you wish.) Do not make any other change in
these notices.
Once this change is made in a given copy, it is irreversible for
that copy, so the ordinary GNU General Public License applies to all
subsequent copies and derivative works made from that copy.
This option is useful when you wish to copy part of the code of
the Library into a program that is not a library.
4. You may copy and distribute the Library (or a portion or
derivative of it, under Section 2) in object code or executable form
under the terms of Sections 1 and 2 above provided that you accompany
it with the complete corresponding machine-readable source code, which
must be distributed under the terms of Sections 1 and 2 above on a
medium customarily used for software interchange.
If distribution of object code is made by offering access to copy
from a designated place, then offering equivalent access to copy the
source code from the same place satisfies the requirement to
distribute the source code, even though third parties are not
compelled to copy the source along with the object code.
5. A program that contains no derivative of any portion of the
Library, but is designed to work with the Library by being compiled or
linked with it, is called a "work that uses the Library". Such a
work, in isolation, is not a derivative work of the Library, and
therefore falls outside the scope of this License.
However, linking a "work that uses the Library" with the Library
creates an executable that is a derivative of the Library (because it
contains portions of the Library), rather than a "work that uses the
library". The executable is therefore covered by this License.
Section 6 states terms for distribution of such executables.
When a "work that uses the Library" uses material from a header file
that is part of the Library, the object code for the work may be a
derivative work of the Library even though the source code is not.
Whether this is true is especially significant if the work can be
linked without the Library, or if the work is itself a library. The
threshold for this to be true is not precisely defined by law.
If such an object file uses only numerical parameters, data
structure layouts and accessors, and small macros and small inline
functions (ten lines or less in length), then the use of the object
file is unrestricted, regardless of whether it is legally a derivative
work. (Executables containing this object code plus portions of the
Library will still fall under Section 6.)
Otherwise, if the work is a derivative of the Library, you may
distribute the object code for the work under the terms of Section 6.
Any executables containing that work also fall under Section 6,
whether or not they are linked directly with the Library itself.
6. As an exception to the Sections above, you may also combine or
link a "work that uses the Library" with the Library to produce a
work containing portions of the Library, and distribute that work
under terms of your choice, provided that the terms permit
modification of the work for the customer's own use and reverse
engineering for debugging such modifications.
You must give prominent notice with each copy of the work that the
Library is used in it and that the Library and its use are covered by
this License. You must supply a copy of this License. If the work
during execution displays copyright notices, you must include the
copyright notice for the Library among them, as well as a reference
directing the user to the copy of this License. Also, you must do one
of these things:
a) Accompany the work with the complete corresponding
machine-readable source code for the Library including whatever
changes were used in the work (which must be distributed under
Sections 1 and 2 above); and, if the work is an executable linked
with the Library, with the complete machine-readable "work that
uses the Library", as object code and/or source code, so that the
user can modify the Library and then relink to produce a modified
executable containing the modified Library. (It is understood
that the user who changes the contents of definitions files in the
Library will not necessarily be able to recompile the application
to use the modified definitions.)
b) Use a suitable shared library mechanism for linking with the
Library. A suitable mechanism is one that (1) uses at run time a
copy of the library already present on the user's computer system,
rather than copying library functions into the executable, and (2)
will operate properly with a modified version of the library, if
the user installs one, as long as the modified version is
interface-compatible with the version that the work was made with.
c) Accompany the work with a written offer, valid for at
least three years, to give the same user the materials
specified in Subsection 6a, above, for a charge no more
than the cost of performing this distribution.
d) If distribution of the work is made by offering access to copy
from a designated place, offer equivalent access to copy the above
specified materials from the same place.
e) Verify that the user has already received a copy of these
materials or that you have already sent this user a copy.
For an executable, the required form of the "work that uses the
Library" must include any data and utility programs needed for
reproducing the executable from it. However, as a special exception,
the materials to be distributed need not include anything that is
normally distributed (in either source or binary form) with the major
components (compiler, kernel, and so on) of the operating system on
which the executable runs, unless that component itself accompanies
the executable.
It may happen that this requirement contradicts the license
restrictions of other proprietary libraries that do not normally
accompany the operating system. Such a contradiction means you cannot
use both them and the Library together in an executable that you
distribute.
7. You may place library facilities that are a work based on the
Library side-by-side in a single library together with other library
facilities not covered by this License, and distribute such a combined
library, provided that the separate distribution of the work based on
the Library and of the other library facilities is otherwise
permitted, and provided that you do these two things:
a) Accompany the combined library with a copy of the same work
based on the Library, uncombined with any other library
facilities. This must be distributed under the terms of the
Sections above.
b) Give prominent notice with the combined library of the fact
that part of it is a work based on the Library, and explaining
where to find the accompanying uncombined form of the same work.
8. You may not copy, modify, sublicense, link with, or distribute
the Library except as expressly provided under this License. Any
attempt otherwise to copy, modify, sublicense, link with, or
distribute the Library is void, and will automatically terminate your
rights under this License. However, parties who have received copies,
or rights, from you under this License will not have their licenses
terminated so long as such parties remain in full compliance.
9. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Library or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Library (or any work based on the
Library), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Library or works based on it.
10. Each time you redistribute the Library (or any work based on the
Library), the recipient automatically receives a license from the
original licensor to copy, distribute, link with or modify the Library
subject to these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties with
this License.
11. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
conditions are imposed on you (whether by court order, agreement or
otherwise) that contradict the conditions of this License, they do not
excuse you from the conditions of this License. If you cannot
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Library at all. For example, if a patent
license would not permit royalty-free redistribution of the Library by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Library.
If any portion of this section is held invalid or unenforceable under any
particular circumstance, the balance of the section is intended to apply,
and the section as a whole is intended to apply in other circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
12. If the distribution and/or use of the Library is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Library under this License may add
an explicit geographical distribution limitation excluding those countries,
so that distribution is permitted only in or among countries not thus
excluded. In such case, this License incorporates the limitation as if
written in the body of this License.
13. The Free Software Foundation may publish revised and/or new
versions of the Lesser General Public License from time to time.
Such new versions will be similar in spirit to the present version,
but may differ in detail to address new problems or concerns.
Each version is given a distinguishing version number. If the Library
specifies a version number of this License which applies to it and
"any later version", you have the option of following the terms and
conditions either of that version or of any later version published by
the Free Software Foundation. If the Library does not specify a
license version number, you may choose any version ever published by
the Free Software Foundation.
14. If you wish to incorporate parts of the Library into other free
programs whose distribution conditions are incompatible with these,
write to the author to ask for permission. For software which is
copyrighted by the Free Software Foundation, write to the Free
Software Foundation; we sometimes make exceptions for this. Our
decision will be guided by the two goals of preserving the free status
of all derivatives of our free software and of promoting the sharing
and reuse of software generally.
NO WARRANTY
15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
DAMAGES.
END OF TERMS AND CONDITIONS
How to Apply These Terms to Your New Libraries
If you develop a new library, and you want it to be of the greatest
possible use to the public, we recommend making it free software that
everyone can redistribute and change. You can do so by permitting
redistribution under these terms (or, alternatively, under the terms of the
ordinary General Public License).
To apply these terms, attach the following notices to the library. It is
safest to attach them to the start of each source file to most effectively
convey the exclusion of warranty; and each file should have at least the
"copyright" line and a pointer to where the full notice is found.
{description}
Copyright (C) {year} {fullname}
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
USA
Also add information on how to contact you by electronic and paper mail.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the library, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the
library `Frob' (a library for tweaking knobs) written by James Random
Hacker.
{signature of Ty Coon}, 1 April 1990
Ty Coon, President of Vice
That's all there is to it!

View File

@ -1,6 +1,8 @@
ChestShop
================================
Development downloads can be found here: [https://ci.minebench.de/job/ChestShop-3/](https://ci.minebench.de/job/ChestShop-3/)
ChestShop is an awesome plugin for managing your server's economy.
By using chests and signs, you can effectively create your own market!
@ -28,6 +30,11 @@ To install external dependencies, place your .jar into the main folder and launc
Links
--------------------------------
* [Dev Builds](https://ci.minebench.de/job/ChestShop-3/)
* [Forum Thread](http://forums.bukkit.org/threads/4150/)
* [BukkitDev site](http://dev.bukkit.org/server-mods/chestshop/)
* [Bug Tracker](http://dev.bukkit.org/server-mods/chestshop/tickets/?status=+)
* [BukkitDev site](http://dev.bukkit.org/projects/chestshop/)
* [SpigotMC site](https://www.spigotmc.org/resources/chestshop.51856/)
* [Bounties via IssueHunt](https://issuehunt.io/r/ChestShop-authors/ChestShop-3?tab=idle)
* [Localization](https://crowdin.com/project/chestshop-3)
* [Qodana code quality](https://qodana.cloud/projects/zxDG5/)
* [Old bug Tracker](http://dev.bukkit.org/server-mods/chestshop/tickets/?status=+) (please use GitHub issues!)

27
SECURITY.md Normal file
View File

@ -0,0 +1,27 @@
# Security Policy
## Supported Versions
Overview over versions of ChestShop that are currently being actively developed
and which ones are supported with security updates if necessary.
| Version | Active development | Security Fixes |
| ------------- | ------------------ | ------------------ |
| latest | :heavy_check_mark: | :heavy_check_mark: |
| < latest | :x: | :x: |
| 3.9.3-1.12 | :x: | :heavy_check_mark: |
| 3.9.2-1.8.8 | :x: | :heavy_check_mark: |
Updates for the different versions can be found on the [build server](https://ci.minebench.de/job/ChestShop-3/),
only the latest version will get releases on the main project pages.
## Reporting a Vulnerability
If you want to report an issue which might pose a security risk then
you can do this in private at the following locations:
- [Start a conversation](https://www.spigotmc.org/conversations/add?to=Phoenix616&title=ChestShop%20Vulnerability) with Phoenix616 on SpigotMC.org
- Message phoenix616 on the [SpigotMC IRC network](https://irc.spi.gt/) (irc.spi.gt)
- Message phoenix616 on the [Esper.net IRC network](https://esper.net)
For issues that do not have security implications please [open an issue](https://github.com/ChestShop-authors/ChestShop-3/issues/new/choose).

View File

@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
echo "[Dependency installer]"
read -p "What is your dependency's file name? " filename

539
pom.xml
View File

@ -6,132 +6,387 @@
<groupId>com.acrobot.chestshop</groupId>
<artifactId>chestshop</artifactId>
<version>3.7.5</version>
<version>3.12.3-SNAPSHOT</version>
<description>Chest-and-sign shop plugin for Bukkit</description>
<name>ChestShop</name>
<scm>
<connection>scm:git:git://github.com/Acrobot/ChestShop-3</connection>
<developerConnection>scm:git:ssh://git@github.com/Acrobot/ChestShop-3.git</developerConnection>
<url>https://github.com/Acrobot/ChestShop-3</url>
<connection>scm:git:git://github.com/ChestShop-authors/ChestShop-3</connection>
<developerConnection>scm:git:ssh://git@github.com/ChestShop-authors/ChestShop-3.git</developerConnection>
<url>https://github.com/ChestShop-authors/ChestShop-3</url>
</scm>
<repositories>
<repository>
<id>bukkit-repo</id>
<url>http://repo.bukkit.org/content/repositories/releases/</url>
<id>enginehub-repo</id>
<url>https://maven.enginehub.org/repo/</url>
</repository>
<repository>
<id>sk89q-repo</id>
<url>http://maven.sk89q.com/repo/</url>
<id>codemc-repo</id>
<url>https://repo.codemc.org/repository/maven-public/</url>
</repository>
<repository>
<id>mcstats-releases</id>
<url>http://repo.mcstats.org/content/repositories/releases/</url>
<id>lwcx-repo</id>
<url>https://ci.ender.zone/plugin/repository/everything/</url>
</repository>
<repository>
<id>vault-repo</id>
<url>http://ci.herocraftonline.com/plugin/repository/everything</url>
<url>https://nexus.hc.to/content/repositories/pub_releases/</url>
</repository>
<repository>
<id>minebench-repo</id>
<url>https://repo.minebench.de/</url>
</repository>
<repository>
<id>local_repo</id>
<url>file://${project.basedir}/repo/</url>
</repository>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<repository>
<id>NyaaCat</id>
<url>https://ci.nyaacat.com/maven/</url>
</repository>
<repository>
<id>redprotect-repo</id>
<url>https://raw.githubusercontent.com/FabioZumbi12/RedProtect/mvn-repo/</url>
</repository>
<repository>
<id>adventure-repo</id>
<url>https://s01.oss.sonatype.org/content/repositories/snapshots/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
<version>1.6.4-R2.0</version>
<groupId>com.j256.ormlite</groupId>
<artifactId>ormlite-jdbc</artifactId>
<version>6.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.mcstats.bukkit</groupId>
<artifactId>metrics</artifactId>
<version>R7</version>
<groupId>de.themoep.utils</groupId>
<artifactId>lang-bukkit</artifactId>
<version>1.3-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>de.themoep</groupId>
<artifactId>minedown-adventure</artifactId>
<version>1.7.2-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.kyori</groupId>
<artifactId>adventure-platform-bukkit</artifactId>
<version>4.3.2</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.kyori</groupId>
<artifactId>adventure-text-serializer-gson</artifactId>
<version>4.14.0</version>
<scope>compile</scope>
<exclusions>
<exclusion>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Should be kept in sync with Mojang -->
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.17.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.bstats</groupId>
<artifactId>bstats-bukkit</artifactId>
<version>3.0.1</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>net.milkbowl.vault</groupId>
<artifactId>Vault</artifactId>
<version>1.2.27</version>
</dependency>
<dependency>
<groupId>com.iCo6</groupId>
<artifactId>iConomy6</artifactId>
<version>6.0.10b</version>
</dependency>
<dependency>
<groupId>com.iConomy</groupId>
<artifactId>iConomy5</artifactId>
<version>5.0</version>
</dependency>
<dependency>
<groupId>cosine.boseconomy</groupId>
<artifactId>boseconomy</artifactId>
<version>0.7.0</version>
</dependency>
<dependency>
<groupId>info.somethingodd</groupId>
<artifactId>odditem</artifactId>
<version>0.9.5</version>
<version>1.6.6</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.herocraftonline.heroes</groupId>
<artifactId>heroes</artifactId>
<version>1.5.2-dev-b1705</version>
<artifactId>Heroes</artifactId>
<version>1.5.5</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>*</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>fr.xephi</groupId>
<artifactId>authme</artifactId>
<version>5.6.0-SNAPSHOT</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.griefcraft.lwc</groupId>
<artifactId>lwc</artifactId>
<version>4.3.1</version>
<artifactId>LWCX</artifactId>
<version>2.2.5</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.daemitus.deadbolt</groupId>
<artifactId>deadbolt</artifactId>
<version>2.2</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.code.findbugs</groupId>
<artifactId>jsr305</artifactId>
<version>3.0.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.sk89q.worldedit</groupId>
<artifactId>worldedit-core</artifactId>
<version>7.0.0-SNAPSHOT</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.sk89q.worldguard</groupId>
<artifactId>worldguard-legacy</artifactId>
<version>7.0.0-SNAPSHOT</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.TechFortress</groupId>
<artifactId>GriefPrevention</artifactId>
<version>16.12.0</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.github.jojodmo</groupId>
<artifactId>ItemBridge</artifactId>
<version>b0054538c1</version>
</dependency>
<dependency>
<groupId>br.net.fabiozumbi12.RedProtect</groupId>
<artifactId>RedProtect-Spigot</artifactId>
<version>7.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.sk89q</groupId>
<artifactId>worldguard</artifactId>
<version>LATEST</version>
<groupId>br.net.fabiozumbi12.RedProtect</groupId>
<artifactId>RedProtect-Core</artifactId>
<version>7.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.webkonsept.bukkit.simplechestlock</groupId>
<artifactId>simplechestlock</artifactId>
<version>1.2.1</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.yi.acru.bukkit.lockette</groupId>
<artifactId>lockette</artifactId>
<version>1.7.9</version>
<version>1.8.14</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.bekvon.bukkit.residence</groupId>
<groupId>nl.rutgerkok</groupId>
<artifactId>blocklocker</artifactId>
<version>1.9</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.bekvon.bukkit</groupId>
<artifactId>residence</artifactId>
<version>2.6.6.3</version>
<version>4.6.1.4</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>bukkit</artifactId>
</exclusion>
<exclusion>
<groupId>org.bukkit</groupId>
<artifactId>craftbukkit</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>de.themoep.showitem</groupId>
<artifactId>api</artifactId>
<version>1.6.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>net.tnemc</groupId>
<artifactId>Reserve</artifactId>
<version>0.1.5.4</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>me.crafter.mc</groupId>
<artifactId>lockettepro</artifactId>
<version>2.10-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.name}</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<version>3.2.0</version>
<configuration>
<finalName>ChestShop</finalName>
<forceCreation>true</forceCreation>
<archive>
<manifest>
<addDefaultEntries>true</addDefaultEntries>
</manifest>
<manifestEntries>
<Distribution-Type>${buildType}</Distribution-Type>
<Built-At>${maven.build.timestamp}</Built-At>
<Build-Jdk>${java.runtime.version}</Build-Jdk>
<paperweight-mappings-namespace>mojang</paperweight-mappings-namespace>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.2</version>
<version>3.1.0</version>
<executions>
<execution>
<phase>package</phase>
@ -141,13 +396,43 @@
<configuration>
<artifactSet>
<includes>
<include>org.mcstats.bukkit</include>
<include>de.themoep:*</include>
<include>de.themoep.utils:*</include>
<include>net.kyori:*</include>
<include>org.bstats:*</include>
<include>net.gravitydevelopment.updater</include>
<include>com.j256.ormlite</include>
<include>javax.persistence</include>
</includes>
</artifactSet>
<relocations>
<relocation>
<pattern>org.mcstats</pattern>
<shadedPattern>com.Acrobot.ChestShop</shadedPattern>
<pattern>de.themoep.utils.lang</pattern>
<shadedPattern>com.Acrobot.ChestShop.Libs.Lang</shadedPattern>
</relocation>
<relocation>
<pattern>de.themoep.minedown.adventure</pattern>
<shadedPattern>com.Acrobot.ChestShop.Libs.MineDown</shadedPattern>
</relocation>
<relocation>
<pattern>net.kyori</pattern>
<shadedPattern>com.Acrobot.ChestShop.Libs.Kyori</shadedPattern>
</relocation>
<relocation>
<pattern>org.bstats</pattern>
<shadedPattern>com.Acrobot.ChestShop.Metrics.BStats</shadedPattern>
</relocation>
<relocation>
<pattern>net.gravitydevelopment.updater</pattern>
<shadedPattern>com.Acrobot.ChestShop.Updater</shadedPattern>
</relocation>
<relocation>
<pattern>com.j256.ormlite</pattern>
<shadedPattern>com.Acrobot.ChestShop.Libs.ORMlite</shadedPattern>
</relocation>
<relocation>
<pattern>javax.persistence</pattern>
<shadedPattern>com.Acrobot.ChestShop.Libs.javax.persistence</shadedPattern>
</relocation>
</relocations>
</configuration>
@ -161,7 +446,149 @@
<directory>src/main/resources</directory>
<filtering>true</filtering>
</resource>
<resource>
<directory>.</directory>
<includes>
<include>LICENSE</include>
<include>README.md</include>
</includes>
</resource>
</resources>
</build>
</project>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<build.number>${buildNumber}</build.number>
<user.name>${buildType}</user.name>
<bukkit.plugin.version>${project.version} ${buildDescription}</bukkit.plugin.version>
<bukkit.dependency.version>1.20.5-R0.1-SNAPSHOT</bukkit.dependency.version>
</properties>
<profiles>
<profile>
<id>default</id>
<activation>
<property>
<name>!testprofile</name>
</property>
</activation>
<repositories>
<repository>
<id>paper-repo</id>
<url>https://repo.papermc.io/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>io.papermc.paper</groupId>
<artifactId>paper-api</artifactId>
<version>${bukkit.dependency.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
</profile>
<profile>
<id>spigot</id>
<activation>
<property>
<name>testprofile</name>
<value>spigot</value>
</property>
</activation>
<repositories>
<repository>
<id>spigotmc-repo</id>
<url>https://hub.spigotmc.org/nexus/content/groups/public</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.spigotmc</groupId>
<artifactId>spigot-api</artifactId>
<version>${bukkit.dependency.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.name}-Spigot</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/Paper*.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>backwards</id>
<activation>
<property>
<name>testprofile</name>
<value>backwards</value>
</property>
</activation>
<repositories>
<repository>
<id>paper-repo</id>
<url>https://repo.papermc.io/repository/maven-public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.destroystokyo.paper</groupId>
<artifactId>paper-api</artifactId>
<version>1.13.2-R0.1-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<finalName>${project.name}-1.13.2</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>**/PaperLatest*.java</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>static_build_number</id>
<activation>
<property>
<name>!env.BUILD_NUMBER</name>
</property>
</activation>
<properties>
<buildType>manual</buildType>
<buildNumber>0</buildNumber>
<buildDescription>(compiled at ${maven.build.timestamp})</buildDescription>
</properties>
</profile>
<profile>
<id>dynamic_build_number</id>
<activation>
<property>
<name>env.BUILD_NUMBER</name>
</property>
</activation>
<properties>
<buildType>jenkins</buildType>
<buildNumber>${env.BUILD_NUMBER}</buildNumber>
<buildDescription>(build ${env.BUILD_NUMBER})</buildDescription>
</properties>
</profile>
</profiles>
</project>

View File

@ -0,0 +1 @@
44c81880a50540578b4743bbb736d9b7

View File

@ -0,0 +1 @@
4988423e579cac58850ce4c1bcc765d40492d354

View File

@ -2,8 +2,8 @@
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.bekvon.bukkit.residence</groupId>
<groupId>com.bekvon.bukkit</groupId>
<artifactId>residence</artifactId>
<version>2.6.6.3</version>
<version>4.6.1.4</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -0,0 +1 @@
61c4f0279387217f9bfd1642df914faf

View File

@ -0,0 +1 @@
1ccc6d02068ffb443ff11c3becf3ae17af235cc3

View File

@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.bekvon.bukkit.residence</groupId>
<groupId>com.bekvon.bukkit</groupId>
<artifactId>residence</artifactId>
<versioning>
<release>2.6.6.3</release>
<release>4.6.1.4</release>
<versions>
<version>2.6.6.3</version>
<version>4.6.1.4</version>
</versions>
<lastUpdated>20130308191747</lastUpdated>
<lastUpdated>20170509134553</lastUpdated>
</versioning>
</metadata>

View File

@ -0,0 +1 @@
2ce14543fd469c804b8dd32d73014c0c

View File

@ -0,0 +1 @@
46aabdb9c0125ee2cd331673e7ec60f3ea3ce814

View File

@ -1 +0,0 @@
c288abe5ad73d0d781b03462fedab859

View File

@ -1 +0,0 @@
b5cb3489880cba5e70cc0d630191c936994b6d7e

View File

@ -1 +0,0 @@
80eebf7358e0b24a1603c3d91c0084e0

View File

@ -1 +0,0 @@
d2ad2cfea6ac2ba9b897f8b2e3bc13d5fd3100d0

View File

@ -1 +0,0 @@
0d631fa3e5f6be116e2894b875cb84a3

View File

@ -1 +0,0 @@
831ca82cccbfc921495544182212b3eed99e18ba

View File

@ -1 +0,0 @@
fe29bd77061f1ced861554d6d6d28cf7

View File

@ -1 +0,0 @@
d9c12329efa1b76057c6ec6eb9371823369e27f5

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.griefcraft.lwc</groupId>
<artifactId>lwc</artifactId>
<version>4.3.1</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -1 +0,0 @@
45ebcc66da30cab5c5d7b2c2e29651df

View File

@ -1 +0,0 @@
46707be3cc027277671520396501466157b6dcce

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.griefcraft.lwc</groupId>
<artifactId>lwc</artifactId>
<versioning>
<release>4.3.1</release>
<versions>
<version>4.3.1</version>
</versions>
<lastUpdated>20130308183115</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
eff48fcb809bfa5cef0a0660d8449ee3

View File

@ -1 +0,0 @@
e9c597ab4ce925154cad4e0d10aff5161d051a06

View File

@ -1 +0,0 @@
62bbfd2f6c00e279ce7b0c6e729c8f1d

View File

@ -1 +0,0 @@
20494ccd06c283006ea3717485497742e6cd00fc

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.herocraftonline.heroes</groupId>
<artifactId>heroes</artifactId>
<version>1.5.2-dev-b1705</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -1 +0,0 @@
1579404e474744f10a2901a6efad96c2

View File

@ -1 +0,0 @@
b95c6e4cae8a6eb8ac7a7de40288c0872a41f2a9

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.herocraftonline.heroes</groupId>
<artifactId>heroes</artifactId>
<versioning>
<release>1.5.2-dev-b1705</release>
<versions>
<version>1.5.2-dev-b1705</version>
</versions>
<lastUpdated>20130308184836</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
a7eedf44a90756864079ecbdd9b3d39b

View File

@ -1 +0,0 @@
eb08b30c9632880f06e1941a67c7707ca7f747f1

View File

@ -1 +0,0 @@
5915bc7ea8dbca679f48cf86824e2038

View File

@ -1 +0,0 @@
8a39ec2659e93d760acf76d5e8be86f0898bfc16

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.iCo6</groupId>
<artifactId>iConomy6</artifactId>
<version>6.0.10b</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -1 +0,0 @@
4eac30e3d77164acfd7d66ded83266d1

View File

@ -1 +0,0 @@
08a4a7b5c5f790c52ff4cbc410946ef9c8f5bb41

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.iCo6</groupId>
<artifactId>iConomy6</artifactId>
<versioning>
<release>6.0.10b</release>
<versions>
<version>6.0.10b</version>
</versions>
<lastUpdated>20130308180716</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
0bbc352d94b1d5f735a99aeb97eea611

View File

@ -1 +0,0 @@
920204f95dc4466a71fa0fa31898d8fb7349ca8d

View File

@ -1 +0,0 @@
b89610cd5b8c52ef31618e0f2e89be70

View File

@ -1 +0,0 @@
d9c774b9b0d8ffb79b56384182486606a80d0de9

View File

@ -1 +0,0 @@
fdfe879a71e91a2dc29ff286ca865c03

View File

@ -1 +0,0 @@
f24e8d8f9c745dd4fc9ac7495dc9b386ab21b7ea

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.iConomy</groupId>
<artifactId>iConomy5</artifactId>
<versioning>
<release>5.0</release>
<versions>
<version>5.0</version>
</versions>
<lastUpdated>20130308180959</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
684532caf67c4ff37026eef929791fae

View File

@ -1 +0,0 @@
8e0461e21cf8fbefdc96851fde103d51ed0e60e8

View File

@ -1 +0,0 @@
f81f00911f28682dc84052c8acf9f199

View File

@ -1 +0,0 @@
df94cd31803987b6259e52ac678511ebbee48018

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>cosine.boseconomy</groupId>
<artifactId>boseconomy</artifactId>
<version>0.7.0</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -1 +0,0 @@
2b822afb7721e0f5160496367f62a495

View File

@ -1 +0,0 @@
d7d262a36326abcc169f4bc9c5308a9322727f1f

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>cosine.boseconomy</groupId>
<artifactId>boseconomy</artifactId>
<versioning>
<release>0.7.0</release>
<versions>
<version>0.7.0</version>
</versions>
<lastUpdated>20130308181235</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
8c0bd09b104b2b1a58e2748d60a5d14f

View File

@ -1 +0,0 @@
279b8bbb45fb57b40beba49b55873074da2ecad0

View File

@ -1 +0,0 @@
c7b3b9b7cd7cd27a50c079ce4349f628

View File

@ -1 +0,0 @@
697ff692f06dc9064badb2610fd52399651b8274

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>info.somethingodd</groupId>
<artifactId>odditem</artifactId>
<version>0.9.5</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -1 +0,0 @@
9fa8325983cb90581156734d0500aacb

View File

@ -1 +0,0 @@
288ed3c67d66d532eac2128c120a6d74986823d6

View File

@ -1,12 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>info.somethingodd</groupId>
<artifactId>odditem</artifactId>
<versioning>
<release>0.9.5</release>
<versions>
<version>0.9.5</version>
</versions>
<lastUpdated>20130826223956</lastUpdated>
</versioning>
</metadata>

View File

@ -1 +0,0 @@
7240080156e6cd8df6f550049950a99c

View File

@ -1 +0,0 @@
23208c6e99b6df3664c26f771fa941a37387f428

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata modelVersion="1.1.0">
<groupId>org.mcstats.bukkit</groupId>
<artifactId>metrics</artifactId>
<version>R8-SNAPSHOT</version>
<versioning>
<snapshot>
<localCopy>true</localCopy>
</snapshot>
<lastUpdated>20180711163419</lastUpdated>
<snapshotVersions>
<snapshotVersion>
<extension>jar</extension>
<value>R8-SNAPSHOT</value>
<updated>20180711163419</updated>
</snapshotVersion>
<snapshotVersion>
<extension>pom</extension>
<value>R8-SNAPSHOT</value>
<updated>20180711163419</updated>
</snapshotVersion>
</snapshotVersions>
</versioning>
</metadata>

View File

@ -0,0 +1 @@
46632b59c9d3d47442b77c0554325496

View File

@ -0,0 +1 @@
20541fa3752c0169c1ac8af2232281ccb1e01969

View File

@ -0,0 +1 @@
d0916f0631371e2cd1ba27b7a24e9528

View File

@ -0,0 +1 @@
c473200c17a6157d7f59f5935df2169088a78d8e

View File

@ -2,8 +2,8 @@
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.iConomy</groupId>
<artifactId>iConomy5</artifactId>
<version>5.0</version>
<groupId>org.mcstats.bukkit</groupId>
<artifactId>metrics</artifactId>
<version>R8-SNAPSHOT</version>
<description>POM was created from install:install-file</description>
</project>

View File

@ -0,0 +1 @@
209c9099f021a6a85d1d337de6c2e74a

View File

@ -0,0 +1 @@
38207d9da32bb25d60da9676d1d34966567d62e5

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>org.mcstats.bukkit</groupId>
<artifactId>metrics</artifactId>
<versioning>
<versions>
<version>R8-SNAPSHOT</version>
</versions>
<lastUpdated>20180711163419</lastUpdated>
</versioning>
</metadata>

View File

@ -0,0 +1 @@
52f4c1a0347427b995125e438ea9b81d

View File

@ -0,0 +1 @@
ce375488dc6366cc09efdc249006b25ff0dec3cf

View File

@ -1 +0,0 @@
3f8dbe5a64907311e085835fb9135a92

View File

@ -1 +0,0 @@
b267b8945a1bb9c79412d06d68369c5fa0d48776

View File

@ -1 +0,0 @@
8638147e5e271533e25abcafb6d7f46d

View File

@ -1 +0,0 @@
b19450bbe933ff2df28e3d1497b90cae30ae7fc4

View File

@ -0,0 +1 @@
89eb53698dffabb8e29148f5c0a0ef4b

Some files were not shown because too many files have changed in this diff Show More