In dem du dir das material als string speicherst und diesen wiederum aufrufst. Also Bsp. So:
- Code: Alles auswählen
- public String giveInventory(Player p){
- String inv ="";
- for (ItemStack is : p.getInventory().getContents())
- inv = inv+is.getType().toString()+"_"+is.getData()+"_"+is.getAmount()+";";
- return inv;
- }
und so bekommst du dann die Itemstacks wieder raus:
- Code: Alles auswählen
- public ItemStack[] getInventory(String inv){
- String[] invs = inv.split(";");
- ItemStack[] is = new ItemStack[invs.length];
-
- for(int i = 0; i<inv.length(); i++){
- String[] itemdata = invs[i].split("_");
- String material = itemdata[0];
- byte data = Byte.parseByte(itemdata[1]);
- int amount = Integer.parseInt(itemdata[2]);
- ItemStack in = new ItemStack(Material.getMaterial(material),amount,data);
- is[i]=in;
- }
- return is;
- }