mirror of
https://github.com/AtlasMediaGroup/TotalFreedomMod.git
synced 2024-11-27 01:05:38 +00:00
fixed
offline player lookup should work now, but i still need to allow for nbt data lookup as well.
This commit is contained in:
parent
135d1af27d
commit
c096c4a781
@ -10,8 +10,8 @@ import org.bukkit.entity.Player;
|
|||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
|
||||||
@CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH)
|
@CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH)
|
||||||
@CommandParameters(description = "View player inventory information of players.", usage = "/<command> <player> <slot>", aliases = "inv")
|
@CommandParameters(description = "View inventory information of players.", usage = "/<command> <player> <slot>", aliases = "il,invlookup")
|
||||||
public class Command_inventory extends FreedomCommand
|
public class Command_inventorylookup extends FreedomCommand
|
||||||
{
|
{
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -48,7 +48,7 @@ public class Command_inventory extends FreedomCommand
|
|||||||
msg(" - Amount: " + stack.getAmount());
|
msg(" - Amount: " + stack.getAmount());
|
||||||
if (inv.hasNBT(slot))
|
if (inv.hasNBT(slot))
|
||||||
{
|
{
|
||||||
msg(" - NBT Data: " + inv.getNBT(slot));
|
msg(" - NBT Data: " + inv.getNBT(slot).toString());
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
@ -4,6 +4,7 @@ import java.util.HashMap;
|
|||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
import net.minecraft.server.v1_14_R1.NBTTagCompound;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.configuration.ConfigurationSection;
|
import org.bukkit.configuration.ConfigurationSection;
|
||||||
import org.bukkit.craftbukkit.v1_14_R1.inventory.CraftItemStack;
|
import org.bukkit.craftbukkit.v1_14_R1.inventory.CraftItemStack;
|
||||||
@ -21,6 +22,17 @@ public class ConfigInventory
|
|||||||
updateInventory(inv);
|
updateInventory(inv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void set(int location, Material material, int amount, NBTTagCompound nbt)
|
||||||
|
{
|
||||||
|
ItemStack stack = new ItemStack(material, amount);
|
||||||
|
/*
|
||||||
|
net.minecraft.server.v1_14_R1.ItemStack nmsStack = CraftItemStack.asNMSCopy(stack);
|
||||||
|
nmsStack.setTag(nbt);
|
||||||
|
stack = CraftItemStack.asBukkitCopy(nmsStack);
|
||||||
|
*/
|
||||||
|
inventoryItems.put(location, stack);
|
||||||
|
}
|
||||||
|
|
||||||
public void set(int location, ItemStack stack)
|
public void set(int location, ItemStack stack)
|
||||||
{
|
{
|
||||||
inventoryItems.put(location, stack);
|
inventoryItems.put(location, stack);
|
||||||
@ -36,14 +48,18 @@ public class ConfigInventory
|
|||||||
return CraftItemStack.asNMSCopy(inventoryItems.get(location)).hasTag();
|
return CraftItemStack.asNMSCopy(inventoryItems.get(location)).hasTag();
|
||||||
}
|
}
|
||||||
|
|
||||||
public String getNBT(int location)
|
public NBTTagCompound getNBT(int location)
|
||||||
{
|
{
|
||||||
return CraftItemStack.asNMSCopy(inventoryItems.get(location)).getTag().toString();
|
return CraftItemStack.asNMSCopy(inventoryItems.get(location)).getTag();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void updateInventory(Inventory inv)
|
public void updateInventory(Inventory inv)
|
||||||
{
|
{
|
||||||
inventoryItems = new HashMap<>();
|
inventoryItems = new HashMap<>();
|
||||||
|
if (inv == null)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
for (int i = 0; i < inv.getSize(); i++)
|
for (int i = 0; i < inv.getSize(); i++)
|
||||||
{
|
{
|
||||||
inventoryItems.put(i, inv.getItem(i));
|
inventoryItems.put(i, inv.getItem(i));
|
||||||
@ -70,4 +86,16 @@ public class ConfigInventory
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static ConfigInventory createInventoryFromConfig(ConfigurationSection cs)
|
||||||
|
{
|
||||||
|
ConfigInventory configInventory = new ConfigInventory(null);
|
||||||
|
for (int i = 0; i < 40; i++)
|
||||||
|
{
|
||||||
|
configInventory.set(i, Material.valueOf(cs.getString("inventory." + i + ".type")),
|
||||||
|
cs.getInt("inventory." + i + ".amount"), null);//,
|
||||||
|
//(NBTTagCompound) cs.get("inventory." + i + ".nbt"));
|
||||||
|
}
|
||||||
|
return configInventory;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -64,7 +64,14 @@ public class VPlayer implements ConfigLoadable, ConfigSavable, Validatable
|
|||||||
tag = cs.getString("tag", null);
|
tag = cs.getString("tag", null);
|
||||||
clearChatOptOut = cs.getBoolean("clearChatOptOut", false);
|
clearChatOptOut = cs.getBoolean("clearChatOptOut", false);
|
||||||
rideToggle = cs.getBoolean("rideToggle", true);
|
rideToggle = cs.getBoolean("rideToggle", true);
|
||||||
inventory = new ConfigInventory(Bukkit.getPlayer(name).getInventory());
|
if (!cs.contains("inventory") || Bukkit.getPlayer(name) != null)
|
||||||
|
{
|
||||||
|
inventory = new ConfigInventory(Bukkit.getPlayer(name).getInventory());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
inventory = ConfigInventory.createInventoryFromConfig(cs);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Loading…
Reference in New Issue
Block a user