Check If Player Has Item, If So Remove It


Answer :

Try this, By using /clear, you can scan people for items. If you want to remove certain items, use

/clear @p(or <playername>) <itemid> 

For example, on a server that doesn't want griefing you could have a clock connected to a command block set to /clear @p minecraft:flint_and_steel, you can also specify how much of an item to remover by doing /clear @p minecraft:flint_and_steel 3, this would clear three Flint and Steel.


I'm a little late to this, but this is what I've had work for me: In Minecraft 1.8+ we have the /testfor command, you can use this to scan the players Inventory slots (all of them, or specific) for items:

example: diamond

/testfor @p {Inventory:[{id:"minecraft:diamond"}]} 

to test for an exact amount of the required item include:

,Count:#b 

within the confines of the "id" brackets

however, this will only search for players with a stack of the exact number you select, anything more or less will not fit the criteria; so for this application it's not useful.

For your vending machine to work properly I would recommend having this command in a clock nearby that tests for players in a specific range, so the finished command would look something like this:

/testfor @p[x,y,z,r=2] {Inventory:[{id:"minecraft:diamond"}]}  

(xyz are directly in front of the button)

have this connected to an output command block with a setblock command:

/setblock # # # unpowered_repeater  

dv for output direction needed from button

with a redstone dust on top connecting to a torch that powers this command:

/setblock # # # air 

to clear the space if the criteria isn't met

then your repeater needs to be touching these commands:

/clear @p diamond 0 3 /xp amount @p 

Image:Visual Proof of Concept

There are different variations you can have for the setblock changer, this is only a simple version for proof of concept.


Comments

Popular posts from this blog

Are Regular VACUUM ANALYZE Still Recommended Under 9.1?

Can Feynman Diagrams Be Used To Represent Any Perturbation Theory?