Commit Graph

12 Commits

Author SHA1 Message Date
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
aaab1cba23 Generic cleanup of warnings, whitespace and style.
By: Erik Broes <erikbroes@grum.nl>
2011-12-25 16:02:30 +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
a3154f3ffc Added GameMode methods to Server and HumanEntity
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-09 01:15:37 +01:00
Bukkit/Spigot
67a52cca79 Added new permission system
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-07-17 17:17:47 +01:00
Bukkit/Spigot
855f4133b6 Whitespace + general cleanup
By: Erik Broes <erikbroes@grum.nl>
2011-05-14 23:22:54 +02:00
Bukkit/Spigot
b9681b5415 AnimalTamer and Tameable interfaces, and corresponding features.
Documentation improvements.

By: Andrew Ardill <andrew.ardill@gmail.com>
2011-05-03 00:36:02 +10:00
Bukkit/Spigot
f31d7de587 Added bed events and methods.
By: sk89q <the.sk89q@gmail.com>
2011-04-07 11:26:33 -07:00
Bukkit/Spigot
474817bf11 General cleanup (deprecated+whitespace)
By: Erik Broes <erikbroes@grum.nl>
2011-02-02 00:02:08 +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
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
Bukkit/Spigot
e2fd2dfd00 All entity stuff in org.bukkit moved to org.bukkit.entity
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-01-15 21:20:59 +00:00