Commit graph

1466 Commits

Autor SHA1 Nachricht Datum
James Clarke
cd90cec48c Implemented TeleportCause enums. Addresses BUKKIT-265 2012-02-29 14:23:12 -05:00
TomyLobo
53e4a034f4 Moved getVehicle, leaveVehicle and isInsideVehicle from CraftLivingEntity to CraftEntity. Addresses BUKKIT-811 2012-02-29 13:30:46 -05:00
rmichela
1394926e53 [Bleeding] Implement Metadata framework for Entities, Blocks, and Worlds 2012-02-29 19:21:25 +01:00
Wesley Wolfe
403f874784 [Bleeding] Fix generics. Addresses BUKKIT-844 2012-02-29 12:15:31 -05:00
Travis Watkins
257fd16242 Added plugin-profiling setting to bukkit.yml. 2012-02-29 10:00:49 -05:00
TomyLobo
92dfb2500b Adjusted CraftBukkit to work with the entity event convenience patch in Bukkit. Addresses BUKKIT-809 2012-02-29 00:12:26 -05:00
TomyLobo
dcf016822d Fixed sneaking eye height. Addresses BUKKIT-808 2012-02-27 20:16:25 -05:00
Olof Larsson
f70f99d1a0 Fixed CraftOfflinePlayer.getLastPlayed() returning the wrong result. Addresses BUKKIT-847 2012-02-27 20:16:11 -05:00
EdGruberman
397f25aa24 Added plugin loading log entry 2012-02-26 15:46:07 -05:00
Sam Wilson
cc2e721ffc Implement PortalCreateEvent reason codes. Addresses BUKKIT-833
This commit modifies the construction of PortalCreateEvents to specify
a reason for the event.  Reasons are either:
1. FIRE: the portal is being created because a player set fire to an
obsidian frame.
2. DESTINATION: the portal is being created as a destination for an existing portal.
2012-02-26 15:20:09 -05:00
TomyLobo
f2d9d4174f CraftSign changes. Addresses BUKKIT-824
- Removed the useless world field.
- Made it so changes to a CraftSign (which is a Block*State*) no longer reflect into the world without calling sign.update().
2012-02-26 12:15:00 -05:00
Celtic Minstrel
57bd84510f [Bleeding] Made dragon eggs trigger BlockFromTo events when they teleport. Addresses BUKKIT-828 2012-02-25 19:17:12 -05:00
EvilSeph
5901a74565 Fixed changes made to PlayerCommandPreprocess events having no effect. Fixes BUKKIT-376 2012-02-25 16:53:54 -05:00
Celtic Minstrel
d6c6b18ba9 Fix for shaped recipes stripping enchantments from the result. Fixes BUKKIT-602 2012-02-25 16:43:16 -05:00
steffen
2887f99fe5 Fixed EntityArrow just to use the PVP setting if the destination is a
Player. Fixes BUKKIT-803
2012-02-24 16:58:39 -05:00
Wesley Wolfe
078e2511a5 [Bleeding] Override not applicable 2012-02-23 21:33:51 -05:00
Zeerix
7a49e29b55 [Bleeding] Undo changes to the tree WorldGenerators.
- All StructureGrowEvent handling for these is in BlockSapling now, using a BlockChangeDelegate to collect the data.
- Moved StructureGrowDelegate into a separate class
2012-02-23 18:27:23 -05:00
Feildmaster
796d4a8a74 [Bleeding] Fixed setTotalExp, any experience update bugs and removed Deprecated Methods. Fixes BUKKIT-798 and fixes BUKKIT-797 2012-02-23 18:27:22 -05:00
Feildmaster
d7f6d2d929 [Bleeding] Use player.getItemInHand(), instead of a new ItemStack. Addresses BUKKIT-767 2012-02-23 18:27:22 -05:00
aPunch
036b5c3956 [Bleeding] Added launchProjectile.
Use launchProjectile in place of individual throwSnowball, throwEgg, and shootArrow methods.
2012-02-23 15:07:41 -05:00
Celtic Minstrel
af51313ffb [Bleeding] Added EntityType to replace CreatureType. 2012-02-22 22:06:29 -05:00
Feildmaster
7792156fb2 [Bleeding] Added BlockGrowEvent. Addresses BUKKIT-104 2012-02-22 21:46:45 -05:00
Feildmaster
847e1c62c5 [Bleeding] Added BlockCrops, BlockReed, BlockStem, BlockNetherWart for diff visibility. 2012-02-22 21:46:44 -05:00
Celtic Minstrel
326091c130 [Bleeding] Recipe API improvements and fixes. Addresses BUKKIT-738 and BUKKIT-624
Add a recipe iterator to make it possible to retrieve and remove recipes (BUKKIT-738), and updated the recipe classes to not clip the data to 127 (BUKKIT-624)
2012-02-21 04:24:24 -05:00
Celtic Minstrel
84ecdb5439 Imported from mc-dev:
- ShapedRecipes
- ShapelessRecipes
- CraftingRecipe
- FurnaceRecipes
2012-02-20 16:39:33 -05:00
Wesley Wolfe
39048be430 [Bleeding] Cleanup clone method. 2012-02-20 05:49:48 -05:00
EvilSeph
4d89a21a25 Removed EndermanPickup/Place events, replaced with EntityChangeBlock event. 2012-02-19 04:16:46 -05:00
Feildmaster
1922672f14 [Bleeding] Fire EntityDamageByEntityEvent for EnderCrystal. Fixes BUKKIT-776 2012-02-19 01:06:38 -05:00
Feildmaster
b06719dd03 [Bleeding] Moved projectile EntityDamageByEntityEvent's to event factory. Addresses BUKKIT-775 2012-02-19 01:05:11 -05:00
Mike Primm
5316c43a82 Add getEntitesByClass(Class<T>), getEntitiesByClasses(Class<?>...), deprecate getEntitiesByClass(Class<T>...) 2012-02-18 16:34:53 -05:00
Erik Broes
137880b727 Deprecation cleanup. 2012-02-18 13:06:12 -05:00
Nathan Adams
3b634b14f6 Fixed NPE when running a custom build of CraftBukkit. This fixes issue #BUKKIT-765 2012-02-18 14:06:21 +00:00
Nathan Adams
d057ee1e07 Don't print stacktraces on DLB fetching errors. And because I forgot last commit; this adds BUKKIT-760 2012-02-17 00:09:56 +00:00
Nathan Adams
236cfed616 Added a built-in update checker. See http://wiki.bukkit.org/Bukkit.yml#auto-updater for new bukkit.yml options. 2012-02-16 22:32:17 +00:00
EvilSeph
64264f61b8 Revert "Remove tile entities when a block is removed."
This reverts commit 1d4347fbaf3c891580a9ee40a8e9632c992f8b08.
2012-02-14 02:37:47 -05:00
Mushroom Hostage
7076ef9de6 Use createNMSItemStack on CraftingManager recipe registration. Fixes BUKKIT-602 2012-02-13 00:44:58 -05:00
EvilSeph
1c28c946fa Fixed sprinting while breaking a painting edge case. Fixes BUKKIT-740 2012-02-13 00:40:32 -05:00
Aidan Matzko
9b10970f6b [Bleeding] Fixed EntityChangeBlock event reporting incorrect information
for Enderman block placing.
2012-02-10 21:29:21 -05:00
EvilSeph
da1aead88a Made splash options abide by PVP settings. Fixes BUKKIT-542 2012-02-10 19:23:22 -05:00
fullwall
f52665348e [Bleeding] Added Potions API. Fixes BUKKIT-389 2012-02-10 17:41:13 -05:00
EvilSeph
63b9ed9ab4 Added configurable animal and monster ticks per spawn setting. 2012-02-10 12:16:06 -05:00
EvilSeph
c38fcb360a Implemented JOCKEY and CHUNK_GEN SpawnReasons. 2012-02-10 07:17:41 -05:00
EvilSeph
0170ae9523 Cleanup. 2012-02-10 00:43:12 -05:00
EvilSeph
56741552e5 Made damaging EntityEnderCrystals fire EntityDamageByEntity. Fixes BUKKIT-724 2012-02-09 23:31:10 -05:00
Feildmaster
391ac23c9a [Bleeding] Fire EntityDamageByEntityEvent's for EnderDragon being hit by Projectiles. 2012-02-09 22:20:44 -05:00
Travis Watkins
7ff8c17568 [Bleeding] Make sure we don't keep stale references to vanished players. 2012-02-09 22:03:43 -05:00
Evenprime
d8ca2401ff [Bleeding] Send new player location after teleports only to nearby players. 2012-02-09 21:30:52 -05:00
Feildmaster
80bae060c6 [Bleeding] Use event values for damage. 2012-02-09 20:30:02 -05:00
Feildmaster
fa6fd24f2a [Bleeding] Handle EntityHuman attack a bit more properly. 2012-02-09 20:17:03 -05:00
Feildmaster
8ecfca47de [Bleeding] Fixed EnderDragon suffocation. 2012-02-09 20:12:38 -05:00
Aidan Matzko
6dda89d873 [Bleeding] Deprecate Enderman events in favor of EntityChangeBlock 2012-02-09 11:36:04 -05:00
Tahg
10ab7b96ed Made steps fire a BlockPlace event. Fixes BUKKIT-394 2012-02-09 11:25:53 -05:00
EvilSeph
6abd178ea7 Added ItemStep for diff visibility. 2012-02-09 11:21:35 -05:00
craftycreeper
ad6bab8c6f Implemented EntityTeleportEvent. Fixes BUKKIT-366 2012-02-09 03:46:42 -05:00
EvilSeph
be0ecf4670 Pass EntityEnderCrystal to EntityExplode event. 2012-02-08 21:54:22 -05:00
EvilSeph
39002fd39f Added EntityEnderCrystal for diff visibility. 2012-02-08 20:01:46 -05:00
EvilSeph
ae333ded91 Made flaming arrows respect PVP settings. Fixes BUKKIT-541 2012-02-08 19:06:09 -05:00
EvilSeph
879a87b1e0 Fixed Pumpkins being reported as AIR in BlockPlace event when building snowmen. Fixes BUKKIT-697 2012-02-08 18:30:59 -05:00
EvilSeph
6d67456970 Made BlockPumpkin report an appropriate SpawnReason.BUILD_SNOWMAN when a snowman is spawned. 2012-02-08 18:28:41 -05:00
EvilSeph
8e7e073523 Made Ender Dragons fire EntityRegainHealth events when getting healed by Ender Crystals. 2012-02-08 10:55:15 -05:00
EvilSeph
0a52fd372a Fixed VehicleBlockCollisionEvent returning the wrong block. Fixes BUKKIT-396 2012-02-08 06:18:04 -05:00
EvilSeph
497a0e247b Made crafted maps fire MapInitializeEvent. Fixes BUKKIT-143 2012-02-08 05:45:55 -05:00
EvilSeph
274e8a141a Made flaming arrows fire EntityCombustByEntity events. Fixes BUKKIT-707 2012-02-08 03:27:34 -05:00
EvilSeph
4d563342ba Added Spawner Egg support to CreatureSpawnEvent. 2012-02-05 02:11:21 -05:00
EvilSeph
54e45b7d66 Prevent the Vanish API from sending unnecessary packets. 2012-02-03 05:12:54 -05:00
Travis Watkins
5ae8f13fde Fixed items losing their enchantments under certain circumstances. 2012-02-03 03:39:35 -05:00
Travis Watkins
329cf29667 Added BlockFurnace for diff visibility. 2012-02-03 03:38:23 -05:00
Travis Watkins
37c8868532 [Bleeding] Implemented Vanish API.
Remove players that cannot see a player from their EntityTrackerEntry and only
send user list updates to players who can see the player they reference.
2012-02-03 03:34:03 -05:00
EvilSeph
028cbb8fe9 Removed MONSTER CreatureType. 2012-02-03 02:42:40 -05:00
Tahg
5479a2ca82 Fixed being unable to cancel TNT placement. Fixes BUKKIT-89. 2012-02-03 01:39:00 -05:00
Tahg
1884f2f763 Added BlockTNT for diff visibility. 2012-02-03 01:32:29 -05:00
Tahg
14bb771957 Allow plugins to change ID and Data during BlockPlace event.
Fixes BUKKIT-674
2012-02-03 01:14:47 -05:00
Tahg
1bb011a543 Fixed other types of 'block transmuters'. 2012-02-03 00:51:59 -05:00
Tahg
8bf770c5f9 Added debug to help with diagnosing tile entity issues in the future. 2012-02-03 00:50:35 -05:00
Tahg
2dba592dc4 Remove tile entities when a block is removed. 2012-02-03 00:45:58 -05:00
EvilSeph
8b5289d431 Fixed wrong game type being sent when a player is teleported across worlds. Fixes BUKKIT-510 2012-02-01 01:30:53 -05:00
Tahg
69e766c5f3 Fixed BlockPlace event. Fixes BUKKIT-663 2012-01-30 02:57:58 -05:00
Nathan Adams
875219e28c Fixed vanilla issue where chunks would be mislocated and corrupt. Big thanks to Wug for the fix. 2012-01-30 04:27:25 +00:00
Nathan Adams
72559fe634 Added ChunkLoader.java and ChunkRegionLoader.java for diff visibility 2012-01-30 04:20:59 +00:00
Eric Stokes
3a419481ea Added 'generate-structure' setting support and WorldCreator property.
Fixes BUKKIT-655 and BUKKIT-592
2012-01-29 13:07:44 -05:00
EvilSeph
f1a35effb0 Added useExactLoginLocation(). Closes BUKKIT-145
useExactLoginLocation() looks for settings.use-exact-login-location within bukkit.yml.

If true, we will bypass Vanilla's behaviour of checking for collisions and moving the player if needed when they login.

If false, we will continue to follow Vanilla's behaviour and move players that 'collide' with objects when they login.
2012-01-29 12:33:05 -05:00
Erik Broes
c5a4bfd291 Use OO > new method 2012-01-29 16:06:11 +01:00
Erik Broes
3173b68bbe Filter null/AIR from items dropped on death. Fixes: BUKKIT-653 2012-01-29 13:37:32 +01:00
EvilSeph
1ea0037f49 Fixed maps crashing/disconnecting the client under certain circumstances. 2012-01-29 01:15:55 -05:00
Tahg
9b635aacc4 Moved BlockPlace event. 2012-01-28 03:09:48 -05:00
EvilSeph
7bdfea4820 Reverted onPlace changes. 2012-01-28 03:09:48 -05:00
Erik Broes
9d90839723 Put statement inside CraftBukkit block 2012-01-28 09:04:16 +01:00
EvilSeph
bb730f0ee7 Cleanup. 2012-01-27 18:23:58 -05:00
Erik Broes
38ad0ea5fd Prevent (Entity) null to be added to the entity list. 2012-01-27 19:42:14 +01:00
Erik Broes
16d3b705c5 Fix 'Block Transmute'. Bug where you could change the data of a block 'on demand'. 2012-01-27 19:29:33 +01:00
EvilSeph
98fd1a3606 Let's be a little less tricky to the client. Relates to BUKKIT-637 2012-01-26 20:35:20 -05:00
EvilSeph
5900268e7a Fixed the behaviour of fluid blocks. Fixes BUKKIT-629 2012-01-26 20:04:31 -05:00
EvilSeph
5bcb23502e Trick the client instead of modifying the world. Fixes BUKKIT-637 2012-01-26 19:36:27 -05:00
EvilSeph
b987d1b052 Really loosened the throttles strictness this time. 2012-01-24 23:43:23 -05:00
EvilSeph
3e0a26f270 Fixed redstone torches not updating indirect neighbors. Fixes BUKKIT-477 2012-01-24 23:38:15 -05:00
Tahg
989acd0afb Fix invalid data in pistons 2012-01-24 21:42:45 -05:00
EvilSeph
b416dd337f Loosen throttle strictness. 2012-01-24 18:45:30 -05:00
Tahg
39935eb3f2 Fix diodes not updating indirect neighbors. 2012-01-24 18:03:34 -05:00
Erik Broes
3b46222c54 Persist locking of an animal's age to disk 2012-01-24 22:06:37 +01:00
Mike Primm
94231f1ecf [Bleeding] Implemented EnchantmentTable API. 2012-01-24 06:15:34 -05:00
Tahg
c7716e1de4 [Bleeding] Audit of onPlace methods, Moved to postPlace as appropriate.
Closes BUKKIT-89
2012-01-24 05:18:23 -05:00
Sam Wilson
e92bdab57a Fixed CraftLivingEntity.damage when the entity is an EntityComplex.
Fixes BUKKIT-589: if you call damage on an instance of EnderDragon, no damage
is done.

Reason for bug: damage calls Entity.damageEntity.  But EntityComplex
overrides damageEntity to do nothing.

Fix: CraftComplexLiving should call EntityComplex.e instead of
Entity.damageEntity.  e is the method that actually does damage to an
instance of EntityComplex.
2012-01-24 04:10:47 -05:00
Zeerix
872dad5540 [Bleeding] Implemented PotionSplashEvent. Closes BUKKIT-307 2012-01-24 02:12:41 -05:00
Travis Watkins
74ead3abd1 Immediately tell client a block is broken, then process the event.
In order to avoid clients seeing blocks break, reappear, then break again due
to lag caused by plugins taking too long to process the BlockBreakEvent we
immediately tell the client the block is air then process the event. If the
event ends up being cancelled the client will get another packet telling them
the block still exists.
2012-01-23 23:59:36 -05:00
Travis Watkins
cf521b5a5c Only truncate player name when sending spawn packet. 2012-01-23 23:32:21 -05:00
EvilSeph
97ce5c4479 Implemented PlayerShearEntityEvent in EntityMushroomCow.
Due to the Vanilla client overzealously predicting things, shearing produces
client-side artifacts. See BUKKIT-611 for more information.
2012-01-23 22:41:34 -05:00
Aidan Matzko
93bc8ecd93 [Bleeding] Implemented Sheep, Shear and EntityChangeBlock API. Thanks
tips48! Closes BUKKIT-512
2012-01-23 18:58:37 -05:00
Mike Primm
229337bc8f Use BlockFadeEvents to signal fire blocks burning out 2012-01-22 18:20:01 +01:00
EvilSeph
51b29eff06 Removed accidentally committed change. Needs more investigating 2012-01-21 18:52:32 -05:00
EvilSeph
4f02563c63 Reverted changes to getItem(). Will be reimplemented after RB. 2012-01-20 14:52:32 -05:00
EvilSeph
1bbeec1f75 Accounted for NMS getItem() returning null in recent commit. 2012-01-20 11:46:24 -05:00
Nathan Adams
85ab95cec7 Nullcheck EntityItem's ItemStack where required. This fixes BUKKIT-552 2012-01-20 16:40:27 +00:00
Nathan Adams
51a056ecd5 Disallow colour names in offline-mode. This fixes BUKKIT-439. Thanks to cainfool for the discovery. 2012-01-20 16:03:15 +00:00
EvilSeph
76d7a1ce1d Properly handle null and air items. Fixes BUKKIT-435 and BUKKIT-550
We'll probably want to implement an ItemStack.EMPTY and return that
instead of NULL in the near future.
2012-01-20 05:40:10 -05:00
Tahg
4b0f819af2 Updated timing code for new event system 2012-01-19 18:50:39 -05:00
Nathan Adams
28fcbec3b1 Prevent re-use of internal world dimension IDs. This fixes BUKKIT-448. Thanks to snowleo for the PR. 2012-01-19 16:10:52 +00:00
Nathan Adams
b0f29b1755 Throw PlayerLevelChangeEvent and PlayerExpChangeEvent events. Thanks to feildmaster for the PR. 2012-01-19 16:07:18 +00:00
Nathan Adams
1f1c9c0d4b Correctly take in ChatColor length when limiting player list size. This should fix BUKKIT-571 2012-01-19 15:10:00 +00:00
Erik Broes
737cf284e3 Fix giving wrong arguments to callEntityDamageEvent. Forgot to update after changing the signature :( 2012-01-18 08:16:38 +01:00
Erik Broes
112e0816b9 Actually close the inventory on a *cross*-world teleport. 2012-01-17 22:50:18 +01:00
Erik Broes
f5f268f939 Implement Player.setBedSpawnLocation(Location). Thanks md_5 2012-01-17 22:35:31 +01:00
Mike Primm
b22e727cda [Bleeding] Make BaseBiome to Biome mapping faster, detect missing mapping in future updates 2012-01-17 19:51:33 +01:00
Zeerix
bcf6440bc4 [Bleeding] Implement EntityShootBowEvent. Thanks Zeerix. 2012-01-17 19:51:06 +01:00
Erik Broes
edbb7358fc [Bleeding] Implementation of the brewing stand. 2012-01-17 19:50:29 +01:00
Tahg
387d7319bc [Bleeding] Prevent BlockSnow from recursively calling a physics update. 2012-01-17 19:50:10 +01:00
Erik Broes
1d4a9e1df5 [Bleeding] Make sure to close any open inventory windows before teleporting. Thanks md_5. 2012-01-17 19:49:52 +01:00
Zeerix
1d04305cea [Bleeding] Added event calls for healing and harming by potions 2012-01-17 19:49:11 +01:00
Zeerix
2cc70bb055 [Bleeding] Implemented Block.breakNaturally and Block.getDrops 2012-01-17 19:48:44 +01:00
Mike Primm
fb1cfea89e [Bleeding] Implemented Block.getLightFromSky() and Block.getLightFromBlocks() 2012-01-17 19:45:23 +01:00
Mike Primm
f7585e552d [Bleeding] Implemented World.getEntitiesByClass(Class<T>... classes) 2012-01-17 19:44:35 +01:00
Erik Broes
29096577b6 [Bleeding] Implement animal breeding API changes. 2012-01-17 19:44:11 +01:00
Nathan Adams
520cb5aa5b Fixed bug involving pistons and powered rails. This fixes BUKKIT-517. 2012-01-15 20:50:00 +00:00
Nathan Adams
864397d6c8 Added MinecartTrackLogic.java and BlockMinecartTrack.java for diff visibility 2012-01-15 19:05:36 +00:00
Nathan Adams
d3b4375d31 Fixed LongHashset incorrectly using read lock for popAll, and made it use write lock. This fixes BUKKIT-509 2012-01-15 18:49:16 +00:00
Nathan Adams
95a72d1c59 Implemented World.getWorldType 2012-01-15 17:44:15 +00:00
Nathan Adams
65f30fd99d Dragons now throw events when creating portals 2012-01-15 12:01:11 +00:00
Erik Broes
233de0de2c Some efficiency updates to hit-mechanics. Thanks mintplant for the PR. 2012-01-15 12:54:58 +01:00
Nathan Adams
a753ee587d Implemented allowFlight methods. Thanks to Qala for the PR. 2012-01-15 10:56:09 +00:00
Erik Broes
6d49b11338 Made World.playEffect a bit more efficient. Thanks mintplant for the PR. 2012-01-15 11:42:40 +01:00
Erik Broes
9c1534336c Fix broadcasting to people without permission. Fixes BUKKIT-464. Thanks grandwazir for the PR. 2012-01-15 11:32:00 +01:00
Erik Broes
d7cec38c38 Adding the option to suppress overload warnings as a bukkit.yml option. Thanks oloflarsson for the PR. 2012-01-15 11:11:41 +01:00
Nathan Adams
25050e38eb Disallow people spawning invalid entities using monster eggs. Thanks to md-5 for the PR. 2012-01-15 10:01:49 +00:00
Nathan Adams
390a79e098 Added ItemMonsterEgg.java for diff visibility 2012-01-15 10:01:42 +00: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
Nathan Adams
6495eee0c9 Throw an EntityBlockFormEvent for snowmen. Thanks to feildmaster. 2012-01-15 09:13:30 +00:00
Nathan Adams
93b3c96126 Don't allow explosions at the top of the world to wrap around. This fixes BUKKIT-232, thanks to wilsonsd for the PR. 2012-01-15 07:29:48 +00:00
Nathan Adams
23adb0d02f Minor optimization in BlockGrass by only checking light once instead of twice. Thanks to oloflarsson for the PR. 2012-01-15 05:58:56 +00:00
Nathan Adams
b369805590 Don't allow players with modded clients to send empty (0 char) chat messages. Thanks to a PR by robin0van0der0v 2012-01-15 05:52:46 +00:00
Nathan Adams
dfbcd36ab7 Fixed a further exploit with players attacking more things that they shouldn't. 2012-01-14 18:12:59 +00:00