[Discontinued] Player Shops v1.0.0 - Buy and sell items to and from other players

Big thanks to @maxanier for taking the time to update and fix issues with the plugin. You can find his latest update(s) here in this thread: [Discontinued] Player Shops v1.0.0 - Buy and sell items to and from other players - #55 by maxanier

Player Shops
Buy and sell items to and from other players

Tested on API 5.x on SpongeForge 1.10.2. Have not tested on SpongeVanilla - let me know if it works! Have not tested API 4.x for MC 1.8.9, but should work. Let me know if it does work.

:warning: Has only been tested lightly, there may be bugs. If you find any issues, report them and I will get them fixed as quickly as I can.

Download (v1.0.0): https://github.com/Nentify/PlayerShops/releases/tag/v1.0.0
Source: https://github.com/Nentify/PlayerShops

Features

  • Players can create shops to buy and sell items to and from other players
  • Supports items with metadata and NBT data
  • Supports all inventories, including mods (eg. iron chests or even machines)

Planned Features

  • Multi-currency support

Usage

  1. Hold the item you wish to buy/sell
  2. Use the command /shop <buy|sell> <price> [quantity]
  • If you don’t specify a quantity, it will take the quantity from the stack you’re holding
  1. Place a sign in the world
  • Leave space for a chest underneath
  1. Place a chest (or other inventory) under the sign and fill with items if you’re selling
  2. Players can now right click to buy or sell from the sign

Commands

  • /shop <buy|sell> <price> [quantity]
  • Create a buy or sell shop for the item you’re currently holding for the specified price
  • The quantity will be taken from the stack you’re holding if left blank

Permissions

None at the moment - Let me know if you’d like any commands or actions to require permissions.

Changelog

v1.0.0

  • Initial release

Enjoy!

6 Likes

Could you add some permissions to enable or disable players to destroy the shop, use shop, create shop and open the inventory of shops(admin permission)?

Is there any config file? In addition, could you add a lang file for it? I want to translate your plugin. :slight_smile:

Hi - I will look into adding some of these permissions and a language file. Do you not have a protection plugin? Perhaps something like Keys would do what you need.

Hi. At first, thanks for your work. I has a protection plugin, but I still suggest to add this feature… Although it seems unnecessary now, I think, it makes the plugin more flexible in the future.

1 Like

Plugin seem to work great thank you!

we found a bug with the plugin where when you make a shop in a grief prevention claim people are unable to buy from the shop and anyone can open the chests if it is turned into a shop

Sounds like an issue with GP, this plugin just listens for a right click on the sign.

I don’t touch chests, I just check if a chest is under the sign and add/remove items from it. You’ve probably mis-configured GP.

GP is configured correctly normal chests can’t be opened in a claim but the shop ones can as for the signs yeah that’s a GP issue but for the chests if you could add it so that the owner of the shop can only open the chest that’d be great

That shouldn’t be happening though, I don’t do anything with chests. Are you sure the claim doesn’t have container/access trust or some sort of flag on it?

I’ll double check

Can i create AdminShops for unlimited stocks like server shops?

1 Like

Why not use Server Shops?

Yes… but why not only one plugin for both? o.O

Hello,

I tried the plugin on a vanilla 1.8.9 server but I am getting some errors just after install. It looks like the plugin registers the sign. But then when I click on it to buy a thing from my own shop it gives me the below error. It gives the same error every time I click.

java.lang.NoSuchMethodError: org.spongepowered.api.world.Location.getBlockRelative(Lorg/spongepowered/api/util/Direction;)Lorg/spongepowered/api/world/Location;
        at me.nentify.playershops.events.BlockEventHandler.onBlockInteract(BlockEventHandler.java:131) ~[BlockEventHandler.class:?]

Did you download the correct file? You should be using the 1.8.9 version.

Hey there,

Are you planing to add a option to create a shop without a command (Only write on the sign and place it, like the old ChestShop Plugin) and/or the possibility to have a buy and sell shop on one sign?

it was labled 1.8.9-1.0.0. in the logfile.so I don’t think its a mix up. I was just testing it out for you. let me know if you need more logs. I can post pretty much anything you might need.

I will work on this next.

What Sponge version?

My sponge version is:
spongevanilla-1.8.9-4.2.0-BETA-344.jar

More of the error I am seeing starting with the first line and going a few lines in.

[04:16:04 ERROR] [Sponge]: Could not pass InteractBlockEvent$Secondary$Impl to Plugin{id=playershops, name=Player Shops, version=1.8.9-1.0.0, description=Allows players to create shops, source=mods/PlayerShops-1.8.9-1.0.0.jar}
java.lang.NoSuchMethodError: org.spongepowered.api.world.Location.getBlockRelative(Lorg/spongepowered/api/util/Direction;)Lorg/spongepowered/api/world/Location;
        at me.nentify.playershops.events.BlockEventHandler.onBlockInteract(BlockEventHandler.java:131) ~[BlockEventHandler.class:?]
        at org.spongepowered.common.event.listener.SecondaryListener_BlockEventHandler_onBlockInteract59.handle(Unknown Source) ~[?:?]
        at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:95) ~[RegisteredListener.class:1.8.9-4.2.0-BETA-344]