Commit Graph

37 Commits

Author SHA1 Message Date
Bukkit/Spigot
c9937a01c8 [Bleeding] Fixed crafting enchanted items, fixes BUKKIT-602
By: Wesley Wolfe <weswolf@aol.com>
2012-03-02 12:49:56 -06:00
Bukkit/Spigot
c180de46e2 [Bleeding] Inventory framework and events. Addresses BUKKIT-856
New events:
- InventoryOpenEvent
- InventoryClickEvent - detects any clicks on a slot or outside the window
  - In the creative inventory view, only clicks on the quickbar are detected
- InventoryCloseEvent
- BrewEvent - when a potion finishes brewing
- CraftItemEvent (a subevent of InventoryClickEvent) - fired when taking the crafted item
- PrepareItemCraftEvent - fired just before updating the result slot
Changes to existing events:
- EnchantItemEvent extends InventoryEvent and also has a new whichButton() method
- PrepareItemEnchantEvent also extends InventoryEvent
- FurnaceBurnEvent and FurnaceSmeltEvent now extend BlockEvent (as does BrewEvent)
- PlayerInventoryEvent is deprecated (though it never did anything anyway)
New subclasses of Inventory:
- BrewerInventory
- CraftingInventory
- DoubleChestInventory
- EnchantingInventory
- FurnaceInventory
New methods in Inventory:
- getViewers()
- getTitle()
- getType()
- getHolder()
- iterator() - Yes, inventories are now iterable!
  - The iterator is a ListIterator that does not support add or remove
New methods in Player:
- getOpenInventory()
- openInventory()
- openWorkbench()
- openEnchanting()
- closeInventory()
- setWindowProperty()
- getItemOnCursor()
- setItemOnCursor()
Other changes:
- createInventory() methods in Server to make inventories not linked to an object
- ContainerBlock is deprecated in favour of InventoryHolder
- New InventoryView class gives direct access to an inventory window!
- Removed the Slot class which did nothing and was used nowhere

Some small credit goes to Afforess (initial conception of openInventory() methods) and Drakia (initial conception of InventoryOpenEvent and InventoryCloseEvent).

By: Celtic Minstrel <celtic.minstrel.ca@some.place>
2012-02-29 13:32:33 -05:00
Bukkit/Spigot
5906da7948 [Bleeding] Cleaned up unsafe casts. Addresses BUKKIT-844
Removed internal collection leaks from PluginDescriptionFile
BREAKING: PluginDescriptionFile.getAuthors() now returns List instead of
ArrayList

Various places with unsafe generics, notably List<Object> getList() in
Configurations are now referenced as <?>. This is nonbreaking, but
sourcecode will need to be revised when compiled.

By: Wesley Wolfe <weswolf@aol.com>
2012-02-29 08:32:25 -06:00
Bukkit/Spigot
80e59821f3 [Bleeding] Fix deserialization for unsafe enchantments. Fixes BUKKIT-793
By: Wesley Wolfe <weswolf@aol.com>
2012-02-23 02:23:05 -06:00
Bukkit/Spigot
07ccb2a000 [Bleeding] Add ways to retrieve and delete crafting recipes and fixed some issues with the existing recipe API.
- New recipe iterator which enables deleting specific recipes
- Functions to delete all recipes or revert to vanilla recipe set
- Fixed the recipes API; you should now be able to define recipes that take brewed potions!
- Fetch all recipes that result in a specific item

By: Celtic Minstrel <celtic.minstrel.ca@some.place>
2011-07-23 23:18:58 -04:00
Bukkit/Spigot
8bc2cf4969 [Bleeding] Cleanup clone methods.
By: Wesley Wolfe <weswolf@aol.com>
2012-02-14 01:49:06 -06:00
Bukkit/Spigot
e106970af9 [Bleeding] Fixed class cast in ItemStack deserialization. Fixes BUKKIT-777
By: Wesley Wolfe <weswolf@aol.com>
2012-02-15 20:40:58 -06:00
Bukkit/Spigot
e204abd0f0 Allow cloning ItemStacks with unsafe enchantments. Fixes BUKKIT-621
Prevents "IllegalArgumentException: Specified enchantment cannot be applied to this itemstack").

By: mushroomhostage <mushroomhostage@yahoo.com>
2012-02-10 17:53:22 -08:00
Bukkit/Spigot
1749f26e03 Fixed casting in ItemStack.deserialize.
By: starrynte <starrynte@gmail.com>
2012-02-01 21:30:01 -08:00
Bukkit/Spigot
4c80a49933 Generic cleaning
By: Erik Broes <erikbroes@grum.nl>
2012-01-15 14:37:30 +01:00
Bukkit/Spigot
cff0c0ecc5 Configurations now properly support lists of serializable objects, and ItemStack is properly serializable. Big thanks to GICodeWarrior for the PR. This fixes BUKKIT-425
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-15 11:15:19 +00:00
Bukkit/Spigot
62510f93b8 ItemStack.getMaxStackSize no longer incorrectly returns -1 when not backed by an NMS instance. Thanks to feildmaster for the PR. This fixes BUKKIT-530
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-15 09:52:56 +00:00
Bukkit/Spigot
5fc8f4f576 Fixed NPE in ItemStack. Thanks jascotty2!
By: EvilSeph <evilseph@gmail.com>
2012-01-07 19:58:26 -05:00
Bukkit/Spigot
aaab1cba23 Generic cleanup of warnings, whitespace and style.
By: Erik Broes <erikbroes@grum.nl>
2011-12-25 16:02:30 +01:00
Bukkit/Spigot
8535006335 BREAKING: ItemStack no longer implements Serializable
By: Nathan Adams <dinnerbone@dinnerbone.com>
2011-12-12 23:19:03 +00:00
Bukkit/Spigot
da2c7fcc14 Fixed issue adding mass enchantments to items
By: Nathan Adams <dinnerbone@dinnerbone.com>
2011-11-27 03:58:12 +00:00
Bukkit/Spigot
636640607d Added utility methods to ItemStack to allow mass adding of enchantments
By: Nathan Adams <dinnerbone@dinnerbone.com>
2011-11-27 02:45:08 +00:00
Bukkit/Spigot
868b48c82c Made ItemStack .equals take into account data and enchantments
By: Nathan Adams <dinnerbone@dinnerbone.com>
2011-11-27 02:25:12 +00:00
Bukkit/Spigot
aa5b203974 Added Enchantment API
By: Nathan Adams <dinnerbone@dinnerbone.com>
2011-11-27 00:26:31 +00:00
Bukkit/Spigot
6c7412d365 Added new Configuration classes
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-19 20:36:44 +01:00
Bukkit/Spigot
a8e72bdb91 Many javadoc fixes thanks to Celtic Minstrel
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-25 02:56:40 +01:00
Bukkit/Spigot
855f4133b6 Whitespace + general cleanup
By: Erik Broes <erikbroes@grum.nl>
2011-05-14 23:22:54 +02:00
Bukkit/Spigot
e40b7ab7c1 Added dispenser event.
By: sk89q <the.sk89q@gmail.com>
2011-05-08 02:56:38 -07:00
Bukkit/Spigot
894465d3b7 Added setArmorContents as a method for PlayerInventory.
By: Raphfrk <raphfrk@gmail.com>
2011-04-29 00:28:13 +01:00
Bukkit/Spigot
437f5c3f51 Add recipe classes and an addRecipe method in the server interface.
By: Celtic Minstrel <celtic.minstrel.ca@>
2011-04-16 11:34:31 -04:00
Bukkit/Spigot
2556140901 Updated README for line-ending demands, also fixed line-endigs.
By: Erik Broes <erikbroes@grum.nl>
2011-04-25 13:24:32 +02:00
Bukkit/Spigot
485a47aac4 Fixed getData() not returning the correct values.
By: EvilSeph <evilseph@unaligned.org>
2011-04-25 07:17:12 -04:00
Bukkit/Spigot
bb755bb9a2 Added a few null pointer checks and performed minor touchups (tried improving a few equals, clone and hashCode methods).
By: VictorD <victor.danell@gmail.com>
2011-03-05 12:27:51 +01:00
Bukkit/Spigot
817bdc1984 Implemented Inventory.contains with a minimum amount of item required. As per feature request #187
By: Limb <ibelimb@gmail.com>
2011-01-24 07:32:53 +08:00
Bukkit/Spigot
474817bf11 General cleanup (deprecated+whitespace)
By: Erik Broes <erikbroes@grum.nl>
2011-02-02 00:02:08 +01:00
Bukkit/Spigot
6f3347fe1c Renamed ItemStack.set/getDamage to durability, which is now a short. Added Material.getMaxDurability
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-01-31 01:06:53 +00:00
Bukkit/Spigot
8fad7bf631 fixed storage of data field
By: Tahg <tahgtahv@gmail.com>
2011-01-17 17:39:27 -05:00
Bukkit/Spigot
3b1fe7dcf7 Updated Inventory with proper generics, fixed ItemStack to have data as 'Byte' so we can put in nulls when not having data.
By: Erik Broes <erikbroes@grum.nl>
2011-01-17 01:50:33 +01:00
Bukkit/Spigot
c72a7064d8 Added Invenrory.removeItem(ItemStack...)
By: Erik Broes <erikbroes@grum.nl>
2011-01-16 16:10:22 +01:00
Bukkit/Spigot
fdc7e20d71 Added item-in-hand related API.
By: sk89q <the.sk89q@gmail.com>
2011-01-15 19:33:19 -08:00
Bukkit/Spigot
ea2c6665c0 Added setContents() to Inventory.
By: sk89q <the.sk89q@gmail.com>
2011-01-15 14:41:25 -08:00
Bukkit/Spigot
1de48a9184 All inventory stuff in org.bukkit moved to org.bukkit.inventory
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-01-15 21:27:40 +00:00