Initial Commit

This commit is contained in:
Cheetascout
2026-08-16 21:09:56 +01:00
commit 4e6a270602
9 changed files with 147 additions and 0 deletions
+7
View File
@@ -0,0 +1,7 @@
run/
build/
.idea/
.vscode/
.gradle/
*.iml
out/
+34
View File
@@ -0,0 +1,34 @@
plugins {
id("java-library")
id("xyz.jpenilla.run-paper") version "3.1.0"
}
repositories {
mavenCentral()
maven("https://repo.papermc.io/repository/maven-public/")
}
dependencies {
compileOnly("io.papermc.paper:paper-api:26.2.build.+")
}
java {
toolchain.languageVersion = JavaLanguageVersion.of(25)
}
tasks {
runServer {
// Configure the Minecraft version for our task.
// This is the only required configuration besides applying the plugin.
// Your plugin's jar (or shadowJar if present) will be used automatically.
minecraftVersion("26.2")
jvmArgs("-Xms2G", "-Xmx2G")
}
processResources {
val props = mapOf("version" to version)
filesMatching("plugin.yml") {
expand(props)
}
}
}
+5
View File
@@ -0,0 +1,5 @@
group=org
version=1.0
org.gradle.configuration-cache=true
org.gradle.parallel=true
org.gradle.caching=true
+1
View File
@@ -0,0 +1 @@
distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip
+1
View File
@@ -0,0 +1 @@
rootProject.name = "invsee"
+17
View File
@@ -0,0 +1,17 @@
package org.invsee;
import org.bukkit.plugin.java.JavaPlugin;
public final class Invsee extends JavaPlugin {
@Override
public void onEnable() {
getCommand("invsee").setExecutor(new InvseeCommand());
getServer().getPluginManager().registerEvents(new InvseeClickListener(), this);
}
@Override
public void onDisable() {
}
}
@@ -0,0 +1,19 @@
package org.invsee;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.inventory.ItemStack;
public class InvseeClickListener implements Listener {
@EventHandler
public void onInventoryClick(InventoryClickEvent event) {
if (event.getView().getTitle().endsWith("'s Inventory")) {
ItemStack clicked = event.getCurrentItem();
if (clicked != null) {
event.setCancelled(true);
}
}
}
}
@@ -0,0 +1,47 @@
package org.invsee;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.inventory.Inventory;
import org.bukkit.inventory.PlayerInventory;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.NotNull;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
public final class InvseeCommand implements CommandExecutor {
@Override
public boolean onCommand(@NotNull CommandSender sender, @NotNull Command command, @NotNull String label, @NotNull String[] args) {
if (command.getName().equalsIgnoreCase("invsee")) {
if (args.length == 0) {
return false;
}
}
Player target = Bukkit.getPlayer(args[0]);
if (target == null) {
sender.sendMessage("Player Not Found!");
return true;
}
Player viewer = (Player) sender;
PlayerInventory targetInv = target.getInventory();
Inventory inv = Bukkit.createInventory(null, 54, target.getName() + "'s Inventory");
for (int i = 0; i < 36; i++) {
inv.setItem(i, targetInv.getItem(i));
}
for (int i = 0; i < 4; i++) {
inv.setItem(36 + i, targetInv.getArmorContents()[i]);
}
int[] emptySlots = {40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53};
for (int slot : emptySlots) {
inv.setItem(slot, new ItemStack(Material.BLACK_STAINED_GLASS_PANE));
}
inv.setItem(40, targetInv.getItemInOffHand());
viewer.openInventory(inv);
return true;
}
}
+16
View File
@@ -0,0 +1,16 @@
name: invsee
version: '${version}'
main: org.invsee.Invsee
api-version: '26.2'
load: POSTWORLD
commands:
invsee:
description: See another players inventory
aliases:
- inventorysee
permissions:
invsee.use:
description: Allows use of the invsee command
default: op