Commit Graph

1610 Commits

Author SHA1 Message Date
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
Erik Broes
4c2f57592d Add some testing 2012-01-29 11:22:11 +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
Nathan Adams
2ab160e484 Implemented new PlayerDeathEvent methods for exp setting 2012-01-14 18:08:27 +00:00
Nathan Adams
548ccabe2f Fixed .createWorld not respecting container folder 100%. Thanks to plleg for the PR. 2012-01-14 17:50:31 +00:00
Nathan Adams
366d310186 Added .equals and .hashcode to CraftBlockState 2012-01-14 17:47:15 +00:00
Nathan Adams
657f458ba7 Player.setPlayerListName no longer counts colors towards the 16-char limit. Thanks to an (unfortunately old) PR by ZachBora. 2012-01-14 17:42:18 +00:00
Nathan Adams
d73c29aad7 Implemented entity.playEffect. Thanks to main-- 2012-01-14 17:36:47 +00:00
Nathan Adams
743c623d53 Modified ConsoleReader to use System.in instead of FileDescriptor.in. Big thanks to escortkeel for the (unfortunately very old) PR. 2012-01-14 17:12:45 +00:00
Feildmaster
6cc56b8c2c Added ItemDespawnEvent 2012-01-14 17:03:38 +00: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
Nathan Adams
52c526f313 Small optimization in EntityPlayer by caching the hashcode. Thanks to a very old PR by Belphemur. In addition, changed and slightly improved the hashcode formula for entities 2012-01-14 15:01:44 +00:00
Nathan Adams
77a12d4dce Correct casting for creature target typechecking 2012-01-14 14:49:41 +00:00
Nathan Adams
e6bb19f63a Fixed any chance of creatures .getTarget throwing a class cast exception - thanks to an old PR by garbagemule! 2012-01-14 14:45:56 +00:00
Nathan Adams
3d31c27864 Fixed players attempting to attack item entities - This fixes BUKKIT-341 2012-01-14 13:27:15 +00:00
Nathan Adams
d5438c30b9 Fixed block.getBiome returning null in new 1.1 biomes. This fixes BUKKIT-496 2012-01-14 13:14:14 +00:00
Nathan Adams
9da730c8e1 Made Mycel blocks throw BlockFade and BlockSpread events. This fixes BUKKIT-488. Thanks to tips48 for the pull request. 2012-01-14 12:56:54 +00:00
Nathan Adams
64ac337d4c Added BlockMycel.java for diff visibility 2012-01-14 12:54:20 +00:00
Nathan Adams
3ee8a2372c Additional commit to fix #BUKKIT-24 2012-01-14 12:46:23 +00:00
Nathan Adams
84b0310ae8 Fixed items retaining enchantment visual effects after all enchantments are lost
Issue #BUKKIT-24 - Upon removing enchantments, visual effect on item does not go away
2012-01-14 12:29:11 +00:00
Nathan Adams
0a2a38c25b Added NBTTagCompound.java for diff visiblity 2012-01-14 12:27:38 +00:00
Nathan Adams
9ac06e7720 Fixed informing players of supported Plugin Channels 2012-01-14 01:46:22 +00:00
md-5
4dc2065f54 Undo commit cc60920 to allow for proper integration with the new Bukkit enum values 2012-01-14 11:14:43 +11:00
Tahg
24fe96ada8 Add fix for new login protocol 2012-01-13 10:20:30 -05:00
Nathan Adams
b4f215e913 Implemented new Plugin Message API - see http://dinnerbone.com/blog/2012/01/13/minecraft-plugin-channels-messaging/ 2012-01-13 08:53:39 +00:00
md-5
d8052a63ed Fix NPE involving WorldTypes when using CraftServer.createWorld(WorldCreator creator) 2012-01-13 07:33:57 +01:00
Nathan Adams
8aaa528763 Fixed version in startup message 2012-01-12 22:33:31 +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
42e473783e Fixed our handling of network packets. 2012-01-10 23:21:38 -05:00
EvilSeph
194f54a90e Revert "Improved our handling of player interactions."
This reverts commit b4d325e0efe44bc74e69371fb11e7c3e1124b2a3.
2012-01-10 22:19:23 -05:00
EvilSeph
bff4d0f696 Improved our handling of player interactions. 2012-01-10 01:17:19 -05:00
Andrew Ardill
67dbe71bd9 Fix calling CombustEvent caused by enchantment
The CombustEvent created when an Entity attacks with a fire enchanted weapon
was never raised through the plugin manager. Thanks for pointing it out
EdGruberman!
2012-01-09 10:46:07 +11:00
EvilSeph
93aed40c4f Fixed filled bottles not appearing in inventory. Fixes BUKKIT-325. Thanks
md-5!
2012-01-07 22:06:41 -05:00
EvilSeph
13470ccf79 Inform the client when break events are cancelled. Thanks mrapple! 2012-01-07 20:26:23 -05:00
EvilSeph
86fef037e0 Fixed NPE in World. Fixes BUKKIT-306. Thanks Evenprime! 2012-01-07 19:12:38 -05:00
Tahg
b74a69041e Fix door physics and revert to pre 1.0 behavior 2012-01-07 18:38:05 -05:00
Andrew Ardill
483a619e8a FIX: CraftServer.getOfflinePlayers was not converting set->array well.
An incorrect method was being used to convert from Set<OfflinePlayer>
to OfflinePlayer[].

Relates to BUKIT-404
2012-01-02 10:25:43 +11:00
Erik Broes
bcdad9f837 Fix snowball not recognizing int damage values properly from Craftbukkit -- Thanks Sleaker 2011-12-29 20:15:06 +01:00
Andrew Ardill
60a2d12250 CraftItemStack: Make sure this.item is not null when cloning.
Fixes BUKKIT-424
2011-12-29 22:44:58 +11:00
Andrew Ardill
5124f8f462 Test cloning of CraftItemStacks created with null nms ItemStacks 2011-12-29 22:44:58 +11:00
EvilSeph
8b735bf47a Made startup completion time actually be reported in seconds. Again. 2011-12-27 20:10:49 -05:00
EvilSeph
8b21a0eeef Disconnected means disconnected. 2011-12-27 19:57:54 -05:00
sunkid
066a95769c fixed double firing of EntityDamageByEntityEvent 2011-12-27 20:21:28 +01:00
sunkid
5adcf526ab moved firing of ProjectileHitEvent for mojang projectiles 2011-12-27 19:33:28 +01:00
Andrew Ardill
fb8a45b648 Teach CraftServer.getOfflinePlayers to also give all online players.
This method is most useful when it gives all the players who have ever
logged on to the server. Previously, it was not distinguishing between
players who had previously logged on, and were currently logged in,
and those who had previously looged on and were not currently logged in.
A distinction was made, however, between those currently logged in,
but who had not logged in previously.

This commit ensures that all players who have ever logged in (and are
listed as either logged in, or they have a player .dat file) will be
returned by the mentioned method.

Fixes BUKKIT-404
2011-12-27 16:48:09 +11:00
Erik Broes
834c420257 Update for cleanup in Bukkit 2011-12-25 15:35:12 +01:00
Tahg
81c751a8a3 Fix for water and lava removal in creative mode BUKKIT-362 2011-12-20 21:20:43 -05:00
Tahg
474b7838a6 Fix for big trees not growing BUKKIT-304 and BUKKIT-365 (thanks M D) 2011-12-20 18:02:39 -05:00
Tahg
299a0d0919 Fixed signs being editable after placement. Fix for BUKKIT-364 2011-12-20 18:02:39 -05:00
Nathan Adams
972b2087f2 Fixed bonemeal not being consumed on failed growth attempts. This fixes BUKKIT-337. Thanks to md-5 for the pull request! 2011-12-19 16:41:55 +00:00
Nathan Adams
246d07482b Fixed world.getHighestBlockYAt(x,z) returning 0 for existing but not loaded chunks. This fixes BUKKIT-327. Thanks for dredhorse for the pull request! 2011-12-19 16:30:26 +00:00
Nathan Adams
bea7b1373e Fixed vanilla->bukkit world migration for The End. This fixes BUKKIT-326. Thanks to chewi for the pull request! 2011-12-19 16:26:11 +00:00
Nathan Adams
3648fb571d Make rcon .sendMessage each write on a new line. This fixes BUKKIT-353. Thanks to ks07 for the pull req. 2011-12-19 16:22:59 +00:00
Andrew Ardill
1c6adc1587 Fix error when cloning enchanted ItemStacks.
The existing method for cloning a Bukkit ItemStack fails to correctly copy
the underlying enchantments. Fix this by overriding .clone() in
CraftItemStack, cloning the underlying nms ItemStack correctly.

Fixes BUKKIT-360
2011-12-20 00:30:54 +11:00
Andrew Ardill
acfb4f2fbe Test cloning enchanted CraftItemStacks 2011-12-20 00:25:15 +11:00
Andrew Ardill
b0ab686964 Avoid some avoidable calls, clean PluginManager accessors 2011-12-19 18:32:35 +11:00
Sam Wilson
a7744ac751 Prevent VehicleEnterEvent being sent when player exits vehicle.
Fix for BUKKIT-223.

Issue BUKKIT-223: When a player exits a minecart or boat, both a
VehicleExitEvent and a VehicleEnterEvent are fired.  Only the
VehicleExitEvent should fire.

Reason for bug: This occurs because the VehicleEnterEvent is fired in
EntityBoat.b and EntityMinecart.b *any* time a player right-clicks on
a vehicle, whether the right-click is to enter the vehicle or exit it.

Fix: By moving the creation of VehicleEnterEvents from EntityBoat.b
and EntityMinecart.b to Entity.setPassengerOf, we can create either a
VehicleEnterEvent or a VehicleExitEvent, depending on whether the
player is entering or exiting a vehicle.
2011-12-19 18:22:38 +11:00
Nathan Adams
e1586e017a ... Fixed dispensers again! 2011-12-12 21:49:35 +00:00
Nathan Adams
5412d6f5a8 Fixed crash with dispensers dispensing dispensables 2011-12-12 21:23:46 +00:00
Nathan Adams
52faa415ef Fixed clients not seeing EXP update immediately after using .setTotalExp and level methods 2011-12-12 19:44:57 +00:00
EvilSeph
bd181fa04e The dead are not meant to walk. Fixes BUKKIT-95. Thanks Evenprime! 2011-12-12 12:50:10 -05:00
Nathan Adams
b653ce3c1c Implemented (offline)player date methods 2011-12-12 17:39:52 +00:00
Nathan Adams
91ff0b059d Made OfflinePlayer and Player share the same .equals and .hashcode 2011-12-12 15:34:49 +00:00
Andrew Ardill
82965eb10f Stop converting ItemStack to nms ItemStack by hand
This should fix many issues with enchantments being lost, as the method used takes care of enchantments.
Additionally, use the new nms ItemStack constructor in places where appropriate.

Fixes (at least part of) BUKKIT-7. Need to identify any further places to fix.
2011-12-13 01:46:55 +11:00
Andrew Ardill
d34e289434 Teach nms ItemStack constructor how to take enchantments 2011-12-13 01:45:58 +11:00
EvilSeph
14754c71a2 Added missing CraftBukkit comments in previous commit. 2011-12-12 03:16:50 -05:00
EvilSeph
322330e942 Fixed players not receiving movement packets after trying to leave The End. Fixes BUKKIT-289. 2011-12-12 02:55:20 -05:00
Andrew Ardill
d7d48d8229 Teach CraftWorld.spawn how to spawn a Giant
Fixes BUKKIT-235
2011-12-12 14:36:13 +11:00
Nathan Adams
b2af70e5c7 Implemented getKiller in LivingEntity 2011-12-11 16:05:27 +00:00
Nathan Adams
1fc8092ea6 Fixed corrupt mob spawners crashing on load - this fixes BUKKIT-69, BUKKIT-144 2011-12-11 15:59:55 +00:00
EvilSeph
88d1512507 Fixed issues with Ender Pearls. This fixes BUKKIT-248 and BUKKIT-264. 2011-12-11 02:13:48 -05:00
Tahg
77c07095bd removed changes to MobSpawner behavior 2011-12-10 17:07:32 -05:00
EvilSeph
de1a32bb16 Fixed spiders not respecting the EntityDeathEvent. This fixes BUKKIT-275. 2011-12-10 15:59:07 -05:00
EvilSeph
ec59dd9173 Fixed issues in our handling of The End as per BUKKIT-11.
This also addresses BUKKIT-27.
2011-12-10 15:15:27 -05:00
EvilSeph
84a19565d4 Fixed (Bukkit multiworld) maps as described in BUKKIT-142. 2011-12-10 15:15:26 -05:00
EvilSeph
32a913a222 Linked thundering and storming. 2011-12-10 12:20:24 -05:00
Erik Broes
f7649724fe Implemented CraftServer.getAllowEnd(). Thanks codename-B! 2011-12-09 18:55:36 +01:00
Nathan Adams
d36ac82c83 Fixed NPE in ServerConfigurationManager when sometimes attempting to flee the End 2011-12-09 17:09:21 +00:00
Nathan Adams
5e43c61fad Implemented onStructureGrow event, thanks to md-5. 2011-12-09 16:11:56 +00:00
Nathan Adams
076460b419 Added ItemDye and WorldGenHugeMushroom for diff visibility 2011-12-09 16:01:37 +00:00
Andrew Ardill
d75d1660b3 Make EntityEnderDragon call the ExplosionEventi
Rather than just creating the event and not worrying any further about it.
Thanks for the heads up snowleo!
2011-12-08 10:30:20 +11:00
Andrew Ardill
a25151306c Fix NPE as described in BUKKIT-245. Thanks snowleo 2011-12-08 10:26:39 +11:00
Andrew Ardill
b08b85bd26 Teach EnderDragon how to throw EntityExplosionEvents when it breaks blocks
We also teach CraftWorld how to explode an event, taken from
Explosion.a(boolean) (the code that breaks blocks and drops them on the ground).

The EnderDragon has a flag that slows it down when it hits unbreakable blocks:
Obsidian, White Stone or Bedrock. It might be useful to extend the event so that
plugins can set this.

Letting the API set the default yield for an explosion event has been
deprecated, so we now set the default yield using the appropriate constructor.
2011-12-08 00:31:21 +11:00
Andrew Ardill
4e318dd1c8 Implement new interface ConsoleCommandSender.
Also use abstracted ServerCommandSender to reduce complexity! Yay!
2011-12-07 17:46:30 +11:00
Andrew Ardill
93a4a9ba8c Teach MinecraftServer how to handle Remote Console commands.
This fixes BUKKIT-220. Thanks for the help bawoodruff!
2011-12-07 17:45:50 +11:00
Tahg
e4a839cbbc Fix for entity spawning and some code cleanup 2011-12-06 19:21:10 -05:00
Tahg
bc8f02788f Performance update to remove several very high counts of temp object creation 2011-12-06 08:52:45 -05:00
Tahg
eead44a692 fix NPE issue with CB inventory 2011-12-06 08:48:45 -05:00
Tahg
57112887ca Another fix for enchantments when moving around inventory. (Still glitches visually at times) 2011-12-05 04:02:59 -05:00
Andrew Ardill
bf60f44013 Teach EnderDragon how to throw EntityDamage events
Relates to BUKKIT-129
2011-12-05 19:23:54 +11:00
Andrew Ardill
b1a3aa602a Clean-up some events to maintain general style 2011-12-05 19:23:40 +11:00
Nathan Adams
8363eadcab CraftInventory.remove shouldn't care about amount (BUKKIT-138) 2011-12-05 01:51:33 +00:00
Nathan Adams
dbd3ff71fc Implemented server.getOfflinePlayers 2011-12-04 17:57:00 +00:00
Nathan Adams
c6d182286c Fixed some various CraftInventory bugs related to dropping Enchantments 2011-12-04 13:22:50 +00:00
Nathan Adams
1185ca75fc Fixed player teleporting not working with a certain method. This fixes BUKKIT-198 2011-12-04 13:22:31 +00:00
Nathan Adams
1dbebb4593 Fixed exp resetting upon teleporting cross-world (fixes BUKKIT-46. Again.) 2011-12-04 12:16:15 +00:00
Nathan Adams
98e062f0cf Fixed a few player-respawn issues. This should resolve BUKKIT-28 (Dupe bug), BUKKIT-29 (Poisons lasting), and BUKKIT-46 (XP resetting) 2011-12-04 12:10:02 +00:00
Nathan Adams
55a532c251 Indicate when a teleport event was triggered by ender pearls or unknown internal teleports 2011-12-04 11:04:14 +00:00
Andrew Ardill
645079be08 Make the EnderDragon respect experience drop set in death event 2011-12-02 21:50:57 +11:00
Andrew Ardill
f15c466e89 Add EntityEnderDragon 2011-12-02 21:50:57 +11:00
Andrew Ardill
480376ef50 Ensure that DeathEvents are raised even for non loot-dropping living entities
Related to BUKKIT-129
2011-12-02 21:38:51 +11:00
Andrew Ardill
c298c104ea Remove unused import 2011-12-02 21:38:50 +11:00
Andrew Ardill
8511ef3902 Register damage caused by PrimedTNT entities as BLOCK_EXPLOSION
This fixes BUKKIT-74
2011-12-02 16:55:23 +11:00
Nathan Adams
9fe5529791 Fixed ender pearls ignoring damage cancellation 2011-12-02 00:06:27 +00:00
Nathan Adams
0c958c0dff Fixed exploit with Ender Pearls, and made them perform a damage event. This fixes BUKKIT-38 2011-12-01 23:34:14 +00:00
Nathan Adams
6f79ca5c54 Don't disconnect a player if they're already disconnected (fixes BUKKIT-43) 2011-12-01 22:35:19 +00:00
Nathan Adams
6ea3cec762 Made world.spawnCreature just delegate to world.spawn. This fixes BUKKIT-57 2011-12-01 21:50:23 +00:00
Nathan Adams
062d94d6bc Implemented 1.0.1 fixes. This fixes BUKKIT-3, BUKKIT-39, BUKKIT-150 2011-12-01 21:43:54 +00:00
Erik Broes
650717ad32 Fire BlockPlace event when placing a lilypad, Thanks DiddiZ; Fixes BUKKIT-162 2011-12-01 21:43:46 +01:00
Erik Broes
da6b412fd2 Fix CraftBlock toString. 2011-12-01 21:03:23 +01:00
Erik Broes
51f724f24d Fix missing data-value when placing a stair-block (somehow gets set after the fact) - Fixes BUKKIT-40 2011-12-01 21:03:22 +01:00
Erik Broes
df935a5eed Add more information to 'Fetching addPacket' so we might be able to find the reason why it happens. Gives info for BUKKIT-32 2011-12-01 21:02:59 +01:00
Nathan Adams
d02a2eb49d Fixed rare NPEs with CraftItemStack. This fixes BUKKIT-51 2011-12-01 05:21:03 +00:00
Nathan Adams
4ce061ccbe Fixed Players from technically only dying once (thanks Qala) 2011-11-30 23:45:55 +00:00
Nathan Adams
a513406005 Fixed exp methods returning wrong values 2011-11-30 22:31:03 +00:00
Nathan Adams
8fbe78a2c3 Updated to use mc-dev rename revision 1 2011-11-30 21:46:19 +00:00
Erik Broes
8665161eaa Fixed multiworld loading of some worlds, yay for 1 letter fixes :D 2011-11-30 21:48:16 +01:00
Erik Broes
67924529a0 Fix drops of StairBlocks 2011-11-30 20:19:15 +01:00
Andrew Ardill
c6af919114 Fix CraftEnderCrystal so that it implements EnderCrystal, not EnderSignal.
Thanks zhuowei!
2011-11-30 09:21:54 +11:00
Andrew Ardill
9455ff1777 cleanup of projectiles 2011-11-29 21:30:37 +11:00
Andrew Ardill
a1ad0c0103 Add events for EntitySmallFireball 2011-11-29 21:26:55 +11:00
Andrew Ardill
2759809ecb Fix Craft Entity constructors and toStrings.
Also, standardise getHandle and clean up in general.
getHandle is now using the 'entity' member variable instead of
super.getHandle, as this reduces the number of chained calls needed.
2011-11-29 21:22:35 +11:00
Andrew Ardill
2b751111d2 Add EntitySmallFireball.java from nms 2011-11-29 18:32:16 +11:00
Andrew Ardill
3da00ee41a Implementation of reworked EntityCombustEvents
Also includes some extra comments, and a refactoring of the
PaintingBreakByEntity event that is raised when lighting strikes a painting.
2011-11-29 18:20:21 +11:00
Andrew Ardill
0c88f05c0d Fix CraftVillager constructor to only take an EntityVillager 2011-11-29 09:46:20 +11:00
Andrew Ardill
89338db181 BUKKIT-57 Fix using Bukkit interface instead of nmc Entity for type check.
Thanks nidefawl!
2011-11-29 09:42:09 +11:00
Nathan Adams
7db72dfd2c Doors and trapdoors should function correctly once again 2011-11-28 07:00:04 +00:00
Nathan Adams
91b673e375 Ignore empty messages (not just null) for join and quit 2011-11-28 06:21:35 +00:00
Nathan Adams
aa90f2ff9c Made Snowmen obey animal spawning rules (thanks Amaranth) 2011-11-28 05:18:41 +00:00
Nathan Adams
fe3756f7a0 Fixed Enchantments being lost on inventory.setItem 2011-11-28 05:17:05 +00:00
Nathan Adams
99771b7b72 Fixed magma slimes from being nonspawnable 2011-11-28 05:08:28 +00:00
Andrew Ardill
4b87704c5a Add new Entity types to CreatureSpawnEvent 2011-11-28 11:21:43 +11:00
Andrew Ardill
c0073e466d Add CraftMagmaCube 2011-11-28 11:17:04 +11:00
Nathan Adams
9c2b11ae94 Fixed gravel's enchantment detection 2011-11-27 17:00:20 +00:00
Nathan Adams
f6dc6745ed Fixed EntityDeathEvent not throwing for Ghasts and Pig Zombies (fixes issue #13) 2011-11-27 04:22:24 +00:00
Nathan Adams
8d49f500ec Fixed NPE in CraftPlayer.getBedSpawnLocation 2011-11-27 04:09:34 +00:00
Nathan Adams
402e3c26e1 Clone item enchantments unchecked 2011-11-27 03:58:43 +00:00
Nathan Adams
894ab9f949 Fixed issue with enchantments reseting under certain conditions 2011-11-27 02:45:34 +00:00
Nathan Adams
139ad8c34a Fixed crash when breaking gravel with a high fortune enchant 2011-11-27 01:41:56 +00:00
Nathan Adams
eb7bd5f23b Implemented Enchantment API 2011-11-27 01:37:00 +00:00
Erik Broes
ba608f55e4 Remove expensive debugcalls from production code 2011-11-26 18:27:39 +01:00
Nathan Adams
9907638130 Fixed ancient vanilla typo in offline mode warnings. Thanks to Alexitaly92 for catching it. 2011-11-26 01:09:04 +00:00
Nathan Adams
256d4ba555 Fixed the NPE in inventoryplayer once again, thanks to don4of4 2011-11-26 01:01:43 +00:00
Nathan Adams
8062d5c7be Added death events for blaze and snowman, fixed reported loot for chickens 2011-11-26 00:56:11 +00:00
Nathan Adams
b9aaf3977c Fixed NPE travelling to the nether from a custom world 2011-11-25 21:10:16 +00:00
Nathan Adams
197fdbd84c Nether portals should now only work in the default world 2011-11-25 20:54:29 +00:00
Nathan Adams
bb16e6c5c1 Fixed portal event reporting wrong from-world 2011-11-25 20:05:51 +00:00
Nathan Adams
a105ec32b3 Fixed comment 2011-11-25 03:50:10 +00:00
Nathan Adams
ef75a286ac Implemented world.getWorldFolder 2011-11-25 03:47:12 +00:00
Nathan Adams
20a0b0a9be Changed Entity.isDead to be aware of health for living entities 2011-11-25 00:32:44 +00:00
Nathan Adams
620f101487 Another attempt at the vanilla tile entity bug 2011-11-25 00:15:00 +00:00
Nathan Adams
e31cedf583 Fixed NPE in player inventory + don't ignore the cancel state of world unloads 2011-11-24 20:27:16 +00:00
Nathan Adams
a7664a104f Implemented new age methods in animals, and made spawned animals via eggs properly age back to children 2011-11-24 20:16:43 +00:00
Nathan Adams
47b4406b7e I've either fixed going to The End, or made it worse. I'm sure we'll find out soon! 2011-11-24 20:00:55 +00:00
Nathan Adams
61edd36378 Made BlockStates inform playes upon update 2011-11-24 18:48:23 +00:00
Nathan Adams
c6beae8872 Fixed allow-nether being ignored 2011-11-24 18:48:01 +00:00
Nathan Adams
de7402ea8e Fixed fireballs sleeping on the job 2011-11-23 03:33:53 +00:00
Nathan Adams
03762600df Fixed trapdoors + few comments 2011-11-23 00:08:56 +00:00
Nathan Adams
929e5ff6c7 Implemented new biome values 2011-11-22 21:21:33 +00:00
Nathan Adams
774e59e179 Fixed vanillas tile-entity placement bug (thanks Moo0) 2011-11-22 21:14:42 +00:00
Nathan Adams
a3399c6431 Fixed crash on right clicking dragon eggs 2011-11-21 22:56:17 +00:00
Nathan Adams
a83fc1d6a2 Implemented new EnderCrystal entity class 2011-11-21 22:39:33 +00:00
sunkid
0a8bd56f16 fixed spawn method for projectiles 2011-11-20 18:21:21 -08:00
Nathan Adams
246ff3b352 Made the new Status info list plugins (test it out at http://dinnerbone.com/minecraft/tools/status/ ) 2011-11-20 00:01:57 -08:00
Erik Broes
345ea36c7b Update for 1.0.0 2011-11-20 00:01:33 -08:00
Nathan Adams
589f66bd1b Added new --noconsole command argument, thanks to mkurzeja for the idea 2011-11-05 20:15:19 +00:00
Nathan Adams
b1671be875 Implemented bukkit versioning 2011-10-31 04:03:47 +00:00
Tahg
c69f5fda9b added some missing comments for falling entities 2011-10-27 20:03:28 -04:00
Erik Broes
2f1513cae0 Add missing CraftBlock hashCode() 2011-10-20 23:20:26 +02:00
sk89q
695f25a32b Added a case previously not covered by VehicleDestroyEvent for boats. 2011-10-13 01:17:04 -07:00
Tahg
8c02599256 fixed mapping of Art <-> EnumArt in Paintings 2011-10-12 14:13:11 -04:00
Nathan Adams
7d153a9f58 Added header to bukkit.yml 2011-10-12 13:26:07 +01:00
Nathan Adams
75d9b04deb Added new bukkit.yml entry (settings -> world-container) to control the directory worlds are stored in 2011-10-12 04:25:03 +01:00
Nathan Adams
f4229fcadd Implemented getPlayer of OfflinePlayer 2011-10-11 14:52:07 +01:00
Nathan Adams
fd57c7111c Fixed fauxSleeping check on leaving bed 2011-10-11 02:38:32 +01:00
Nathan Adams
af1838305c Implemented entity age methods 2011-10-11 02:23:10 +01:00
Nathan Adams
ac0641887b Fixed Explosion cast error 2011-10-11 02:12:22 +01:00
Nathan Adams
a49a358349 Changing the blockList on explosions now correctly updates which blocks are changed 2011-10-11 00:37:39 +01:00
Nathan Adams
7e005474b6 Added hashCode and equals to CraftWorld 2011-10-10 22:45:52 +01:00
Nathan Adams
1195944c90 Removed deprecated ConcurrentSoftMap 2011-10-10 22:05:35 +01:00
Nathan Adams
c818414fd5 Updated to the new Configuration api 2011-10-10 21:10:48 +01:00
Erik Broes
255778b388 Fix CraftBlock.equals as they are not singletons anymore 2011-10-07 11:48:14 +02:00
Tahg
d39c363e5c another attempt at mob spawners - 3rd time's the charm? 2011-10-06 11:02:39 -04:00
Tahg
696349884b don't store weak references for EmptyChunks or cache CraftBlocks 2011-10-05 11:36:03 -04:00
Tahg
8ab90b344c fix for spawners not properly checking whether an entity can spawn 2011-10-05 11:36:02 -04:00
Tahg
d74145ef23 hopeful fix for blocks not being pistons when they should be 2011-10-05 11:36:02 -04:00
EvilSeph
73f419197a Fixed Skeletons not dropping experience. 2011-10-04 10:04:45 -04:00
EvilSeph
09801eeabf Exempted moving pistons from the tile entity fix. 2011-10-03 18:18:14 -04:00
EvilSeph
1f4e671af9 Fixed Silverfish having a base damage of 0. 2011-10-03 17:40:53 -04:00
EvilSeph
9177c205b4 Revert "Added callback line of sight methods. Thanks xZise!"
This reverts commit 49cf586f969626bdb59632bb2fd5adfe79d38057.
2011-10-03 15:17:34 -04:00
EvilSeph
11b388ff39 Fixed multiworld difficulty.
World difficulty was incorrectly being set to 0 or 1 on reload depending
on spawn-monsters instead of the difficulty server property.
2011-10-03 10:53:17 -04:00
EvilSeph
7c5007c016 Added Difficulty API. 2011-10-03 10:29:24 -04:00
sunkid
3a224266c4 Fixed PlayerChangedWorld event.
Moved the call of PlayerChangedWorldEvent to more appropriate location
2011-10-03 00:28:47 -04:00
EvilSeph
3b2347093f Added missing call for WorldUnload event. 2011-10-02 23:16:58 -04:00
EvilSeph
aaefd4ecb5 Added callback line of sight methods. Thanks xZise! 2011-10-02 23:04:03 -04:00
Dinnerbone
80c2bc266a Minimal diffs! Move methods for the new list-name away from nms 2011-10-03 00:37:44 +01:00
Dinnerbone
bf09121354 Attempt to fix any damage caused by misplaced tile entities 2011-10-03 00:14:06 +01:00