Expose API for managing and using GameRules. Adds BUKKIT-2757

This commit is contained in:
feildmaster
2012-10-30 21:24:48 -05:00
committed by EvilSeph
parent 59dc403a61
commit 9e4e2c62af
3 changed files with 42 additions and 14 deletions

View File

@@ -230,16 +230,19 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
}
java.util.List<org.bukkit.inventory.ItemStack> loot = new java.util.ArrayList<org.bukkit.inventory.ItemStack>();
boolean keepInventory = this.world.getGameRules().getBoolean("keepInventory");
for (int i = 0; i < this.inventory.items.length; ++i) {
if (this.inventory.items[i] != null) {
loot.add(new CraftItemStack(this.inventory.items[i]));
if (!keepInventory) {
for (int i = 0; i < this.inventory.items.length; ++i) {
if (this.inventory.items[i] != null) {
loot.add(new CraftItemStack(this.inventory.items[i]));
}
}
}
for (int i = 0; i < this.inventory.armor.length; ++i) {
if (this.inventory.armor[i] != null) {
loot.add(new CraftItemStack(this.inventory.armor[i]));
for (int i = 0; i < this.inventory.armor.length; ++i) {
if (this.inventory.armor[i] != null) {
loot.add(new CraftItemStack(this.inventory.armor[i]));
}
}
}
@@ -252,12 +255,14 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
}
// CraftBukkit - we clean the player's inventory after the EntityDeathEvent is called so plugins can get the exact state of the inventory.
for (int i = 0; i < this.inventory.items.length; ++i) {
this.inventory.items[i] = null;
}
if (!keepInventory) {
for (int i = 0; i < this.inventory.items.length; ++i) {
this.inventory.items[i] = null;
}
for (int i = 0; i < this.inventory.armor.length; ++i) {
this.inventory.armor[i] = null;
for (int i = 0; i < this.inventory.armor.length; ++i) {
this.inventory.armor[i] = null;
}
}
this.closeInventory();