67 Commits

Author SHA1 Message Date
Mike Primm
daca1977ff [Bleeding] Add getWorldType() and getGenerateStructures() methods to Bukkit and Server. Fixes BUKKIT-855 2012-03-10 18:28:20 -05:00
rmichela
b8444288a9 [Bleeding] Added Help API. Addresses BUKKIT-863 2012-03-01 04:28:21 -05:00
Celtic Minstrel
d839b6d639 Fix javadoc errors/warnings 2012-02-29 21:31:28 -05:00
Celtic Minstrel
8a458ca273 [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).
2012-02-29 15:18:56 -05:00
Celtic Minstrel
308443b15b [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
2012-02-21 04:11:58 -05:00
Erik Broes
049a7cc1d0 Deprecation cleanup. 2012-02-18 13:05:58 -05:00
EvilSeph
ec01da91bb Added configurable animal and monster ticks per spawn setting. 2012-02-10 12:52:41 -05:00
EvilSeph
e93714634b Fixed comment from earlier commit. 2012-01-29 13:10:51 -05:00
EvilSeph
b4713855e2 Added useExactLoginLocation(). Closes BUKKIT-145
useExactLoginLocation() looks for settings.use-exact-login-location within bukkit.yml.

If true, we will bypass Vanilla's behaviour of checking for collisions and moving the player if needed when they login.

If false, we will continue to follow Vanilla's behaviour and move players that 'collide' with objects when they login.
2012-01-29 12:31:59 -05:00
Erik Broes
88c17a7f86 Generic cleaning 2012-01-15 14:37:43 +01:00
Nathan Adams
ce4f4af087 Implemented new Plugin Message API - see http://dinnerbone.com/blog/2012/01/13/minecraft-plugin-channels-messaging/ 2012-01-13 08:53:14 +00:00
Erik Broes
b9fca3c04d Generic cleanup of warnings, whitespace and style. 2011-12-25 16:02:30 +01:00
Erik Broes
e180d89b8f Add Bukkit.getAllowEnd(). Thanks codename-B! 2011-12-09 18:59:04 +01:00
Nathan Adams
d2a7e4701b Added method to retrieve all players on a server, online or offline 2011-12-04 17:56:41 +00:00
Nathan Adams
8cb9352259 Added world.getWorldFolder, server.getWorldContainer 2011-11-25 03:46:47 +00:00
Nathan Adams
fec8835d56 Added getBukkitVersion to Server 2011-10-31 04:02:30 +00:00
EvilSeph
233d314482 Added Difficulty API. 2011-10-03 10:11:46 -04:00
Dinnerbone
4030c98c20 Added Server.getOperators to return all server operators 2011-09-25 03:27:44 +01:00
Dinnerbone
fe4f4c5f58 Many javadoc fixes thanks to Celtic Minstrel 2011-09-25 02:56:40 +01:00
raphfrk
7e5b2c1f30 Adds a method that returns the File representation of the update folder. The previous method just returns the filename and doesn't provide the path 2011-09-25 02:22:36 +01:00
Dinnerbone
637ffd6f11 Deprecated Server.createWorld() methods, use "WorldCreator.name(x).seed(1234).createWorld()" now 2011-09-25 01:04:43 +01:00
Dinnerbone
a07d79e275 Added server.getConsoleSender, blocked access to create a ConsoleCommandSender 2011-09-24 23:11:01 +01:00
Dinnerbone
742847c63f Added GameMode methods to Server and HumanEntity 2011-09-09 01:15:37 +01:00
Dinnerbone
1fd394bc7c Moved all vanilla commands into Bukkit 2011-09-03 15:56:35 +01:00
Dinnerbone
3f37c852c3 Added new methods to Server, Player and OfflinePlayer for banning and unbanning 2011-09-03 02:13:37 +01:00
Dinnerbone
a5ce775b3e Added 3 methods to Server for IP banning and unbanning 2011-09-03 01:59:08 +01:00
Dinnerbone
e1f69e0867 Added the ability to access offline players & more reverse lookup fixes in Permissible. 2011-09-03 00:41:22 +01:00
Dinnerbone
e54b7ba74c Added new Server.broadcast method to broadcast to specific groups of users, including non-players 2011-09-02 22:24:39 +01:00
Dinnerbone
facfd2ff2a Added method to shutdown the server 2011-09-02 20:18:10 +01:00
EvilSeph
6f5747d8b8 Revert "Interface for changing the view distance." 2011-08-15 14:26:42 -04:00
Andrew Ardill
1c4aba8d1f Interface for changing the view distance.
Can be changed server wide, per world and per player.
Only server wide changes are kept between server restarts.

Setting the server or world view distance should fail if the
view distance is not between 3 and 15
2011-08-15 15:11:34 +10:00
EvilSeph
b04d766ab0 Added API for manipulating map items. Thanks SpaceManiac, codename_B, sk89q and dested! 2011-08-12 22:02:15 -04:00
EvilSeph
5f20924e5d Added "getViewDistance()", "getAllowNether()", "hasWhitelist()" and "getAllowFlight()". Thanks robin0van0der0v! 2011-08-07 20:24:43 -04:00
Tahg
5851edd31f uuid changes 2011-07-13 00:15:47 -04:00
Rigby
3f2bbab7e6 Implements World UID. 2011-07-07 13:56:29 -04:00
Dinnerbone
f71d7d0e9b The server config can now specify aliases to multiple (or none) commands, for example "debug: [version, plugin]" to run both version and plugin, or "plugins: []" to disable the plugins command 2011-06-22 19:08:21 +01:00
EvilSeph
39dc703007 Added getOnlineMode() for the Server. Thanks Rigby! 2011-06-19 06:34:06 -04:00
Dinnerbone
686606543e Added set/getSpawnRadius in Server 2011-06-17 04:49:21 +01:00
Dinnerbone
30ee49f209 Server administrators can now specify custom aliases in bukkit.yml which override any aliases set by plugins. 2011-06-17 04:07:17 +01:00
Rigby
4ef2edfc5b Implemented WorldUnloadEvent and unloadWorld(). 2011-06-07 02:51:31 -04:00
Dinnerbone
f784af8f3e Added custom world generator API 2011-06-06 18:37:20 +01:00
Erik Broes
992f1f2bf3 Whitespace + general cleanup 2011-05-15 14:06:02 +02:00
EvilSeph
6d4df77586 Added support for an update on load feature for plugins. Thanks Raphfrk!
Any files placed in the new (optional) update folder are automatically copied into the plugins directory the next time a reload happens. This allows safe updating of the plugin .jar files.
2011-05-05 20:18:12 -04:00
sk89q
25faa992ec Added services manager framework. Services are interfaces that specifies capabilities to be implemented by providers. Example services include economy, <insert example 2>, etc. 2011-05-02 11:31:30 -07:00
Celtic Minstrel
6ed9db18b7 Add recipe classes and an addRecipe method in the server interface. 2011-05-01 23:40:15 -04:00
Dinnerbone
61b8c36233 Implemented ebeans 2011-04-01 16:09:23 +01:00
Dinnerbone
eae2711738 Can now create worlds with specific seeds 2011-03-31 21:46:05 +01:00
sk89q
7d46e6714b Added Server.getServerId() for ID purposes. 2011-03-26 01:40:11 -07:00
stevenh
2a87759443 Added server methods required to support RemoteBukkit:
* getPort()
* getIP()
* getServerName()
* dispatchCommand(...)
2011-03-12 17:57:22 +00:00
Morgan Humes
cb66f868b4 Add World.save() and Server.savePlayers(); 2011-03-02 16:47:43 +01:00