Butiko

Simple Item Frame shops.

217

Butiko

Banner

Overview

🗄️ Easy to install, no need to mess around with databases, just drop the file in your plugins folder.

🏷️ Sensible permissions by default, so you mostly don't have to worry about it.

🌎 Localizable, you can easily create translations to any language.

⚠️ No block protection is provided, external methods are required to protect the shop's container and Item Frame.

♻️ Depends on Vault to interface with any economy plugin supported by it. 📎 Depends on Vault.

📂 Open source under the Open source on %%MD1%%.

Demonstration

🛍️ View a shop owner, product, sell price, and buy price by right or left clicking.

💵 Sell by sneaking and left clicking.

💶 Buy by sneaking and right clicking.

Player Shops

Player Shops Demonstration

⌨️ Use _/shop_ while looking at an Item Frame containing the item you want to trade. Set the buy or sell — or both — prices with the flags -buy or -sell. Set the amount to be traded using the -amount flag.

📦 Can be placed on Chests, Barrels, and Shulker Boxes.

*️⃣ Multiple shops can be placed on the same container.

💸 Set a create fee so players must pay to create a shop — view the fee with /shop price — by setting create-fee entry in the config.yml, then apply the changes without restarting by running /shop reload.

💣 Remove your shop by running /shop remove while looking at it.

Server Shops

Server Shops Demonstration

⌨️ Use _/shop server_ while looking at an Item Frame containing the item you want to trade. Set the buy or sell — or both — prices with the -buy or -sell flags. Set the amount to be traded using the -amount flag.

📦 Can be placed on any solid surfaces.

♾️ Infinite resources, server shops have infinite stock and money. Any items sold or money paid to it is removed from the game.

💣 Remove any server shop by running /shop remove while looking at it.

Localization

💬 Player's game locale is used to select an appropriate localization file — those with the extension .properties — in the plugin's data folder — at .../your server/plugins/Butiko — and if no suitable one is found, it uses the default one called messages.properties. Item and enchantment names are automatically translated.

👄 Create a language only localization file by copying messages.properties — inside the plugin's data folder — and renaming it to messages<language>.properties_. Replace the placeholder <language> with the lower case two letter language code. 📎 Create a language only localization.

🏁 Create a language and country localization file by copying messages.properties — inside the plugin's data folder — and renaming it to messages<language><country>.properties. Replace the placeholder <language> with the language code, and <country> with the upper case two letter country code. 📎 Create a language and country localization.

🖼️ For example a spanish localization file would look like messages_es.properties, but a colombian spanish one would look like _messages_es_CO.properties_.

✒️ Translate the file you just created, but do not translate the placeholders like <product> or the entry keys to the left of the equal signs like _must_look_at_itemframe_.

🗒️ Contents of messages.properties

```YAML shop_created = Shop created shop_created_fee = Shop created for <fee> fee shop_removed = Shop removed duplicated_shop = That's already a shop must_look_at_shop = You must look at a shop empty_itemframe = The itemframe must contain an item container_not_allowed = Shop container must be a <chest>, <barrel>, or a <shulkerbox> must_look_at_itemframe = You must look at an itemframe shop_command_usage = Create a shop using /shop while looking at an itemframe files_reloaded = Configuration and localization files reloaded cannot_pay_fee = You can't afford to create a shop must_buy_or_sell = Your shop must buy, sell, or both buy_price_too_low = Buy price must be higher than the sell price buy_only = You can only buy from this shop sell_only = You can only sell to this shop shop_insufficient_funds = The shop owner can't pay you shop_insufficient_space = The shop inventory is full shop_insufficient_items = There is no stock available client_insufficient_funds = You don't have enough money client_insufficient_space = You don't have enough inventory space client_insufficient_items = You don't have enough items to sell sold_succesfully = Sold <amount>x <product> for <price> bought_succesfully = Bought <amount>x <product> for <price> transaction_failed = Unable to complete transaction buying_for = Buy for <price> selling_for = Sell for <price> shop_price = It costs <fee> to create a shop exempt_from_fee = You are exempt from shop creation fee not_allowed = You can't do that ```

♻️ Reload plugin's files using /shop reload to make the new localization immediately available with no need to restart the server.

Permissions

Defaults define what permissions are given to players when no permission is explicitly set. The true default means all players have the permission when they join. A op default means that only server operators have it. 

🏷️ butiko.command - Allows to see /shop command and use /shop price. Default to true.

🏷️ butiko.player.create - Allows player to create shops and remove their own. Default to true.

🏷️ butiko.player.nofee - Makes the player exempt from the shop creation fee.

🏷️ butiko.admin.create - Create a server shop. Default to op.

🏷️ butiko.admin.remove - Remove another player's shop with /shop remove. Default to op.

🏷️ butiko.admin.reload - Reload configuration and localization files. Default to op.

Metrics

🔍 This plugin uses bStats to collect usage data. You can disable it in .../plugins/bStats/config.yml.

https://bstats.org/signatures/bukkit/Butiko.svg

ADS