summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/Chunk.java
Commit message (Collapse)AuthorAgeLines
* Refactored BlockPlaceEvent and BlockChangeDelegate. Adds BUKKIT-5558bloodshot2014-04-23-7/+2
| | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Update CraftBukkit to Minecraft 1.7.5Nate Mortensen2014-03-21-9/+9
|
* Only delay removing containers. Fixes BUKKIT-5238Travis Watkins2013-12-24-2/+12
| | | | | | | | In commit f94b7af8 I delay removing the block until after running the block's cleanup code to avoid errors. However, this causes problems of its own due to blocks not being written with this in mind. To avoid blocks getting recursively removed we now only delay removing containers since they are the only ones we had problems with to begin with.
* Process block cleanup first. Fixes BUKKIT-4103Travis Watkins2013-12-24-1/+2
| | | | | | | | | | When setting a block the server sets the new block ID, calls the cleanup on the old block, then calls the placement logic for the new block. This would normally work correctly but we have logic to prevent errors that is causing one here. When trying to clean up the old block we notice the block ID has changed and try to fix things, this causes the cleanup logic to fail. To ensure cleanup happens correctly we now do all the cleanup before changing the block which avoids triggering the fixup code.
* Update CraftBukkit to Minecraft 1.7.2mbax2013-11-30-214/+337
|
* Update CraftBukkit to 1.6.4feildmaster2013-09-19-2/+2
|
* Update CraftBukkit to 1.6.2mbax2013-07-08-2/+2
|
* Update CraftBukkit to 1.6.1Nate Mortensen2013-07-01-24/+24
|
* Update CraftBukkit to Minecraft 1.5.2Travis Watkins2013-04-27-21/+21
|
* Cleanup comments, formatting, etcTravis Watkins2013-03-25-5/+2
|
* Update CraftBukkit to Minecraft 1.5Travis Watkins2013-03-15-40/+42
|
* Fix TileEntities and Blocks getting out of sync. Fixes BUKKIT-3501feildmaster2013-01-27-6/+3
| | | | | | | | | | Also fixes: BUKKIT-3477 and BUKKIT-3488 Minecraft likes to double check that tile entities get set after they are placed, however we didn't set tile entities until after our event was called. This caused the world to have multiple tile entities in a single block location; to fix this we now set tile entities before the event.
* Return the valid max value for piston direction. Fixes BUKKIT-2191feildmaster2013-01-23-2/+2
| | | | | | By returning the following value (7) we remove the need to special case pistons in any way (other than the original purpose of this check, which is to ensure pistons have valid data)
* Refactor processBlockPlace logic. Fixes BUKKIT-3406 and BUKKIT-3454feildmaster2013-01-19-2/+2
| | | | | | | The previous logic was faulty since it lost the logic of "placing" the block. It was also taking into account data that could have been changed outside of the processing of this event, which is irrelevant to the processing of this event.
* Never remove players when unloading chunks. Fixes BUKKIT-3129cexikitin2012-12-27-3/+1
| | | | | | | | When unloading chunks we have a check to ensure we do not remove players from the world due to the issues this would cause. However, our check to see if the player is in this chunk is reversed and is in fact entirely wrong. Even if the player isn't currently in this chunk we do not want to remove them as that will still cause the same issues.
* Update CraftBukkit to Minecraft 1.4.6feildmaster2012-12-20-4/+4
|
* 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.
* Update CraftBukkit to Minecraft 1.4.4.Travis Watkins2012-11-13-34/+23
|
* Update CraftBukkit to Minecraft 1.4(.2).Travis Watkins2012-10-27-47/+58
|
* Update to 1.3.2Travis Watkins2012-08-25-1/+1
|
* Add iterator cache to UnsafeList and use it in hotspotsTravis Watkins2012-08-19-1/+1
| | | | | Adds a specialized iterator for the list and a pool of iterators to avoid object churn. Also optimizes the clear() method to reduce object creation.
* Fix issues with chunk saving. Fixes BUKKIT-2158, BUKKIT-2018 and BUKKIT-2229Mike Primm2012-08-19-0/+1
|
* Don't extend pistons until data is set. Fixes BUKKIT-2153John Driscoll2012-08-17-1/+5
|
* Update CraftBukkit to Minecraft 1.3.1feildmaster2012-08-02-82/+78
|
* Cleaned up CraftBukkit comments in NMS.Wesley Wolfe2012-07-23-3/+4
| | | | | | | | | | | | | Added newlines at the end of files Fixed improper line endings on some files Matched start - end comments Added some missing comments for diffs Fixed syntax on some spots Minimized some diff Removed some no longer used files Added comment on some required files with no changes Fixed imports of items used once Added imports for items used more than once
* Remove legacy Chunk cache. Fixes BUKKIT-1400feildmaster2012-04-24-7/+6
|
* Avoid doing unnecessary range checks when we're looping from start to end.Travis Watkins2012-04-23-5/+6
| | | | | | | | | | | | | | | | | | Make EntityLiving call AI logic every tick again. Rework PathfinderGoalSelector logic. Adds UnsafeList for use in places where we use ArrayList and know we won't get index out of range errors. Added usage to World's tickEntities, Chunk's entitySlices to speed up searching for entities, and to PathfinderGoalSelector to speed up dealing with AI goals. Reworked logic in PathfinderGoalSelector with help from fullwall. This code no longer uses an extra ArrayList for setting up goals and only updates which goals should be run every other time it is called. Removed only calling PathfinderGoalSelector every other tick from EntityLiving as we now only setup new goals every other tick. This ensures existing goals run every tick to properly update mob movement.
* Updated to Minecraft version 1.2.4. Updated version string to 1.2.4-R0.1.Nathan Adams2012-03-22-62/+72
|
* [Bleeding] Prevent update inconsistencies on generation/decoration that span ↵Mike Primm2012-03-22-0/+1
| | | | chunks. Fixes BUKKIT-871
* Re-re-fixed block transmutationNathan Adams2012-03-10-1/+1
|
* Re-fixed block transmutationNathan Adams2012-03-10-0/+1
|
* recover from converter issue FIXES BUKKIT-890Tahg2012-03-02-1/+1
|
* ... Comments!Nathan Adams2012-03-02-2/+2
|
* Fixed fatal crashes when there's a block at maxheight at spawn - this fixes ↵Nathan Adams2012-03-02-0/+2
| | | | BUKKIT-922.
* Updated from 1.2.2 to 1.2.3. This fixes BUKKIT-943Nathan Adams2012-03-02-1/+1
|
* Updated CraftBukkit to 1.2Nathan Adams2012-03-01-337/+392
|
* Updated to rename revision 02Erik Broes2012-03-01-18/+18
|
* Revert "Remove tile entities when a block is removed."EvilSeph2012-02-14-10/+2
| | | | This reverts commit 1d4347fbaf3c891580a9ee40a8e9632c992f8b08.
* Fixed other types of 'block transmuters'.Tahg2012-02-03-0/+2
|
* Added debug to help with diagnosing tile entity issues in the future.Tahg2012-02-03-0/+2
|
* Remove tile entities when a block is removed.Tahg2012-02-03-2/+10
|
* Fix 'Block Transmute'. Bug where you could change the data of a block 'on ↵Erik Broes2012-01-27-0/+2
| | | | demand'.
* Update for 1.1_01 renames.Erik Broes2012-01-15-7/+7
| | | | | We know these updates (can) break plugins bypassing Bukkit. They are needed for smooth updates however. There will be another one right before before 1.1-R1.
* Updated to Minecraft 1.1Erik Broes2012-01-12-16/+16
|
* Updated to use mc-dev rename revision 1Nathan Adams2011-11-30-2/+2
|
* Another attempt at the vanilla tile entity bugNathan Adams2011-11-25-1/+1
|
* Fixed vanillas tile-entity placement bug (thanks Moo0)Nathan Adams2011-11-22-1/+1
|
* Update for 1.0.0Erik Broes2011-11-20-212/+203
|
* don't store weak references for EmptyChunks or cache CraftBlocksTahg2011-10-05-4/+6
|
* Attempt to fix any damage caused by misplaced tile entitiesDinnerbone2011-10-03-1/+4
|