ChestShop-authors / ChestShop-3

ChestShop - the chest & sign shop plugin for Minecraft Servers running Bukkit/Spigot/Paper
https://dev.bukkit.org/projects/chestshop
GNU Lesser General Public License v2.1
272 stars 178 forks source link

Create chest shop with endermite spawnegg with itemmeta does not work #549

Closed ByteExceptionM closed 1 year ago

ByteExceptionM commented 1 year ago

What is happening?

When creating a chest shop with a ENDERMITE_SPAWN_EGG an error occure and the sign can not be created. In the console there is the following message:

[14:43:45 ERROR]: Event PreShopCreationEvent could not be passed to ChestShop v3.12.3-SNAPSHOT (build 374).
java.lang. IllegalArgumentException: Cannot generate code for item ItemStack{ENDERMITE_SPAWN_EGG x 1, SPAWN_EGG_META:{meta-type=SPAWN_EGG, lore=[{"text":""}, {"extra":[{"bold":false, "italic":false, "underlined":false, "strikethrough":false, "obfuscated":false, "color": "dark_gray", "text":"? "},{"bold":true, "italic":false, "color": "white", "text": "Random item"},{"bold":false, "italic":false, "color": "gray", "text": "from a chest"},{"italic":false, "color": "aqua", "text": "some text"},{"italic":false, "color": "gray", "text":""}], "text": ""}]}} with a maximum length of 90 (code EnderSpawnEgg#3 results in Item ItemStack{ENDERMAN_SPAWN_EGG x 1, SPAWN_EGG_META:{meta-type=SPAWN_EGG, lore=[{"text": ""}, {"extra":[{"bold":false, "italic":false, "underlined":false, "strikethrough":false, "obfuscated":false, "color": "dark_gray", "text":"? "},{"bold":true, "italic":false, "color": "white", "text": "Random item"},{"bold":false, "italic":false, "color": "gray", "text": "from a chest"},{"italic":false,"color":"aqua","text":"some text"},{"italic":false,"color":"gray","text":""}],"text":""}]}})

Important is here: code EnderSpawnEgg#3 results in Item ItemStack{ENDERMAN_SPAWN_EGG

What did you expect to happen?

That the ChestShop is created

Plugin Version

3.12.3-SNAPSHOT (build 374)

Plugin Config

Config ```yaml # Should the plugin log some messages that are useful for debugging? DEBUG: false # Do you want to turn off the automatic updates of ChestShop? TURN_OFF_UPDATES: true # Do you want to turn off the automatic notifications for new development builds? TURN_OFF_DEV_UPDATE_NOTIFIER: false # Do you want to include some values of this config in the metrics? (This will not leak sensitive data but help in the development process) INCLUDE_SETTINGS_IN_METRICS: true # How large should the internal caches be? CACHE_SIZE: 1000 # The default language when the client's language can't be found. DEFAULT_LANGUAGE: "en" # Should the plugin try to use a language file that matches the client's locale setting? USE_CLIENT_LOCALE: true # What containers are allowed to hold a shop? (Only blocks with inventories work!) SHOP_CONTAINERS: - "CHEST" - "TRAPPED_CHEST" # (In 1/1000th of a second) How often can a player use the shop sign? SHOP_INTERACTION_INTERVAL: 250 # Do you want to block people in creative mode from using shops? IGNORE_CREATIVE_MODE: true # Do you want to block people who have access to a shop due to their permissions from using it? (owners are always ignored) IGNORE_ACCESS_PERMS: true # If true, people will buy with left-click and sell with right-click. REVERSE_BUTTONS: false # If true, people will be able to buy/sell in 64 stacks while holding the crouch button. SHIFT_SELLS_IN_STACKS: false # If true, people will be able to sell/buy everything available of the same type. SHIFT_SELLS_EVERYTHING: false # What can you do by clicking shift with SHIFT_SELLS_IN_STACKS turned on? (ALL/BUY/SELL) SHIFT_ALLOWS: "ALL" # Can shop's chest be opened by owner with right-clicking a shop's sign? ALLOW_SIGN_CHEST_OPEN: false # If true and in 1.14+, the owner of a chest shop can click with a dye / ink sac to dye the sign. SIGN_DYING: true # If true, when you left-click your own shop sign you won't open chest's inventory, but instead you will start destroying the sign. ALLOW_LEFT_CLICK_DESTROYING: true # If true, if the shop is empty, the sign is destroyed and put into the chest, so the shop isn't usable anymore. REMOVE_EMPTY_SHOPS: false # If true, if the REMOVE_EMPTY_SHOPS option is turned on, the chest is also destroyed. REMOVE_EMPTY_CHESTS: false # A list of worlds in which to remove empty shops with the previous config. Case sensitive. An empty list means all worlds. REMOVE_EMPTY_WORLDS: - "world1" - "world2" # First line of your Admin Shop's sign should look like this: ADMIN_SHOP_NAME: "Admin Shop" # Make all admin shops be unlimited even if they have a shop container at the sign FORCE_UNLIMITED_ADMIN_SHOP: false # The name of the economy account which Admin Shops should use and to which all taxes will go SERVER_ECONOMY_ACCOUNT: "" # The uuid of the economy account for the Admin Shop. Useful for fake accounts as normally only accounts of players work SERVER_ECONOMY_ACCOUNT_UUID: 00000000-0000-0000-0000-000000000000 # Percent of the price that should go to the server's account. (100 = 100 percent) TAX_AMOUNT: 0 # Percent of the price that should go to the server's account when buying from an Admin Shop. SERVER_TAX_AMOUNT: 0 # Amount of money player must pay to create a shop SHOP_CREATION_PRICE: 0 # How much money do you get back when destroying a sign? SHOP_REFUND_PRICE: 0 # How many decimal places are allowed at a maximum for prices? PRICE_PRECISION: 2 # This makes sure that the UUIDs of player shop accounts match the server's online-mode setting. Disabling this might lead to issues with offline players and is therefore unsupported! ENSURE_CORRECT_PLAYERID: true # This regexp validates the name of the player. If the name doesn't match, the player will neither be able to create a valid shop sign, nor buy/sell from a shop. # Note for Bedrock support: If you have Floodgate on your server, you should set this regexp to ^\\*?\\w+$ and ENSURE_CORRECT_PLAYERID to false # If your Floodgate prefix is not *, change the first * in the regexp (the one before the question mark) to whatever your prefix is. VALID_PLAYERNAME_REGEXP: "^\\w+$" # Should we block shops that sell things for more than they buy? (This prevents newbies from creating shops that would be exploited) BLOCK_SHOPS_WITH_SELL_PRICE_HIGHER_THAN_BUY_PRICE: true # Maximum amount of items that can be bought/sold at a shop. Default 3456 is a double chest of 64 stacks. MAX_SHOP_AMOUNT: 3456 # Do you want to allow other players to build a shop on a block where there's one already? ALLOW_MULTIPLE_SHOPS_AT_ONE_BLOCK: false # Can shops be used even when the buyer/seller doesn't have enough items, space or money? (The price will be scaled adequately to the item amount) ALLOW_PARTIAL_TRANSACTIONS: true # Can '?' be put in place of item name in order for the sign to be auto-filled? ALLOW_AUTO_ITEM_FILL: true # Enable this if you use BungeeCord and want players to receive shop notifications on other servers BUNGEECORD_MESSAGES: false # Do you want to show "Out of stock" messages? SHOW_MESSAGE_OUT_OF_STOCK: true # Do you want to show "Full shop" messages? SHOW_MESSAGE_FULL_SHOP: true # How many seconds do you want to wait before showing notifications for the same shop to the owner again? NOTIFICATION_MESSAGE_COOLDOWN: 10 # Can players hide the "Out of stock" messages with /cstoggle? CSTOGGLE_TOGGLES_OUT_OF_STOCK: false # Can players hide the "Full shop" messages with /cstoggle? CSTOGGLE_TOGGLES_FULL_SHOP: false # Do you want to show "You bought/sold... " messages? SHOW_TRANSACTION_INFORMATION_CLIENT: true # Do you want to show "Somebody bought/sold... " messages? SHOW_TRANSACTION_INFORMATION_OWNER: true # If true, plugin will log transactions in its own file LOG_TO_FILE: false # Do you want ChestShop's messages to show up in console? LOG_TO_CONSOLE: true # Should all shop removals be logged to the console? LOG_ALL_SHOP_REMOVALS: true # Do you want to stack all items up to 64 item stacks? STACK_TO_64: false # Do you want to use built-in protection against chest destruction? USE_BUILT_IN_PROTECTION: true # Do you want to have shop signs "stick" to chests? STICK_SIGNS_TO_CHESTS: false # EXPERIMENTAL: Do you want to turn off the default protection when another plugin is protecting the block? (Will leave the chest visually open - CraftBukkit bug!) TURN_OFF_DEFAULT_PROTECTION_WHEN_PROTECTED_EXTERNALLY: false # Do you want to turn off the default sign protection? Warning! Other players will be able to destroy other people's shops! TURN_OFF_SIGN_PROTECTION: false # Do you want to disable the hopper protection, which prevents Hopper-Minecarts from taking items out of shops? TURN_OFF_HOPPER_PROTECTION: false # Only allow users to buy/sell that have access to the sign's protection? (E.g. LWC protection) CHECK_ACCESS_FOR_SHOP_USE: false # Do you want to protect shop chests with LWC? PROTECT_CHEST_WITH_LWC: false # Of which type should the container protection be? Possible type: public, private, donate and on some LWC versions display LWC_CHEST_PROTECTION_TYPE: "PRIVATE" # Do you want to protect shop signs with LWC? PROTECT_SIGN_WITH_LWC: false # Of which type should the sign protection be? Possible type: public, private, donate and on some LWC versions display LWC_SIGN_PROTECTION_TYPE: "PRIVATE" # Should the chest's LWC protection be removed once the shop sign is destroyed? REMOVE_LWC_PROTECTION_AUTOMATICALLY: true # Should LWC limits block shop creations? LWC_LIMITS_BLOCK_CREATION: true # Do you want to only let people build inside WorldGuard regions? WORLDGUARD_INTEGRATION: false # Do you want to only let people build inside region flagged by doing /region regionName flag allow-shop allow? WORLDGUARD_USE_FLAG: false # Do you want ChestShop to respect WorldGuard's chest protection? WORLDGUARD_USE_PROTECTION: false # Do you want to only let people build inside GriefPrevention claims? GRIEFPREVENTION_INTEGRATION: false # Do you want to only let people build inside RedProtect regions? REDPROTECT_INTEGRATION: false # Do you want to deny shop access to unlogged users? AUTHME_HOOK: true # Do you want to allow shop access to unregistered users? (Example: registration is optional) AUTHME_ALLOW_UNREGISTERED: false # How much Heroes exp should people get for creating a ChestShop? HEROES_EXP: 100.0 # Add icons and make item names hoverable in transaction messages when ShowItem is installed? SHOWITEM_MESSAGE: true # Add stock counter to quantity line? USE_STOCK_COUNTER: false ```

Server Version

Paper-307 (MC: 1.19.2)

Server Log

Log

What other plugins are you running?

ChestShop v3.12.3-SNAPSHOT (build 374) Citizens v2.0.30-SNAPSHOT (build 2673) CoreProtect v21.3 FastAsyncWorldEdit v2.5.1-SNAPSHOT-332;f8acaf5 LuckPerms v5.4.55 PlotSquared v6.11.1-Premium PlugManX v2.3.0 ProtocolLib v5.0.0-SNAPSHOT-b606 spark v1.10.17 Vault v1.7.3-b131 ViaBackwards v4.5.1 ViaVersion v4.5.1

Agreements

Additional context

No response

Phoenix616 commented 1 year ago

Fixed with ed642ccf3c7df76bf62a41c5c606406c5da7a184 now.

ByteExceptionM commented 1 year ago

still does not work

image image

can u check pls?

Phoenix616 commented 1 year ago

That's a different error and bug than before. I will take a look at it but please open a new issue in the future if you get a different error than what was alreaqy reported and fixed!