90 Commits

Author SHA1 Message Date
feildmaster
23b6764374 Update CraftBukkit to Minecraft 1.4.6 2012-12-20 10:43:00 -06:00
feildmaster
d9708d032e Fix PotionMeta not applying the correct Id. Fixes BUKKIT-3193 2012-12-18 18:43:53 -06:00
feildmaster
a2d551fafa Refactor get/setChestPlate to Chestplate. Addresses BUKKIT-3189 2012-12-18 03:46:58 -06:00
Wesley Wolfe
6cec8ba5cb Change enchantment comparisons to isSimilar. Fixes BUKKIT-3183
The purpose of the isSimilar method was designed to consider all NBT
data, not solely enchantments, without the need to have exact stack
size matches. The respective methods in CraftInventory were still
comparing enchantments instead of the ItemMeta.
2012-12-17 16:43:16 -06:00
Wesley Wolfe
d66d3674ea Clarify functionality in CraftInventory. Fixes BUKKIT-3097
Changes some NPEs to IllegalArgumentExceptions for exception consistency.

Contains(ItemStack, int) correctly calculates number of ItemStacks.

Adds a containsAtLeast(ItemStack, int) for finding a combined amount of a
single similar ItemStack.

Makes some utility methods private to prevent ambiguity in use.
2012-12-17 16:39:25 -06:00
Wesley Wolfe
78f48258d8 Implement ItemFactory and ItemMeta values. Adds BUKKIT-15 2012-12-17 01:31:41 -06:00
feildmaster
d20d4dc43a ItemStack.asBukkitStack(null) should return Air. Fixes BUKKIT-3170 2012-12-15 01:52:42 -06:00
deathmarine
53b064ec79 Fix EntityEquipment positions being reversed. Fixes BUKKIT-3157 2012-12-12 22:20:44 -06:00
feildmaster
430d352a5a Add EntityEquipment API. Adds BUKKIT-3103
Adds:
- Getting/Setting equipment
- getting/setting drop rates
- getting/setting ability to pick up items
-- As an added feature, players with this flag start off with a canceled PlayerPickupItemEvent
2012-12-10 19:01:50 -06:00
Travis Watkins
7f7192f8fd Update CraftBukkit to Minecraft 1.4.4. 2012-11-13 16:09:52 -06:00
Wesley Wolfe
9a88e615d4 Change ItemFrame to actually provide a defensive copy. Fixes BUKKIT-2784
If a defensive copy is not used in the API, changes to the item are
reflected in memory, but never updated to the client. It also goes
against the general contract provided in Bukkit, where setItem should be
the only way to change the underlying item frame.
2012-11-01 01:34:54 -05:00
Travis Watkins
87a1cd3d43 Add inventory and slot types for new containers. Fixes BUKKIT-2741 2012-10-31 13:25:53 -04:00
EvilSeph
6bf705dd08 Expose API for clearing a player's inventory with a successful count
return. Adds BUKKIT-2745
2012-10-30 04:55:02 -04:00
Travis Watkins
60819c6693 Update CraftBukkit to Minecraft 1.4(.2). 2012-10-27 22:19:03 -04:00
Wesley Wolfe
e2b1514daf Bulk pending cleanup. 2012-09-09 23:19:28 -05:00
feildmaster
fc35d000e4 Use correct SlotType's for merchants. Fixes BUKKIT-2257 2012-08-15 06:00:55 -05:00
feildmaster
a43d621c01 Update CraftBukkit to Minecraft 1.3.1 2012-08-02 04:58:50 -05:00
Celtic Minstrel
784aa3b602 [Bleeding] Fix the openInventory methods for custom inventories. Fixes BUKKIT-1248
Details:
- The attributes of custom inventory views are no longer ignored
- Enchanting or crafting inventories no longer ignore the passed inventory and open a new one
- Inventories associated with tile entities no longer raise a class cast exception if there was no associated tile entity
- InventoryOpenEvent and InventoryCloseEvent (if they already had some other inventory open) now fire in all cases
- If for any reason the inventory failed to open, the method now returns null instead of returned the previous inventory they had open (or the default inventory, if none)
2012-03-20 21:31:42 -04:00
Celtic Minstrel
288662bfae [Bleeding] Fix some return types that could lead to ArrayStoreException 2012-03-20 20:43:12 -04:00
Celtic Minstrel
cd9779196b [Bleeding] Add iterator() with starting index. Addresses BUKKIT-1246 2012-03-20 19:40:44 -04:00
Celtic Minstrel
71a51b024b Reverted invalid clone. Fixes BUKKIT-1198 2012-03-16 17:10:42 -04:00
Celtic Minstrel
241cf1c664 [Bleeding] Allow custom inventory views to change their type to BREWING or ENCHANTING, and also allow them to change their title and size. Fixes BUKKIT-1190 2012-03-15 23:54:00 -04:00
Celtic Minstrel
5c8fd4995f [Bleeding] Implemented Inventory.{get,set}MaxStackSize(). Addresses BUKKIT-1076
- Custom inventories also respect this setting now.
2012-03-15 22:44:10 -04:00
Celtic Minstrel
66e067f373 [Bleeding] Make InventoryView.setItem(-999, item) drop the item on the ground by default. 2012-03-15 22:26:27 -04:00
Celtic Minstrel
83265005f6 [Bleeding] Made ItemStack constructors not default to an amount of 0. Fixes BUKKIT-610 2012-03-15 22:17:09 -04:00
Celtic Minstrel
76cc488402 [Bleeding] DoubleChestInventory.getHolder() no longer returns null. Addresses BUKKIT-995 2012-03-15 22:13:46 -04:00
Celtic Minstrel
f27427ad19 Fix some improper item cloning instances that would have dropped enchantments 2012-03-15 21:47:37 -04:00
Wesley Wolfe
77ceb0002c Fix losing enchants from stacked items in custom inventories 2012-03-15 21:47:29 -04:00
md_5
c90a7a52e7 [Bleeding] Fixed maxStack being incorrectly set to 0 in custom craft inventories. Fixes BUKKIT-1181 2012-03-15 05:30:44 -04:00
Tahg
2ff8a8749f Fixed copy error in DoubleChest's inventory 2012-03-05 15:28:59 -05:00
Wesley Wolfe
c6273810a1 [Bleeding] Fixed crafting enchanted items, fixes BUKKIT-602 2012-03-02 21:10:39 -05:00
Nathan Adams
543c4879fe Updated CraftBukkit to 1.2 2012-03-01 14:38:31 +00:00
Nathan Adams
a726f6de3e Potentially fixed inventory issues. This (should) fix issue BUKKIT-860 2012-03-01 13:35:36 +00:00
Erik Broes
33ba9f0a2f Updated to rename revision 02 2012-03-01 01:12:41 +00:00
Celtic Minstrel
8524ff8ef7 Fix for Java 1.5 2012-02-29 15:37:35 -05:00
Celtic Minstrel
0842bab48b [Bleeding] Implementation of inventory framework. Addresses BUKKIT-856
See the corresponding Bukkit commit for details.

Implementation details:
- Any packets that include an itemstack will send air stacks as null; maybe this will even eliminate the client crash that occurs if the client receives an air stack
- Better handling of null itemstacks in general (ie less converting them to air stacks)
- Inventory.setContents() can now take an array smaller than the inventory without error
- Player.updateInventory() should now correctly update the result slot in a crafting inventory

Some small credit goes to Afforess (initial implementation of openInventory() methods) and Drakia (initial implementation of InventoryOpenEvent and InventoryCloseEvent).
2012-02-29 15:19:07 -05:00
Celtic Minstrel
326091c130 [Bleeding] Recipe API improvements and fixes. Addresses BUKKIT-738 and BUKKIT-624
Add a recipe iterator to make it possible to retrieve and remove recipes (BUKKIT-738), and updated the recipe classes to not clip the data to 127 (BUKKIT-624)
2012-02-21 04:24:24 -05:00
Wesley Wolfe
39048be430 [Bleeding] Cleanup clone method. 2012-02-20 05:49:48 -05:00
Mushroom Hostage
7076ef9de6 Use createNMSItemStack on CraftingManager recipe registration. Fixes BUKKIT-602 2012-02-13 00:44:58 -05:00
EvilSeph
4f02563c63 Reverted changes to getItem(). Will be reimplemented after RB. 2012-01-20 14:52:32 -05:00
EvilSeph
1bbeec1f75 Accounted for NMS getItem() returning null in recent commit. 2012-01-20 11:46:24 -05:00
EvilSeph
76d7a1ce1d Properly handle null and air items. Fixes BUKKIT-435 and BUKKIT-550
We'll probably want to implement an ItemStack.EMPTY and return that
instead of NULL in the near future.
2012-01-20 05:40:10 -05:00
Erik Broes
a4ce846d07 Fix formatting. 2012-01-15 10:54:57 +01:00
Nathan Adams
3ee8a2372c Additional commit to fix #BUKKIT-24 2012-01-14 12:46:23 +00:00
Andrew Ardill
60a2d12250 CraftItemStack: Make sure this.item is not null when cloning.
Fixes BUKKIT-424
2011-12-29 22:44:58 +11:00
Andrew Ardill
1c6adc1587 Fix error when cloning enchanted ItemStacks.
The existing method for cloning a Bukkit ItemStack fails to correctly copy
the underlying enchantments. Fix this by overriding .clone() in
CraftItemStack, cloning the underlying nms ItemStack correctly.

Fixes BUKKIT-360
2011-12-20 00:30:54 +11:00
Tahg
eead44a692 fix NPE issue with CB inventory 2011-12-06 08:48:45 -05:00
Nathan Adams
8363eadcab CraftInventory.remove shouldn't care about amount (BUKKIT-138) 2011-12-05 01:51:33 +00:00
Nathan Adams
c6d182286c Fixed some various CraftInventory bugs related to dropping Enchantments 2011-12-04 13:22:50 +00:00
Nathan Adams
d02a2eb49d Fixed rare NPEs with CraftItemStack. This fixes BUKKIT-51 2011-12-01 05:21:03 +00:00