Open anyone's inventory as a chest, real-time!
Go to file
Telesphoreo 1609476188 Merge https://github.com/lishid/OpenInv 2021-09-29 15:13:28 -05:00
.github/workflows Add reading assistant 2021-07-12 21:07:45 -04:00
api Merge branch 'master' of https://github.com/lishid/OpenInv 2021-03-21 21:50:18 +11:00
assembly br 2020-11-08 19:14:08 -06:00
internal Merge branch 'master' of https://github.com/lishid/OpenInv 2021-03-21 21:50:18 +11:00
plugin Merge branch 'master' of https://github.com/lishid/OpenInv 2021-03-21 21:50:18 +11:00
scripts Partially automate release changelog 2021-03-18 16:38:41 -04:00
.gitignore Fix up .gitignore a bit 2020-11-15 13:25:50 -05:00
LICENSE.txt Bug fix and changes 2015-06-23 13:31:26 +10:00
README.MD Add relocation notice 2021-04-11 18:29:37 -04:00
pom.xml br 2020-11-08 19:14:08 -06:00

README.MD

Notice

I am now maintaining OpenInv over at Jikoo/OpenInv because I needed higher levels of access to add secrets to the repository for Github Actions. It feels ruder to send an email saying what amounts to "pls op" than to redirect people to my fork, though neither option is polite. Existing issues will remain open here until resolved (you can't transfer issues across organizations/users), but any new issues in this repo will be closed without resolution.

About

OpenInv is a Bukkit plugin 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

Command Aliases Description
/openinv [player] oi, inv, open Open a player's inventory. If unspecified, will select last player opened or own if none opened previously.
/openender [player] oe Open a player's ender chest. If unspecified, will select last player opened or own if none opened previously.
/searchinv <item> [minAmount] si Lists all online players that have a certain item in their inventory.
/searchender <item> [minAmount] se Lists all online players that have a certain item in their ender chest.
/searchenchant <[enchantment] [MinLevel]> searchenchants Lists all online players with a specific enchantment.
/anycontainer [check] ac, anychest Check or toggle the AnyContainer function, allowing opening blocked containers.
/silentcontainer [check] sc, silentchest Check or toggle the SilentContainer function, allowing opening containers silently.

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

To compile, the relevant Craftbukkit/Spigot jars must be installed in your local repository using the install plugin. Ex: 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

To compile for a single version, specify the NMS revision you are targeting: mvn -pl <NMS module> -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.

The final file is target/OpenInv.jar

License

Copyright (C) 2011-2020 lishid. All rights reserved.

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, version 3.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.