md_5
b5f7b6d69f
SPIGOT-3157: Use Vanilla gamemode change code
2017-03-31 21:21:11 +11:00
Senmori
319013857d
Add Chunk.isSlimeChunk to check if a chunk can spawn slimes
2017-03-24 15:17:47 +11:00
md_5
91c315273e
Fix trailing whitespace in CraftChunk
2017-03-23 20:19:29 +11:00
Parker Hawke
b80055abfb
Properly validate player experience bar progress
2017-03-19 18:31:40 -04:00
bramhaag
dfee3d9f9f
Add getWidth + getHeight for Entity
2017-03-19 10:51:59 +11:00
md_5
2aa5ac6c92
SPIGOT-3128: Shift VehicleCreateEvent calling.
2017-03-15 20:48:47 +11:00
md_5
eac85911f0
Don't call super update on unplaced command block metas
2017-03-10 20:30:20 +11:00
md_5
962ffda1a8
Add more notch inventory conversions
2017-03-10 20:03:31 +11:00
md_5
d6aa73d16c
SPIGOT-3114: Initialize custom SHULKER_BOX slots
2017-03-10 20:01:31 +11:00
md_5
4316a8c246
SPIGOT-3110: SHULKER_BOX InventoryType
2017-03-08 17:56:08 +11:00
md_5
7fce67144d
SPIGOT-3108: Hack around mirroring empty item stacks
2017-03-08 14:35:34 +11:00
md_5
4448a7efa4
SPIGOT-3068: API for localized item names
2017-02-16 11:49:46 +11:00
Max Lee
4c8d895513
SPIGOT-2152: Method to set resource pack + hash.
2017-02-15 10:05:56 +11:00
md_5
a552117725
SPIGOT-3054: Correct LLamaSpit launching
2017-02-09 09:14:44 +11:00
md_5
3c48711c05
SPIGOT-3051: Set pitch/yaw for spawned boats
2017-02-06 11:58:42 +11:00
Parker Hawke
dfe4ed1c3e
Add implementation for LlamaSpit in ProjectileSource#launchProjectile
2017-02-01 13:14:41 +11:00
md_5
5ae629285e
Increase expiration time to two weeks.
2017-01-31 21:39:17 +11:00
md_5
c1aa85918e
SPIGOT-3040: Round health to float for validation
2017-01-28 11:41:09 +11:00
md_5
dbf4ecf30f
SPIGOT-3037: WorldBorder#isInside(Location)
2017-01-26 11:16:39 +11:00
xGhOsTkiLLeRx
7fdc749bf1
Add API to set Arrow pickup status
2017-01-18 10:01:28 +11:00
md_5
775f1e1f7f
SPIGOT-3003: Fix custom dropper / beacons.
2017-01-11 09:53:16 +11:00
md_5
730bb6ac83
10 day build expire
2017-01-09 10:38:33 +11:00
Zach Brown
059434ce92
SPIGOT-826: Add method to retrieve entity by UUID
2017-01-05 14:54:47 +11:00
md_5
7e19325845
SPIGOT-2640: API for multiple passengers per entity
2017-01-04 10:53:07 +11:00
md_5
613be0d841
SPIGOT-2980: Improve SpawnEgg NBT application and ItemStack conversion.
2017-01-02 16:13:25 +11:00
md_5
a6d8fa2eac
Recover spawn egg data from UNSPECIFIC meta.
2017-01-02 15:29:11 +11:00
md_5
5715b3a6d9
SPIGOT-2977: Pass setAmount(0) through to wrapped ItemStack.
...
This class needs to be rewritten with more consistent semantics and alignment with Minecraft losing null, but that is probably a job for 1.12
2017-01-02 10:04:19 +11:00
md_5
7c743ff64b
SPIGOT-2963: Endless loop in CraftHumanEntity#openMerchant
2016-12-27 09:01:22 +11:00
md_5
50acb4477d
Increase expire time to 7 days
2016-12-26 09:39:59 +11:00
Ryan Michela
1c7dfaebef
SPIGOT-2957 getSeaLevel() should return the real sea level, not a hard-coded value
2016-12-26 09:39:03 +11:00
md_5
96f03d9065
SPIGOT-2127: Add DamageCause.ENTITY_SWEEP_ATTACK
2016-12-23 22:40:38 +11:00
md_5
8ea0c87f51
Update to Minecraft 1.11.1
2016-12-21 07:00:00 +11:00
Lukas Hennig
532457e41d
SPIGOT-2923: Added PotionEffectType#getColor()
2016-12-17 09:46:58 +11:00
md_5
217358e845
SPIGOT-2924: Improve handling of Jukeboxes playing nothing.
2016-12-17 09:45:14 +11:00
md_5
0a6a5cb4ad
SPIGOT-1036: Add API to manipulate sendTitle timings.
2016-12-16 09:48:14 +11:00
md_5
03c4bf2244
SPIGOT-2908: Correctly spawn LlamaSpit
2016-12-10 12:10:28 +11:00
md_5
caf86c88a9
Use CraftEventFactory for BlockFormEvent
2016-12-09 12:45:21 +11:00
md_5
521b64741e
Add API to get default value of an Attribute
2016-12-09 12:31:25 +11:00
md_5
0fa1ad23ed
SPIGOT-2894: Preserve unreadable spawn egg data in memory
2016-12-07 10:44:57 +11:00
Xor Boole
bfbd868a37
Implement pre-spawn API to allow modifications to spawned entities.
...
See preceding commit for why this change was included.
2016-12-06 21:42:41 +11:00
Matthew
04202c0ace
SPIGOT-1592: Implement ItemMeta for Spawn Eggs
...
The Minecraft implementation of spawn eggs is able to construct an entity using all data that is present in the save format, however since the Bukkit API has no such way to construct an entity unattached to a world, and it appears creating such a way is a very challenging task, the decision was instead made to add this API now that 1.11 has entities which may not be represented by data values.
In the future it may be possible to implement a more expanded API cognate with this one.
2016-12-06 21:15:34 +11:00
md_5
9dee10873d
SPIGOT-2890: SetBiome not saving changes
2016-12-06 20:46:04 +11:00
Jacob Martin
b64d852496
#326 : Convert BlockMeta to handle older serialized items.
2016-12-03 10:58:18 +11:00
md_5
1d54397474
SPIGOT-911: Add hitBlock to PorjectileHitEvent
2016-12-02 09:38:50 +11:00
md_5
b6ad714e85
SPIGOT-2871: Improve BlockStates + BlockStateMeta
2016-12-02 09:29:33 +11:00
md_5
4d99feddd0
Reduce outdated build delay further.
2016-12-01 10:19:09 +11:00
Xor Boole
eb6c1bf31a
Add some expansions to Anvil Inventory API
2016-11-30 16:40:40 +11:00
md_5
fffaf07113
Fangs degree => radians (and back)
2016-11-30 09:56:09 +11:00
md_5
ff324aabe6
SPIGOT-2862: Cannot spawn evoker fangs
2016-11-30 08:37:06 +11:00
md_5
1c07d5c78f
Add hitEntity to ProjectileHitEvent
2016-11-28 12:47:01 +11:00
md_5
c91ca4a541
Build expiry is now 1 week
2016-11-28 10:19:33 +11:00
md_5
d7cce99f01
Fix possible leaks in vanish API
2016-11-28 10:02:40 +11:00
md_5
ad0e4b31bf
SPIGOT-2850: NPE in CraftInventoryCrafting
2016-11-27 17:03:28 +11:00
LukBukkit
6e887cd942
Added method for spawning a falling block with the BlockData
2016-11-26 19:23:20 +01:00
kaenganxt
2b7808f416
Fix banner color. Banners have inverted color bytes.
2016-11-25 21:02:13 +01:00
LukBukkit
5245147d00
SPIGOT-619: Force rotate head of entities when setting location.
2016-11-24 09:39:39 +11:00
md_5
83fd16e453
SPIGOT-2835: CraftBlock getDrops Returns Air
2016-11-23 22:02:36 +11:00
md_5
7691c87df6
SPIGOT-2824: Llama Strength API
2016-11-23 10:27:49 +11:00
md_5
b5b0a97d44
SPIGOT-2822: Droppers are droppers
2016-11-22 20:21:19 +11:00
md_5
a64b99c95a
Add Unbreakable to ItemMeta
2016-11-22 14:35:54 +11:00
md_5
7359112e8c
Implement default title for custom merchants
2016-11-22 10:53:36 +11:00
md_5
6220b5c542
SPIGOT-2817: Custom Merchant title omits color
2016-11-22 10:30:01 +11:00
md_5
691628ab5c
Fix setCarryingChest not resizing horse inventory
2016-11-21 21:58:29 +11:00
Lukas Hennig
0b154b1852
SPIGOT-2272: Add API for virtual Merchants
2016-11-21 15:29:36 +11:00
BlackHole
7fc4255d1a
SPIGOT-2810: Fix entity statistics
2016-11-20 20:10:39 +01:00
md_5
0f7c385941
SPIGOT-2801: Missing break in CraftMetaBlockState
2016-11-19 21:11:54 +11:00
md_5
092243c35d
SPIGOT-2799: ItemFrame set null error
2016-11-19 20:28:04 +11:00
momothereal
89e6712cde
Add additional APIs for Evoker / EvokerFangs
2016-11-19 18:53:57 +11:00
Senmori
bd2d7935c4
Implement isCursed for new enchantments
2016-11-19 16:07:51 +11:00
md_5
1d01e41570
SPIGOT-2798: Fix ShulkerBox BlockStateMeta
2016-11-19 15:59:04 +11:00
md_5
7564d60241
Add stopSound for specific sound category & unit test for SoundCategory
2016-11-19 14:27:18 +11:00
LukBukkit
63c13c5e62
Implement SoundCategory for playing sounds.
2016-11-19 14:20:13 +11:00
Senmori
26377b763b
Get Colors from ShulkerBox; Implement CustomName for Tiles.
2016-11-19 13:40:06 +11:00
md_5
f15e07b1a9
SPIGOT-2793: Revert Nameable changes
2016-11-19 03:10:04 +11:00
md_5
88eede85cc
SPIGOT-2792: Return PIG for broken spawners
2016-11-18 15:32:27 +11:00
md_5
0805f60443
SPIGOT-2789: ShulkerBox missing override
2016-11-18 12:00:17 +11:00
Senmori
5e51afde49
Get Colors from ShulkerBox; Implement CustomName for Tiles.
2016-11-18 11:28:49 +11:00
md_5
93b8244115
SPIGOT-2787: Keep performing getter null conversion at call sites
2016-11-18 11:07:02 +11:00
md_5
4bf2fc8782
SPIGOT-2786: Restore some fireworks code lost in update
2016-11-18 10:11:19 +11:00
md_5
4f63973ebb
SPIGOT-2782: Custom Colors for Potions
2016-11-18 09:49:54 +11:00
md_5
d8c6364c4c
Remove more redundant code
2016-11-18 09:28:11 +11:00
md_5
17e6e857b5
SPIGOT-2779: NPE when spawning firework with plugin
2016-11-18 09:22:40 +11:00
md_5
b2f82f0f7f
Remove now redundant code
2016-11-18 09:14:51 +11:00
md_5
64032adfd2
Remove unit test based on now incorrect assumptions
2016-11-18 09:11:17 +11:00
md_5
162e961326
SPIGOT-2772, SPIGOT-2780: Improve empty ItemStack handling
2016-11-18 09:04:07 +11:00
md_5
0dedba43d1
SPIGOT-2773: More fully implement ShulkerBox meta
2016-11-18 08:50:38 +11:00
md_5
54450b727e
SPIGOT-2768: Fully implement map color
2016-11-17 17:32:50 +11:00
md_5
c25ddf063a
Update to Minecraft 1.11
2016-11-17 12:41:03 +11:00
Senmori
51263e9718
Implement Entity Scoreboard Tags
2016-11-06 12:18:27 +11:00
md_5
cb2749768e
SPIGOT-2757: Player#stopSound Stops All Sounds
2016-11-06 10:36:38 +11:00
md_5
33071ecfff
SPIGOT-2752: Fix resetMaxHealth
2016-11-04 18:11:36 +11:00
Senmori
709783c131
Add Enchantment#isTreasure()Z
...
Determines if the enchantment is a treasure enchantment - only available via means other than the enchantment table.
2016-10-30 12:18:27 +11:00
hibo98
251a5b6382
Explicitly log exception from asynchronous tasks.
...
Previously an UnhandledException would be thrown and the stack trace / message would be printed to System.err in the default UncaughtExceptionHandler for ThreadGroup. This was undesirable as it meant that logging frameworks / exception monitors such as Sentry were unable to get the exception. Additionally it would cause the death of the thread in the ExecutorService. This change mimics the behaviour of exceptions occuring during synchronous tasks.
2016-10-24 18:49:06 +11:00
md_5
fd8d8cf404
SPIGOT-2737: Implement Statistic.PICKUP
2016-10-22 13:07:22 +11:00
Senmori
b6490dada5
SPIGOT-2706: Implement support for Lock NBT Tag
...
Containers may now implement the Lockable interface.
2016-10-21 16:35:55 +11:00
md_5
9558f31ebb
SPIGOT-2711: CraftPlayer.getPlayerListName removes black colour
2016-10-05 19:33:33 +11:00
md_5
ae93d4fb49
SPIGOT-2705: Portal cooldown getter / setter.
2016-10-01 12:26:20 +10:00
md_5
6af9f5b84a
SPIGOT-2679: Add meta for StructureBlock
2016-09-18 09:58:54 +10:00
AgentLV
75a8885d1f
Run sync tasks scheduled for the same tick FIFO
2016-09-11 15:03:27 +10:00
md_5
48b88ed202
SPIGOT-2656: HumanEntity#isHandRaised()Z
2016-09-04 11:59:41 +10:00
md_5
4d87c3422c
SPIGOT-2644: Clearer error for invalid hanging spawns
2016-08-31 17:25:37 +10:00
md_5
2f5bda8a67
SPIGOT-2630: Console tab complete
2016-08-26 08:06:06 +10:00
md_5
60c1719354
SPIGOT-2618: Register permissions before plugin enabled.
...
Brings behaviour in line with command registration, and won't affect plugins which don't already error.
2016-08-25 13:11:42 +10:00
DemonWav
c74e2a7301
SPIGOT-215: Implement infrastructure for Location tab completes
2016-08-25 09:48:52 +10:00
md_5
6053c5c8ac
SPIGOT-2578: Method to get PotionEffect of specific type.
2016-08-07 10:53:39 +10:00
md_5
29e1d72893
SPIGOT-2574: BlockPopulators added twice.
2016-08-06 10:04:06 +10:00
md_5
83a9dbdef6
SPIGOT-2559: Kill all entities when called with setHealth(0)
2016-07-30 10:06:07 +10:00
md_5
8cc5958404
Deprecate and stop using Java15Compat class.
2016-07-29 17:28:51 +10:00
md_5
21e3b05522
SPIGOT-2552: Aliases for Vanilla commands
2016-07-26 09:05:08 +10:00
md_5
09f1a19609
Hook into World for light getters due to additional validation.
2016-07-25 19:04:06 +10:00
md_5
9ff3d7f51f
SPIGOT-2548: Don't special case spawn locations of falling blocks
2016-07-23 16:23:31 +10:00
md_5
2a5461deb1
Enhance Beacon Block API
2016-07-23 10:55:43 +10:00
redwallhp
7655e38a47
Implement basic Beacon Block API
2016-07-23 10:49:05 +10:00
md_5
7ae605218b
Fall back to name if skull has no uuid when getting player.
2016-07-22 12:02:16 +10:00
md_5
02d704b55a
SPIGOT-2503: Optimize block set
2016-07-08 14:05:22 +10:00
md_5
9c02c12179
SPIGOT-2481: Implement EnchantmentTarget.BREAKABLE
2016-07-08 12:51:32 +10:00
md_5
d7c257e120
SPIGOT-2490: Villager farming event
2016-07-08 11:12:40 +10:00
md_5
67b242440b
SPIGOT-1515: Use CUSTOM reason for GENERIC damage
2016-07-02 14:01:31 +10:00
md_5
1628ce6240
SPIGOT-2474: Use .die() to set entity remove status
2016-07-02 11:24:14 +10:00
md_5
d3507d2818
SPIGOT-1364: sendMap should update entire map
2016-07-01 11:24:11 +10:00
md_5
45038571f9
SPIGOT-1341: Cancelled cake interact decreases client hunger
2016-07-01 11:20:31 +10:00
md_5
939423a8f1
SPIGOT-1181: Ensure Minecart command updates visually
2016-06-30 13:33:26 +10:00
md_5
1fe19a83f9
SPIGOT-1129: Fix spawning leash hitch without adjacent block
2016-06-30 13:21:22 +10:00
md_5
4c43856621
SPIGOT-1599: Allow teleporting disconnected players
2016-06-30 13:01:37 +10:00
md_5
00359a18fa
SPIGOT-2456: Don't wipe tiles if type is still the same
2016-06-27 11:25:49 +10:00
md_5
0ebb9c7afa
BUILDTOOLS-251: Make much of Bukkit locale independent
2016-06-26 19:32:05 +10:00
md_5
568e27fbd0
Fix air setting block updates
2016-06-26 12:31:24 +10:00
md_5
4c1e9342cb
SPIGOT-1039: Improve DoubleChest semantics
2016-06-25 21:21:55 +10:00
Pokechu22
f068c5e843
MC-100524: Fix log files getting overwritten
...
https://bugs.mojang.com/browse/MC-100524
Log files were previously overwritten when more than 7 were created on the same day. This is caused by Log4J's default behavior with DefaultRolloverStrategy, which defaults to a max of 7.
While a max of 1000 doesn't fully stop this problem from happening, for 1000 log files in a single day to be reached the server would have to restart faster than once every 1.5 minutes, which is unlikely to happen. So 1000 seems like a good limit. A higher max isn't used because when it gets higher, there are performance hits due to the way Log4J checks for the next file.
2016-06-25 20:44:50 +10:00
md_5
341da0730b
SPIGOT-611: Improve setBlock for tile->tile transitions
2016-06-25 20:16:48 +10:00
Aikar
1953f52da1
SPIGOT-2439: Consistently fire Chunk(Load|Unload)Event
...
Clean up implementation and firing of both of these events by routing
both unload and load behaviors to consistent method calls.
This fixes issues where a few places would not call Load or Unload events
when it should have.
Additionally, reduces diff by moving the neighbor marking code into these
consistent points.
Additional benefits of the change include improving the neighbor marking
methods to use getChunkIfLoaded instead of getLoadedChunkAt in some places,
as the latter will cause chunks to be marked active and not unload.
Finally, this also updates CraftWorld.loadChunk to use the new methods, as the
previous logic did not properly handle the new unload queue.
2016-06-23 10:34:08 +10:00
Ryan Michela
9af379fc47
SPIGOT-1319: Add EntityBreedEvent
2016-06-19 20:14:09 +10:00
Roy Curtis
9856d8a183
Improvements to BookMeta API
...
* Added hasGeneration()
* Fixed `applyHash()` (used by `CraftMetaItem.hashCode()`) not taking generation into account
* Fixed `equalsCommon()` (used by `CraftMetaItem.equals()`) not taking generation into account
2016-06-16 10:50:15 +10:00
md_5
fb568fdc70
SPIGOT-2408: setTicksLived does not properly affect FallingSand
2016-06-13 18:16:15 +10:00
md_5
7964365c84
SPIGOT-2398: Armor stands still need to be treated special for gravity
2016-06-12 16:32:51 +10:00
md_5
0bc2724e51
SPIGOT-2376: Way to distinguish Zombie professions.
2016-06-12 10:28:09 +10:00
md_5
46233ffa8f
Add Player.stopSound
2016-06-12 10:28:09 +10:00
md_5
6cbdec1f15
SPIGOT-2381: Use custom spawnreason for dropItem
2016-06-12 10:26:48 +10:00
md_5
1c2593826c
SPIGOT-2389: Zombie.setVillager inverted
2016-06-12 10:14:25 +10:00
md_5
d5ecbd0e93
SPIGOT-2387: Magma does not provide a block for EntityDamageEvent.
2016-06-11 16:11:51 +10:00
md_5
6d3efa0634
SPIGOT-2380: Hitting in the air will always load the chunk at 0,0
2016-06-11 09:25:31 +10:00
md_5
5fc80916f5
SPIGOT-2369: Tab completing non existant command
2016-06-09 20:47:39 +10:00
md_5
9b4ad2a45f
Add DamageCause.HOT_FLOOR
2016-06-09 12:45:07 +10:00
md_5
8b94601269
Better map Zombie/Villager professions.
2016-06-09 12:20:30 +10:00
md_5
a8a4bedd2a
Update to Minecraft 1.10
2016-06-09 11:43:49 +10:00
md_5
0cd0397a82
SPIGOT-249: Set skull owner by UUID
2016-06-03 20:41:49 +10:00
md_5
a28041daa7
SPIGOT-1292: BlockState based FlowerPot API.
2016-06-03 20:41:43 +10:00
Roy Curtis
cee5bbf00c
SPIGOT-783: API for book generation data.
2016-06-03 20:41:28 +10:00
Sansko1337
dd0e968c6a
SPIGOT-713: APIs to manipulate Entity's silent status.
2016-06-03 20:30:48 +10:00
md_5
5ff377a9b2
SPIGOT-2336: Zombie.setVillager(Z)V
2016-05-31 20:55:17 +10:00
md_5
ef3ccc94e0
SPIGOT-2315: Neighbour chunk unload marking
2016-05-25 18:21:54 +10:00
minoneer
d8637dfb7e
Implementation of interface to modify the pumpkin head "derp mode" of a snowman
2016-05-19 20:41:00 +10:00
md_5
88157110ad
Implement TabCompleteEvent
2016-05-16 16:59:57 +10:00
md_5
4e19de1295
SPIGOT-2285: New CommandBlock types.
2016-05-16 16:38:43 +10:00
md_5
88123f0569
SPIGOT-2286: Don't store CraftBlockState light level
2016-05-16 16:37:22 +10:00
md_5
7e9122e74d
Fix some [but not all] chunk unload issues
2016-05-11 15:34:16 +10:00
md_5
c5e9a169fa
Minecraft 1.9.4
2016-05-10 21:47:39 +10:00
md_5
935f18b476
SPIGOT-2206: playEffect doesn't accept sub classes of the expected data type
2016-04-26 09:35:17 +10:00
md_5
7a6b1433e2
SPIGOT-2213: Fix custom anvil inventory
2016-04-24 16:20:53 +10:00
md_5
d884ab38d8
SPIGOT-2211: Fix offhand slot client refresh
2016-04-24 12:31:02 +10:00
md_5
a28f87a55c
Missing import
2016-04-11 19:26:47 +10:00
2008Choco
767f028054
Properly validate boss bar progress
2016-04-11 19:16:52 +10:00
Thinkofname
420b983d59
Fix broken potion serialization
2016-04-10 20:54:16 +01:00
t00thpick1
d39a750709
SPIGOT-2085 / SPIGOT-2087 / SPIGOT-2156: Rework internal PotionMeta state to be correct and less complex.
2016-04-09 20:24:02 -04:00
Jofkos
8cb1b362eb
Begin console output with ANSI line erase.
2016-04-09 12:59:17 +10:00
md_5
5c23262f15
Update physics on attached block when setting data of attachable blocks
2016-04-09 12:57:19 +10:00
Thinkofname
8d16fc08f1
Support integer data values for Effect.VILLAGER_PLANT_GROW
2016-04-06 12:26:49 +01:00
md_5
3dc138d980
SPIGOT-2135: Also clear sit pathfinder on toggle status
2016-04-05 20:32:05 +10:00
md_5
60cb5b5603
SPIGOT-2118: Fix crash on chunk regen
2016-04-04 17:15:02 +10:00
md_5
4cc1807b25
SPIGOT-2092: Directly set sittging status
2016-04-04 17:09:57 +10:00
Thinkofname
8b61cc5208
Fix the default permission of /trigger
2016-03-31 00:50:39 +01:00
Thinkofname
6e527e5b88
Update to Minecraft 1.9.2
2016-03-30 21:06:51 +01:00
md_5
15222c84b4
SPIGOT-2074: Correctly set custom world settings
2016-03-28 12:28:12 +11:00
md_5
cd36f6f257
SPIGOT-2060: Method to control whether entities collide
2016-03-27 20:19:41 +11:00
Sansko1337
ea49b2eee9
Implement getting / setting of Entity invulnerability
2016-03-27 10:08:45 +11:00
Redrield
6067e54dd2
SPIGOT-213: Add method to enable / disable AI for mobs
2016-03-27 09:18:42 +11:00
Thinkofname
9554894553
SPIGOT-2049: Send the right attributes when updating scaled health
2016-03-25 23:13:16 +00:00
Thinkofname
6030bc464f
Fix a typo in CraftPotionUtil
2016-03-25 21:45:42 +00:00
t00thpick1
0ff499cf03
SPIGOT-2039: Correctly check Potion Tags both with or without the "minecraft:" prefix, and default to UNCRAFTABLE if there is a completely garbage value.
2016-03-24 15:05:10 +11:00
Nathan Wolf
ace06bd9fd
CraftComplexPart should return getParent()'s status in isValid
2016-03-23 22:06:50 +11:00
Matthew
c5d27c5f6f
Only create PermissibleBase instance in CraftEntity the first time it is actually needed. Fixes static test cases for subclasses failing when perm field was instantiated.
2016-03-23 07:32:34 +11:00
Matthew
5fe510da59
SPIGOT-1934: Expand EnderDragon API - implement dragon phases
2016-03-23 07:30:12 +11:00
Matthew
52c7fc0a1a
Implement isEnabled / setEnabled for CraftMinecartHopper
2016-03-20 20:26:21 +11:00
md_5
e56aa46656
SPIGOT-1988: Chorus Plant Generation
2016-03-20 19:02:48 +11:00
t00thpick1
b3f6de0da5
SPIGOT-1904: AreaEffectCloud events and additional API
2016-03-20 11:29:03 +11:00
md_5
105df861ed
SPIGOT-1980: Register new brewing slot
2016-03-20 10:22:24 +11:00
md_5
4cd46b242b
SPIGOT-1976: Never unload in use chunks.
2016-03-19 14:40:23 +11:00
Matthew
a12b1a4770
Implement EndGateway#getExitLocation and EndGateway#setExitLocation(Location)
2016-03-18 14:33:14 +11:00
Matthew
f09f7d8754
Implement SpectralArrow#getGlowingTicks and SpectralArrow#setGlowingTicks(int)
2016-03-18 14:30:14 +11:00
Matthew
f332350969
Implement SpectralArrow entity
2016-03-18 14:30:14 +11:00
Matthew
e80114dff4
Implement EndGateway#isExactTeleport and EndGateway#setExactTeleport(boolean)
2016-03-18 14:30:03 +11:00
Matthew
205982588f
Implement EndGateway#getExitLocation and EndGateway#setExitLocation(Location)
2016-03-18 14:30:03 +11:00
Matthew
da444904c2
Implement EndGateway state
2016-03-18 14:30:03 +11:00
Matthew
6efa87306b
Implement EnderCrystal#isShowingBottom and EnderCrystal#setShowingBottom(boolean)
2016-03-18 14:29:45 +11:00
Matthew
8cd69933c9
Implement Boat#getWoodType and Boat#setWoodType(TreeSpecies)
2016-03-18 14:29:33 +11:00
AgentLV
8b69bdd0d1
Add hand used to BlockPlaceEvent.
2016-03-16 07:14:10 +11:00
Matthew
e43b2780a5
SPIGOT-1914: Compare PotionEffectType objects using Object#equals(Object) when searching for a custom effect to remove
2016-03-14 16:54:57 +11:00
Matthew
0c7ae56148
SPIGOT-1856 / SPIGOT-1920: Fix Statistic.DROP not returning value when provided with a Material
2016-03-14 08:00:14 +11:00
md_5
55a85357a6
SPIGOT-1871: Fix wrong argument order in CraftMerchantRecipe
2016-03-13 09:48:23 +11:00
0x277F
1386bd3ddf
SPIGOT-1571: Add Entity Glide Events.
2016-03-12 21:01:07 +11:00
md_5
2bf333e0fc
SPIGOT-1901: Fix projectile launching.
2016-03-12 20:41:06 +11:00
md_5
0619f0eb3b
SPIGOT-1725: Fix dynamic scoreboard criteria on non-main scoreboards
2016-03-12 17:57:40 +11:00
t00thpick1
4a8818c5fd
SPIGOT-1638 / SPIGOT-1673: Rework Potions API
2016-03-12 12:38:22 +11:00
Matthew
1fefbf9b98
SPIGOT-1806: Implement HumanEntity#getMainHand
2016-03-12 08:15:43 +11:00
md_5
4c3da3f6e2
SPIGOT-1862: Fix banners withj shields.
2016-03-10 16:34:33 +11:00
md_5
daf45148d1
SPIGOT-1526 / SPIGOT-1809: Expand Inventory API
2016-03-09 16:33:08 +11:00
md_5
3cfd8ca3cb
SPIGOT-1828: CraftBanner tile entity return null
2016-03-08 18:01:54 +11:00
md_5
20d9f644a6
SPIGOT-1823: Use fast chunk lookup in CraftWorld also
2016-03-07 15:52:56 +11:00
Thinkofdeath
0cd6711085
Fix regenerating chunks not updating visually
2016-03-06 23:50:19 +00:00
Lukas Hennig
92494d7dba
Added a playSound method to World which accepts a String parameter.
...
Similar to the respective method in Player.
2016-03-06 12:20:38 +11:00
md_5
b6bb6beb63
SPIGOT-1768: Fix Eye of Ender with custom world generators.
2016-03-06 11:45:25 +11:00
md_5
d6a61e3e5d
SPIGOT-1776: Replace BossBar.hide/show with visibility.
2016-03-06 09:55:36 +11:00
BlackHole
45171f0864
SPIGOT-1772: Use correct statistics for entities
2016-03-06 08:28:34 +11:00
md_5
94ba824302
SPIGOT-1758: Apply correct ItemMeta to new CommandBlock types
2016-03-05 15:52:44 +11:00
Lukas Hennig
ef13ca4444
SPIGOT-1549: Fix custom String sounds.
2016-03-04 15:55:40 +11:00
md_5
7863085a62
SPIGOT-1721: Handle Enderman.getCarriedMaterial when not carrying.
2016-03-04 15:50:35 +11:00
md_5
6742811d69
SPIGOT-1666: Expand Team option API
2016-03-04 15:24:57 +11:00
md_5
5a3813d7fe
SPIGOT-1608: Add a way to get the hand used in PlayerInteract*Events
2016-03-04 15:24:51 +11:00
md_5
3e3516e3b2
Treat ShulkerBullet as Projectile
2016-03-04 07:22:10 +11:00
Melair
9056e66554
Enable support of PotionMeta on SPLASH_POTION, LINGERING_POTION and TIPPED_ARROW.
2016-03-04 07:19:33 +11:00
md_5
23ad72b4c8
SPIGOT-1683: Arrows are not projectiles
2016-03-03 20:59:10 +11:00
md_5
e2c5473e07
SPIGOT-1679: Shulker bullets are not projectiles.
2016-03-03 17:17:42 +11:00
md_5
78578ca517
SPIGOT-1676: Launch projectiles with velocity
2016-03-03 16:52:19 +11:00
md_5
4d3af9c19b
SPIGOT-1677: Fix attributes with only single underscore.
2016-03-03 16:38:57 +11:00
Thinkofdeath
bad994e724
Don't round the location of playSound to the center of a block
2016-03-02 16:02:36 +00:00
Thinkofdeath
09b4549a29
SPIGOT-1640: Fix spawning particles that use MaterialData
2016-03-02 14:51:50 +00:00
md_5
b0411e8799
SPIGOT-1622: Add drop chance methods for off hand.
2016-03-02 17:03:20 +11:00
md_5
912dfae454
SPIGOT-1623: Use correct spawnParticle overloads.
2016-03-02 16:51:09 +11:00
Thinkofdeath
92602ad172
SPIGOT-1610: Treat clicking on an inventory window as clicking outside it
2016-03-01 23:44:22 +00:00
Thinkofdeath
1be3bd058f
SPIGOT-1607: Fix BlockPlaceEvent and BlockMultiPlaceEvent sometimes showing the wrong item used
2016-03-01 21:37:08 +00:00
md_5
76c04254c1
SPIGOT-1575: Fix PlayerInventory.setArmorContents
2016-03-02 06:58:45 +11:00
md_5
be538b8a2a
SPIGOT-1582: Add SkullType.DRAGON
2016-03-02 06:52:52 +11:00
md_5
dcbb2a45ab
SPIGOT-1576: Add more new 1.9 enchants.
2016-03-02 06:39:09 +11:00
md_5
69e196f796
SPIGOT-1567: Rework setItems to set slots correctly regardless of array reference.
2016-03-01 19:59:52 +11:00
md_5
4831c56cdb
SPIGOT-1523: Add FLY_INTO_WALL DamageCause to fix Elytra crash v2.
2016-03-01 17:35:18 +11:00
md_5
32587ed8e7
SPIGOT-1545: Populate Vanilla villager trades correctly.
2016-03-01 14:13:42 +11:00
md_5
41c02c0efd
SPIGOT-1528: Maintain static sound map due to oversight re: underscore :(
2016-03-01 14:04:41 +11:00
md_5
8b5c9c15b0
SPIGOT-1541: Fix firework launching
2016-03-01 13:46:07 +11:00
md_5
fdaa09b23b
SPIGOT-1536: Fix playNote
2016-03-01 13:42:54 +11:00
md_5
ea28c1e478
SPIGOT-1523: Crash when flying Elytra into wall.
2016-03-01 11:27:13 +11:00
md_5
aa008dff0f
Update to Minecraft 1.9
2016-03-01 09:32:45 +11:00
BlackHole
e1ebe524a7
[SPIGOT-1494] Really fix player skulls with custom texture but without owner.
2016-02-19 09:22:45 +11:00
md_5
69fe73e7d9
[SPIGOT-1465] Fix skulls with no owner not displaying texture.
2016-02-05 11:44:06 +11:00
Andrew
039621dd44
Strengthen CraftMetaSkull hasOwner method
2016-02-02 16:37:15 +11:00
Thinkofdeath
930a59c68c
Remove the length limit on inventory titles
...
1.8 no longer has a small limit like previous versions
2016-01-29 10:29:12 +00:00
ryanbennitt
07c300164a
SPIGOT-1390: Fixed issues with Array.fill upper bound in setRegion
2016-01-03 15:21:05 +11:00
md_5
18fbb24b46
SPIGOT-1235: Correctly validate MaterialData for playEffect.
...
Thanks Jikoo for the report / fix.
2015-10-18 19:40:00 +11:00
Adam Thomas
f4c67a5c32
SPIGOT-1232: CraftServer.getPlayer(String name) returns incorrect results in some cases.
...
Use the absolute value of the delta to prevent negative values resulting in a better match.
2015-10-18 19:38:46 +11:00
md_5
12698ea5ad
SPIGOT-1230: Normalize null log names in ForwardLogHandler.
...
Not technically 100% correct since null != "null", but without sacrficing performance this is the best way to fix the issue in the current implementation.
2015-10-10 22:09:31 +11:00
DemonWav
d4e32cef0c
SPIGOT-759: Add FireworkExplodeEvent.
2015-09-30 09:02:11 +10:00
BlackyPaw
8cc1683e83
SPIGOT-989: Cap assignment of pickup delays to Short.MAX_VALUE due to storage implementation constraints.
...
Changed assignment of pickup delays in such a way that they may not be larger than the value actually stored inside the NBT format that is Short.MAX_VALUE. Did not change method signature in order not to produce any shortening cast warnings in existing code. All values larger than 32767 are generally used to indicate that an item should never be picked up. Shortening this to 32767 will actually cause the pickup delay to never decrease, thus resulting in non-pickupable item stacks.
2015-09-30 08:48:28 +10:00
md_5
62a216966f
SPIGOT-1076: Add HurtEntities API for FallingBlock.
2015-09-19 09:27:51 +10:00
Thinkofdeath
a0d2928ba4
Add a missing break statement for openInventory, fixes opening dropper inventories
2015-09-18 21:42:40 +01:00
0x277F
2d4f577bbf
Fixed how Dropper inventories are shown to players.
2015-09-18 15:16:50 +10:00
md_5
701ae54ffc
SPIGOT-1192: Restore some behaviour to entity.getNearbyEntities
2015-09-18 15:15:56 +10:00
md_5
5e9f698fac
SPIGOT-1165: Restore getNearbyEntities behaviour to include spectators.
2015-09-06 14:54:41 +10:00
Antony Riley
880a53248e
New ChunkGenerator.generate api for block ids and avoiding magic values.
2015-08-01 21:22:29 +10:00
Riccardo Paolo Bestetti
5e85956281
SPIGOT-1080: Added support for opening all inventories implementing Bukkit's Inventory class.
2015-07-31 18:47:09 +10:00
md_5
9935adc4ed
Update for minor remapping changes.
2015-07-30 17:13:35 +10:00
Thinkofdeath
2642f9b344
SPIGOT-1068: Limit the number of patterns on banners
2015-07-23 20:50:53 +01:00
Xor Boole
3e9b5c93d6
Prevent an Entity from riding itself.
2015-07-20 16:18:08 +10:00
Antony Riley
87b9f46d72
SPIGOT-1060: Allow custom generators to use block ids > 127 with bytes.
2015-07-19 09:23:48 +10:00
md_5
09ddd9b35e
SPIGOT-1051: CraftInventoryPlayer.setItem can cause NPE.
2015-07-18 12:43:33 +10:00
Antony Riley
bf4818b94a
Fix ItemStack.isSimilar(CraftItemStack) when HideFlags are set.
2015-07-15 19:47:59 +03:00
md_5
b105298f2e
Simplify getPlayerExact / try for exact match first in getPlayer.
2015-07-13 19:00:33 +10:00
md_5
65cd4d79fd
Simplify OfflinePlayer.getPlayer() logic.
2015-07-13 18:54:08 +10:00
md_5
1f73bbb56a
Simplify isOnline() logic.
2015-07-13 18:30:25 +10:00
Morphan1
2359f6fcb0
Implement ItemMergeEvent
2015-07-12 19:57:38 +10:00
Jofkos
a03743b3b4
Add basic sendTitle / resetTitle API.
...
More APIs to follow pending feedback of whether this is the preferred implementation. Methods marked as deprecated and subject to change, but work as is.
2015-07-10 16:24:02 +10:00
Thinkofdeath
f27339caf8
SPIGOT-977: Use vanilla's handling for command messages for vanilla commands
...
Fixes gamerules that control the output of those messages
2015-07-08 23:19:21 +01:00
BlackyPaw
e91aed81b3
SPIGOT-986: Default back to skull ID 0 (SKELETON) whenever an invalid ID is encountered instead of throwing an AssertionError
2015-06-28 08:44:27 +10:00
DoctorDark
d432434fd8
SPIGOT-980: Fix NPE when setting items of offline players
2015-06-27 15:48:22 +10:00
md_5
76c834a849
Clean up World.getPlayers().
...
Original idea from CyberTiger, PR #150
2015-06-27 15:46:19 +10:00
md_5
994b2aae3f
SPIGOT-892: Set chicken egg baby age before adding it to world.
2015-06-21 09:20:07 +10:00
md_5
0dfb243c86
SPIGOT-436: Add accompanying getSpectatorTarget().
2015-06-21 09:20:07 +10:00
Nathan Wolf
1880a9c0b6
SPIGOT-973: Add marker API to ArmorStand
2015-06-09 09:36:31 +10:00
md_5
f4ecc39ffc
SPIGOT-436: Add spectator camera API.
2015-06-09 09:17:54 +10:00
Nathan Wolf
845336b511
Serialize full skull item profile data in internal blob
2015-06-07 20:31:01 +01:00
md_5
e8c64031b1
Update commands.yml headers
2015-06-01 19:23:31 +10:00
md_5
d33f0dd3ba
Remove unused bukkit.yml options and update links / info.
2015-05-31 12:11:56 +10:00
Thinkofdeath
8c14eb49ef
Handle a missed case with our vanilla permissions override
2015-05-30 00:06:18 +01:00
Matt
55202e1f99
Add ability to add a string to a scoreboard instead of a player
2015-05-29 19:36:14 +10:00
DemonWav
c637b933dc
Send the packet for the correct container, rather than just the container that is active at the time. - SPIGOT-932
2015-05-28 17:19:36 +10:00
DemonWav
75f835c07a
Send the set item packet to the client when an item is changed or added in a player's inventory - Addresses SPIGOT-883
2015-05-26 18:46:24 +10:00
md_5
25de1e6baf
SPIGOT-769: Fix opening custom inventories.
2015-05-24 10:42:53 +10:00
Nathan Wolf
7bc9c08eb4
Default to BlockFace.SELF for null directions in getFacing
2015-05-24 09:25:02 +10:00
Thinkofdeath
a486600749
Update to 1.8.4
2015-05-17 10:32:59 +01:00
Matt
0a645a2726
Remove unneeded Java 1.5 Compat
2015-05-03 09:11:45 +10:00
Cory Redmond
7722428895
Add the ability for commandblocks to be sent messages via the API.
2015-04-19 09:15:15 +10:00
Thinkofdeath
8e5e4c189b
SPIGOT-581: Allow for unhandled nbt tags to be serialized to yaml
2015-04-16 11:01:13 +01:00
Thinkofdeath
5b2764148d
SPIGOT-798: Allow for CustomPotionEffects to be empty
2015-04-15 15:02:34 +01:00
Thinkofdeath
e4ca2af9c4
Strip events from book pages on signing
2015-04-14 10:28:34 +01:00
Thinkofdeath
a25c96eda7
SPIGOT-742: Throw an exception instead of passing null when the sender cannot be converted
2015-04-13 11:51:04 +01:00
Thinkofdeath
35d953bac8
Replace the two nextTickList sets with a single one that combines both
...
Should prevent them from going out of sync
2015-04-13 11:04:38 +01:00
Nathan Wolf
96c2c39245
Implement World.getNearbyEntities
2015-04-07 19:08:07 +10:00
Thinkofdeath
61ef214f91
Implement BlockStateMeta which allows creating and editting 1.8's blockEntityTag
2015-03-24 16:02:47 +00:00
Thinkofdeath
3fce0ec0f5
SPIGOT-729: Revert the entity slice move
2015-03-22 19:01:30 +00:00
Thinkofdeath
350cb9927e
Update the rename markers
2015-03-19 21:29:33 +00:00
Thinkofdeath
234e60735c
SPIGOT-716: Fix regenerating chunks
2015-03-17 21:17:56 +00:00
Thinkofdeath
30d751b362
Move the entity slice loading
2015-03-16 19:44:51 +00:00
Thinkofdeath
7f609b12b9
SPIGOT-705: Fix possible CME
2015-03-15 21:38:05 +00:00
md_5
6e0120a058
SPIGOT-323: Enchanting tables can no longer be force opened. (reverted from commit bbe75338c1
)
2015-03-13 17:53:15 +11:00
md_5
bbe75338c1
SPIGOT-323: Enchanting tables can no longer be force opened.
2015-03-13 17:48:57 +11:00
Thinkofdeath
7f52bd6c95
Fix getActivePotionEffects ignoring the particles flag
2015-03-11 13:18:06 +00:00
Thinkofdeath
294d07dcc0
SPIGOT-678: Fix the particles flag being ignored in PotionMeta
2015-03-11 11:54:31 +00:00
Thinkofdeath
d8a9c7be42
Update to Minecraft 1.8.3
2015-03-04 09:48:58 +00:00
Thinkofdeath
3ee97a30eb
SPIGOT-586: Fix a mistake in CraftMetaItem
2015-02-18 10:21:40 +00:00
md_5
726656b864
Fix hashcode / equals / formatting.
2015-02-15 12:54:18 +11:00
md_5
709f95833b
API for setting/getting hideFlags. Implementation of the hideFlags to be saved in NBT.
2015-02-15 12:47:07 +11:00
FearThe1337
116514c162
Implement armor stand event.
2015-02-15 12:24:14 +11:00
BillyGalbreath
9648edfa61
Add alternatives for deprecated methods
2015-02-15 12:16:12 +11:00
Thinkofdeath
15e81cf551
SPIGOT-449: Fix the wrong caller being used in chain execute commands
2015-01-25 15:17:48 +00:00
Thinkofdeath
4b6df5adfe
SPIGOT-456: Provide equals & hashCode methods for CraftObjective and CraftTeam
2015-01-25 14:39:20 +00:00
md_5
0d52f683db
SPIGOT-469: Increment and print reload count.
2015-01-25 10:31:31 +11:00
BuildTools
17962f66ec
SPIGOT-443: Synchronize access to HANDLED_TAGS as Spigot uses it async
2015-01-18 17:33:13 +00:00
Thinkofdeath
59dd2ddb9d
SPIGOT-438: Correct CraftScoreboard.getObjective NPEing instead of returning null for missing objectives
2015-01-17 23:10:08 +00:00
md_5
00eba538b0
Fix mismatch between teams and player teams.
2015-01-17 19:59:16 +11:00
md_5
42ebec1f71
SPIGOT-242: Fix scoreboard API.
...
In particular don't maintain an internal list of state, as this gets out of whack when Minecraft adds or removes scoreboards / teams.
2015-01-17 09:41:52 +11:00
md_5
e6f9fd4dc7
isThundering should just reflect thunder state.
2015-01-13 20:42:33 +11:00
md_5
93e7b199bd
Fix the CraftWorld weather methods duplicating events.
2015-01-13 20:40:23 +11:00
Hitoprl
5e6c347daa
Fix SPIGOT-260: Item drops don't spill in correct place.
2015-01-11 09:46:54 +11:00
md_5
7658819130
Fix off by one in CraftRabbit. Fixes SPIGOT-392
2015-01-10 14:15:34 +11:00
md_5
4470462a54
SPIGOT-387: Remove redundant custom vehicle handling.
2015-01-09 16:59:40 +11:00
Thinkofdeath
5b92dc3d0a
Whoops missed a file
2015-01-04 23:36:55 +00:00
Thinkofdeath
6ac32df219
Redirect execute through our command system and allow entities to be CommandSenders
2015-01-04 23:26:02 +00:00
md_5
dde25d45ef
SPIGOT-323: Allow force creating enchant table containers. Usefullness is not guaranteed.
2015-01-05 10:05:01 +11:00
md_5
c99cdafd3f
SPIGOT-323: Enchanting tables can no longer be force opened. (reverted from commit 9784338acf
)
2015-01-05 10:00:26 +11:00
md_5
9784338acf
SPIGOT-323: Enchanting tables can no longer be force opened.
2015-01-05 09:59:31 +11:00
md_5
e5c51c790f
Actually return.
2015-01-05 09:25:27 +11:00
md_5
93efa5a803
"Fix" SPIGOT-349 - don't allow + or ! in path.
2015-01-05 09:24:44 +11:00
Xor Boole
e8e3ca29e2
Add null check before iterating over iterator.
2014-12-28 13:57:27 -04:00
Thinkofdeath
0a0d3aa5a7
SPIGOT-287: Fire a cancelled inventory open event for locked chests
2014-12-28 15:14:53 +00:00
Thinkofdeath
0e2396c22f
Remove tile entity tags for signs and command blocks
2014-12-27 22:44:51 +00:00
Thinkofdeath
d51936efb4
SPIGOT-298: Fix book serialization
2014-12-27 12:13:28 +00:00
Thinkofdeath
306b233a40
SPIGOT-279: Fix all metadata being cleared for items that support blockEntityTag on material mis-match
2014-12-27 00:51:59 +00:00
Thinkofdeath
264d479fd8
SPIGOT-136, SPIGOT-267: Store pages as chat component to retain chat events unless a plugin touches them
2014-12-26 21:55:35 +00:00
FearThe137
2db3ea29a6
Implement Rabbit types.
2014-12-24 09:11:25 +11:00
md_5
6dfcbc61ab
SPIGOT-204: Add way to set block type without using IDs or updating physics.
2014-12-22 19:48:02 +11:00
Thinkofdeath
40aaa31c49
Fix EntityEquipment for armor stands and redirect the getters/setters to use it
2014-12-21 23:26:42 +00:00
FearThe1337
53fc3cf74f
Fix custom chunk generators. Fixes SPIGOT-193.
2014-12-21 17:38:42 +00:00
FearThe1337
89944c09c9
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.
2014-12-21 09:59:45 +11:00
Fabian Faßbender
ce7dd34b5c
aW() does re register Attributes which causes a IllegalArgumentException. This fixes it and sets the Guardian back to a normal Guardian without any problem.
2014-12-21 08:52:20 +11:00
Adam Thomas
606cf0eea4
Implement NameTag visibility API for Teams.
2014-12-18 21:27:46 +11:00
0x277F
dadb43af92
Use value from new potion effect particle visibility API.
2014-12-18 21:20:51 +11:00
FrozenBrain
618abf7a36
SPIGOT-228: Don't deserialize meta of written books twice
2014-12-18 09:47:10 +11:00
FearThe1337
6fab8fe51e
SPIGOT-236 - fix notes playing wrongly.
...
Formula is from BlockNote (NMS), slightly formatted different to be smaller.
2014-12-18 09:47:10 +11:00
Thinkofdeath
20c65caae7
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
2014-12-16 10:53:29 +00:00
Thinkofdeath
6b061e2581
SPIGOT-152, SPIGOT-197: Add a system to handle new tags before an api is ready for them
2014-12-15 15:44:57 +00:00
Stefan
e1070b9fbb
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.
2014-12-15 14:42:00 +00:00
Thinkofdeath
28f37a113c
Fix entities freezing when a chunk is regenerated
2014-12-15 13:46:41 +00:00
TheCutter
07c2162118
Implement WorldBorder API
2014-12-14 10:02:33 +11:00
Stefan
01f0122a9e
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.
2014-12-13 19:15:29 +01:00
Thinkofdeath
d5ede3bd6d
Rework the vanilla link fix so that hover/click events aren't lost
2014-12-13 10:27:26 +00:00
Thinkofdeath
5f2a9eadde
SPIGOT-199: Default to white instead of black for chat messages
2014-12-13 09:37:47 +00:00
Thinkofdeath
64157d1de5
SPIGOT-189: Remove ListenerWrapper in favour of just doing it in EntityPlayer
2014-12-12 19:27:37 +00:00
Thinkofdeath
54888dfafb
Wrap player's ICommandListener so that our permission system can handle permission
...
for vanilla commands
2014-12-12 10:33:54 +00:00
Thinkofdeath
81db41b4d2
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
2014-12-12 09:46:31 +00:00
zreed
45be36a7b8
Update JLine
...
Later releases include the TerminalLineSettings patch. Also move call to AnsiConsole.systemInstall() to avoid patching AnsiWindowsTerminal.
2014-12-12 11:06:13 +11:00
FearThe1337
c13e6e69a2
Implement displayblocks for minecarts (SPIGOT-14).
2014-12-12 11:01:47 +11:00
TheCutter
fe8d20e376
using generator settings from WorldCreator to specify presets for FLAT or CUSTOMIZED world types
2014-12-12 11:00:41 +11:00
md_5
9fa497cd55
Add implementation of the elder Guardian API
2014-12-12 10:57:00 +11:00
Thinkofdeath
6575597292
Merge pull request #43 in SPIGOT/craftbukkit from ~FEARTHE1337/craftbukkit:perm to master
...
* commit '33af6fbbbf1c1a8fee3ecc8d4cf79b4a2ba17c16':
Add the new minecraft command permission nodes.
2014-12-11 21:43:19 +01:00
FearThe1337
33af6fbbbf
Add the new minecraft command permission nodes.
...
Previously bukkit ones were in bukkit. Moved to CraftBukkit with new prefixes.
2014-12-11 21:36:02 +01:00
Thinkofdeath
b13fd35165
Re-enable selectors for players and the console using vanilla commands
2014-12-11 20:05:48 +00:00
Thinkofdeath
84699b36a8
Rewrite book handling, Fixes SPIGOT-182 and part of SPIGOT-164
2014-12-11 19:38:09 +00:00
Thinkofdeath
14d69f1513
Remove old dev comments
2014-12-11 00:40:25 +00:00
Thinkofdeath
a6465002bf
Add some missing Tile Entities
2014-12-07 13:38:16 +00:00
Thinkofdeath
44ea9d88c2
Add CraftMetaTileEntity, fixes the previously broken tests
2014-12-07 13:22:56 +00:00
Thinkofdeath
fb445e5337
Minor bug fixes
2014-12-07 12:18:50 +00:00
Thinkofdeath
c571bbe590
Disable some tests whilst issues with them are looked into
2014-12-07 11:50:45 +00:00
Thinkofdeath
6880e5277f
Fix isEmpty and hashCode for CraftMetaItem
2014-12-07 11:42:37 +00:00
Thinkofdeath
6268eb5a3e
Fix BlockEntityTag being stripped from items
2014-12-07 11:36:31 +00:00
Thinkofdeath
1227934d57
Make CraftMetaItem's attribute handling less strict on types
2014-12-07 10:48:14 +00:00
Thinkofdeath
cc2b09de09
Add basic support for executing commands from signs
...
TODO: Wrap the player in to allow for plugins to handle it better
2014-12-05 23:10:47 +00:00
zreed
9e04f2f765
Use PlayerList's UUID->EntityPlayer map in CraftServer.getPlayer(UUID)
2014-12-05 02:03:49 -05:00
Thinkofdeath
e2c4f20ed1
Serialize baseColor as a string
2014-12-04 10:10:24 +00:00
Thinkofdeath
2ba7357b4a
Merge pull request #27 in SPIGOT/craftbukkit from ~AIKAR/craftbukkit:fixWorldSaveEvent to master
...
* commit '64492523a761fb37d2b73f4aad8b8041f7a30d83':
Move WorldSaveEvent to proper location
2014-12-03 20:37:32 +01:00
Aikar
64492523a7
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.
2014-12-03 14:35:33 -05:00
Thinkofdeath
200ae2b6ac
Fix a issue with skulls that have a blank owner
2014-12-03 19:04:19 +00:00
Thinkofdeath
4c02ffcaf3
Merge pull request #5 in SPIGOT/craftbukkit from ~DMCK2B/craftbukkit:feature/implementDepthStrider to master
...
* commit 'cce45591f624c915e87ce132b508adf8e0d7961b':
Implement the Depth Strider enchantment for the API
2014-12-03 17:41:27 +01:00
Fabian Faßbender
497a7b4cfb
Add ANVIL and BEACON custom inventories. Also handle a few special cases for inventory sizes
2014-12-03 16:20:55 +00:00
Thinkofdeath
8110f51b50
Minor formatting fixes
2014-12-03 11:08:35 +00:00
Thinkofdeath
a972ddfc74
Missed a case
2014-12-02 23:57:29 +00:00
Thinkofdeath
1613d09138
Don't wrap the y coordinate in World.getBlockAt
2014-12-02 23:54:38 +00:00
BuildTools
351edbf4e5
Fix CraftMetaBanner serialization.
2014-12-02 15:29:04 +01:00
Thinkofdeath
275603d37a
Merge pull request #21 in SPIGOT/craftbukkit from ~GENAZT/craftbukkit:bugfix/SPIGOT-93 to master
...
* commit '7371301edb1c44ab9153e1fba3722ba2f4e3c411':
Forgot that i work in Bukkit... Screw sun conventions
Implementation for the new rotation values. Fixes SPIGOT-93
2014-12-02 13:23:46 +01:00
Thinkofdeath
733e4290d8
[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
2014-12-02 12:03:02 +00:00
Thinkofdeath
b58808d54d
Fix tree related crashes due to lazy BlockState updating
2014-12-02 11:51:49 +00:00
Fabian Faßbender
7371301edb
Forgot that i work in Bukkit... Screw sun conventions
2014-12-02 00:20:31 +01:00
Fabian Faßbender
0d5693dec5
Implementation for the new rotation values. Fixes SPIGOT-93
2014-12-02 00:13:25 +01:00
Adam Thomas
cc9b479fe6
Fix show player
2014-11-30 20:12:54 +00:00
Thinkofdeath
22df292258
Add a somewhat hacky fix for plugins converting between book types
2014-11-30 15:06:14 +00:00
Thinkofdeath
6eb0c79271
Fix Chunk.getTileEntities() (Fixes SPIGOT-62)
2014-11-30 12:15:56 +00:00
Thinkofdeath
20207a0124
Correct the return value of getPlayerListName
2014-11-30 10:30:32 +00:00
Fabian Faßbender
b08f233fe1
Rewrite the level.dat properly. This fixes SPIGOT-46
2014-11-29 20:33:33 +01:00
Mike Primm
4692204921
SPIGOT-30: Fix restoring of WorldData when loading worlds
2014-11-29 09:34:54 -06:00
Suddenly
cce45591f6
Implement the Depth Strider enchantment for the API
2014-11-29 15:13:43 +00:00
Thinkofdeath
f498585ecc
Ignore invalid blocks in ChunkSnapshots
2014-11-29 15:05:28 +00:00
Mike Primm
dd33bcf6a5
Fix chunk snapshot generation (needed for Dynmap)
2014-11-28 18:30:59 -06:00
Thinkofdeath
585a827dcd
Fix setAge and related methods
2014-11-29 00:17:45 +00:00
Thinkofdeath
923b375d8e
Fix missed case in CraftBlock
2014-11-29 00:14:46 +00:00
Thinkofdeath
2575b3f9c0
Remove extra color codes at the start from converted json chat
2014-11-28 19:59:41 +00:00
Thinkofdeath
24557bc2b3
Update to Minecraft 1.8
...
For more information please see http://www.spigotmc.org/
2014-11-28 17:16:30 +11:00
bendude56
a4805dbd77
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.
2014-08-17 11:49:27 -06:00
Jerom van der Sar
80e8f2ab87
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.
2014-08-17 11:41:40 -06:00
Starbuck Johnson
3626720d53
Modify the invalid item set to permit command blocks. Fixes BUKKIT-4342
...
When using a "vanilla" Minecraft server using the "pick block" key on a
command block yields the invoker with a command block within their
inventory while in creative mode. Implications of the invalid items set
containing the command block also include having a "ghost" item that
cannot be placed due to it not actually existing.
This commit resolves the problem and brings Craftbukkit closer to vanilla
behaviour by removing the command block item ID, 137, from the invalid
items set.
2014-08-17 11:23:28 -06:00
myiume
4507cec090
Fix PlayerFishEvent not correctly cancelling. Fixes BUKKIT-5396
...
Prior to this commit cancelling the PlayerFishEvent would cause various
states of the fishing routine to be incorrectly or wrongly fired. This
incorrect behaviour was due to the miscommunication between the server and
client regarding the fishing state. When the event was cancelled, the
bobber entity was removed and caused the client to incorrectly determine
what the "next state" was to logically be.
This commit resolves the issue by ensuring the client is made aware of the
correct changes at the correct time regarding the bobber entity, therefore
keeping the logical steps of "fishing" proper and in-tact.
2014-08-17 00:17:02 -06:00
Wesley Wolfe
b3e83b00fc
Implement deprecated methods. Adds BUKKIT-5752
2014-08-07 19:35:16 -05:00
Wesley Wolfe
1f0c791444
Use sensible AssertionError instead of ambiguous RuntimeException
2014-08-07 19:29:35 -05:00
ase34
87f6fa7bc9
Fix cancelling PlayerDropItemEvent. Fixes BUKKIT-3313
...
Up until this commit the PlayerDropItemEvent, if cancelled, would return
items to the first available slot in the inventory - which is clearly
undesirable as a player and plugin author to deal with.
This commit changes that by ensuring that the item is returned to where
it came from in the player's inventory. This still supports modifying the
drop from the player and will default to "first available slot" if the
item has changed since the event was fired. Other remaining behaviour of
the event is still in tact and has not been modified.
2014-08-04 12:27:50 -06:00
feildmaster
971329c42b
Fix removal of items from Item Frames. Fixes BUKKIT-5736
2014-08-02 16:12:03 -05:00
Travis Watkins
594d7cb8c9
Don't confuse client with sound coordinates outside view distance.
2014-07-15 21:28:10 -05:00
Wesley Wolfe
c7398b9fdf
Provide modifier functions to EntityDamageEvent. Fixes BUKKIT-5688
2014-07-13 00:07:38 -05:00
Travis Watkins
319a9c20eb
Handle uniform block ids greater than 127. Fixes BUKKIT-5686
2014-07-10 19:19:48 -05:00
Travis Watkins
13482ac7f6
Put damage modifiers in Functions for event. Fixes BUKKIT-5681
2014-07-09 18:21:59 -05:00
Travis Watkins
dbb5e6e3cd
Update CraftBukkit to Minecraft 1.7.10
2014-07-08 14:31:10 -05:00
Wesley Wolfe
a8628fd645
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.
2014-07-01 00:48:07 -05:00
Wesley Wolfe
b602b5efa4
Implement new getOnlinePlayers. Adds BUKKIt-5668
2014-06-25 15:59:58 -05:00
t00thpick1
83e934b3bd
[Bleeding] Fix checks for non-living entities. Fixes BUKKIT-5667
2014-06-24 18:24:29 -05:00
t00thpick1
9099e48e74
[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.
2014-06-23 16:42:31 -05:00
Travis Watkins
6364f59ac4
Use compact memory format for uniform chunk section data.
...
Many chunk sections contain parts of their data that are the same for
every block they contain. In these cases we can save memory by saving
a single value instead of an array of 4096 copies of that value. Block light
and block data are most likely to be uniform followed closely by sky light
data. Block ids are far less likely to be uniform but give the largest
saving when they are. Because of this we use a compact format for every
part of the chunk. Memory saved from this technique will vary based on the
world but seems to be about 50% on normal Minecraft generated chunks.
2014-06-23 16:24:39 -05:00
t00thpick1
5adbab524d
[Bleeding] Set projectile source for reflected fireballs. Fixes BUKKIT-5661
2014-06-22 16:52:52 -05:00
t00thpick1
6f21d3ca8f
[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.
2014-06-22 15:23:16 -05:00
t00thpick1
bed3f7f8f5
[Bleeding] Repair missing diff in Explosion. Fixes BUKKIT-5662
...
The blast protection enchantment dampers explosions, however
the functionality was only added to block explosions, and not
entity explosions.
2014-06-22 15:23:15 -05:00
Travis Watkins
5b9950b5f7
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.
2014-06-21 21:12:46 -05:00
Travis Watkins
ea126f98ad
Don't check unload queue before ticking things anymore.
...
In commits 71a238ee and c8591397 we added checks while ticking to ensure
we never ticked anything in a chunk meant to be unloaded. We did this to
prevent these chunks being removed from the unload queue and leaked.
However, this causes a ridiculously large number of lookups on the queue
for a somewhat rare occurance. We also now have the chunk GC which will
take care of these leaked chunks when they do happen. With this in mind
we now remove these checks which removes almost all uses of the
LongHashSet backing the unload queue.
2014-06-21 21:03:00 -05:00
bloodshot
1b48298d25
Add special case for handling place event with lilies. Fixes BUKKIT-5641
2014-06-01 00:23:06 -05:00
Travis Watkins
1c13d076af
Improve ItemStack filtering.
2014-06-01 00:23:06 -05:00
Nate Mortensen
47b57e6bcf
Some assumptions are better than others.
2014-06-01 00:22:58 -05:00
Daniel Naylor
0a45c3ebf7
Use UUIDs in CraftPlayer equals and hashCode methods. Fixes BUKKIT-5634
2014-05-26 19:45:07 -05:00
Travis Watkins
38fbe60d46
Handle null targets in target event. Fixes BUKKIT-5635
2014-05-26 19:34:45 -05:00
Nate Mortensen
3fbf4d3b5f
Fix ItemStack state during BlockPlaceEvent. Fixes BUKKIT-5632
2014-05-26 17:54:51 -06:00
Travis Watkins
e080bafa58
Rework mob item dropping on death. Fixes BUKKIT-5625
...
After the changes in d611cff2 we started including a mob's equipment when
calling EntityDeathEvent so plugins can access this data. However, the
changes to enable this triggered a bug that makes skeletons and pig zombies
no longer drop equipment because they handle this differently than the rest.
On top of this we don't handle dropping equipment for mobs that cannot
pick up items in vanilla even though vanilla does drop equipment for them
if you summon them with it. We also do not include a horse's inventory
in the event so they drop their saddle, armor, chest, and chest contents
with no way for a plugin to control this.
To solve this issues we revert mob item dropping back to vanilla logic
and instead just capture all their drops in the method they all call to
spawn them into the world. We also move horse inventory dropping so it
happens at a time when we're capturing these drops. With these changes
all items mobs drop on death should now be included in the event and
we have less diff to worry about for future updates.
2014-05-26 18:42:47 -05:00
Wesley Wolfe
4ab4fa5bb1
Fix polarity of Bat.isAwake() and Bat.setAwake(boolean). Fixes BUKKIT-5624
2014-05-20 03:18:26 -05:00
Travis Watkins
89d5265da6
Ensure we always log commands and log the right thing.
...
Waiting to log until after PlayerCommandPreprocessEvent makes the server
not log anything if the event is cancelled. It also makes the server log
what a plugin changed the command to instead of what the player actually
tried to run. As the point of the log is to have a record of every command
a player attempts to run these are both not desirable.
2014-05-14 14:28:52 -05:00
Wesley Wolfe
fa1b6ba834
Update CraftBukkit to use new YamlConfiguration encoding changes
2014-05-14 05:49:04 -05:00
Wesley Wolfe
8daacb9017
Implement awake flag for bats. Adds BUKKIT-5606
2014-05-13 20:38:42 -05:00
Wesley Wolfe
730a62c96a
Handle chat packets correctly
2014-05-13 20:13:16 -05:00
Travis Watkins
65a6e97785
Handle inventory max stack sizes even better. Fixes BUKKIT-5595
...
In 7e37cf96 we modified the container logic to handle custom max stack
sizes better and ensure the client stays in sync with this scenario. This
had the effect of sending an extra set slot packet for every inventory
click a player did which was not wanted. These extra packets also cause the
client to recalculate recipes which breaks the result slot for custom
recipes. To avoid the extra packets in general we now only send them if the
max stack is not the one we started with. In the case of a setting a custom
max stack size on a workbench this is still not enough so we also now send
another extra packet to make sure the result slot is always correct.
2014-05-13 00:01:23 -05:00
Travis Watkins
5610337b4f
Only set skull profile if it is a player skull. Fixes BUKKIT-5605
2014-05-12 23:22:04 -05:00
Travis Watkins
690a908b97
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.
2014-05-03 17:49:59 -05:00
GJ
33e472229e
[Bleeding] Fix stack overflow with Ender Crystals. Fixes BUKKIT-5583
2014-05-03 10:59:32 -05:00
eueln
2bf22a9c49
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.
2014-04-30 22:50:58 -06:00
GJ
c3e4767a79
[Bleeding] Recheck persistence for chicken jockeys each tick. Fixes BUKKIT-5577
2014-04-29 17:29:07 -06:00
GJ
5195513866
[Bleeding] Include equipment in EntityDeathEvent loot. Fixes BUKKIT-5566
2014-04-29 17:28:47 -06:00
GJ
76e6277175
[Bleeding] Allow generation of cocoa trees.
2014-04-28 10:18:55 -04:00
GJ
d91ee7d7ab
[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.
2014-04-28 09:49:33 -04:00
bloodshot
576758bc55
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.
2014-04-23 21:25:55 -06:00
Travis Watkins
de97b62b89
Don't limit anvil stack size.
...
After the changes in c549609d anvils started incorrectly limiting their
inputs to single item stacks. Vanilla allows for full size stacks here and
this is useful for using materials to repair items so now we do too.
2014-04-23 20:48:37 -05:00
Travis Watkins
5dfb74032c
Handle inventory max stack sizes better. Fixes BUKKIT-5564
...
Make sure we check the inventory's max stack size where appropriate and
don't assume the inventory slot is able to take our entire stack just
because it is empty. We also ensure the client is updated with the correct
slot contents and cursor contents in cases where the max stack changes
result in different behavior than the client expected.
2014-04-23 20:48:32 -05:00