summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server/World.java
Commit message (Collapse)AuthorAgeLines
* Use this world instead of the one in the entity. Fixes BUKKIT-2315Travis Watkins2012-09-28-3/+3
| | | | | | In some situations an entity or tile entity can be added to the world but have its own 'world' field be null or otherwise incorrect. As the entity was added to this world to be ticked assume it actually is in this world.
* Set last accessed variables after grabbing chunk. Fixes BUKKIT-1033Wesley Wolfe2012-09-20-1/+1
| | | | | | | | | | | | | This fix changes the 'state' of the last accessed variables to be more accurate. Changing the coordinates of the last accessed chunk should never precede actually setting the last accessed chunk, as loading a chunk may at some point call back to getChunkAt with a new set of coordinates before the chunk has actually been loaded. The coordinates would have been set, but the actual chunk would not. With no check for accuracy, this causes fringe case issues such as null block states. Big thanks to @V10lator for finding where the root of the problem was occurring.
* [Bleeding] Check visibility API for sounds. Fixes BUKKIT-2210mbax2012-09-14-1/+1
| | | | | | | | | | | | This implementation of a visibility API check for sounds was created by adding extra methods carrying the source entity in WorldManager and ServerConfigurationManagerAbstract and adding a test for canSee in the SCMA sendPacketNearby method. This approach involves no logic copying, just method addition. I opted to cast to WorldManager as: 1) IWorldAccess is not in CraftBukkit at the moment 2) There is no other IWorldAccess implemented in CraftBukkit, nor is there likely to be one soon. If that day comes, easy fix.
* Bulk pending cleanup.Wesley Wolfe2012-09-09-32/+32
|
* Update to 1.3.2Travis Watkins2012-08-25-5/+5
|
* Fix entities not having valid "isValid" states. Addresses BUKKIT-2366feildmaster2012-08-22-0/+2
|
* Check unload queue so we don't accidentally leave a chunk loadedTravis Watkins2012-08-19-1/+2
|
* Add LongObjectHashMap and LongHashSetTravis Watkins2012-08-19-8/+8
| | | | | | | | | | | | | | | Replace uses of LongHashtable and LongHashset with new implementations. Remove EntryBase, LongBaseHashtable, LongHashset, and LongHashtable as they are no longer used. LongObjectHashMap does not use Entry or EntryBase classes internally for storage so has much lower object churn and greater performance. LongHashSet is not as much of performance win for our use case but for general use is up to seventeen times faster than the old implementation and is in fact faster than alternatives from "high performance" java libraries. This is being added so that if someone tries to use it in the future in a place unrelated to its current use they don't accidentally end up with something slower than the Java collections HashSet implementation.
* [Bleeding] Change Vec3DPool to a stack based poolMike Primm2012-08-19-1/+6
| | | | | | | Avoid overhead of using an ArrayList and resizing it. Also allows for reuse of objects in the pool during the same tick by explicitly releasing them back to the pool. This allows for much better cache performance as well as reduced cache footprint.
* Add iterator cache to UnsafeList and use it in hotspotsTravis Watkins2012-08-19-2/+3
| | | | | 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.
* Don't tick chunks or entities on chunks that are queued for unload.Travis Watkins2012-08-04-1/+28
| | | | | Treat chunks in the unload queue as if they are already unloaded to prevent processing on them removing them from the unload queue and leaking.
* Update CraftBukkit to Minecraft 1.3.1feildmaster2012-08-02-889/+547
|
* Cleaned up CraftBukkit comments in NMS.Wesley Wolfe2012-07-23-5/+2
| | | | | | | | | | | | | 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
* Mark entities as invalid when they get despawned. Addresses BUKKIT-810Travis Watkins2012-06-28-0/+2
|
* Revert obsolete "fix" for Redstone Torchesfeildmaster2012-05-17-4/+1
|
* Avoid doing unnecessary range checks when we're looping from start to end.Travis Watkins2012-04-23-2/+3
| | | | | | | | | | | | | | | | | | 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.
* Filter entity spawning sanely.feildmaster2012-04-15-1/+1
|
* Use SpawnReason.DEFAULT instead of SpawnReason.CUSTOM, freeing CUSTOM to ↵feildmaster2012-04-14-1/+1
| | | | | | plugin spawning. This gets used in case we are missing appropriate SpawnReason's for various Entity spawns.
* Mark entities as dead when spawning fails. Treat as canceled if entity is dead.feildmaster2012-04-03-15/+14
|
* Updated to Minecraft version 1.2.4. Updated version string to 1.2.4-R0.1.Nathan Adams2012-03-22-9/+9
|
* [Bleeding] Implemented ProjectileLaunchEvent. Addresses BUKKIT-284Celtic Minstrel2012-03-15-0/+5
|
* Made golems spawning respect spawn-animals for real. Fixes BUKKIT-1124EvilSeph2012-03-11-2/+2
|
* Made iron golems spawning to defend villagers respect spawn-animals. Fixes ↵EvilSeph2012-03-10-1/+1
| | | | BUKKIT-1124
* Made zombie invasions respect spawn-monsters setting. Fixes BUKKIT-1123EvilSeph2012-03-10-1/+1
|
* Added missing filters to addEntity. Fixes BUKKIT-794EvilSeph2012-03-08-1/+1
|
* Fixed porting issue in World. Now uses correct variable names to add chunks ↵Travis Watkins2012-03-02-1/+1
| | | | for growth. This fixes BUKKIT-934
* Updated from 1.2.2 to 1.2.3. This fixes BUKKIT-943Nathan Adams2012-03-02-1/+1
|
* Fix porting issue in World.mayPlace Fixes BUKKIT-915Tahg2012-03-01-1/+1
|
* World height related fixes - 128 -> 256. Addresses BUKKIT-889Mike Primm2012-03-01-1/+1
|
* Potentially fixed crash when building at max world heightNathan Adams2012-03-01-1/+1
|
* Updated CraftBukkit to 1.2Nathan Adams2012-03-01-439/+503
|
* Updated to rename revision 02Erik Broes2012-03-01-7/+7
|
* Added configurable animal and monster ticks per spawn setting.EvilSeph2012-02-10-1/+6
|
* Put statement inside CraftBukkit blockErik Broes2012-01-28-1/+1
|
* Prevent (Entity) null to be added to the entity list.Erik Broes2012-01-27-0/+2
|
* Fix formatting.Erik Broes2012-01-15-3/+2
|
* Update for 1.1_01 renames.Erik Broes2012-01-15-28/+28
| | | | | 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.
* Prevent unbounded TickList growth on busy servers (>1000 events/tick). This ↵Mike Primm2012-01-14-1/+7
| | | | completes another Bleeding request.
* Updated to Minecraft 1.1Erik Broes2012-01-12-96/+102
|
* Fix balance of CraftBukkit start/end.Erik Broes2012-01-12-2/+0
|
* Update to mc-dev rename revision 01Nathan Adams2012-01-12-7/+7
|
* Fix CraftBukkit comments.Erik Broes2012-01-12-34/+34
|
* Fixed NPE in World. Fixes BUKKIT-306. Thanks Evenprime!EvilSeph2012-01-07-0/+3
|
* Performance update to remove several very high counts of temp object creationTahg2011-12-06-10/+16
|
* Updated to use mc-dev rename revision 1Nathan Adams2011-11-30-20/+20
|
* Remove expensive debugcalls from production codeErik Broes2011-11-26-32/+32
|
* Update for 1.0.0Erik Broes2011-11-20-312/+553
|
* Update to mcdev rename revision 01 for 1.8.1Dinnerbone2011-09-24-8/+8
|
* Fixed allow-animals not applying to chunk generation.EvilSeph2011-09-20-0/+7
| | | | Moved the legitimacy checking into World.addEntity for better organisation and to better account for future methods being added that control whether or not an entity should spawn.
* Removed some unneeded code, possibly fixed animal spawningDinnerbone2011-09-15-8/+2
|