Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Apr 24, 2014

  1. bloodmc

    Refactored BlockPlaceEvent and BlockChangeDelegate. Adds BUKKIT-5558

    23 classes have been removed as they are no longer needed using the new
    capture logic. This should help quite a bit with future MC updates.
    BlockPlaceEvent Refactor
    Before calling Item.interactWith, a recording flag is turned on for
    setTypeAndData to capture a blockstate for each block that attempts to be set.
    When a block place event is cancelled, the recorded blockstate, stack
    size, and metadata will revert back to the captured state. If the event is
    not cancelled, a notification will be sent to clients and block physics
    will be updated.
    BlockChangeDelegate Refactor
    Now that we have the ability to capture blockstates through world, there
    is no need to modify world gen classes with BlockChangeDelegate. Instead
    we will simply capture blocks during world generation in order to "replay"
    all of the captured blockstates to send back to delegates.
    StructureGrowDelegate and BlockSapling.TreeGenerator have also been
    removed as part of this change. BlockSapling and BlockMushroom will
    capture blockstates the same as block placement and revert back any grow
    events if needed.
    authored January 06, 2014 evilmidget38 committed April 23, 2014
  2. Travis Watkins

    Don't limit anvil stack size.

    After the changes in c549609 anvils started incorrectly limiting their
    inputs to single item stacks. Vanilla allows for full size stacks here and
    this is useful for using materials to repair items so now we do too.
    authored April 23, 2014
  3. Travis Watkins

    Handle inventory max stack sizes better. Fixes BUKKIT-5564

    Make sure we check the inventory's max stack size where appropriate and
    don't assume the inventory slot is able to take our entire stack just
    because it is empty. We also ensure the client is updated with the correct
    slot contents and cursor contents in cases where the max stack changes
    result in different behavior than the client expected.
    authored April 23, 2014

Apr 18, 2014

  1. Yariv

    Faux sleepers wake up normally. Fixes BUKKIT-3667

    authored February 25, 2013 amaranth committed April 18, 2014
  2. andrepl

    Make AnvilInventory.getItem() use both containers. Fixes BUKKIT-2788

    The AnvilInventory reports its size as the sum of the ingredient and
    result inventories, but when trying to access the slots, only the
    ingredient inventory is used, leading to an ArrayIndexOutOfBounds exception.
    This change overrides getItem(I) and setItem(I) to use both inventories,
    with the slot number adjusted based on their size.
    authored April 06, 2013 amaranth committed April 18, 2014
  3. andrepl

    Allow plugins to enchant normally unenchantable items. Adds BUKKIT-1849

    It's currently not possible for a plugin to allow enchanting of an
    otherwise un-enchantable item using the enchanting table. This commit
    causes EnchantItemEvent to be called with an empty list of enchantments,
    allowing a plugin to provide it's own set of enchantments when vanilla
    Minecraft would not allow any. It also bypasses the unsafe enchantment check
    since a plugin should be permitted to apply any enchantments they like, and
    vanilla should not generate unsafe enchantments of its own.
    authored May 05, 2013 amaranth committed April 18, 2014
  4. PaulBGD

    Fix setting entity's target. Fixes BUKKIT-1358

    Setting the goal target overrides the entity's will to do something
    else. This makes it so entities like wolves with attack another player
    with .setTarget(), instead of hanging next to their owner.
    authored December 11, 2013 amaranth committed April 18, 2014
  5. bloodmc

    Update client stack when block place is cancelled. Fixes BUKKIT-5284

    Currently, whenever a player places a block in a protected area the
    equipped itemstack size on client is never updated properly since the
    client thinks the block was placed. The reason this happens is because
    ItemStack.matches returns true since the server does not decrement stack
    size if a BlockPlaceEvent is cancelled. To correct this on cancel we set
    the flag to always update the client regardless of matching.
    authored January 06, 2014 amaranth committed April 18, 2014
  6. bloodmc

    Update chest animation after cancelling open event. Fixes BUKKIT-1440

    Currently if a plugin cancels an InventoryOpenEvent for vanilla chests,
    the chest animation for clients is stuck in the open state since
    IInventory's closeContainer method is never called. To fix the issue,
    closeContainer is called before exiting the display GUI method.
    authored January 06, 2014 amaranth committed April 18, 2014
  7. Devin Ryan

    Catch exceptions when abandoning conversions. Fixes BUKKIT-5436

    If a conversation is abandoned due to a player disconnecting and an
    exception is thrown in a ConversationAbandonedListener, the server will
    crash. This commit prevents the exception from propagating further up
    the stack and instead just logs the error.
    authored February 22, 2014 amaranth committed April 18, 2014
  8. desht

    Check that item in hand is not null after book event. Fixes BUKKIT-5443

    authored February 27, 2014 amaranth committed April 18, 2014
  9. Brokkonaut

    Call event when boat is destroyed by falling. Fixes BUKKIT-5500

    authored March 29, 2014 amaranth committed April 18, 2014
  10. Brokkonaut

    Removing broken chunk caching from World. Fixes BUKKIT-5425

    Chunk caching in the World class does not know about outdated cache values.
    This caused various problems when accessing previously unloaded chunks. The
    caching also did not improve the performance so it is removed.
    Synchronization is also not necessary, because all accesses to getChunkAt
    may only come from the main thread.
    authored February 20, 2014 amaranth committed April 18, 2014
  11. GJ

    [Bleeding] Call EntityTargetEvent in many new places.

    Adds BUKKIT-5388, BUKKIT-5387, BUKKIT-5386, BUKKIT-5483, BUKKIT-5484.
    Fixes BUKKIT-5389.
    authored February 05, 2014 amaranth committed April 18, 2014
  12. GJ

    Add files from mc-dev for diff visibility.

    authored March 24, 2014 amaranth committed April 18, 2014
  13. GJ

    [Bleeding] Call BlockRedstoneEvent for all rails. Adds BUKKIT-4080

    Previously, Detector Rails were the only rails that properly called
    BlockRedstoneEvent when they changed from powered to unpowered. This commit
    adds BlockRedstoneEvent calls for both Powered Rails and Activator Rails.
    authored January 26, 2014 amaranth committed April 18, 2014
  14. GJ

    Add from mc-dev for diff visibility.

    authored January 25, 2014 amaranth committed April 18, 2014
  15. GJ

    [Bleeding] Don't allow null display names. Fixes BUKKIT-5254

    Currently, plugins can set a player's display name to null, which could
    cause issues for other calls to getDisplayName that aren't expecting a null
    value. This changes setDisplayName to follow the same logic as
    setPlayerListName, which sets the player's name back to their unmodified
    "vanilla" name if it receives a null value as a parameter.
    authored January 31, 2014 amaranth committed April 18, 2014
  16. GJ

    [Bleeding] Ice in the nether fades to air. Fixes BUKKIT-5373

    Previously, whenever BlockFadeEvent was called for ice melting, it returned
    the new BlockState with a type of Material.STATIONARY_WATER. However, in
    the Nether, ice melting does not form water, but is simply replaced by air
    instead. This changes the event to use the proper BlockState based on
    whether the block is located in the Nether or not.
    authored February 06, 2014 amaranth committed April 18, 2014
  17. GJ

    [Bleeding] Fix some inventories not using maxStack. Fixes BUKKIT-2883

    CraftBukkit adds the ability to specify the maxStack size for most
    inventories. However, some inventories were not overriding the getMaxStack
    method properly, and so the functionality was unavailable. This fixes the
    maxStack setting for Anvils, Minecarts, PlayerInventory, and Hoppers.
    authored January 23, 2014 amaranth committed April 18, 2014
  18. GJ

    [Bleeding] Return correct player SlotType. Fixes BUKKIT-3188

    Previously, the SlotType for the last 4 slots in a player's inventory
    returned QUICKBAR when it should have returned SlotType.CONTAINER. This
    updates the code for determining slot type to return the proper value.
    authored February 10, 2014 amaranth committed April 18, 2014
  19. GJ

    [Bleeding] Return correct furnace SlotType. Fixes BUKKIT-5400

    Previously, the SlotType for the 0 slot in a furnace returned CONTAINER,
    when it should have returned SlotType.CRAFTING. This updates the code for
    determining slot type to return the proper value.
    authored February 10, 2014 amaranth committed April 18, 2014
  20. GJ

    [Bleeding] Ensure skeletons spawn with equipment. Fixes BUKKIT-2836

    Previously, when a skeleton was spawned via the spawn(...) function, the
    resulting skeleton had no equipped bow and therefore could not properly
    attack. This fix gives all skeletons the proper equipment and ensures that
    they are able to attack.
    authored February 11, 2014 amaranth committed April 18, 2014
  21. GJ

    [Bleeding] Add all blocks needed to PortalCreateEvent. Fixes BUKKIT-5464

    Due to changes in how portals were created in Minecraft 1.7, the code that
    was previously used to find the blocks involved in the PortalCreateEvent
    no longer detected all blocks. Additionally, in the process of updating to
    1.7.2, a missed diff resulted in some blocks that were found not being
    properly added to the blocklist. This commit corrects that missed diff,
    while also adding a check to ensure that the top and bottom of the portal
    frame are included in the blocklist.
    authored March 20, 2014 amaranth committed April 18, 2014
  22. GJ

    [Bleeding] Add many missing SpawnReasons.

    Adds BUKKIT-5370, BUKKIT-5377, BUKKIT-5378, BUKKIT-5379, BUKKIT-5380,
    BUKKIT-5381, BUKKIT-5382. Adds reasons for zombies infecting villagers and
    zombie villagers being cured. Readds reason for a skeleton being spawned as
    a spider jockey. Adds reason to distinguish ocelot babies from the parent
    they spawned with. Adds reasons for chunk generation causing the ender
    dragon, villagers, and witches to spawn. And finally, adds a reason for
    spawning a chicken mount for a baby zombie.
    authored February 05, 2014 amaranth committed April 18, 2014
  23. GJ

    Add files from mc-dev for diff visibility.

    authored February 07, 2014 amaranth committed April 18, 2014
  24. GJ

    [Bleeding] Add many missing event calls.

    authored March 27, 2014 amaranth committed April 18, 2014
  25. GJ

    Add from mc-dev for diff visibility.

    authored March 27, 2014 amaranth committed April 18, 2014
  26. GJ

    [Bleeding] Add missing HangingBreakEvent. Fixes BUKKIT-3943

    The old PaintingBreakByEntityEvent was deprecated and replaced by
    HangingBreakByEntityEvent. However, in the case of being struck by
    lightning, only the deprecated event was being called. This fixes that so
    that both the new and old events are called appropriately.
    authored January 24, 2014 amaranth committed April 18, 2014

Apr 17, 2014

  1. Travis Watkins

    Handle profiles in SkullMeta, they don't store a string anymore.

    authored April 17, 2014
  2. evilmidget38

    Update CraftBukkit to Minecraft 1.7.9

    authored April 15, 2014 amaranth committed April 17, 2014
  3. Travis Watkins

    Handle expired bans correctly. Fixes BUKKIT-5541

    authored April 17, 2014
  4. Travis Watkins

    Make bans pretend to use names like before 1.7.8.

    Bans require a name and UUID but our API only allows for a single string
    identifier for a ban entry. Until this is sorted out go back to the old
    name based setup since we can always get a UUID given a name.
    authored April 17, 2014
  5. Travis Watkins

    Make skulls pretend to only use names like before 1.7.8.

    Any new API here needs more thought, skulls require a name but OfflinePlayer
    is not guaranteed to have one. There is a Mojang approved way to get a
    complete profile from a name but not from a UUID so for now just pretend
    this still only uses names.
    authored April 17, 2014
  6. Travis Watkins

    Fix getting white list, ban list, and op list. Fixes BUKKIT-5538

    The getEntries methods on these return player names instead of UUIDs.
    As we need the UUIDs for our API we add a getValues method to get at
    the data we need. To further ensure we get the most data possible we
    also add a way to get at the stored GameProfile to ensure we always
    have both the UUID and the name from the list.
    authored April 17, 2014
Something went wrong with that request. Please try again.