Initial Commit
This commit is contained in:
@@ -0,0 +1,7 @@
|
|||||||
|
run/
|
||||||
|
build/
|
||||||
|
.idea/
|
||||||
|
.vscode/
|
||||||
|
.gradle/
|
||||||
|
*.iml
|
||||||
|
out/
|
||||||
@@ -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)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
group=org
|
||||||
|
version=1.0
|
||||||
|
org.gradle.configuration-cache=true
|
||||||
|
org.gradle.parallel=true
|
||||||
|
org.gradle.caching=true
|
||||||
+1
@@ -0,0 +1 @@
|
|||||||
|
distributionUrl=https\://services.gradle.org/distributions/gradle-9.7.0-bin.zip
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
rootProject.name = "invsee"
|
||||||
@@ -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;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -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
|
||||||
Reference in New Issue
Block a user