| Commit message (Collapse) | Author | Age | Lines |
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change is breaking for the new API for 1.5, including the interfaces for
the three new Minecart types and the name of the previously TNT_MINECART
material.
This change also deprecates the two previous specific minecart types located
in the org.bukkit.entity package. This deprecation is not a breaking change
and will still be internally supported.
Each minecart type has new javadoc to be slightly more descriptive. Included
with this are specific references to the interface for each respective
EntityType entry. Another package-info.java file has been included as well.
All specific minecart types extend minecart, each with a more descriptive
name. The naming will also follow the old convention. In addition, the
minecart with no specific designation is now more closely referred to as a
rideable minecart.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
The permission attachment interface provides two methods each for setting
and unsetting permissions. Each one also provides an extra call to the
recalculatePermissions() method on the permissible, which degrades
performance.
This commit removes the duplicate call to recalculate permissions.
|
|
|
|
|
|
|
| |
Permissions are stored as lower case names and referenced as such in all
appropriate methods but removePermission. This changes removePermission
to also convert names to lower case to be consistent with the rest of
the API.
|
| |
|
| |
|
|
|
|
|
|
| |
If the plugin.yml gets loaded but wasn't in the form of a map, the
server would crash. This safely checks to see if it can be cast,
throwing invalid description if it cannot.
|
|
|
|
|
| |
getInteger returns min value on illegal number formats, so we change
behavior to throw an exception when requested.
|
|
|
|
| |
If there is no TravelAgent assigned, it can not be used.
|
|
|
|
|
| |
The player name may not be provided, in which case the command will
fail hard.
|
|
|
|
|
|
| |
Addresses:
BUKKIT-1643, BUKKIT-1868, BUKKIT-1846, BUKKIT-2632, BUKKIT-3196,
BUKKIT-3187, BUKKIT-3198, BUKKIT-3200, BUKKIT-3201 and BUKKIT-3417.
|
|
|
|
|
|
|
|
|
| |
EntityPortalEvent is called when an entity is about to portal to a
new location. This event is cancellable on top of being able to
change the exit location.
EntityPortalExitEvent is called when exiting the portal, allowing
for adjustment of the exit velocity.
|
|
|
|
| |
Negative id values would try to access the array out of bounds and throw an java.lang.ArrayIndexOutOfBoundsException.
|
|
|
|
|
| |
The firework colors were based on the respective wool data values. This
means the colors were in reverse order.
|
|
|
|
|
|
|
|
|
|
|
|
| |
DyeColor used the wool data for getData(), which is very misleading based
on class name. The old method has been deprecated and replaced with
getWoolData() and getDyeData() for the appropriate types of data values.
The MaterialData classes Dye and Wool were updated appropriately,
especially Dye innapropriately using a DyeColor data value compensation.
Unit tests were added for the new methods, as well as the getColor on Dye
and Wool.
|
| |
|
| |
|
|
|
|
|
| |
The default leather color is already used internally in place of null. The
javadocs were updated appropriately to indicate as such.
|
|
|
|
|
| |
The warning message printed with the stack traces on the deprecated
methods mistakingly use the wrong method signature in the description.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
| |
|
|
|
|
| |
This method was inconsistent with previous methods.
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
| |
Included with ItemMeta is a new serializable class Color.
PotionEffects are now serializable.
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
A 'solid' material indicates that it is a block and cannot be passed
through.
|
| |
|
|
|
|
| |
Added a "BlockExpEvent" to hold experience and the handlers for the events
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
| |
The name is misleading, as it can be misconstrued to mean "a sync"
instead of properly understanding it as "an async"
|
| |
|
|
|
|
| |
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).
|
| |
|
|
|
|
|
|
|
| |
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.
|