summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeLines
* Refactor all OBC, libs, and NMS into versioned packages.Wesley Wolfe2012-12-05-16/+28
| | | | | | | | | | | org.bukkit.craftbukkit and net.minecraft.server will now include the minecraft version in the package name. As the internal implementations are known to change dramatically, this refactor reduces the strain on support requests due to version mismatching. org.bukkit.craftbukkit.libs will also have version numbers for each imported set of packages. These are not dictated by the minecraft version number. This is done to prevent future incompatibilities.
* Don't run command blocks in empty worlds. Fixes BUKKIT-3094Travis Watkins2012-12-05-1/+6
|
* Persistence isn't just animals. Fix BUKKIT-3105feildmaster2012-12-05-1/+3
| | | | Also set to this value if the persistence hasn't been updated
* Add a custom shutdown message set in bukkit.yml. Addresses BUKKIT-3031feildmaster2012-12-05-4/+12
|
* Allow placing blocks in spawn if ops.txt is empty. Fixes BUKKIT-3004Travis Watkins2012-12-05-0/+1
|
* Ensure animals don't despawn due to old default setting.Travis Watkins2012-12-04-1/+8
| | | | | | | | | | | The old default for the persistent flag on mobs was false which was then written out to their NBT data when they were saved. We now use this data for all mobs, not just non-animal mobs. However, this means animals that spawned before that change will now start despawning like monsters do. To avoid this we add a new flag to the mob's saved data to mark if the data was saved before or after we started using it and ignore it if it was before.
* Fire EntityFormBlockEvent for FallingBlocks. Adds BUKKIT-3078Wesley Wolfe2012-12-04-5/+14
|
* Implement API for mob despawn when away from players. Adds BUKKIT-2986Travis Watkins2012-12-04-3/+11
| | | | | | | | As of 1.4 mobs have a flag to determine if they despawn when away from a player or not. Unfortunately animals still use their own system to prevent despawning instead of making use of this flag. This change modifies them to use the new system (defaults to true) and to add API for plugins to adjust this.
* Fix leaky pipes (water flow). Fixes BUKKIT-3085feildmaster2012-12-01-3/+3
| | | | (Also, fix mistranslation for VehicleBlockCollisionEvent)
* [BREAKING] Update BlockFace directions. Fixes BUKKIT-1567, BUKKIT-3069feildmaster2012-12-01-31/+31
| | | | The answer is 42
* Fix missed refactoring in EntityWitherWesley Wolfe2012-11-30-1/+1
|
* Add data values to EntityChangeBlockEvent. Adds BUKKIT-3077, BUKKIT-3076Wesley Wolfe2012-11-30-16/+16
| | | | This change affects Endermen and Silverfish, adding a data value for the block change event.
* Use carried item for endermen's changed-block's id. Fixes BUKKIT-3075Wesley Wolfe2012-11-30-1/+1
|
* Take into account if the shooter is a player before considering pvp mode for ↵feildmaster2012-11-27-3/+3
| | | | projectiles. Fixes BUKKIT-3058
* Fix multi-world sounds not being sent correctly. Fixes BUKKIT-3051feildmaster2012-11-25-1/+2
|
* Call EntityInteractEvent for Wood Buttons. Fixes BUKKIT-3022feildmaster2012-11-24-1/+12
| | | | Prior to this, there was no way to tell when arrows trigger buttons
* Fix the previous fix for "infinite 'breeding' with MonsterEggs"feildmaster2012-11-22-0/+4
|
* Call MapInitializeEvent on newly created maps. Fixes BUKKIT-2907feildmaster2012-11-21-1/+4
|
* Add ItemMapEmpty for diff visibilityfeildmaster2012-11-21-0/+34
|
* Updated version to 1.4.5-R0.3-SNAPSHOT for development towards next release.EvilSeph2012-11-20-2/+2
|
* Updated version to 1.4.5-R0.2 in pom.xml for Beta.EvilSeph2012-11-20-2/+2
|
* Fix teleporting entities with vehicles/passengers teleporting you illegally. ↵feildmaster2012-11-20-2/+11
| | | | | | Fixes BUKKIT-2821 Also some formatting...
* Update invalidItems array. Fixes BUKKIT-2554.EvilSeph2012-11-20-1/+1
|
* Add SPAWNER_EGG spawn reason to allow for filtering. Adds BUKKIT-3000EvilSeph2012-11-20-1/+1
|
* Fix infinite 'breeding' with MonsterEggs. Fixes BUKKIT-2997EvilSeph2012-11-20-0/+6
| | | | | | If the player is not in Creative (i.e. does not have the ability to instantly build) we need to decrement the MonsterEgg item stack when used on a breedable parent mob.
* Add a DamageEvent for falling blocks which can damage entities. Fixes ↵feildmaster2012-11-20-1/+12
| | | | BUKKIT-2781
* No teleporting people back into the server. Fixes BUKKIT-2298Wesley Wolfe2012-11-19-3/+2
| | | | | | Stale player references will add a player back into the world when teleporting them, causing a cascade of issues relating to ghost entities and servers failing to stop.
* Updated version to 1.4.5-R0.2-SNAPSHOT for development towards next release.EvilSeph2012-11-18-2/+2
|
* Updated version to 1.4.5-R0.1 in pom.xml for Beta.EvilSeph2012-11-18-2/+2
|
* Don't add player to world if join event did it already.Travis Watkins2012-11-18-2/+6
| | | | | | | | On join we unconditionally add the player to the world they logged out in. If a plugin teleports a player during PlayerJoinEvent in a way that adds them to a world (cross-world teleport) we end up with one player in two places. To avoid this we check to see if the player has changed worlds or is already added to the world we have we skip adding them again.
* Fix players losing experience when keepInventory is true. Fixes BUKKIT-2915EvilSeph2012-11-18-2/+4
|
* Fix missed rename making withers too cheaty. Fixes BUKKIT-2972Travis Watkins2012-11-18-1/+1
|
* Don't do case lookups when we have the right case already.Travis Watkins2012-11-18-1/+1
| | | | | | | | This is a missed part of the original "[Bleeding] Use case from player data for OfflinePlayer. Fixes BUKKIT-519" commit. It avoids doing (somewhat expensive) lookups of player data to find the correct capitalization inside getOfflinePlayers() as we're already loading their name from the player data and thus have the correct capitalization.
* Lower compression level to avoid overloading the thread. Fixes BUKKIT-2963Travis Watkins2012-11-18-1/+2
| | | | | | | | | | | | | | | | | When sending chunks to a player we use their writer thread to do chunk compression to avoid blocking the main thread with this work. However, after a teleport or respawn there are a large number of chunk packets to process. This causes the thread to spend a long period handling compression while we continue dumping more chunk packets on it to handle. The result of this is a noticable delay in getting responses to commands and chat immediately after teleporting. Switching to a lower compression level reduces this load and makes our behavior more like vanilla. We do, however, still give this thread more work to do so there will likely still be some delay when comparing to vanilla. The only way to avoid this would be to put chunk compression back on the main thread and give everyone on the server a poorer experience instead.
* Implement sound changes for Minecraft 1.4.2 changes. Fixes BUKKIT-2849Karl Fritsche2012-11-17-26/+67
|
* Use correct itemstack for dispenser behavior chaining. Fixes BUKKIT-2886James Clarke2012-11-17-29/+27
| | | | | | | When an event changes the item to be dispensed we check to see if the new item has special behavior for dispensing and if so pass it on to that behavior handler. However, we are actually checking the old itemstack and passing the new itemstack so this check fails.
* [Bleeding] Use case from player data for OfflinePlayer. Fixes BUKKIT-519EdGruberman2012-11-17-0/+15
| | | | | | | | | | | | If a plugin looks up a player that is offline they may not know the correct capitalization for the name. In this case they're likely to get it wrong and since we cache the result even after the player joins the server all future request for an OfflinePlayer will return one with incorrect case. When looking up a player who has played on the server before we can get the correct case from the player data file saved by the server. If the player has never played before this point we cannot do anything and will still have the same issue but this is not a solvable problem.
* Don't show a player on map if they're vanished. Fixes BUKKIT-1882Travis Watkins2012-11-17-2/+10
|
* Don't kick player when they travel too far. Fixes BUKKIT-2968Travis Watkins2012-11-17-1/+2
| | | | | | | | | If a player travels past 32,000,000 blocks on the X or Z coordinates they will be kicked for having an illegal position. On kick their player data is saved which includes their (illegal) position. This means on join they are immediately kicked again for the same reason and are stuck. Instead of kicking at all in this case just teleport the player back to their previous position just like the moved wrongly check does.
* Implement API for Skeleton and Zombie types. Fixes BUKKIT-2818James Clarke2012-11-17-1/+27
|
* Fire BlockSpreadEvent for vine growth. Fixes BUKKIT-1097Travis Watkins2012-11-17-7/+36
|
* Add BlockVine.java from mc-dev for diff visibility.Travis Watkins2012-11-17-0/+293
|
* Fire BlockFadeEvent when soil turns back to dirt. Fixes BUKKIT-1854Travis Watkins2012-11-17-2/+12
|
* Don't wait for main thread when processing commands.Travis Watkins2012-11-17-42/+54
| | | | | | | | In order to correctly handle disconnects for invalid chat we setup a Waitable and pass it to the main thread then wait for it to be processed. However, commands are also chat packets and they are already on the main thread. In this case, waiting will deadlock the server so we should just do a normal disconnect.
* Don't create tile entity when block placement fails. Fixes BUKKIT-2924Travis Watkins2012-11-16-0/+6
| | | | | | | | | End portals can only be placed in the end during the dragon's death. Attempts to place them outside of this window causes the block to remove itself. However, we still create the tile entity for the portal which leads to exceptions spamming the console about a tile entity existing without the appropriate block. In these cases we should not place the tile entity at all.
* Ignore empty custom payload packets. Fixes BUKKIT-2957Travis Watkins2012-11-16-0/+6
|
* Use synchronous calls and wait for chat disconnect. Fixes BUKKIT-2946Wesley Wolfe2012-11-16-4/+59
| | | | | | | When invalid chat is detected we currently drop the connection with no hint as to why as anything else is not allowed while we're off the main thread. To give valid disconnect reasons and fire proper events instead pass these off to the main thread and wait for it to process them.
* Update tile entity when interact event is cancelled.Travis Watkins2012-11-16-0/+5
| | | | | | | If a plugin cancels a PlayerInteractEvent when left clicking a block the client may have removed this block if they are in creative mode or if the block breaks in a single hit. In this case, we need to update the client's tile entity as well as telling it the block still exists.
* Update CraftBukkit to Minecraft 1.4.5.Travis Watkins2012-11-16-7/+11
|
* Remove fire ticks if damage has been canceled. Fixes BUKKIT-2933feildmaster2012-11-15-0/+3
|