кто эти нбт придумал...
мучаюсь с нбт
This commit is contained in:
parent
2706c8e23a
commit
1b47fe51e1
@ -9,7 +9,7 @@ import tokarotik.giftapi.inventory.InventoryManager;
|
|||||||
|
|
||||||
public class APIManager {
|
public class APIManager {
|
||||||
|
|
||||||
private Main plugin;
|
public Main plugin;
|
||||||
private FileConfiguration config;
|
private FileConfiguration config;
|
||||||
private InventoryManager inventoryManager;
|
private InventoryManager inventoryManager;
|
||||||
|
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package tokarotik.giftapi;
|
package tokarotik.giftapi;
|
||||||
|
|
||||||
public class ConfigPaths {
|
public class ConfigPaths {
|
||||||
|
public static final String DEVTEST = "dev-test";
|
||||||
public static final String GUINAME = "gui.title-menu";
|
public static final String GUINAME = "gui.title-menu";
|
||||||
public static final String GUIRIGHT = "gui.arrow.right-name";
|
public static final String GUIRIGHT = "gui.arrow.right-name";
|
||||||
public static final String GUILEFT = "gui.arrow.left-name";
|
public static final String GUILEFT = "gui.arrow.left-name";
|
||||||
|
@ -5,6 +5,7 @@ import org.bukkit.entity.Player;
|
|||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
import tokarotik.giftapi.dev.GiftCommand;
|
import tokarotik.giftapi.dev.GiftCommand;
|
||||||
|
|
||||||
public class Main extends JavaPlugin implements Listener
|
public class Main extends JavaPlugin implements Listener
|
||||||
@ -12,8 +13,7 @@ public class Main extends JavaPlugin implements Listener
|
|||||||
private APIManager apiManager;
|
private APIManager apiManager;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onEnable()
|
public void onEnable() {
|
||||||
{
|
|
||||||
saveDefaultConfig();
|
saveDefaultConfig();
|
||||||
|
|
||||||
getLogger().info("GiftAPI enabled!");
|
getLogger().info("GiftAPI enabled!");
|
||||||
@ -21,7 +21,10 @@ public class Main extends JavaPlugin implements Listener
|
|||||||
saveDefaultConfig();
|
saveDefaultConfig();
|
||||||
apiManager = new APIManager(this, getConfig());
|
apiManager = new APIManager(this, getConfig());
|
||||||
|
|
||||||
this.getCommand("gift").setExecutor(new GiftCommand(apiManager));
|
if (getConfig().getBoolean(ConfigPaths.DEVTEST, false))
|
||||||
|
{
|
||||||
|
this.getCommand("gift").setExecutor(new GiftCommand(apiManager));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -42,4 +45,7 @@ public class Main extends JavaPlugin implements Listener
|
|||||||
{
|
{
|
||||||
return apiManager.remove(player, item);
|
return apiManager.remove(player, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// will open inventory GiftAPI
|
||||||
|
public void openGUI(Player player) {apiManager.openInventory(player);}
|
||||||
}
|
}
|
@ -1,18 +1,20 @@
|
|||||||
package tokarotik.giftapi.dev;
|
package tokarotik.giftapi.dev;
|
||||||
|
|
||||||
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.CommandExecutor;
|
import org.bukkit.command.CommandExecutor;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import tokarotik.giftapi.APIManager;
|
import tokarotik.giftapi.APIManager;
|
||||||
|
import tokarotik.giftapi.savemanager.NBTManager;
|
||||||
|
|
||||||
public class GiftCommand implements CommandExecutor {
|
public class GiftCommand implements CommandExecutor {
|
||||||
|
|
||||||
private APIManager APIManager;
|
private APIManager apiManager;
|
||||||
|
|
||||||
public GiftCommand(APIManager APIManager)
|
public GiftCommand(APIManager APIManager)
|
||||||
{
|
{
|
||||||
this.APIManager = APIManager;
|
this.apiManager = APIManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -23,7 +25,9 @@ public class GiftCommand implements CommandExecutor {
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.APIManager.openInventory((Player) sender);
|
new NBTManager().write((Player) sender, Bukkit.getWorld("world").getWorldFolder().getAbsolutePath());
|
||||||
|
|
||||||
|
this.apiManager.openInventory((Player) sender);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
package tokarotik.giftapi.inventory;
|
package tokarotik.giftapi.inventory;
|
||||||
|
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
@ -10,7 +9,7 @@ import org.bukkit.event.EventHandler;
|
|||||||
import org.bukkit.inventory.Inventory;
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.inventory.meta.ItemMeta;
|
import org.bukkit.inventory.meta.ItemMeta;
|
||||||
import tokarotik.giftapi.ConfigPaths;
|
|
||||||
|
|
||||||
public class InventoryManager implements Listener {
|
public class InventoryManager implements Listener {
|
||||||
|
|
||||||
|
58
src/main/java/tokarotik/giftapi/savemanager/NBTManager.java
Normal file
58
src/main/java/tokarotik/giftapi/savemanager/NBTManager.java
Normal file
@ -0,0 +1,58 @@
|
|||||||
|
package tokarotik.giftapi.savemanager;
|
||||||
|
|
||||||
|
import net.minecraft.server.v1_6_R3.EntityPlayer;
|
||||||
|
import net.minecraft.server.v1_6_R3.NBTCompressedStreamTools;
|
||||||
|
import net.minecraft.server.v1_6_R3.NBTTagCompound;
|
||||||
|
import net.minecraft.server.v1_6_R3.NBTTagString;
|
||||||
|
import org.bukkit.craftbukkit.v1_6_R3.entity.CraftPlayer;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileOutputStream;
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.lang.reflect.Method;
|
||||||
|
|
||||||
|
public class NBTManager
|
||||||
|
{
|
||||||
|
public void write(Player player, String path)
|
||||||
|
{
|
||||||
|
EntityPlayer entityPlayer = getPlayer(player);
|
||||||
|
//entityPlayer.getName()
|
||||||
|
|
||||||
|
NBTTagCompound tag = readNBT(entityPlayer, path);
|
||||||
|
|
||||||
|
if (tag == null){System.out.println("IS NULL!!!");};
|
||||||
|
|
||||||
|
tag.setShort("Health", (short) 15);
|
||||||
|
tag.setFloat("HealF", 15.0F);
|
||||||
|
|
||||||
|
System.out.println(tag);
|
||||||
|
|
||||||
|
entityPlayer.f(tag);
|
||||||
|
|
||||||
|
System.out.println();
|
||||||
|
System.out.println(tag);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private NBTTagCompound readNBT(EntityPlayer player, String path)
|
||||||
|
{
|
||||||
|
try {
|
||||||
|
FileInputStream fis = new FileInputStream(path + "/players/" + player.getName() + ".dat");
|
||||||
|
NBTTagCompound compound = NBTCompressedStreamTools.a(fis); // Decompress and load
|
||||||
|
fis.close();
|
||||||
|
|
||||||
|
player.b(compound);
|
||||||
|
return compound;
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private EntityPlayer getPlayer(Player player)
|
||||||
|
{
|
||||||
|
return ((CraftPlayer) player).getHandle();
|
||||||
|
}
|
||||||
|
}
|
@ -1,6 +1,9 @@
|
|||||||
# Colors you can see here https://htmlcolorcodes.com/minecraft-color-codes/
|
# Colors you can see here https://htmlcolorcodes.com/minecraft-color-codes/
|
||||||
# Set Names Only In English
|
# Set Names Only In English
|
||||||
|
|
||||||
|
# Will turn command /gift for dev. test
|
||||||
|
dev-test: true
|
||||||
|
|
||||||
gui:
|
gui:
|
||||||
# Max title length is 32 letters
|
# Max title length is 32 letters
|
||||||
title-menu: "Set Your Title In Config"
|
title-menu: "Set Your Title In Config"
|
||||||
|
Loading…
x
Reference in New Issue
Block a user