7 |
import org.bukkit.inventory.*; |
import org.bukkit.inventory.*; |
8 |
|
|
9 |
public class WorldChanged extends PlayerListener { |
public class WorldChanged extends PlayerListener { |
10 |
|
final static String STACK_TYPE = ".type"; |
11 |
|
final static String STACK_AMOUNT = ".amount"; |
12 |
|
final static String STACK_DAMAGE = ".damage"; |
13 |
|
final static String STACK_DATA = ".data"; |
14 |
|
|
15 |
|
final static String INVENTORY_CREATIVE = ".inventory.creative."; |
16 |
|
final static String INVENTORY_CREATIVE_ARMOR = ".inventory.creative.armor."; |
17 |
|
|
18 |
CreativeMain plugin; |
CreativeMain plugin; |
19 |
public WorldChanged(CreativeMain plugin) { |
public WorldChanged(CreativeMain plugin) { |
37 |
PlayerInventory inv = player.getInventory(); |
PlayerInventory inv = player.getInventory(); |
38 |
|
|
39 |
for (int i=0; i<inv.getSize(); i++) { |
for (int i=0; i<inv.getSize(); i++) { |
40 |
String node = player.getName() + ".inventory.creative." + i;; |
String node = player.getName() + INVENTORY_CREATIVE + i;; |
41 |
//config.set( node, inv.getItem(i) ); |
//config.set( node, inv.getItem(i) ); |
42 |
saveItemStack(config, node, inv.getItem(i) ); |
saveItemStack(config, node, inv.getItem(i) ); |
43 |
} |
} |
44 |
|
|
45 |
ItemStack armor[] = inv.getArmorContents(); |
ItemStack armor[] = inv.getArmorContents(); |
46 |
for (int i=0; i<armor.length; i++) { |
for (int i=0; i<armor.length; i++) { |
47 |
String node = player.getName() + ".inventory.creative.armor." + i;; |
String node = player.getName() + INVENTORY_CREATIVE_ARMOR + i;; |
48 |
//config.set( node, armor[i] ); |
//config.set( node, armor[i] ); |
49 |
saveItemStack(config, node, armor[i] ); |
saveItemStack(config, node, armor[i] ); |
50 |
} |
} |
66 |
ItemStack items[] = new ItemStack[ inv.getSize() ]; |
ItemStack items[] = new ItemStack[ inv.getSize() ]; |
67 |
|
|
68 |
for (int i=0; i<inv.getSize(); i++) { |
for (int i=0; i<inv.getSize(); i++) { |
69 |
String node = player.getName() + ".inventory.creative." + i;; |
String node = player.getName() + INVENTORY_CREATIVE + i;; |
70 |
//items[i] = config.getItemStack(node); |
//items[i] = config.getItemStack(node); |
71 |
items[i] = getItemStack(config, node); |
items[i] = getItemStack(config, node); |
72 |
} |
} |
75 |
|
|
76 |
ItemStack armor[] = new ItemStack[ inv.getArmorContents().length]; |
ItemStack armor[] = new ItemStack[ inv.getArmorContents().length]; |
77 |
for (int i=0; i<armor.length; i++) { |
for (int i=0; i<armor.length; i++) { |
78 |
String node = player.getName() + ".inventory.creative.armor." + i; |
String node = player.getName() + INVENTORY_CREATIVE_ARMOR + i; |
79 |
//armor[i] = config.getItemStack(node); |
//armor[i] = config.getItemStack(node); |
80 |
armor[i] = getItemStack(config, node); |
armor[i] = getItemStack(config, node); |
81 |
} |
} |
87 |
|
|
88 |
|
|
89 |
public void saveItemStack(Configuration config, String node, ItemStack stack) { |
public void saveItemStack(Configuration config, String node, ItemStack stack) { |
90 |
config.set(node + ".type", stack.getTypeId() ); |
config.set(node + STACK_TYPE, stack.getTypeId() ); |
91 |
config.set(node + ".amount", stack.getAmount() ); |
config.set(node + STACK_AMOUNT, stack.getAmount() ); |
92 |
config.set(node + ".damage", (int)stack.getDurability() ); |
config.set(node + STACK_DAMAGE, (int)stack.getDurability() ); |
93 |
config.set(node + ".data", (int)stack.getData().getData() ); |
config.set(node + STACK_DATA, (int)stack.getData().getData() ); |
94 |
} |
} |
95 |
|
|
96 |
public ItemStack getItemStack(Configuration config, String node) { |
public ItemStack getItemStack(Configuration config, String node) { |
97 |
int type = config.getInt( node + ".type"); |
int type = config.getInt( node + STACK_TYPE); |
98 |
int amount = config.getInt( node + ".amount"); |
int amount = config.getInt( node + STACK_AMOUNT); |
99 |
short damage = (short) config.getInt(node + ".damage"); |
short damage = (short) config.getInt(node + STACK_DAMAGE); |
100 |
byte data = (byte) config.getInt(node + ".data"); |
byte data = (byte) config.getInt(node + STACK_DATA); |
101 |
|
|
102 |
return new ItemStack(type,amount,damage,data); |
return new ItemStack(type,amount,damage,data); |
103 |
} |
} |