Commit graph

104 Commits

Autor SHA1 Nachricht Datum
Mike Primm
8219081385 [Bleeding] Change Vec3DPool to a stack based pool
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.
2012-08-19 09:50:57 -05:00
Travis Watkins
858d36efc9 Add iterator cache to UnsafeList and use it in hotspots
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.
2012-08-19 09:50:57 -05:00
Travis Watkins
e5acb6cf3a Don't tick chunks or entities on chunks that are queued for unload.
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.
2012-08-04 18:08:26 -05:00
feildmaster
a43d621c01 Update CraftBukkit to Minecraft 1.3.1 2012-08-02 04:58:50 -05:00
Wesley Wolfe
b00de5f176 Cleaned up CraftBukkit comments in NMS.
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
2012-07-23 23:55:31 -05:00
Travis Watkins
a21f038fc3 Mark entities as invalid when they get despawned. Addresses BUKKIT-810 2012-06-28 19:34:31 -05:00
feildmaster
b6d611d9be Revert obsolete "fix" for Redstone Torches 2012-05-17 00:24:26 -04:00
Travis Watkins
b7376e0865 Avoid doing unnecessary range checks when we're looping from start to end.
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.
2012-04-23 21:52:08 -04:00
feildmaster
27a9b4c907 Filter entity spawning sanely. 2012-04-15 01:52:51 -05:00
feildmaster
0026a08fa8 Use SpawnReason.DEFAULT instead of SpawnReason.CUSTOM, freeing CUSTOM to plugin spawning.
This gets used in case we are missing appropriate SpawnReason's for various Entity spawns.
2012-04-14 01:44:01 -05:00
feildmaster
af0018a962 Mark entities as dead when spawning fails. Treat as canceled if entity is dead. 2012-04-03 18:06:51 -05:00
Nathan Adams
9d09e7d016 Updated to Minecraft version 1.2.4. Updated version string to 1.2.4-R0.1. 2012-03-22 20:39:39 +00:00
Celtic Minstrel
92f771a022 [Bleeding] Implemented ProjectileLaunchEvent. Addresses BUKKIT-284 2012-03-15 07:18:59 -04:00
EvilSeph
0f659850b2 Made golems spawning respect spawn-animals for real. Fixes BUKKIT-1124 2012-03-11 06:28:03 -04:00
EvilSeph
5c757df673 Made iron golems spawning to defend villagers respect spawn-animals. Fixes BUKKIT-1124 2012-03-10 16:56:21 -05:00
EvilSeph
ae6b3711ea Made zombie invasions respect spawn-monsters setting. Fixes BUKKIT-1123 2012-03-10 16:31:21 -05:00
EvilSeph
8ecdfe9eed Added missing filters to addEntity. Fixes BUKKIT-794 2012-03-08 18:09:32 -05:00
Travis Watkins
4ac8d68c39 Fixed porting issue in World. Now uses correct variable names to add chunks for growth. This fixes BUKKIT-934 2012-03-02 14:34:31 -05:00
Nathan Adams
a42e710bbc Updated from 1.2.2 to 1.2.3. This fixes BUKKIT-943 2012-03-02 19:31:06 +00:00
Tahg
2510af0d1a Fix porting issue in World.mayPlace Fixes BUKKIT-915 2012-03-01 21:26:21 -05:00
Mike Primm
82f2a2e773 World height related fixes - 128 -> 256. Addresses BUKKIT-889 2012-03-01 20:13:28 -05:00
Nathan Adams
0e7b9834f9 Potentially fixed crash when building at max world height 2012-03-01 17:07:02 +00:00
Nathan Adams
543c4879fe Updated CraftBukkit to 1.2 2012-03-01 14:38:31 +00:00
Erik Broes
33ba9f0a2f Updated to rename revision 02 2012-03-01 01:12:41 +00:00
EvilSeph
63b9ed9ab4 Added configurable animal and monster ticks per spawn setting. 2012-02-10 12:16:06 -05:00
Erik Broes
9d90839723 Put statement inside CraftBukkit block 2012-01-28 09:04:16 +01:00
Erik Broes
38ad0ea5fd Prevent (Entity) null to be added to the entity list. 2012-01-27 19:42:14 +01:00
Erik Broes
a4ce846d07 Fix formatting. 2012-01-15 10:54:57 +01:00
Erik Broes
61ec751ca1 Update for 1.1_01 renames.
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.
2012-01-15 10:52:37 +01:00
Mike Primm
cc05bea457 Prevent unbounded TickList growth on busy servers (>1000 events/tick). This completes another Bleeding request. 2012-01-14 16:47:57 +00:00
Erik Broes
7219d4dd85 Updated to Minecraft 1.1 2012-01-12 23:10:13 +01:00
Erik Broes
7d0e739f96 Fix balance of CraftBukkit start/end. 2012-01-12 19:43:34 +01:00
Nathan Adams
897551e39e Update to mc-dev rename revision 01 2012-01-12 15:27:39 +00:00
Erik Broes
7f079a0cd6 Fix CraftBukkit comments. 2012-01-12 12:07:38 +01:00
EvilSeph
86fef037e0 Fixed NPE in World. Fixes BUKKIT-306. Thanks Evenprime! 2012-01-07 19:12:38 -05:00
Tahg
bc8f02788f Performance update to remove several very high counts of temp object creation 2011-12-06 08:52:45 -05:00
Nathan Adams
8fbe78a2c3 Updated to use mc-dev rename revision 1 2011-11-30 21:46:19 +00:00
Erik Broes
ba608f55e4 Remove expensive debugcalls from production code 2011-11-26 18:27:39 +01:00
Erik Broes
345ea36c7b Update for 1.0.0 2011-11-20 00:01:33 -08:00
Dinnerbone
0118a20d6a Update to mcdev rename revision 01 for 1.8.1 2011-09-24 22:05:22 +01:00
EvilSeph
167febd8e6 Fixed allow-animals not applying to chunk generation.
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.
2011-09-20 01:20:05 -04:00
Dinnerbone
2995a08324 Removed some unneeded code, possibly fixed animal spawning 2011-09-15 22:29:15 +01:00
Dinnerbone
5b2c774edc Update for Minecraft 1.8 2011-09-15 01:23:52 +01:00
Dinnerbone
47453c6055 Extremely experimental fix to the tile-entity wipe, thanks to Wug 2011-08-08 18:30:57 +01:00
Rigby
4117d6b65e Implemented per world setting to keep the spawn in memory or not. 2011-08-05 15:52:38 -04:00
EvilSeph
226318d8af Removed deprecated methods.
getNote() that returns a byte has been replaced by getRawNote().
teleportTo(Location) has been replaced by teleport(location).
teleportTo(Entity) has been replaced by teleport(Entity).
SnowForm event has been replaced by BlockForm event.
2011-07-27 23:25:21 -04:00
EvilSeph
c9979169b9 Possibly fixed crashes caused by tile entities under certain circumstances again. 2011-07-13 21:27:42 -04:00
Warren Loo
eb19e4e8dc Fixed uuid code that was prematurely pushed. 2011-07-13 02:19:56 -04:00
Warren Loo
a9cdc36f2c Possibly fixed crashes caused by tile entities under certain circumstances. 2011-07-13 00:31:05 -04:00
Tahg
d0f904fc50 uuid changes 2011-07-13 00:06:07 -04:00