## About OpenInv is a [Bukkit plugin](https://dev.bukkit.org/bukkit-plugins/openinv/) which allows users to open and edit anyone's inventory or ender chest - online or not! ## Features - **OpenInv**: Open anyone's inventory, even if they're offline. - Read-only mode! No edits allowed! Don't grant the permission `OpenInv.editinv` - Cross-world support! Don't grant `OpenInv.crossworld` - No self-opening! Don't grant `OpenInv.openself` - Drop items as the player! Place items in the unused slots to the right of the armor to drop them - **OpenEnder**: Open anyone's ender chest, even if they're offline. - Read-only mode! No edits allowed! Don't grant `OpenInv.editender` - Cross-world support! Don't grant `OpenInv.crossworld` - No opening others! Don't grant `OpenInv.openenderall` - **SilentContainer**: Open containers without displaying an animation or making sound. - **AnyContainer**: Open containers, even if blocked by ocelots or blocks. ## Commands See [the wiki](https://github.com/Jikoo/OpenInv/wiki/Commands). ## Permissions
Node Description
OpenInv.* Gives permission to use all of OpenInv.
OpenInv.openinv Required to use /openinv.
OpenInv.openself Required to open own inventory.
OpenInv.editinv Required to make changes to open inventories.
OpenInv.openonline Allows users to open online players' inventories. For compatibility reasons this is granted by the nodes OpenInv.openinv and OpenInv.openender.
OpenInv.openoffline Allows users to open offline players' inventories. For compatibility reasons this is granted by the nodes OpenInv.openinv and OpenInv.openender.
OpenInv.openender Required to use /openender.
OpenInv.editender Required to make changes to open ender chests.
OpenInv.openenderall Allows users to open others' ender chests. Without it, users can only open their own.
OpenInv.exempt Prevents the player's inventory being opened by others.
OpenInv.override Allows bypassing of the exempt permission.
OpenInv.crossworld Allows cross-world usage of /openinv and /openender.
OpenInv.search Required to use /searchinv and /searchender.
OpenInv.searchenchant Required to use /searchenchant.
OpenInv.anychest Required to use /anychest.
OpenInv.any.default Cause AnyContainer to be enabled by default.
OpenInv.silent Required to use /silentcontainer.
OpenInv.silent.default Cause SilentContainer to be enabled by default.
OpenInv.spectate Allows users in spectate gamemode to edit inventories.
## For Developers ### As a Dependency The OpenInv API is available via [JitPack](https://jitpack.io/). ```xml jitpack.io https://jitpack.io ``` ```xml com.github.jikoo.OpenInv openinvapi ${openinv.version} ``` ### Compilation To compile, the relevant Spigot jars must be installed in your local repository using the `install` plugin: ```shell mvn install:install-file -Dpackaging=jar -Dfile=spigot-1.8-R0.1-SNAPSHOT.jar \ -DgroupId=org.spigotmc -DartifactId=spigot -Dversion=1.8-R0.1-SNAPSHOT ``` Note that BuildTools automatically installs produced files. If you use BuildTools to compile Spigot locally, you don't need to install it manually. If you want to use Paper as a dependency, you can install it by executing PaperClip with the property `paperclip.install` set to true: ```shell wget -O paperclip.jar https://papermc.io/api/v1/paper/1.16.5/latest/download java -jar -Dpaperclip.install=true paperclip.jar ``` To compile for a single version, specify the NMS revision you are targeting: `mvn -pl -am clean install` To compile for a set of versions, you'll need to use a profile. The only provided profile is `all`. Select a profile using the `-P` argument: `mvn clean package -am -P all` For more information, check out the [official Maven guide](http://maven.apache.org/guides/introduction/introduction-to-profiles.html). The final file is `target/OpenInv.jar`