summaryrefslogtreecommitdiffstats
path: root/src/main/java
Commit message (Collapse)AuthorAgeLines
...
* Removing broken chunk caching from World. Fixes BUKKIT-5425Brokkonaut2014-04-18-16/+1
| | | | | | | | 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.
* [Bleeding] Call EntityTargetEvent in many new places.GJ2014-04-18-11/+48
| | | | | Adds BUKKIT-5388, BUKKIT-5387, BUKKIT-5386, BUKKIT-5483, BUKKIT-5484. Fixes BUKKIT-5389.
* Add files from mc-dev for diff visibility.GJ2014-04-18-0/+99
|
* [Bleeding] Call BlockRedstoneEvent for all rails. Adds BUKKIT-4080GJ2014-04-18-1/+15
| | | | | | 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.
* Add BlockPoweredRail.java from mc-dev for diff visibility.GJ2014-04-18-0/+132
|
* [Bleeding] Don't allow null display names. Fixes BUKKIT-5254GJ2014-04-18-1/+1
| | | | | | | | 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.
* [Bleeding] Ice in the nether fades to air. Fixes BUKKIT-5373GJ2014-04-18-1/+1
| | | | | | | | 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.
* [Bleeding] Fix some inventories not using maxStack. Fixes BUKKIT-2883GJ2014-04-18-3/+9
| | | | | | | 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.
* [Bleeding] Return correct player SlotType. Fixes BUKKIT-3188GJ2014-04-18-2/+6
| | | | | | 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.
* [Bleeding] Return correct furnace SlotType. Fixes BUKKIT-5400GJ2014-04-18-0/+2
| | | | | | 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.
* [Bleeding] Ensure skeletons spawn with equipment. Fixes BUKKIT-2836GJ2014-04-18-0/+4
| | | | | | | 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.
* [Bleeding] Add all blocks needed to PortalCreateEvent. Fixes BUKKIT-5464GJ2014-04-18-3/+9
| | | | | | | | | | 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.
* [Bleeding] Add many missing SpawnReasons.GJ2014-04-18-11/+14
| | | | | | | | | | 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.
* Add files from mc-dev for diff visibility.GJ2014-04-18-0/+622
|
* [Bleeding] Add many missing event calls.GJ2014-04-18-40/+152
|
* Add BlockTallPlant.java from mc-dev for diff visibility.GJ2014-04-18-0/+160
|
* [Bleeding] Add missing HangingBreakEvent. Fixes BUKKIT-3943GJ2014-04-18-4/+17
| | | | | | | 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.
* Handle profiles in SkullMeta, they don't store a string anymore.Travis Watkins2014-04-17-12/+24
|
* Update CraftBukkit to Minecraft 1.7.9Nate Mortensen2014-04-17-6/+15
|
* Handle expired bans correctly. Fixes BUKKIT-5541Travis Watkins2014-04-17-3/+19
|
* Make bans pretend to use names like before 1.7.8.Travis Watkins2014-04-17-19/+28
| | | | | | 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.
* Make skulls pretend to only use names like before 1.7.8.Travis Watkins2014-04-17-15/+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.
* Fix getting white list, ban list, and op list. Fixes BUKKIT-5538Travis Watkins2014-04-17-51/+78
| | | | | | | | 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.
* Import files from mc-dev for diff visibilityTravis Watkins2014-04-17-0/+235
|
* [Bleeding] Re-add missed diff in 1.7.5 update. Fixes BUKKIT-5536t00thpick12014-04-17-1/+1
| | | | | | In the 1.7.5 update the diff that called book edit events when editing books was accidentally dropped because of nms changes within the file. This commit re-adds the craftbukkit call to restore event behavior.
* Don't do a lookup for obviously invalid usernamesTravis Watkins2014-04-17-9/+18
|
* Add methods to use arbitrary entries in scoreboards. Adds BUKKIT-3977Travis Watkins2014-04-13-7/+43
|
* Fix missed diff and other small thingsTravis Watkins2014-04-13-13/+17
|
* Use world-container when finding players to convert. Fixes BUKKIT-5530Travis Watkins2014-04-13-1/+1
|
* Check actual whitelist for CraftOfflinePlayer tooTravis Watkins2014-04-12-1/+1
|
* Check the actual whitelist for Player#isWhitelisted()Travis Watkins2014-04-12-1/+1
| | | | | | | The server's check is for whether or not a player can pass the whitelist not just if the player is on it. That seems like more useful information but the API has always just checked if they are on it so this commit restores that.
* Use fetched GameProfile for getOfflinePlayer(String)Travis Watkins2014-04-12-6/+19
| | | | | | | | When getting an OfflinePlayer by name we lookup their UUID and then use that to fetch the OfflinePlayer. If the player has not played on this server before the resulting OfflinePlayer will return null for getName(). As this is unintuitive we now create the OfflinePlayer directly using the profile we looked up and make OfflinePlayer prefer that data.
* Update CraftBukkit to Minecraft 1.7.8Travis Watkins2014-04-11-697/+1856
|
* Add method to send fake sign updates to players. Adds BUKKIT-2300Patrick Seidel2014-04-02-24/+53
|
* Add player unique ID to (Async)PlayerPreLoginEvent. Adds BUKKIT-5108BlackHole2014-04-02-2/+3
|
* Add equals for CraftInventory objects. Adds BUKKIT-4110Jeremy Wood2014-04-02-0/+10
| | | | | | | | | When working with inventories you regularly end up with different Inventory objects that have the same underlying Minecraft inventory. Currently, even those these point to the same thing, they are not considered equal. With this commit comparing any Inventory object that represents the same inventory will result in equals(Object) returning true.
* Store last known player names in preparation for name changingfeildmaster2014-03-31-0/+1
|
* Implement API for dealing with player UUIDs. Adds BUKKIT-5071Travis Watkins2014-03-29-2/+101
|
* Fix issues with leashes and weather due to missed diffTravis Watkins2014-03-26-2/+2
|
* Correct missed diffTravis Watkins2014-03-24-3/+3
|
* Fix PotionEffect removal.Nate Mortensen2014-03-23-1/+1
| | | | | | | | | | | | The method in EntityLiving to remove a potion effect was remapped during the 1.7.5 update. The method invocation in CraftLivingEntity was not updated to invoke the remapped method, which has led to a random method in LivingEntity being called in its place. This commit corrects the behavior of removePotionEffect by changing the method to invoke the remapped method as opposed to EntityLiving#m(float). Thanks to @gabizou for finding this issue.
* Fix missed diff making horses lose their saddleTravis Watkins2014-03-22-1/+1
|
* Fix teleport failing right after join. Fixes BUKKIT-5479Travis Watkins2014-03-22-3/+14
| | | | | | | | | | Teleporting a player checks to see if the player is disconnected to try to avoid creating ghost players. The check it uses, however, randomly fails when the player is in the middle of joining the server. The check that would work correctly here does not work correctly when the player actually disconnects. To work around this we add a new flag which is cleared on the first tick of the new player and assume they are connected if the flag is set.
* Increment loop index whether or not command succeeded. Fixes BUKKIT-5455WolfieMario2014-03-22-2/+1
| | | | | | | | | | | When VanillaCommandWrapper dispatches a command containing a PlayerSelector wtih c>-1 (implicitly true for @a), it loops over the selected players and exectures the command with each player. However, the loop index is only incremented if the command fails. As a result, a successful command is repeated on the same player indefinitely, locking up the server. This commit fixes the issue by incrementing the loop index regardless of whether the command succeeds, ensuring the command is only executed once per player identified by the PlayerSelector.
* Update CraftBukkit to Minecraft 1.7.5Nate Mortensen2014-03-21-2660/+2651
|
* Remove chunks from queue if we don't need them anymore.Travis Watkins2014-02-12-10/+45
|
* Check if entity is in list before decrementing. Fixes BUKKIT-5404EvilSeph2014-02-11-3/+5
|
* Ignore player selectors if not a Command Block.EvilSeph2014-02-11-0/+6
|
* Add PlayerSelector.java for diff visibility.EvilSeph2014-02-11-0/+241
|
* Rename Minecraft command permission nodes to meet fallback spec.EvilSeph2014-02-11-1/+1
|