Commit graph

1705 commits

Author SHA1 Message Date
CraftBukkit/Spigot
24da745633 Remove the delayed tile entity removal, fixes issues with recursive removal of comparators
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-21 17:32:35 +00:00
CraftBukkit/Spigot
63a21cd261 SPIGOT-231 and SPIGOT-229. Fix itemframe behaviour.
Confirmed fix for itemframes not showing up. Based on the code in
CraftPainting.
Besids this fix we now pass null itemstacks directly to the
EntityItemFrame to allow the removal of items in ItemFrames.

By: FearThe1337 <admin@fearthe1337.com>
2014-12-17 23:45:49 +01:00
CraftBukkit/Spigot
2313c026d7 aW() does re register Attributes which causes a IllegalArgumentException. This fixes it and sets the Guardian back to a normal Guardian without any problem.
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-20 16:58:45 +01:00
CraftBukkit/Spigot
e433349118 Remove redundant pom entries.
By: md_5 <git@md-5.net>
2014-12-19 09:08:27 +11:00
CraftBukkit/Spigot
a0583c97d5 Implement NameTag visibility API for Teams.
By: Adam Thomas <aet2505@gmail.com>
2014-11-29 02:54:00 +00:00
CraftBukkit/Spigot
6ef454742b Use value from new potion effect particle visibility API.
By: 0x277F <0x277F@gmail.com>
2014-12-05 13:43:15 -07:00
CraftBukkit/Spigot
13e3cbe255 Remove outdated CONTRIBUTING.md
By: md_5 <git@md-5.net>
2014-12-18 10:36:24 +11:00
CraftBukkit/Spigot
2f16839e81 SPIGOT-228: Don't deserialize meta of written books twice
By: FrozenBrain <carstenbamsti@gmail.com>
2014-12-16 15:05:43 +01:00
CraftBukkit/Spigot
7cbb980dac SPIGOT-236 - fix notes playing wrongly.
Formula is from BlockNote (NMS), slightly formatted different to be smaller.

By: FearThe1337 <admin@fearthe1337.com>
2014-12-17 17:00:10 +01:00
CraftBukkit/Spigot
def737adc4 Spigot-149 - Save map in primary world.
By: FearThe1337 <admin@fearthe1337.com>
2014-12-17 16:23:36 +01:00
CraftBukkit/Spigot
5820e42b8d SPIGOT-210: Remove the exception when dropping a non-existant task
If the server crashes during chunk generation then the chunk would have never
been added to the executor, this caused a second exception to be thrown when
the server shutdown from the first exception

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-16 10:53:29 +00:00
CraftBukkit/Spigot
06b6d694ae Use SpecialSource Maven pluging for compile time remapping.
By: md_5 <git@md-5.net>
2014-12-16 10:11:06 +11:00
CraftBukkit/Spigot
15691a2ab1 SPIGOT-152, SPIGOT-197: Add a system to handle new tags before an api is ready for them
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-15 15:44:57 +00:00
CraftBukkit/Spigot
77a6c4c7a7 SPIGOT-206 Further checks and fixes for Hanging entities.
Adds an check for existing entities before selecting the location allowing
for hanging entities to be spawned in blocks where there already is an
hanging entity at the default rotation.
Fixes the CraftHanging setRotation function to use the new 1.8 logic.

By: Stefan <admin@fearthe1337.com>
2014-12-14 17:22:59 +01:00
CraftBukkit/Spigot
83a169e567 SPIGOT-212: Modify the vanilla change gamemode method to call our version
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-15 14:14:59 +00:00
CraftBukkit/Spigot
adba907d67 Don't decrement ItemStack when CreatureSpawnEvent is canceled - addresses SPIGOT-87
By: DemonWav <demonwav@gmail.com>
2014-12-13 23:59:49 -06:00
CraftBukkit/Spigot
4e3582a8db Fix entities freezing when a chunk is regenerated
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-15 13:46:41 +00:00
CraftBukkit/Spigot
63586bedc5 Swap out always-OP vanilla system for Bukkit OP checking in command blocks
By: Suddenly <suddenly@suddenly.coffee>
2014-12-15 10:04:42 +00:00
CraftBukkit/Spigot
e08cf83757 Implement WorldBorder API
By: TheCutter <info@thecutter.net>
2014-12-13 00:51:31 +01:00
CraftBukkit/Spigot
98f24029bb Merge pull request #47 in SPIGOT/craftbukkit from ~BAMMERBOM/craftbukkit:master to master
* commit '19809a048c1b1d73d0b7d6a833a5c638364f2026':
  Fix making craftbukkit patches.

By: md_5 <me@md-5.net>
2014-12-13 23:44:36 +01:00
CraftBukkit/Spigot
5e7f15a6d6 SPIGOT-211: Fix mistake in EntityHuman breaking bed spawns
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-13 22:35:37 +00:00
CraftBukkit/Spigot
19809a048c Fix making craftbukkit patches.
By: Bammerbom <j.brouwer@filternet.nl>
2014-12-13 20:04:54 +01:00
CraftBukkit/Spigot
23b276843f Fix the spawning of HangingEntities by picking the right direction
Related to SPIGOT-206.
Currently HangingEntities should be located next to the block they are
hanging on. With the direction set to the opposite of the block they
are hanging from.
This code is modified to find the correct direction.

By: Stefan <admin@fearthe1337.com>
2014-12-13 17:26:00 +01:00
CraftBukkit/Spigot
d4fdb3d6f7 Support vanilla's direction tag for fireballs
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-13 12:34:12 +00:00
CraftBukkit/Spigot
33abca2c69 Rework the vanilla link fix so that hover/click events aren't lost
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-13 10:26:06 +00:00
CraftBukkit/Spigot
ed9ee15a91 SPIGOT-199: Default to white instead of black for chat messages
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-13 09:36:35 +00:00
CraftBukkit/Spigot
e793ec19c4 Handle cross dimensional teleports and events.
By: md_5 <git@md-5.net>
2014-12-13 09:54:59 +11:00
CraftBukkit/Spigot
872b1ff9c2 Use CraftChatMessage.fromComponent so that colors remain in sent messages
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-12 21:46:12 +00:00
CraftBukkit/Spigot
e589c32ef5 SPIGOT-189: Remove ListenerWrapper in favour of just doing it in EntityPlayer
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-12 19:27:37 +00:00
CraftBukkit/Spigot
4b848f5848 Wrap player's ICommandListener so that our permission system can handle permission
for vanilla commands

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-12 10:33:54 +00:00
CraftBukkit/Spigot
63d1f2368e Ignore errors when parsing books and treat them as old books
In previous versions there was a mistake with book handled which
may leave books in a broken state, this tries to handle that

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-12 09:40:48 +00:00
CraftBukkit/Spigot
130ed6bfe6 [Vanilla Fix] Process links in broadcasted messages.
By: md_5 <git@md-5.net>
2014-12-12 18:20:42 +11:00
CraftBukkit/Spigot
6a5746f547 Default to Y=1 when a Y=0 BlockPosition is found to be used in the BiomeDecorator. This prevents the "n must be positive" Crash due to the fact that sometimes the heightMap can be wrong calculated. Fixes SPIGOT-91
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-03 00:24:19 +01:00
CraftBukkit/Spigot
5e8651df4c Update JLine
Later releases include the TerminalLineSettings patch. Also move call to AnsiConsole.systemInstall() to avoid patching AnsiWindowsTerminal.

By: zreed <zach@digitalforgemc.com>
2014-12-06 13:55:50 -05:00
CraftBukkit/Spigot
09c3af5ae8 JLine includes Jansi
By: zreed <zach@digitalforgemc.com>
2014-12-06 13:46:27 -05:00
CraftBukkit/Spigot
aae99bf7b4 Rebuilt patches
By: md_5 <git@md-5.net>
2014-12-12 11:05:04 +11:00
CraftBukkit/Spigot
4a80093c07 Fix a client crash issue involving maps.
By: FearThe1337 <admin@fearthe1337.com>
2014-12-09 20:44:59 +01:00
CraftBukkit/Spigot
e8d166605c Implement displayblocks for minecarts (SPIGOT-14).
By: FearThe1337 <admin@fearthe1337.com>
2014-12-10 14:41:54 +01:00
CraftBukkit/Spigot
6a05856d6c using generator settings from WorldCreator to specify presets for FLAT or CUSTOMIZED world types
By: TheCutter <info@thecutter.net>
2014-12-05 19:55:52 +01:00
CraftBukkit/Spigot
c2571d4821 Add implementation of the elder Guardian API
By: md_5 <git@md-5.net>
2014-12-12 10:56:20 +11:00
CraftBukkit/Spigot
4a6bb1a983 Update gson to 2.2.4
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 22:54:06 +00:00
CraftBukkit/Spigot
4620e4931a Merge pull request #43 in SPIGOT/craftbukkit from ~FEARTHE1337/craftbukkit:perm to master
* commit '9a9ef627b04e670233c175c25cf2d9bffb586d87':
  Add the new minecraft command permission nodes.

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 21:43:19 +01:00
CraftBukkit/Spigot
9a9ef627b0 Add the new minecraft command permission nodes.
Previously bukkit ones were in bukkit. Moved to CraftBukkit with new prefixes.

By: FearThe1337 <admin@fearthe1337.com>
2014-12-11 21:36:02 +01:00
CraftBukkit/Spigot
f337b96b9e Re-enable selectors for players and the console using vanilla commands
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 20:05:48 +00:00
CraftBukkit/Spigot
7d1aaec723 Rewrite book handling, Fixes SPIGOT-182 and part of SPIGOT-164
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 19:38:09 +00:00
CraftBukkit/Spigot
102d551006 Fixed mis-placed CraftBukkit comments
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 00:44:30 +00:00
CraftBukkit/Spigot
2685b6f8ff Remove old dev comments
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 00:40:25 +00:00
CraftBukkit/Spigot
755a5a33a8 SPIGOT-179: Fix the age counter not being reset for cacti and reeds
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-11 00:13:27 +00:00
CraftBukkit/Spigot
4ff244c7c3 Fix per a world world borders
Well... mostly anyway

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 19:16:37 +00:00
CraftBukkit/Spigot
401aa37842 SPIGOT-143: Fix various animal stuff not being canceled by damageEntity.
Fixes wolves and ocelots standing up when the damag event is being canceled.
Also stops breeding mode reset by the same event.

By: FearThe1337 <admin@fearthe1337.com>
2014-12-09 15:40:38 +01:00
CraftBukkit/Spigot
1aa3edf985 Fix another missed scoreboard rename
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 17:04:45 +00:00
CraftBukkit/Spigot
9221e55ec6 Merge pull request #26 in SPIGOT/craftbukkit from ~AIKAR/craftbukkit:applyPatches to master
* commit '7fb737c0e7a10ca6612849194c2fae50af291727':
  Improve patch scripts, add applyPatches.sh

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 17:57:01 +01:00
CraftBukkit/Spigot
d31cca27ae Merge pull request #42 in SPIGOT/craftbukkit from ~CYBERTIGER/craftbukkit:save-gamerules to master
* commit 'd5674b66a65574239efb9cedcd7314674beff137':
  SPIGOT-169: Save level.dat for non-primary worlds.

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 17:48:26 +01:00
CraftBukkit/Spigot
d5674b66a6 SPIGOT-169: Save level.dat for non-primary worlds.
By: Antony Riley <antony@cyberiantiger.org>
2014-12-10 18:45:44 +02:00
CraftBukkit/Spigot
5b8ab1769a SPIGOT-173: Fix missed renames in EntityHuman
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 16:27:56 +00:00
CraftBukkit/Spigot
f2035a590a Fix /gamerule always targeting the main world
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-10 16:23:18 +00:00
CraftBukkit/Spigot
da9e41c84a Fix crash with null thorns damager
By: md_5 <git@md-5.net>
2014-12-10 15:57:27 +11:00
CraftBukkit/Spigot
06346a2077 Remove CommandWorldBorder patch as this is handled in the command wrapper
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-09 14:02:30 +00:00
CraftBukkit/Spigot
d41deca97c Make sure to catch extra interact packets from the client
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-09 12:20:44 +00:00
CraftBukkit/Spigot
ce79f2c97c SPIGOT-162: Fix cancelling RIGHT_CLICK_BLOCK not cancelling used items
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-09 09:38:52 +00:00
CraftBukkit/Spigot
19e7299b99 Add some missing Tile Entities
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 13:38:16 +00:00
CraftBukkit/Spigot
6ee362dcff Add CraftMetaTileEntity, fixes the previously broken tests
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 13:22:56 +00:00
CraftBukkit/Spigot
9284d1c164 Minor bug fixes
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 12:18:50 +00:00
CraftBukkit/Spigot
1c82ce69db Disable some tests whilst issues with them are looked into
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 11:50:45 +00:00
CraftBukkit/Spigot
5af21473a1 Fix isEmpty and hashCode for CraftMetaItem
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 11:42:37 +00:00
CraftBukkit/Spigot
ede266a186 Fix BlockEntityTag being stripped from items
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 11:36:31 +00:00
CraftBukkit/Spigot
5fff5eb88c Clone the vector that is passed to the VelocityEvent
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 11:26:58 +00:00
CraftBukkit/Spigot
ddbbeb2729 Merge pull request #35 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-128 to master
* commit '3d003bf9cc06d5a7b4f1748a91dbc34f8dc92019':
  Fire the VelocityEvent when an EntityHuman got attacked. Fixes SPIGOT-128

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 12:22:49 +01:00
CraftBukkit/Spigot
0251357353 Merge pull request #34 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-135 to master
* commit '762f13e20ddb8500413d5c87355e062e88126abc':
  Add missing DispenseBehavior for Fireworks. Fixes SPIGOT-135

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 12:20:52 +01:00
CraftBukkit/Spigot
4b0f451938 Filter extra right click air interaction events
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 11:04:22 +00:00
CraftBukkit/Spigot
0b4776d69d Make CraftMetaItem's attribute handling less strict on types
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-07 10:48:14 +00:00
CraftBukkit/Spigot
f981b74e45 Fix worldborders showing from the wrong world
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-06 22:26:49 +00:00
CraftBukkit/Spigot
3d003bf9cc Fire the VelocityEvent when an EntityHuman got attacked. Fixes SPIGOT-128
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-06 22:27:04 +01:00
CraftBukkit/Spigot
762f13e20d Add missing DispenseBehavior for Fireworks. Fixes SPIGOT-135
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-06 22:13:04 +01:00
CraftBukkit/Spigot
5172dd7274 Disconnect old players before firing PlayerLoginEvent and fire a
PlayerQuitEvent straight after a PlayerKickEvent

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-06 20:53:57 +00:00
CraftBukkit/Spigot
2fc1f0435e SPIGOT-80: Fix players being invisible after teleporting
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-06 20:17:47 +00:00
CraftBukkit/Spigot
1dca486d41 Force the player to be saved when disconnecting duplicates
Allows the current player to grab the updated file

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-06 11:16:18 +00:00
CraftBukkit/Spigot
1bd6ce4972 Readd missed diff in EntityEnderCrystal
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 23:42:08 +00:00
CraftBukkit/Spigot
b8e4f690f8 Add basic support for executing commands from signs
TODO: Wrap the player in to allow for plugins to handle it better

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 23:10:47 +00:00
CraftBukkit/Spigot
af5d08b285 Remove quotes from version hash by updating the gitdescribe version
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 21:33:57 +00:00
CraftBukkit/Spigot
42cddd043c Merge pull request #30 in SPIGOT/craftbukkit from ~ZREED/craftbukkit:master to master
* commit '475a7cb5793692771e726cbd9d76ad9fc25bc3eb':
  Use PlayerList's UUID->EntityPlayer map in CraftServer.getPlayer(UUID)

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 18:22:38 +01:00
CraftBukkit/Spigot
75200edf67 SPIGOT-117: Fix sticky pistons firing for the wrong direction when pulling blocks backwards
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 15:11:22 +00:00
CraftBukkit/Spigot
aeb97516bf SPIGOT-123: Force inventory updates on crafting to correctly support custom recipes
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 15:04:01 +00:00
CraftBukkit/Spigot
db6b2cb6d5 Fix the chunks being blocked from unloading based on the keepSpawnInMemory flag
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-05 11:17:47 +00:00
CraftBukkit/Spigot
475a7cb579 Use PlayerList's UUID->EntityPlayer map in CraftServer.getPlayer(UUID)
By: zreed <zach@digitalforgemc.com>
2014-12-05 01:44:14 -05:00
CraftBukkit/Spigot
986787060f Serialize baseColor as a string
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-04 10:10:24 +00:00
CraftBukkit/Spigot
6ab18a95eb Merge pull request #27 in SPIGOT/craftbukkit from ~AIKAR/craftbukkit:fixWorldSaveEvent to master
* commit '41eaea21ca7b66b835f7bfd21daa52ab6a84e7c5':
  Move WorldSaveEvent to proper location

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-03 20:37:32 +01:00
CraftBukkit/Spigot
41eaea21ca Move WorldSaveEvent to proper location
calling CraftWorld.save() currently does not call WorldSaveEvent, and WorldSaveEvent could fire on worlds that have saving disabled.

New location will always fire during a world save and only during an actual save.

By: Aikar <aikar@aikar.co>
2014-12-03 14:35:33 -05:00
CraftBukkit/Spigot
7fb737c0e7 Improve patch scripts, add applyPatches.sh
When working on CraftBukkit, one may need to update to the latest.
Before adding new work, you would need to rebuild your patched files to latest.
Currently BuildTools does this for you, but BuildTools does not support segment based actions.

So this new script replicates the behavior of rebuilding the patched files using nms-patches.

BuildTools can then be updated to simply call this script.

Also, improved makePatches by removing dos2unix. This command does not exists on all systems,
and can very simply be replaced by sed.

Finally, hard coded path to /ls as a user may of aliased ls to default change the format, so
call it directly to ensure we get the desired behavior.

By: Aikar <aikar@aikar.co>
2014-12-03 14:19:09 -05:00
CraftBukkit/Spigot
8e686281f5 Fix a issue with skulls that have a blank owner
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-03 19:04:19 +00:00
CraftBukkit/Spigot
f03d75f288 Merge pull request #5 in SPIGOT/craftbukkit from ~DMCK2B/craftbukkit:feature/implementDepthStrider to master
* commit 'c42ae2c5e4320f833e2de0b0347d22fe3ae80c5e':
  Implement the Depth Strider enchantment for the API

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-03 17:41:27 +01:00
CraftBukkit/Spigot
975c29d381 Add ANVIL and BEACON custom inventories. Also handle a few special cases for inventory sizes
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-01 03:19:24 +01:00
CraftBukkit/Spigot
7e5da5bf6f Minor formatting fixes
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-03 11:08:35 +00:00
CraftBukkit/Spigot
eb81446ffc Fix spawn reason for mob eggs
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-03 10:52:18 +00:00
CraftBukkit/Spigot
22718ff198 Missed a case
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 23:57:29 +00:00
CraftBukkit/Spigot
68581f9ef5 Don't wrap the y coordinate in World.getBlockAt
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 23:54:38 +00:00
CraftBukkit/Spigot
e5627edb48 SPIGOT-102: Fix the player being teleported up 1.62 blocks on cancelling the PlayerMoveEvent
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 20:39:30 +00:00
CraftBukkit/Spigot
1493ccc3e7 Fix selectors in non-bukkit commands for command blocks
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 20:24:03 +00:00
CraftBukkit/Spigot
b6fdbaa826 Filter invalid bounding boxes for entities
This should prevent issues caused by broken horses

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 17:53:34 +00:00
CraftBukkit/Spigot
79c1790d72 Fix a missed case for weather transitions on join
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 16:38:16 +00:00
CraftBukkit/Spigot
042816193c Merge pull request #22 in SPIGOT/craftbukkit from ~FEARTHE1337/craftbukkit:fixCraftMetaBanner to master
* commit 'f75756a2e3542f67099dc24b283cc601360a87cf':
  Fix CraftMetaBanner serialization.

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 16:47:25 +01:00
CraftBukkit/Spigot
10e3879b01 SPIGOT-96/BUKKIT-5016: Fix thunder storms not darkening the sky and transitions being broken.
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 15:13:07 +00:00
CraftBukkit/Spigot
f75756a2e3 Fix CraftMetaBanner serialization.
By: BuildTools <unconfigured@null.spigotmc.org>
2014-12-02 15:29:04 +01:00
CraftBukkit/Spigot
d1fd719ab3 Merge pull request #21 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-93 to master
* commit 'b534c74a2093a6bec286c9312172b904ab1743ad':
  Forgot that i work in Bukkit... Screw sun conventions
  Implementation for the new rotation values. Fixes SPIGOT-93

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 13:23:46 +01:00
CraftBukkit/Spigot
05d746d1e4 [Slightly breaking] setType(Id) will not longer reuse the previous data value
of the block and instead reset the the data value to the block's default

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 12:03:02 +00:00
CraftBukkit/Spigot
503f116feb Fix tree related crashes due to lazy BlockState updating
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-02 11:51:49 +00:00
CraftBukkit/Spigot
b534c74a20 Forgot that i work in Bukkit... Screw sun conventions
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-02 00:20:31 +01:00
CraftBukkit/Spigot
db831ecc70 Implementation for the new rotation values. Fixes SPIGOT-93
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-12-02 00:13:25 +01:00
CraftBukkit/Spigot
4955ab3981 SPIGOT-85: Fix NPE in monster spawners when right-clicked with invalid spawn eggs
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-12-01 10:08:17 +00:00
CraftBukkit/Spigot
91c612a012 Fix show player
By: Adam Thomas <aet2505@gmail.com>
2014-11-30 20:12:54 +00:00
CraftBukkit/Spigot
e34474ce6a Another attempt of fixing OOB Horses. Just remove them from the world instead of setting it dead.
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-30 19:02:56 +01:00
CraftBukkit/Spigot
939819ae90 Add missing CB comment
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 16:35:44 +00:00
CraftBukkit/Spigot
71ba3c651a Force chunk loading in EntityHuman.getBed, Fixes SPIGOT-64
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 16:33:02 +00:00
CraftBukkit/Spigot
fa41053bdd Merge pull request #13 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-20 to master
* commit '6fe435983b69ba2afbb77fd708e2988e6e3e778a':
  Update the correct Scoreboard Criteria when a health change comes in. This fixes SPIGOT-20

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 17:10:32 +02:00
CraftBukkit/Spigot
96856d7380 Add a somewhat hacky fix for plugins converting between book types
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 15:06:14 +00:00
CraftBukkit/Spigot
6fe435983b Update the correct Scoreboard Criteria when a health change comes in. This fixes SPIGOT-20
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-30 13:34:38 +01:00
CraftBukkit/Spigot
56cceb9b4e Fix Chunk.getTileEntities() (Fixes SPIGOT-62)
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 12:15:56 +00:00
CraftBukkit/Spigot
9e7e5be4de Fix LEFT_CLICK_AIR
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 12:10:30 +00:00
CraftBukkit/Spigot
15cc288f9a Add a flag to correctly convert signs to 1.8
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 11:23:45 +00:00
CraftBukkit/Spigot
a621457aeb Correct the return value of getPlayerListName
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-30 10:30:32 +00:00
CraftBukkit/Spigot
c9b7b858a2 Horses spawned under Y 0 cause CraftBukkit to crash. This happens a lot since people keep using bugged Horses for Holographics
Remove out of bounds horses, fixes an vanilla bug. Fixes SPIGOT-58

By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-30 00:53:25 +01:00
CraftBukkit/Spigot
85573908bc Optimize the invalid block fixing
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 23:25:17 +00:00
CraftBukkit/Spigot
f7acac0d40 Treat LeavesDecayEvent as canceled if a plugin changes the block
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 22:31:55 +00:00
CraftBukkit/Spigot
5a1e8c93bd Fix canceling BlockPlaceEvent
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 21:17:57 +00:00
CraftBukkit/Spigot
341e9794bc Remove old debug info
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 21:09:04 +00:00
CraftBukkit/Spigot
beb559e351 Merge pull request #8 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-46 to master
* commit 'bfac8ebeea3871337381be31c91183c4025174a9':
  Corrected WorldData patch file
  Rewrite the level.dat properly. This fixes SPIGOT-46

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 22:14:27 +02:00
CraftBukkit/Spigot
63af42bb1e Improve the invalid block handling
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 20:00:52 +00:00
CraftBukkit/Spigot
bfac8ebeea Corrected WorldData patch file
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-29 20:36:57 +01:00
CraftBukkit/Spigot
4e7ba83133 Rewrite the level.dat properly. This fixes SPIGOT-46
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-29 20:33:33 +01:00
CraftBukkit/Spigot
be1b43c2bb Just only hold the last BlockState update for the same location. This fixes SPIGOT-44
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-29 19:08:50 +01:00
CraftBukkit/Spigot
f973c68364 Merge pull request #6 in SPIGOT/craftbukkit from ~MIKEPRIMM/craftbukkit:mikeprimm/SPIGOT-30 to master
* commit 'ddd63044a642a7794f92650a4e3b96f10bc29b9f':
  SPIGOT-30: Fix restoring of WorldData when loading worlds

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 19:51:05 +02:00
CraftBukkit/Spigot
739bc35bde Fix a vanilla issue which causes invalid data values on blocks to turn to air
Worlds already loaded in 1.8 can still be saved by this but tile entities will
be lost

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 17:31:40 +00:00
CraftBukkit/Spigot
3bcc7b2868 Fire EntityDamageEvent for armor stands
Somewhat of a lazy way of doing it but it will do for now

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 16:05:55 +00:00
CraftBukkit/Spigot
ddd63044a6 SPIGOT-30: Fix restoring of WorldData when loading worlds
By: Mike Primm <mike@primmhome.com>
2014-11-29 09:34:54 -06:00
CraftBukkit/Spigot
c42ae2c5e4 Implement the Depth Strider enchantment for the API
By: Suddenly <suddenly@suddenly.coffee>
2014-11-29 15:13:43 +00:00
CraftBukkit/Spigot
3d5cd0953f Ignore invalid blocks in ChunkSnapshots
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 15:05:28 +00:00
CraftBukkit/Spigot
6c7602a196 Minecraft by default only uses the World at index 0 for the WorldBorder command. This fixes SPIGOT-12
By: Fabian Faßbender <fabian.fassbender42@googlemail.com>
2014-11-29 00:38:21 +01:00
CraftBukkit/Spigot
827be39e55 Merge pull request #4 in SPIGOT/craftbukkit from ~MIKEPRIMM/craftbukkit:mikeprimm/SPIGOT-29 to master
* commit 'b6f610a49b4c2250e354c986175bee667453d53f':
  Fix chunk snapshot generation (needed for Dynmap)

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 12:41:51 +02:00
CraftBukkit/Spigot
0b357769b5 Fix command blocks
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 00:53:49 +00:00
CraftBukkit/Spigot
b6f610a49b Fix chunk snapshot generation (needed for Dynmap)
By: Mike Primm <mike@primmhome.com>
2014-11-28 18:30:59 -06:00
CraftBukkit/Spigot
a134a4961c Fix setAge and related methods
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 00:17:45 +00:00
CraftBukkit/Spigot
9c86c4b3ce Fix missed case in CraftBlock
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-29 00:14:46 +00:00
CraftBukkit/Spigot
e77d43237c Don't default the universe to the current directory
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 23:51:17 +00:00
CraftBukkit/Spigot
37e391acec Re-add the timestamp for spigot
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 23:27:09 +00:00
CraftBukkit/Spigot
28d71d3018 Fix interaction issues
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 23:06:03 +00:00
CraftBukkit/Spigot
704348fb3f Don't commit unchanged patches
By: GunfighterJ <joseph.jenniges@gmail.com>
2014-11-28 17:06:11 -06:00
CraftBukkit/Spigot
6956c3298f Revert "Remove patch headers"
This reverts commit a8ddf37419.

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 23:02:15 +00:00
CraftBukkit/Spigot
a8ddf37419 Remove patch headers
By: GunfighterJ <joseph.jenniges@gmail.com>
2014-11-28 16:54:14 -06:00
CraftBukkit/Spigot
331e10d536 Fix enchanting to match 1.8 behaviour
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 22:39:33 +00:00
CraftBukkit/Spigot
930cad64fa Improve vanilla command handling for command blocks
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 20:20:03 +00:00
CraftBukkit/Spigot
520089d10e Remove extra color codes at the start from converted json chat
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 19:59:41 +00:00
CraftBukkit/Spigot
85c2090056 Only rebuild patches that are changed
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 18:26:30 +00:00
CraftBukkit/Spigot
ba8312ff89 Use the right name for the AsyncPlayerPreLoginEvent
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 17:43:48 +00:00
CraftBukkit/Spigot
2443e912f8 Fix eating food whilst not facing a block
By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-28 11:23:19 +00:00
CraftBukkit/Spigot
a419776f3c Update to Minecraft 1.8
For more information please see http://www.spigotmc.org/

By: Thinkofdeath <thinkofdeath@spigotmc.org>
2014-11-26 08:32:16 +11:00
CraftBukkit/Spigot
2f44d66966 Allow teleportation of entities on vehicles. Fixes BUKKIT-4210
Up until Minecraft version 1.5 it was not possible to teleport entities
within vehicles. With the 1.5 update came the change in the Minecraft
teleportation logic to dismount before teleporting the entity, if
applicable.

This commit ammends the existing CraftBukkit logic for rejecting
teleportation for entities in vehicles to permit the action. Due to this
change, CraftBukkit is now in-line with Minecraft 1.5 teleportation logic.

By: bendude56 <bendude56@gmail.com>
2013-07-07 21:52:41 -06:00
CraftBukkit/Spigot
02fb3fd3d7 Implement ability to keep items on death via plugins. Adds BUKKIT-5724
When a player dies their inventory is normally scattered over the the area
in which they died. Plugins should be able to modify this behaviour by
defining whether or not the player's inventory will be dropped on the ground or waiting for the player when they eventually respawn.

This commit implements the methods included in the Bukkit half for the new
behaviour by acting upon the boolean flag. The boolean flag is tested
prior to clearing the inventory as well as prior to dropping the items on
the ground. If the flag is true (indicating "keep inventory"), the items
are not removed from the player's inventory and are not dropped on the
ground.

By: Jerom van der Sar <jerom.sar@hotmail.com>
2014-07-31 03:05:08 +02:00
CraftBukkit/Spigot
5d8e9e97fd Implement deprecated methods. Adds BUKKIT-5752
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-08-07 19:35:16 -05:00
CraftBukkit/Spigot
82a651c889 Use sensible AssertionError instead of ambiguous RuntimeException
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-08-07 19:29:28 -05:00
CraftBukkit/Spigot
9bf675b0b6 Fix removal of items from Item Frames. Fixes BUKKIT-5736
By: feildmaster <admin@feildmaster.com>
2014-08-02 16:03:50 -05:00
CraftBukkit/Spigot
38f3f4a701 Provide modifier functions to EntityDamageEvent. Fixes BUKKIT-5688
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-07-13 00:04:32 -05:00
CraftBukkit/Spigot
dfb55a6fe4 Put damage modifiers in Functions for event. Fixes BUKKIT-5681
By: Travis Watkins <amaranth@ubuntu.com>
2014-07-09 16:21:06 -05:00
CraftBukkit/Spigot
79e5718f39 Update CraftBukkit to Minecraft 1.7.10
By: Travis Watkins <amaranth@ubuntu.com>
2014-06-26 13:05:08 -05:00
CraftBukkit/Spigot
645fe18f1f Use 4787c23dce0f5ac856d8d398225828971a93a3ff Guava patch for onlinePlayers
This change improves the quality of life for plugin developers using
iterator iteration with side-effects. In the specified Guava patch, the
internal iterator no longer relies on the AbstractList iterator which
iterates by index, and will instead wrap the provided iterator in a
transformer given the Function.

By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-07-01 00:47:39 -05:00
CraftBukkit/Spigot
03a390e010 Implement new getOnlinePlayers. Adds BUKKIt-5668
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-06-24 16:11:25 -05:00
CraftBukkit/Spigot
de522b136d [Bleeding] Ignore damage done by LivingEntity.damage(). Fixes BUKKIT-5666
This matches behavior previous to new damage event API of not throwing
events for plugin-triggered damage.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-06-22 22:54:05 -04:00
CraftBukkit/Spigot
50c4b76dfa [Bleeding] Implement new damage api. Fixes BUKKIT-5326, BUKKIT-3878.
This commit centralizes event handling to where damage is actually applied
to the entity to avoid bugs that have resulted from nodamageticks,
modifications to damage after the event has been called, and similar
mishaps. This also implements new API for getting and setting of
modifications made to the damage amount actually applied to the entity.
This is done by storing the change in the damage amount as each modifier
is applied by vanilla code.

The method that actually damages the armor worn by an entity has been
relocated beneath the event called as to not apply durability loss when
the event has been cancelled.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-06-19 14:38:45 -04:00
CraftBukkit/Spigot
520077f254 Avoid checking for loaded chunks for lighting and entity ticking.
When a chunk is loaded the server tries to ensure it has its initial light
calculations done before sending it to the player. When ticking entities
the server tries to ensure the entity does not walk into an unloaded chunk.
To accomplish these the server checks a one chunk radius around the chunk
to be lit or a two chunk radius around the chunk the entity is in. These
lookups happen every tick even though their result is unlikely to change
that often. To reduce the cost of these checks we replace them with a
system to keep track of what neighbor chunks a chunk has loaded and update
it when chunks load or unload which is a much less frequent action. On a
server with ten players this change removes about 100,000 calls a tick to
LongObjectHashMap's containsKey method.

By: Travis Watkins <amaranth@ubuntu.com>
2014-06-16 19:01:55 -05:00
CraftBukkit/Spigot
3e6636e2b6 Updated version to 1.7.9-R0.3-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2014-06-01 02:36:02 -04:00
CraftBukkit/Spigot
c0343ab5ea Updated version to 1.7.9-R0.2 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2014-06-01 01:45:55 -04:00
CraftBukkit/Spigot
151f12627a Use UUIDs in CraftPlayer equals and hashCode methods. Fixes BUKKIT-5634
By: Daniel Naylor <git@drnaylor.co.uk>
2014-05-26 20:33:10 +01:00
CraftBukkit/Spigot
93b3b6a162 Fix polarity of Bat.isAwake() and Bat.setAwake(boolean). Fixes BUKKIT-5624
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-05-20 03:13:35 -05:00
CraftBukkit/Spigot
40a99f5a97 Updated version to 1.7.9-R0.2-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2014-05-14 23:38:50 -04:00
CraftBukkit/Spigot
f0b0b92c39 Updated version to 1.7.9-R0.1 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2014-05-14 22:40:51 -04:00
CraftBukkit/Spigot
82a09cfb9f Update CraftBukkit to use new YamlConfiguration encoding changes
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-05-14 05:49:04 -05:00
CraftBukkit/Spigot
f9d2ead6bf Implement awake flag for bats. Adds BUKKIT-5606
By: Wesley Wolfe <wesley.d.wolfe+git@gmail.com>
2014-05-13 20:38:42 -05:00
CraftBukkit/Spigot
5b252941b0 Only set skull profile if it is a player skull. Fixes BUKKIT-5605
By: Travis Watkins <amaranth@ubuntu.com>
2014-05-12 23:19:22 -05:00
CraftBukkit/Spigot
1a9f318959 Avoid using the user cache in skull meta.
To handle changes in 1.7.9 we changed skull meta to use GameProfile
instances instead of strings of player names. This reflects what vanilla is
actually storing for skulls now. As skulls still require a name our API was
not changed and we instead look up the rest of the profile information from
the name. The way this was implemented made it so that deserializing a skull
or setting its name potentially involved a network request. As skull meta
itself does not actually require a complete profile we now simply create one
that only contains a name and leave populating it to the server when it is
actually needed.

By: Travis Watkins <amaranth@ubuntu.com>
2014-05-03 17:42:19 -05:00
CraftBukkit/Spigot
0640242e43 Implement inventory creation by type and title. Fixes BUKKIT-4045
With the current API it is possible to create an inventory with a specific
type, but it is not possible to give such an inventory a title other than
the default.

The commit changes that by adding a method to optionally supply the title
for the given inventory type and holder, creating the functionality to
display any supported inventory type with a 32 character length String.

If the inventory title supplied is larger than 32 characters then an
IllegalArgumentException is thrown stating so.

By: eueln <euelnd@gmail.com>
2013-04-11 14:20:41 -05:00
CraftBukkit/Spigot
f25a347ccd [Bleeding] Allow generation of cocoa trees.
By: GJ <gjmcferrin@gmail.com>
2014-04-28 10:18:55 -04:00
CraftBukkit/Spigot
56003af2f2 [Bleeding] Correct issues with MEGA_REDWOOD trees. Fixes BUKKIT-5568
In commit 6efeddfe57, TALL_REDWOOD was used instead of the proper TreeType
of MEGA_REDWOOD. Additionally, this fixes an issue in CraftWorld with an
improper boolean flag related to the generation of MEGA_REDWOOD trees.

By: GJ <gjmcferrin@gmail.com>
2014-04-28 09:49:33 -04:00
CraftBukkit/Spigot
741ad9885f Refactored BlockPlaceEvent and BlockChangeDelegate. Adds BUKKIT-5558
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.

By: bloodshot <jdroque@gmail.com>
2014-01-06 00:17:16 -05:00
CraftBukkit/Spigot
5c9c366ee5 Make AnvilInventory.getItem() use both containers. Fixes BUKKIT-2788
The AnvilInventory reports its size as the sum of the ingredient and
result inventories, but when trying to access the slots, only the
ingredient inventory is used, leading to an ArrayIndexOutOfBounds exception.

This change overrides getItem(I) and setItem(I) to use both inventories,
with the slot number adjusted based on their size.

By: Andre LeBlanc <andre@norcode.com>
2013-04-06 12:00:31 -04:00
CraftBukkit/Spigot
39e74188e0 Fix setting entity's target. Fixes BUKKIT-1358
Setting the goal target overrides the entity's will to do something
else. This makes it so entities like wolves with attack another player
with .setTarget(), instead of hanging next to their owner.

By: PaulBGD <ultimate@burngames.net>
2013-12-11 21:13:04 -06:00
CraftBukkit/Spigot
74050974c8 Catch exceptions when abandoning conversions. Fixes BUKKIT-5436
If a conversation is abandoned due to a player disconnecting and an
exception is thrown in a ConversationAbandonedListener, the server will
crash. This commit prevents the exception from propagating further up
the stack and instead just logs the error.

By: Devin Ryan <devin@forairan.com>
2014-02-22 21:18:44 -06:00
CraftBukkit/Spigot
b76c55a802 Check that item in hand is not null after book event. Fixes BUKKIT-5443
By: Des Herriott <des.herriott@gmail.com>
2014-02-27 12:32:21 +00:00
CraftBukkit/Spigot
25c4255d7c [Bleeding] Don't allow null display names. Fixes BUKKIT-5254
Currently, plugins can set a player's display name to null, which could
cause issues for other calls to getDisplayName that aren't expecting a null
value. This changes setDisplayName to follow the same logic as
setPlayerListName, which sets the player's name back to their unmodified
"vanilla" name if it receives a null value as a parameter.

By: GJ <gjmcferrin@gmail.com>
2014-01-31 09:42:03 -05:00
CraftBukkit/Spigot
c9d41122d1 [Bleeding] Return correct player SlotType. Fixes BUKKIT-3188
Previously, the SlotType for the last 4 slots in a player's inventory
returned QUICKBAR when it should have returned SlotType.CONTAINER. This
updates the code for determining slot type to return the proper value.

By: GJ <gjmcferrin@gmail.com>
2014-02-10 12:12:39 -05:00
CraftBukkit/Spigot
f94f5c576e [Bleeding] Return correct furnace SlotType. Fixes BUKKIT-5400
Previously, the SlotType for the 0 slot in a furnace returned CONTAINER,
when it should have returned SlotType.CRAFTING. This updates the code for
determining slot type to return the proper value.

By: GJ <gjmcferrin@gmail.com>
2014-02-10 11:26:42 -05:00
CraftBukkit/Spigot
f612d70b0d [Bleeding] Ensure skeletons spawn with equipment. Fixes BUKKIT-2836
Previously, when a skeleton was spawned via the spawn(...) function, the
resulting skeleton had no equipped bow and therefore could not properly
attack. This fix gives all skeletons the proper equipment and ensures that
they are able to attack.

By: GJ <gjmcferrin@gmail.com>
2014-02-11 22:22:39 -05:00
CraftBukkit/Spigot
42f39726c3 Handle profiles in SkullMeta, they don't store a string anymore.
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-17 14:04:12 -05:00
CraftBukkit/Spigot
ee803812e0 Update CraftBukkit to Minecraft 1.7.9
By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2014-04-15 20:45:03 -06:00
CraftBukkit/Spigot
dd2b3d22fd Make bans pretend to use names like before 1.7.8.
Bans require a name and UUID but our API only allows for a single string
identifier for a ban entry. Until this is sorted out go back to the old
name based setup since we can always get a UUID given a name.

By: Travis Watkins <amaranth@ubuntu.com>
2014-04-17 10:45:10 -05:00
CraftBukkit/Spigot
249924e373 Make skulls pretend to only use names like before 1.7.8.
Any new API here needs more thought, skulls require a name but OfflinePlayer
is not guaranteed to have one. There is a Mojang approved way to get a
complete profile from a name but not from a UUID so for now just pretend
this still only uses names.

By: Travis Watkins <amaranth@ubuntu.com>
2014-04-17 08:41:29 -05:00
CraftBukkit/Spigot
a546a14bb1 Fix getting white list, ban list, and op list. Fixes BUKKIT-5538
The getEntries methods on these return player names instead of UUIDs.
As we need the UUIDs for our API we add a getValues method to get at
the data we need. To further ensure we get the most data possible we
also add a way to get at the stored GameProfile to ensure we always
have both the UUID and the name from the list.

By: Travis Watkins <amaranth@ubuntu.com>
2014-04-17 03:31:49 -05:00
CraftBukkit/Spigot
35ef785bd7 Don't do a lookup for obviously invalid usernames
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-17 01:53:13 -05:00
CraftBukkit/Spigot
402973ffef Add methods to use arbitrary entries in scoreboards. Adds BUKKIT-3977
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-13 10:10:32 -05:00
CraftBukkit/Spigot
ed8072818f Fix missed diff and other small things
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-13 04:29:01 -05:00
CraftBukkit/Spigot
9fee5e6bd7 Check actual whitelist for CraftOfflinePlayer too
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-12 07:45:32 -05:00
CraftBukkit/Spigot
baaca718ce Check the actual whitelist for Player#isWhitelisted()
The server's check is for whether or not a player can pass the whitelist
not just if the player is on it. That seems like more useful information
but the API has always just checked if they are on it so this commit
restores that.

By: Travis Watkins <amaranth@ubuntu.com>
2014-04-12 07:21:01 -05:00
CraftBukkit/Spigot
8553d1d462 Use fetched GameProfile for getOfflinePlayer(String)
When getting an OfflinePlayer by name we lookup their UUID and then
use that to fetch the OfflinePlayer. If the player has not played on
this server before the resulting OfflinePlayer will return null for
getName(). As this is unintuitive we now create the OfflinePlayer directly
using the profile we looked up and make OfflinePlayer prefer that data.

By: Travis Watkins <amaranth@ubuntu.com>
2014-04-12 02:38:53 -05:00
CraftBukkit/Spigot
d24dac2c06 Update CraftBukkit to Minecraft 1.7.8
By: Travis Watkins <amaranth@ubuntu.com>
2014-04-10 20:04:38 -05:00
CraftBukkit/Spigot
db3aa0246f Add method to send fake sign updates to players. Adds BUKKIT-2300
By: Patrick Seidel <psycowithespn1@aim.com>
2013-03-21 16:51:35 -04:00
CraftBukkit/Spigot
ee523c5095 Add equals for CraftInventory objects. Adds BUKKIT-4110
When working with inventories you regularly end up with different
Inventory objects that have the same underlying Minecraft inventory.
Currently, even those these point to the same thing, they are not
considered equal. With this commit comparing any Inventory object that
represents the same inventory will result in equals(Object) returning
true.

By: Jeremy Wood <farachan@gmail.com>
2013-04-18 13:08:16 -04:00
CraftBukkit/Spigot
6de31b61d5 Store last known player names in preparation for name changing
By: feildmaster <admin@feildmaster.com>
2014-03-31 14:42:33 -05:00
CraftBukkit/Spigot
ca844c146f Implement API for dealing with player UUIDs. Adds BUKKIT-5071
By: Travis Watkins <amaranth@ubuntu.com>
2014-03-28 23:48:15 -05:00
CraftBukkit/Spigot
05cdc26922 Fix PotionEffect removal.
The method in EntityLiving to remove a potion effect was remapped during
the 1.7.5 update.  The method invocation in CraftLivingEntity was not
updated to invoke the remapped method, which has led to a random method in
LivingEntity being called in its place.

This commit corrects the behavior of removePotionEffect by changing the
method to invoke the remapped method as opposed to EntityLiving#m(float).

Thanks to @gabizou for finding this issue.

By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2014-03-23 20:50:43 -06:00
CraftBukkit/Spigot
419ee888cb Increment loop index whether or not command succeeded. Fixes BUKKIT-5455
When VanillaCommandWrapper dispatches a command containing a
PlayerSelector wtih c>-1 (implicitly true for @a), it loops over the
selected players and exectures the command with each player. However, the
loop index is only incremented if the command fails. As a result, a
successful command is repeated on the same player indefinitely, locking up
the server. This commit fixes the issue by incrementing the loop index
regardless of whether the command succeeds, ensuring the command is only
executed once per player identified by the PlayerSelector.

By: WolfieMario <wolfiemario@hotmail.com>
2014-03-22 13:48:04 -06:00
CraftBukkit/Spigot
e6de9aaa17 Update CraftBukkit to Minecraft 1.7.5
By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2014-03-20 22:26:30 -06:00
CraftBukkit/Spigot
d6c0b864b8 Remove chunks from queue if we don't need them anymore.
By: Travis Watkins <amaranth@ubuntu.com>
2014-02-11 20:48:50 -06:00
CraftBukkit/Spigot
ec79a70954 Updated version to 1.7.2-R0.4-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2014-02-12 01:59:10 -05:00
CraftBukkit/Spigot
d0752f2c5d Updated version to 1.7.2-R0.3 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2014-02-12 01:33:33 -05:00
CraftBukkit/Spigot
0232a71622 Update/improve configuration documentation.
By: EvilSeph <evilseph@gmail.com>
2014-02-11 00:39:23 -05:00
CraftBukkit/Spigot
8ae3a07ab2 Rename Minecraft command permission nodes to meet fallback spec.
By: EvilSeph <evilseph@gmail.com>
2014-02-11 00:25:03 -05:00
CraftBukkit/Spigot
4c583ab9df Add method to forget callbacks in AsynchronousExecutor
By: Wesley Wolfe <weswolf@aol.com>
2014-02-10 09:33:20 -06:00
CraftBukkit/Spigot
1a1a4f0757 Match old alias behavior when migrating.
Previously the alias system would pass all arguments from the alias
to its command(s) implicitly. The new system requires arguments to be
explicitly passed so server owners can have more control over where and
how they are passed. To ensure this isn't a breaking change during the
migration from bukkit.yml to commands.yml we now add the $1- argument
to the alias commands to match the previous behavior.

By: Travis Watkins <amaranth@ubuntu.com>
2014-02-08 15:02:44 -06:00
CraftBukkit/Spigot
8227c52d3f [Bleeding] Implement Mojang command fallback system. Adds BUKKIT-5385
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-02-07 18:40:59 -05:00
CraftBukkit/Spigot
f65068829e Implement banning API. Adds BUKKIT-3535
Previously no implementation existed to access various additional
information fields regarding bans. This implementation expands on the
information outlined in the sister Bukkit commit to provide access to
the Minecraft implementation of the ban system.

This implementation of the banning API contains 2 new classes which
provide access to the internal workings of the built-in banning
system within Minecraft.

The CraftBanEntry class simply supports the representation of an internal
Minecraft BanEntry object. The data that may be modified within this new
object must be manually saved to the list contained within the
CraftBanEntry using it's save() method.

The CraftBanList class supports the representation of an internal
Minecraft BanList object through proxy methods. These methods do
validation on the passed objects where needed to ensure safe input to the
backed Minecraft objects.

These changes additionally re-route the existing banning API to the newer,
more detailed, system. Functionality prior to this change still behaves
as documented by the contract defined by the methods changed.

By: mbax <matt@phozop.net>
2014-02-04 20:52:50 -07:00
CraftBukkit/Spigot
7333087027 Update clients when ItemFrame direction is set. Fixes BUKKIT-3371
Hanging entities are placed into the entity tracker and updates are sent
out to clients for the initial placement. Thereafter data watchers are
configured to monitor the item inside the frame. However, if the
direction the ItemFrame facing changes the entity tracker will not send
out updates.

This commit removes and recreates the ItemFrame entity in the same way
that was already done for Painting entities. This causes clients to
be updated appropriately.

By: EdGruberman <ed@rjump.com>
2013-08-30 00:24:26 -07:00
CraftBukkit/Spigot
a216c696e3 Load all already generated chunks via async chunk system
Currently we use the async chunk loading system only when players trigger
chunk loading. If a chunk is loaded for any other reason it goes through
a separate codepath. This means if a player has trigged a chunk load and
before the chunk loads something else wants the same chunk we will load it
twice and throw away the second result. With this change we instead use
the sync processing feature of the AsynchronousExecutor to load the chunk
which will pull it out of the queue if it was already queued to load. This
means we only ever load a chunk once. Because chunk generation is not
thread safe we still fallback to the vanilla chunk loading system if the
chunk does not currently exist.

By: Travis Watkins <amaranth@ubuntu.com>
2014-02-01 17:42:43 -06:00
CraftBukkit/Spigot
4b9b13ab1e Allow AsynchronousExecutor.getSkipQueue() to pull tasks from the queue
By: Wesley Wolfe <weswolf@aol.com>
2014-02-01 17:57:52 -06:00
CraftBukkit/Spigot
145cf2fdde [Bleeding] Fix support for several entities in World.spawn(). Fixes BUKKIT-3284
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot
eadaffb1b4 [Bleeding] Use correct yaw and pitch when spawning arrows. Fixes BUKKIT-3320
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot
7179c931c0 [Bleeding] Directly set direction in EntityFireball. Fixes BUKKIT-1154
Because EntityFireball.setDirection() adds a random offset to passed
parameters, it is not appropriate for use in an API method. As such,
the values need to be directly set to remain accurate.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot
9b8c0edb02 [Bleeding] Implement setCharged and getCharged for WitherSkull. Addresses BUKKIT-3060
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-21 22:50:15 -05:00
CraftBukkit/Spigot
115d946d7b [Bleeding] Implement ProjectileSource API. Addresses BUKKIT-1038, BUKKIT-1156
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-20 00:03:21 -05:00
CraftBukkit/Spigot
668c2bffdb Add setCritical and isCritical methods to CraftArrow.java. Adds BUKKIT-5113
By: MorphanOne <morphanone@gmail.com>
2013-12-16 22:30:13 -05:00
CraftBukkit/Spigot
616d88c604 Add methods to get and set arrow knockback. Adds BUKKIT-5103
By: Likaos <romain.rosique@gmail.com>
2013-12-16 22:30:13 -05:00
CraftBukkit/Spigot
97b317368b [Bleeding] Add support for ThrownExpBottle and Fish to launchProjectile(...). Fixes BUKKIT-1536
Previously, trying to launch a ThrownExpBottle or Fish projectile would
result in an IllegalArgumentException. This commit adds support for both
ThrownExpBottle and Fish, which means that all current projectiles are
now properly supported by this method.

By: GJ <gjmcferrin@gmail.com>
2013-12-16 22:40:00 -05:00
CraftBukkit/Spigot
36c8e19946 [Bleeding] Instantiate logger earlier in CraftServer. Fixes BUKKIT-4253.
Previously, if an error occurred during CraftServer initialization before the
logger was instantiated, it would cause an NPE and the server would never
finish loading properly. By instantiating the logger before attempting to
load anything else in CraftServer, we ensure that a logger will always be
available in the case of any errors.

By: GJ <gjmcferrin@gmail.com>
2014-01-21 10:47:18 -08:00
CraftBukkit/Spigot
d04ca26007 Fix stacking for items after setting empty meta. Fixes BUKKIT-5331
ItemStacks do not stack if one has null for a tag, while the other has an
empty tag. In CraftItemStack, if you set an item to an empty ItemMeta, it
will create an empty tag for the internal ItemStack.

This changes the setItemMeta function to check for empty meta, and then
use null for the tag instead of an empty NBTTagCompound.

By: Wesley Wolfe <weswolf@aol.com>
2014-01-23 23:02:40 -06:00
CraftBukkit/Spigot
ba1adfb79b [Bleeding] Account for null in EntityDamageEvent handling. Fixes BUKKIT-5317
Damage caused by explosions will return null for the event as of
6588d6f72bbca74bf150de65593ac575b846111b. As such, a null check is
now necessary when handling non-living entity damage events.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-07 00:25:11 -05:00
CraftBukkit/Spigot
a4b581ad13 [Bleeding] Check that vanilla recipes actually exist. Fixes BUKKIT-5277
When falling back to vanilla recipes in the iteration of recipes,
a check is necessary to ensure that vanilla recipes are present.
RecipeIterator has been modified to account for the multi-map setup.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-05 00:41:06 -05:00
CraftBukkit/Spigot
e276044e36 [Bleeding] Implement methods for /achievement command. Addresses BUKKIT-4932
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-16 01:48:38 -05:00
CraftBukkit/Spigot
f87c5cd9dd [Bleeding] Fix Achievements and Statistics API. Fixes BUKKIT-5305
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-14 23:42:40 -05:00
CraftBukkit/Spigot
31fccf6d8e Implement UnsafeValues for give command. Addresses BUKKIT-5286
By: Wesley Wolfe <weswolf@aol.com>
2014-01-14 22:38:03 -06:00
CraftBukkit/Spigot
2d7d0e3bf5 [Bleeding] Implement setIdleTimeout and getIdleTimeout. Addresses BUKKIT-4932.
By: t00thpick1 <t00thpick1dirko@gmail.com>
2014-01-07 01:33:16 -05:00
CraftBukkit/Spigot
3f3ce7034c Consider repair cost when checking ItemMeta emptiness. Fixes BUKKIT-5304
By: Wesley Wolfe <weswolf@aol.com>
2014-01-14 18:10:34 -06:00
CraftBukkit/Spigot
75d5bdc98c Add failing unit test for ItemMeta-repairability
By: Wesley Wolfe <weswolf@aol.com>
2014-01-14 17:56:49 -06:00
CraftBukkit/Spigot
2b0c741401 Updated version to 1.7.2-R0.3-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2013-12-21 03:08:41 -05:00
CraftBukkit/Spigot
0cd7bbc140 Updated version to 1.7.2-R0.2 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2013-12-21 02:51:50 -05:00
CraftBukkit/Spigot
fda1280bce [Bleeding] Handle custom furnace recipes separately. Fixes BUKKIT-1657, BUKKIT-3846
Due to vanilla blanket comparing data values, and the unspecified
order of hashmap iterators, we need to run through custom recipes
first, and therefore separately, to ensure that they are actually
used. By not adding the custom results to the experience table, we do
not override the experience gains from vanilla smelting recipes.

By: t00thpick1 <t00thpick1dirko@gmail.com>
2013-12-20 18:44:13 -05:00
CraftBukkit/Spigot
815904c481 Updated version to 1.7.2-R0.2-SNAPSHOT for development towards next release.
By: EvilSeph <evilseph@gmail.com>
2013-12-18 01:01:25 -05:00
CraftBukkit/Spigot
d3a98ac1bf Updated version to 1.7.2-R0.1 in pom.xml for Beta.
By: EvilSeph <evilseph@gmail.com>
2013-12-18 00:23:43 -05:00
CraftBukkit/Spigot
a6a6c99078 Add new setResourcePack method. Fixes BUKKIT-5015
Minecraft now uses resource packs instead of texture packs, which broke
the setTexturePack method, as the client no longer listens on the MC|TPack
channel.

This commit fixes the issue by adding in a setResourcePack method, and by
deprecating setTexturePack and rewriting it to call the newly added
setResourcePack.  In order to simplify the method and prevent this from
happening in the future, setResourcePack calls EntityPlayer.a(String) to use
the same logic as minecraft when sending resource packs.

By: Nate Mortensen <nate.richard.mortensen@gmail.com>
2013-12-17 19:23:26 -07:00
CraftBukkit/Spigot
4caf845eae Process URLs as clickable. Adds BUKKIT-4917
In Minecraft 1.7, URL processing was removed from the client while the
server gained the ability to designate a URL to be launched in response to
clicking text. However, this functionality is not implemented in the
vanilla server. This commit adds that functionality to messages sent to
the client, processing URLs as clickable.

Additionally, char array iteration is replaced with regex.

By: mbax <matt@phozop.net>
2013-12-09 22:47:00 -05:00
CraftBukkit/Spigot
8809265f76 Check pending blocks before falling back to world. Fixes BUKKIT-5122
When growing trees we use a BlockChangeDelegate which queues up the block
changes so plugins can modify/block/log tree growing. However, we always
check the actual world when checking for existing blocks. This means when
the tree growing code checks to see if putting a leaf in a block is valid
it may incorrectly overwrite a log block that should exist in that
location. To ensure trees grow correctly we now check the delegate itself
for blocks that match the queried location before checking the world.

By: Travis Watkins <amaranth@ubuntu.com>
2013-12-17 17:26:02 -06:00
CraftBukkit/Spigot
dba782de8d Add missed tree types for Minecraft 1.7. Adds BUKKIT-5042
This commit adds support for the Tree Types that weren't added in the
initial update to Minecraft 1.7.

Pulled from PR #1277

By: BlackHole <black-hole@live.com>
2013-12-14 22:54:24 -07:00
CraftBukkit/Spigot
ac80608acd Fix generation of jungle trees. Fixes BUKKIT-5043
Due to changes in the generation of trees, the name of the class responsible
for the generation of jungle trees has changed from WorldGenMegaTree to
WorldGenJungleTree.  As such, references to WorldGenMegaTree need to be
updated to WorldGenJungleTree to generate the correct type of tree.

Pulled from PR #1277

By: BlackHole <black-hole@live.com>
2013-12-14 17:54:55 -07:00
CraftBukkit/Spigot
25e34d34b1 [Bleeding] Correct naming of sounds for 1.7. Fixes BUKKIT-5065
Several sounds were renamed in Minecraft 1.7, and have been updated
accordingly. Additionally, two sounds, HURT and BREATH, were removed from
Minecraft.

By: GJ <gjmcferrin@gmail.com>
2013-12-06 10:36:20 -05:00