Commit Graph

1338 Commits

Author SHA1 Message Date
Bukkit/Spigot
df5229b286 Add experience methods for PlayerFishEvent. Adds BUKKIT-3348
By: feildmaster <admin@feildmaster.com>
2013-01-01 23:41:41 -06:00
Bukkit/Spigot
c87a38be5f Updated version to 1.4.6-R0.4-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-12-31 01:13:57 -05:00
Bukkit/Spigot
bd6751c01a Updated version to 1.4.6-R0.3 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-12-31 01:00:11 -05:00
Bukkit/Spigot
b55fa70367 Updated version to 1.4.6-R0.3-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-12-29 22:27:35 -05:00
Bukkit/Spigot
fe589403fa Updated version to 1.4.6-R0.2 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-12-29 22:19:08 -05:00
Bukkit/Spigot
105539f28c Don't allow nulls in PlayerRespawnEvent. Fixes BUKKIT-2571
By: feildmaster <admin@feildmaster.com>
2012-12-29 18:40:44 -06:00
Bukkit/Spigot
ba8db742e4 Add method to get defult leather color. Adds BUKKIT-3203
The default leather color is already used internally in place of null. The
javadocs were updated appropriately to indicate as such.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-27 10:45:56 -06:00
Bukkit/Spigot
ac2908b781 Use correct warning in JavaPluginLoader. Fixes BUKKIT-3315
The warning message printed with the stack traces on the deprecated
methods mistakingly use the wrong method signature in the description.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-27 10:36:10 -06:00
Bukkit/Spigot
6f3f4516d6 Fix menus for relative pathing.
This fixes the Maven generated site so the paths are relative. This is
required so that multiple generations of the javadocs can be hosted at once,
and so no cross-linking occurs.

By: Luke GB <git@lukegb.com>
2012-12-23 20:44:02 +00:00
Bukkit/Spigot
cf6e899830 Add methods to set and reset max health. Adds BUKKIT-266
By: feildmaster <admin@feildmaster.com>
2012-12-23 03:28:01 -06:00
Bukkit/Spigot
ea74fb0bf1 Remove duplicate message for console. Fixes BUKKIT-3267
By: Travis Watkins <amaranth@ubuntu.com>
2012-12-23 02:33:25 -06:00
Bukkit/Spigot
98f929d421 Updated version to 1.4.6-R0.2-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-12-22 01:24:01 -05:00
Bukkit/Spigot
f075f7214c Updated version to 1.4.6-R0.1 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-12-22 01:12:03 -05:00
Bukkit/Spigot
673aa7144b Add firework api to get and set Firework ItemMeta
By: feildmaster <admin@feildmaster.com>
2012-12-21 23:55:02 -06:00
Bukkit/Spigot
7053beb776 Add Skull BlockState and Type enum. Adds BUKKIT-3258
By: meiskam <meiskam@gmail.com>
2012-12-20 17:46:21 -05:00
Bukkit/Spigot
db2058e2d0 Add enchantment storage meta. Adds BUKKIT-3237
Books can 'store' enchantments that can be applied to other items later.
These enchantments exist seperately of enchantments that actually effect the
item, and are as stated 'stored' in the book instead of the book being
enchanted. The meta is generically named as the concept could be applied to
other item types later, such as a enchantment scroll.

All of the methods mimic those in the base meta, but instead specify
'stored' in each method name.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-21 07:28:33 -06:00
Bukkit/Spigot
817fc4e584 Add FireworkEffect and respective item metas. Adds BUKKIT-3236
FireworkEffect is an immutable class that requires the builder pattern
to construct, to reduce ambiguity and help make code uses more readable.

FireworkMeta contains a list of effects, as well as a flight height.

FireworkEffectMeta contains a single effect for charges.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-21 09:06:56 -06:00
Bukkit/Spigot
5ec9be7042 Add API to allow plugins to request players switch to a texture pack. Adds BUKKIT-2579
The setTexturePack method causes the player's client to
download and switch to a texture pack specified by a URL.

Note: Players can disable server textures on their client, in which
case this API would not affect them.

By: Wojciech Stryjewski <thvortex@gmail.com>
2012-10-09 16:12:24 -05:00
Bukkit/Spigot
ed7ae6c6d9 Update Bukkit to Minecraft 1.4.6
By: feildmaster <admin@feildmaster.com>
2012-12-20 08:38:59 -06:00
Bukkit/Spigot
e3062d10cb Updated version to 1.4.5-R1.1-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-12-19 06:15:29 -05:00
Bukkit/Spigot
9ed1925110 Updated version to 1.4.5-R1.0 in pom.xml for RB.
By: EvilSeph <evilseph@gmail.com>
2012-12-19 06:07:57 -05:00
Bukkit/Spigot
9711df6414 Apply commandBlockOutput to broadcastMessage. Addresses BUKKIT-3117
By: feildmaster <admin@feildmaster.com>
2012-12-18 04:47:56 -06:00
Bukkit/Spigot
a5f7cfdd0a Refactor get/setChestPlate to Chestplate. Addresses BUKKIT-3189
This method was inconsistent with previous methods.

By: feildmaster <admin@feildmaster.com>
2012-12-18 03:37:37 -06:00
Bukkit/Spigot
87f538df31 Fix MaterialData directions being incorrect. Fixes BUKKIT-3160
Prior to 49690f9, BlockFaces were mostly correct in their respective
MaterialData classes. However, a lot of things were not updated since
implementation and broke without being addressed.

This fixes any discrepancies with Block data.

By: feildmaster <admin@feildmaster.com>
2012-12-15 23:25:19 -06:00
Bukkit/Spigot
fb2cf30fbe Deprecate methods in JavaPluginLoader and PluginClassLoader
These methods are unnecessarily exposed. They are specific to a type of
implementation for the class loaders, and should have no external use.
Because these methods are exposed, it limits the versatility to change
how the internal class loading system works, including an inherent class
loader leak for some situations.

They are now replaced with internal, package-private methods. The public
facing methods will print a stack trace the first time one is activated.

Extending the classes also produces a stack trace, to indicate that
extension is not actively supported.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-18 00:15:40 -06:00
Bukkit/Spigot
982f31e75c Clarify functionality in Inventory. Fixes BUKKIT-3097
Mainly javadoc changes to be specific in functionality and outcomes. This is
mixed with specifying that null Material should throw IllegalArgumentException
instead of the previous undefined NullPointerException.

Included is a clarification on how contains(ItemStack, int) works, and a new
method containsAtLeast(ItemStack, int) for counting the number of a specific
item.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-17 16:09:56 -06:00
Bukkit/Spigot
ac66053f35 Add ItemMeta factory and interfaces. This adds BUKKIT-15
Included with ItemMeta is a new serializable class Color.

PotionEffects are now serializable.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-17 01:16:28 -06:00
Bukkit/Spigot
2bf21e7e18 Add Material methods. Adds BUKKIT-3161, BUKKIT-3162, BUKKIT-3163,
BUKKIT-3164

This adds an isFlammable method, to indicate if a block can catch fire.

This adds an isTransparent method, to check if light can pass through.

This adds an isOccluding method, to check if it fully blocks vision.

This adds an isBurnable method, to indicate if a block can burn away.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-14 02:03:05 -06:00
Bukkit/Spigot
e5f57b28c9 Add EntityEquipment API. Adds BUKKIT-3103
By: feildmaster <admin@feildmaster.com>
2012-12-09 00:52:20 -06:00
Bukkit/Spigot
9e827c037c Bump JUnit version
By: Wesley Wolfe <weswolf@aol.com>
2012-12-09 18:14:54 -06:00
Bukkit/Spigot
d50460fb2d Add isSolid() to Material. Adds BUKKIT-3131
A 'solid' material indicates that it is a block and cannot be passed
through.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-09 15:13:25 -06:00
Bukkit/Spigot
4cc9a1bec4 An executor set to null will now use the plugin. Fixes BUKKIT-3127
By: feildmaster <admin@feildmaster.com>
2012-12-09 00:19:55 -06:00
Bukkit/Spigot
7536c357fc Add FurnaceExtractEvent. Addresses BUKKIT-2114
Added a "BlockExpEvent" to hold experience and the handlers for the events

By: feildmaster <admin@feildmaster.com>
2012-12-07 19:12:32 -06:00
Bukkit/Spigot
c87e48bb00 Provide a faster way to get a location. Adds BUKKIT-3120
Currently when a plugin wants to get the location of something it calls
getLocation() which returns a new Location object. In some scenarios this
can cause enough object creation/destruction churn to be a significant
overhead. For this cases we add a method that updates a provided Location
object so there is no object creation done. This allows well written code
to work on several locations with only a single Location object getting
created.

Providing a more efficient way to set a location was also looked at but
the current solution is the fastest we can provide. You are not required
to create a new Location object every time you want to set something's
location so, with proper design, you can set locations with only a single
Location object being created.

By: Travis Watkins <amaranth@ubuntu.com>
2012-12-07 19:48:19 -06:00
Bukkit/Spigot
3cf005da64 Add API to get and set collar colors of wolves
By: feildmaster <admin@feildmaster.com>
2012-12-05 18:03:24 -06:00
Bukkit/Spigot
eaf21d744e Deprecate the scheduleAsync methods.
The name is misleading, as it can be misconstrued to mean "a sync"
instead of properly understanding it as "an async"

By: Wesley Wolfe <weswolf@aol.com>
2012-12-05 13:18:47 -06:00
Bukkit/Spigot
fbc20e59c1 Add getShutdownMessage() and stop command arguments. Adds BUKKIT-3031
By: feildmaster <admin@feildmaster.com>
2012-12-05 05:55:26 -06:00
Bukkit/Spigot
f545b84e46 [BREAKING] EntityChangeBlockEvent can be non-living. Adds BUKKIT-3078
Non-living entities can change blocks, specifically falling blocks. This change is a small source break, but mainly a byte-code break (requires plugins to recompile).

By: Wesley Wolfe <weswolf@aol.com>
2012-11-30 12:08:30 -06:00
Bukkit/Spigot
89d79e64db Add API for controlling mob despawn away from players. Adds BUKKIT-2986
By: Travis Watkins <amaranth@ubuntu.com>
2012-12-04 19:16:33 -06:00
Bukkit/Spigot
711f3f1007 [BREAKING] Update BlockFace directions. Fixes BUKKIT-1567, BUKKIT-3069
If you use BlockFace in any way, to compensate the directionals being incorrect, you can still have backwards compatibility if you add in the handling in your plugin:
boolean legacyBlockFace = BlockFace.NORTH().getModX() == -1; (and then handle it accordingly)

If you didn't special case your directions to fix what's being fixed here... Hurray! Your plugin should now work.

By: feildmaster <admin@feildmaster.com>
2012-12-01 00:21:22 -06:00
Bukkit/Spigot
9e0336d03c Add data values for entity change block event. Adds BUKKIT-3077, BUKKIT-3076
By: Wesley Wolfe <weswolf@aol.com>
2012-11-30 12:07:10 -06:00
Bukkit/Spigot
81cc73ac21 Add API for creating explosions without damaging blocks. Fixes BUKKIT-3061
By: feildmaster <admin@feildmaster.com>
2012-11-27 18:31:12 -06:00
Bukkit/Spigot
09c601dfa5 Make RECORD_12 a record. Fixes BUKKIT-3023
Record 12 was missed when added to the Material enum.

By: Wesley Wolfe <weswolf@aol.com>
2012-11-24 02:26:07 -06:00
Bukkit/Spigot
d2e8c21941 Cache material data constructors. Fixes BUKKIT-2980
Reobtaining a constructor is not a trivial operation, this change makes the Material enum store the respective constructors for each MaterialData.

Additionally 'fixed' the material tests to use proper generics.

By: Darth Android <darthandroid@gmail.com>
2012-11-17 11:13:58 -06:00
Bukkit/Spigot
f70c5fcd4c Updated version to 1.4.5-R0.3-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-11-20 20:34:06 -05:00
Bukkit/Spigot
69dc9e44d6 Updated version to 1.4.5-R0.2 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-11-20 20:06:15 -05:00
Bukkit/Spigot
6cebaa530c Add DamageCause for FallingBlocks. Adds BUKKIT-2781
By: feildmaster <admin@feildmaster.com>
2012-11-20 16:54:43 -06:00
Bukkit/Spigot
4e75dc1efc Updated version to 1.4.5-R0.2-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-11-18 22:50:48 -05:00
Bukkit/Spigot
907a169d89 Updated version to 1.4.5-R0.1 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-11-18 22:39:58 -05:00
Bukkit/Spigot
9ca4736334 Add ability to pass 'max' as 'level' for EnchantCommand.
By: EvilSeph <evilseph@gmail.com>
2012-11-18 17:45:00 -05:00
Bukkit/Spigot
80c0396bdb Update sounds for Minecraft 1.4.2 changes. Fixes BUKKIT-2849
By: Karl Fritsche <github@attrib.org>
2012-11-05 22:10:09 +01:00
Bukkit/Spigot
e788e4799e Add API for getting and setting Skeleton and Zombie types. Fixes BUKKIT-2818
By: James Clarke <jamesrtclarke@me.com>
2012-11-05 18:09:38 +00:00
Bukkit/Spigot
0a9f6c2cc2 Add default EnchantCommand. Tim, The Enchanter - I AM DEATH! Adds BUKKIT-2961
By: EvilSeph <evilseph@gmail.com>
2012-11-16 16:11:30 -06:00
Bukkit/Spigot
cf99b7e756 Essential core commands shouldn't be overriden. Fixes BUKKIT-1546
By: EvilSeph <evilseph@gmail.com>
2012-11-16 23:47:07 -05:00
Bukkit/Spigot
e80af045dc Update Bukkit for Minecraft 1.4.5 changes.
By: Travis Watkins <amaranth@ubuntu.com>
2012-11-16 10:12:54 -06:00
Bukkit/Spigot
3db888ac01 Add aliases to TellCommand to bring us in line with Vanilla behaviour.
By: EvilSeph <evilseph@gmail.com>
2012-11-15 22:28:46 -05:00
Bukkit/Spigot
9267baab20 Remove unnecessary Overrides in Default commands.
By: EvilSeph <evilseph@gmail.com>
2012-11-15 23:03:03 -05:00
Bukkit/Spigot
bf632e042c Made KillCommand set the player health to 0 to allow it to work in Creative. Fixes BUKKIT-2949
By: EvilSeph <evilseph@gmail.com>
2012-11-15 21:08:19 -05:00
Bukkit/Spigot
8cb39a7daf Added proper feedback to default commands.
By: EvilSeph <evilseph@gmail.com>
2012-11-15 22:52:04 -05:00
Bukkit/Spigot
49c3dee8f8 Make some JavaPlugin methods final. Fixes BUKKIT-2916
These methods were never intended to be overwritten, and bukkit relies
on their internal functionality. Additionally, the methods were inlined
in JavaPlugin, but the finality maintains intention.

By: Wesley Wolfe <weswolf@aol.com>
2012-11-13 15:38:46 -06:00
Bukkit/Spigot
b036c9d3e5 Update Bukkit for Minecraft 1.4.4 changes.
By: Travis Watkins <amaranth@ubuntu.com>
2012-11-06 06:04:18 -06:00
Bukkit/Spigot
951daac232 Updated version to 1.4.2-R0.3-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-11-03 01:08:00 -04:00
Bukkit/Spigot
0eabf7747e Updated version to 1.4.2-R0.2 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-11-03 00:50:26 -04:00
Bukkit/Spigot
7d31c12b25 Add yaw and rotation to default TeleportCommand. Fixes BUKKIT-2774
By: EvilSeph <evilseph@gmail.com>
2012-10-31 21:26:43 -04:00
Bukkit/Spigot
c5eaa31741 Updated version to 1.4.2-R0.2-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-10-31 20:51:51 -04:00
Bukkit/Spigot
4f34a1c29d Updated version to 1.4.2-R0.1 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2012-10-31 15:59:04 -04:00
Bukkit/Spigot
5461da9470 Add EXPLOSION and DEFAULT RemoveCauses to the HangingBreakEvent.
EXPLOSION is used when a hanging entity is removed by an explosion.
DEFAULT is used when a hanging entity is removed by an uncategorised
cause.

By: EvilSeph <evilseph@gmail.com>
2012-10-31 13:53:24 -04:00
Bukkit/Spigot
f3262382e5 Add inventory types for new containers. Fixes BUKKIT-2741
By: Travis Watkins <amaranth@ubuntu.com>
2012-10-31 12:14:04 -05:00
Bukkit/Spigot
e4567e091b Add API for ambient mob spawn limit. Adds BUKKIT-2765
By: Travis Watkins <amaranth@ubuntu.com>
2012-10-31 11:18:06 -05:00
Bukkit/Spigot
38f6b24c1c Add BlockCommandSender for Command block
By: Travis Watkins <amaranth@ubuntu.com>
2012-10-31 06:35:57 -05:00
Bukkit/Spigot
517f115fc0 Fixed typo in PotionType.
By: EvilSeph <evilseph@gmail.com>
2012-10-31 11:40:11 -04:00
Bukkit/Spigot
cc865ea15c Replace 'Magic Numbers' in commands.
These numbers are mirrored in vanilla code as the coordinate limits for
a world. Replaced usages to a static final member for code readability.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-31 04:16:50 -05:00
Bukkit/Spigot
80c98cb5d4 Provide the 1.4.2 potions. Adds BUKKIT-2727.
Two potion types were missing from the 1.4.2 update. Invisibility and
night vision are now in the potion type enum.

Fixes an erroneous use of PotionEffectType.SPEED where it should have
been WEAKNESS.

Removed deprecation for the PotionEffectType relating to certain effects
that are now active in 1.4.2.

Fixes BUKKIT-2677, BUKKIT-2758.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-31 04:12:53 -05:00
Bukkit/Spigot
4b23d98b72 Add default GameRule command. Fixes BUKKIT-2671
By: feildmaster <admin@feildmaster.com>
2012-10-30 21:21:21 -05:00
Bukkit/Spigot
4ee1a130c5 Add API for managing and using GameRules. Adds BUKKIT-2757
By: feildmaster <admin@feildmaster.com>
2012-10-30 21:21:21 -05:00
Bukkit/Spigot
086b2ecbdc Add API for ItemFrames. Adds BUKKIT-2668
As well as adding methods for ItemFrames, this moves some methods
previously contained in Painting to Hanging, as they are shared by both
classes.

An enum was added that represents rotations, similar to a clock-face.
This is needed as a contrast to cardinal direction based rotations.

By: h31ix <effectsdude@gmail.com>
2012-10-31 01:01:45 -04:00
Bukkit/Spigot
397b53dad5 [Bleeding] Add new events for Hanging entities, deprecate old Painting
events. Adds BUKKIT-2754

By: h31ix <effectsdude@gmail.com>
2012-10-31 00:05:42 -04:00
Bukkit/Spigot
a51de65933 Add default Clear command. Partially fixes BUKKIT-2671
By: EvilSeph <evilseph@gmail.com>
2012-10-30 04:53:42 -04:00
Bukkit/Spigot
3276998ebe Add clear inventory API to PlayerInventory with a successful count return. Adds BUKKIT-2745
By: EvilSeph <evilseph@gmail.com>
2012-10-30 04:52:43 -04:00
Bukkit/Spigot
c85072fc41 Revert "Clear" commit, was not meant to be pushed.
This reverts commit bdf5d326f5910993c1f7e48b4409f7b0d53c1926.

By: EvilSeph <evilseph@gmail.com>
2012-10-30 02:50:38 -04:00
Bukkit/Spigot
e20c3d1e55 [Bleeding] Check for player validity in spawnpoint command. Fixes BUKKIT-2742
By: mbax <github@phozop.net>
2012-10-30 01:58:05 -04:00
Bukkit/Spigot
5a1309d875 Clear
By: EvilSeph <evilseph@gmail.com>
2012-10-30 01:18:01 -04:00
Bukkit/Spigot
20f7f0c725 Update ExpCommand with levels support. Fixes BUKKIT-2683 and partially fixes BUKKIT-2671
By: EvilSeph <evilseph@gmail.com>
2012-10-29 05:19:20 -04:00
Bukkit/Spigot
bc6c8cb8c0 Revert FIREBALL being renamed to LARGE_FIREBALL
By: feildmaster <admin@feildmaster.com>
2012-10-29 19:59:53 -05:00
Bukkit/Spigot
4c6c68d5fc Add default SpawnpointCommand. Partially fixes BUKKIT-2671
By: EvilSeph <evilseph@gmail.com>
2012-10-29 03:40:09 -04:00
Bukkit/Spigot
78183f63cf Expose setBedSpawnLocation with force option. Adds BUKKIT-2709
By: EvilSeph <evilseph@gmail.com>
2012-10-29 03:47:51 -04:00
Bukkit/Spigot
1b0c7f2c90 Add default WeatherCommand. Partially fixes BUKKIT-2671
By: EvilSeph <evilseph@gmail.com>
2012-10-29 02:39:05 -04:00
Bukkit/Spigot
65c2b7e7db Remove invalid tab completions from DefaultGameModeCommand as player names are not an accepted parameter.
By: EvilSeph <evilseph@gmail.com>
2012-10-29 02:12:07 -04:00
Bukkit/Spigot
b75d402b61 Add default DifficultyCommand. Partially fixes BUKKIT-2671
By: EvilSeph <evilseph@gmail.com>
2012-10-29 01:53:31 -04:00
Bukkit/Spigot
1321866724 Add isHardcore API to check if the server is in hardcore mode or not. Adds BUKKIT-2707
By: EvilSeph <evilseph@gmail.com>
2012-10-29 01:45:08 -04:00
Bukkit/Spigot
c73a3c02f0 Update Bukkit for Minecraft 1.4(.2) changes.
By: Travis Watkins <amaranth@ubuntu.com>
2012-10-22 03:30:04 -05:00
Bukkit/Spigot
93362adea2 Updated version to 1.3.2-R3.0 in pom.xml for RB.
By: EvilSeph <evilseph@gmail.com>
2012-10-27 21:10:43 -04:00
Bukkit/Spigot
c2bebbcdbb Override toString() method in Command
Overriding the toString() method provides more human-readable feedback
when a problem occurs, including the version of the plugin if
applicable.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-19 15:46:28 -05:00
Bukkit/Spigot
b8e592c987 Updated version to 1.3.2-R2.1-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2012-10-17 07:36:30 -04:00
Bukkit/Spigot
8304b0cccc Updated version to 1.3.2-R2.0 in pom.xml for RB.
By: EvilSeph <evilseph@gmail.com>
2012-10-17 07:30:01 -04:00
Bukkit/Spigot
8848de9887 Add a tab completion API for chat messages. Adds BUKKIT-2607
This implementation provides access to a (mutable) list and the base
message. Also provided is a convenience method for getting the last
'token' in the provided string.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-17 04:33:02 -05:00
Bukkit/Spigot
14c7734fb1 Add tab-completion API. Fixes BUKKIT-2181. Adds BUKKIT-2602
CommandMap contains a method that will auto-complete commands
appropriately. Before the first space, it searches for commands of which
the sender has permission. After the first space, it delegates to the
individual command.

Vanilla commands contain implementations to mimic vanilla
implementation. Exception would be give, that allows for name matching;
a feature we already allowed as part of the command is now supported for
auto-complete as well.

Plugin commands can get a tab completer set to delegate the completion
for. If no tab completer is set, it can check the executor to see if it
implements the tab completion interface. It will also attempt to chain
calls if null gets returned from these interfaces. Plugins also
implement the new TabCompleter interface, to add ease-of-use for plugin
developers, similar to the onCommand() method.

The default command implementation simply searches for player names.

To help facilitate command completion, a utility class was added with
two functions. One checks two strings, to see if the specified string
starts with (ignoring case) the second. The other method uses the first
to selectively copy elements from one collection to another.

By: Score_Under <seejay.11@gmail.com>
2012-10-09 14:54:12 -05:00
Bukkit/Spigot
74f83f3098 Deprecate PlayerPreLoginEvent. Addresses BUKKIT-2600
PlayerPreLoginEvent was originally implemented with the intention that
putting synchronized blocks on the plugin manager made it thread safe.
Unintentionally, this causes the event to be executed when a plugin
would otherwise expect no events to be firing. It is now deprecated.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-14 03:36:08 -05:00
Bukkit/Spigot
29abc65308 Add simpler API for using the scheduler. Adds BUKKIT-836
The new methods return the actual task that gets created from the
scheduler. They are also named such that auto-complete puts the
asynchronous methods after the normal ones. These two additions are
simply semantic.

Tasks now have a method to cancel themselves using their task id. This
is provided as a convenience.

A new class called SimpleRunnable was added. It is an abstract Runnable
such that anonymous classes may subclass it. It provides six convenience
methods for scheduling as appropriate. It also provides a cancel method
for convenience. The functionality of SimpleRunnable only stores an
integer representing the task id. A SimpleRunnable can only be scheduled
once; attempting to reschedule results in IllegalStateException.

By: Wesley Wolfe <weswolf@aol.com>
2012-10-06 18:38:00 -05:00
Bukkit/Spigot
e747728b35 Clarify some of the verbose in SimplePluginManager.
When an exception occurs, the version of the plugin is not included.
Having this information would be beneficial to plugin authors performing
debug.

The list of authors for NagAuthorException verbose (although unused)
would be more appropriate to simply include all authors, as opposed to
the first appearing.

By: Wesley Wolfe <weswolf@aol.com>
2012-09-30 03:35:06 -05:00