md_5
a8dc8d31d3
SPIGOT-4099: Missing BlockFormEvent for concrete powder
2018-07-21 10:03:08 +10:00
kaenganxt
814c742554
SPIGOT-840, SPIGOT-2522: [Draft] Add EntityPotionEffectChangeEvent
...
Discussion ongoing in PR #449
2018-07-20 16:06:34 +10:00
md_5
fa6e97a8f8
SPIGOT-4064: Fix BlockPistonRetractEvent for regular pistons
2018-07-20 10:59:23 +10:00
md_5
c1d9f94223
SPIGOT-4050: Snow erasing block below it
2018-07-19 15:44:55 +10:00
md_5
6c944b2163
Fix issues converting certain chunks
2018-07-19 14:20:07 +10:00
md_5
fc1b107579
SPIGOT-4046: Fix selectors in tick functions
2018-07-19 10:59:16 +10:00
md_5
80f4c10c8f
SPIGOT-4044: Cannot load datapack functions on startup
2018-07-19 10:48:34 +10:00
md_5
40f15832b4
SPIGOT-4048: Fish disappear when they cannot be picked up
2018-07-19 10:37:25 +10:00
md_5
595ec64726
SPIGOT-4049: Books lose NBT data
2018-07-19 10:12:55 +10:00
md_5
3e5fe3e40d
SPIGOT-4042: Fix emptying buckets onto slabs
2018-07-18 17:48:17 +10:00
md_5
15036eb75b
Fix changes that got lost late in development cycle
2018-07-18 14:13:20 +10:00
md_5
f18d78282d
SPIGOT-4028: Improve legacy ItemStack conversion
2018-07-18 14:01:15 +10:00
md_5
de019a35f0
Tweak display of command completions when we have none
2018-07-18 12:23:00 +10:00
md_5
e120b5d10e
Fix missing PlayerResourcePackStatusEvent
2018-07-18 10:00:43 +10:00
md_5
3e814e7b7d
SPIGOT-4034: Fix missed diff affecting canceled InventoryClickEvent
2018-07-18 09:59:10 +10:00
md_5
a71d06a0c8
SPIGOT-3998, MC-133373: Improve attributes
2018-07-17 21:11:52 +10:00
md_5
b4bff6fc3d
SPIGOT-4026: Clicking on command error suggestion should return verbatim input
2018-07-17 06:49:40 +10:00
md_5
f03c10c185
SPIGOT-4025: Fixed missed diff affecting PlayerLocaleChangeEvent
2018-07-17 06:21:43 +10:00
md_5
e563bc00db
Command block names are not nullable
2018-07-16 16:20:46 +10:00
md_5
84676f363c
Fix MapInitializeEvent firing every tick
2018-07-16 12:45:01 +10:00
md_5
8fbc72b714
Add ignore-vanilla-permissions option to assist with disabling default commands
2018-07-16 12:06:06 +10:00
md_5
3890544e04
SPIGOT-4015: Make CraftTeam tie into backing prefix/suffix
2018-07-16 10:20:53 +10:00
md_5
00bba6e86f
SPIGOT-4010: Prefix / suffix compatibility should default to empty string
2018-07-16 09:09:47 +10:00
md_5
82ca5c2740
SPIGOT-4006: ICE rather than SNOW forming in some biomes
2018-07-16 08:53:29 +10:00
md_5
fe7db9d53b
Add EntityToggleSwimEvent and isSwimming / setSwimming API
2018-07-15 16:17:35 +10:00
md_5
421c1728c8
Update to Minecraft 1.13-pre7
2018-07-15 10:00:00 +10:00
md_5
ab13683d8e
SPIGOT-3987: Preserve attributes when writing in books
2018-07-08 10:25:17 +10:00
blablubbabc
8cc5a7ecb6
SPIGOT-3945: Remove RepairCost tag when cost is 0
2018-05-27 17:10:22 +10:00
Parker Hawke
d0a3620c2d
Implement Arrow tile methods
2018-05-06 14:12:19 +10:00
md_5
4509a144db
SPIGOT-3899: Only load advancements from primary world
2018-04-15 10:21:11 +10:00
md_5
fb423b8f48
SPIGOT-3883: Better reloading of pending unload chunks
2018-04-04 16:12:32 +10:00
md_5
68b4fb6427
SPIGOT-3882: Extra call site for VehicleEntityCollisionEvent
2018-04-02 12:55:28 +10:00
md_5
1daee53916
SPIGOT-3879: Make end->overworld spawning more consistent with vanilla
2018-03-30 19:16:53 +11:00
md_5
2e210288de
SPIGOT-3875: Book selectors not resolving
2018-03-29 20:34:46 +11:00
md_5
aa255689c1
SPIGOT-3869: More resurrect fixes
2018-03-24 16:13:17 +11:00
md_5
3fed09cc42
SPIGOT-3869: Error when forcing EntityResurrectEvent
2018-03-23 19:40:16 +11:00
md_5
29705a0d4f
SPIGOT-3864: Protect against suffocation on world change
2018-03-22 21:05:34 +11:00
md_5
7e94e65a1c
SPIGOT-3845: Fix spawnRadius on respawn
...
Thanks senmori for the investigation in PR #431
2018-03-08 18:21:31 +11:00
md_5
1bb523c4e4
SPIGOT-3829: Apply some speed limits to all entities
2018-02-19 09:52:00 +11:00
Senmori
f8411ea1e5
Expand Structure Block API
2018-02-12 10:33:19 +11:00
md_5
8bb4f6ccc1
SPIGOT-3813: Player.setHealth not reliable in conjunction with attribute API
2018-02-12 08:59:32 +11:00
md_5
aa34e9bddd
SPIGOT-3805: Minecart does not teleport through Nether Portal
2018-02-09 18:04:44 +11:00
Senmori
1c40a81828
Expand EnderSignal API
2018-02-03 17:48:41 +11:00
md_5
dac2a4a6ae
SPIGOT-3784: Reset horse chests after event
2018-01-28 09:44:16 +11:00
Senmori
c7656468e4
Expand CreatureSpawner API
2018-01-24 17:19:41 +11:00
md_5
4a030536cd
SPIGOT-3775: ghost player list entry if kicked on join
2018-01-23 22:49:26 +11:00
md_5
1dced6a2c5
Send complete metadata update to joining players
2018-01-08 19:48:32 +11:00
md_5
c3e4382c33
CauldronLevelChangeEvent does not use new level
2018-01-08 13:42:44 +11:00
md_5
dc7d31b00d
SPIGOT-3735: Missing call to BlockFadeEvent
2018-01-04 08:57:01 +11:00
md_5
360629ec5a
SPIGOT-3729: Add AreaEffectClouds to tracker
2018-01-02 10:14:30 +11:00
Senmori
950006003c
SPIGOT-355: API for Villager careers
2017-12-31 21:21:03 +11:00
md_5
8c37e2ebda
SPIGOT-3717: Fix some RCON commands
2017-12-26 07:28:56 +11:00
md_5
70cc3820cf
SPIGOT-3686: Move entity event call earlier in method
2017-12-09 17:32:19 +11:00
md_5
d063cd0d3b
Fix missing event call for BlockRedstoneLamp
2017-12-07 10:59:30 +11:00
md_5
22564a9177
SPIGOT-3674: Take into account max stack size for PlayerDropItemEvent
2017-12-03 08:55:19 +11:00
md_5
809c399a62
SPIGOT-3668: Missing EntityToggleGlideEvent in creative mode
2017-11-28 09:33:40 +11:00
Senmori
bdb8822625
SPIGOT-1505: PlayerItemMendEvent
2017-11-21 10:21:20 +11:00
md_5
b4c298d644
Fix mismatched setArrowCount method
2017-11-17 11:03:30 +11:00
Thinkofdeath
685ed2eb92
Fix dispensing bone meal not having the correct data value
2017-11-17 10:23:20 +11:00
Parker Hawke
305df9035f
Implement max fuse tick & explosion radius methods to Creeper
2017-11-08 12:33:21 +11:00
md_5
3e3bbd4272
SPIGOT-3638: Don't process async chat on shutting down server
2017-11-08 10:36:11 +11:00
md_5
2fae23c251
SPIGOT-3637: Adjust yaw yet again
2017-11-07 17:21:38 +11:00
md_5
b8f84f375b
Fix bad diff
2017-10-13 21:47:55 +11:00
md_5
ef2f38267f
SPIGOT-3607: Bad yaw from armorstands treated as living
2017-10-13 21:36:32 +11:00
md_5
6733aa5635
SPIGOT-3603: Fix client timing out in scenarios where it sends no packets.
2017-10-09 18:23:58 +11:00
blablubbabc
f8500c0a3e
SPIGOT-3598: Persist all beacon effects
...
Regardless of if they are possible in Vanilla by default.
2017-10-07 18:48:08 +11:00
md_5
e8b6e4f29b
Temporarily shift L7 timeout value to L4 value of 30s.
2017-10-06 20:49:22 +11:00
md_5
362ed329f0
Supress harmless teleport error
2017-10-01 17:29:03 +11:00
md_5
94b0980852
SPIGOT-3571: Packet handling must be synchronous
2017-09-19 08:00:56 +10:00
md_5
9a1f5ee80a
Update to Minecraft 1.12.2
2017-09-18 20:00:00 +10:00
md_5
357b573a19
SPIGOT-3513: Correctly set size for freshly spawned Minecarts
2017-08-16 20:47:23 +10:00
Geoff Crossland
963b19c599
Fix a few chunk saving race conditions
...
* ChunkRegionLoader.c() picks an entry in the save queue, removes that entry from the save queue and then actually writes the entry to the region file. So, between the last two steps, the entry is neither in the save queue nor is it in the region file; if somebody loads the chunk again (with ChunkRegionLoader.loadChunk()) in that gap, they'll get old data. I've delayed the removal until the saving is done.
* ChunkRegionLoader.c() also records the coords of the chunks it's currently saving in this.c. ChunkRegionLoader.a(ChunkCoordIntPair, NBTTagCompound), which adds an entry to the save queue, stops the addition of an entry if its coords are in this.c. Now, I'm guessing that Mojang's intended purpose for this mechanism was to prevent multiple parallel writes for the same chunk. The "stops the addition" bit above should then be something like "block until it's no longer in c"; in fact, the vanilla implementation is "discard the new state of the chunk". I've taken the easy route to solving this, by just making ChunkRegionLoader.c() synchronized (since, in normal use, only the chunk saving thread is in here).
2017-08-11 17:34:19 +10:00
md_5
27b8bf9116
SPIGOT-3497: Cancelled EntityPortalEvent leads to incorrect behaviour
2017-08-08 20:35:29 +10:00
Lukas Hennig
61a31ca0c7
SPIGOT-3496, MC-92282: Set mob type of mob-spawner reverts after single spawn wave.
...
Fixes CreatureSpawner.setSpawnedType and a vanilla issue related to
setting the mob type of a mob-spawner via spawn_egg.
2017-08-08 20:34:15 +10:00
md_5
b5878783ad
SPIGOT-3491: Add option to bypass permissions in advancements
2017-08-06 09:07:24 +10:00
Lukas Hennig
19507baf8b
Improvements to BlockStates
...
* Actually capture all the data of TileEntities. This is done by creating a copy of the TileEntity. The methods of BlockState which currently directly access the TileEntity reference will modify the data of that TileEntity-snapshot instead.
* With the call to BlockState.update, the captured TileEntity data gets applied to the current TileEntity in the world.
* Methods which trigger block specific actions will use the current TileEntity from the world.
* CraftBlockState does not hand out the wrapped or the snapshot TileEntity directly. Instead, it provides an applyTo method to copy the data to a given TileEntity and a method to directly get a copy of the TileEntity NBT data represented by the BlockState. CraftMetaBlockState was updated to make use of that.
* Added #getSnapshotInventory() to bukkit which allows modifiying the captured inventory snapshots of containers.
* Tried to clarify which methods only work if the BlockState is placed, which methods require the block in the world to still be of the same type (methods which trigger actions), and that .getInventory() directly modifies the inventory of the block in the world if the BlockState is placed and becomes invalid if the block type is changed.
Backwards compatibility
* If the BlockState acts as InventoryHolder, getInventory() will still return the inventory directly backed by the TileEntity in the world (like before), and not the snapshot inventory. This compromise should reduce the potential of these changes to break existing plugins, or craftbukkit's own use of BlockState.
* The snapshot's inventory can be accessed by a new method getSnapshotInventory()
* In case the BlockState is not placed (if it was retrieved from the MetaBlockState of an item), the getInventory() method will however return the snapshot inventory. So that when the BlockState gets applied back to the item, the inventory changes are properly included.
* With the changes to CraftMetaBlockState it is no longer required to call the update method before passing a modified BlockState to the CraftMetaBlockState. For backwards compatibility the update method will simply return true for a non-placed BlockState, without actually doing anything.
Impact on plugins
* Restoring blocks now actually works as expected, properly restoring the TileEntity data, reglardless if the block changed its type in the meantime.
* Plugins are now consistently required to call the update method in order to apply changes to blocks. Though, regarding the Javadoc they should have been required to do so anyways.
* New feature: Plugins can take and modify inventory snapshots.
* Breaking change: If a plugin gets the BlockState of a block in the world, modifies the inventory returned by .getInventory(), and then tries to use the same BlockState to apply the TileEntity data to an ItemStack block meta, the ItemStack will use the snapshot inventory, disregarding the changes made to the inventory returned by .getInventory(). This is the compromise of .getInventory() returning the inventory directly backed by the TileEntity in the world.
Other fixes related to BlockState:
* TileEntityContainer#getLocation() will run into a NPE if the TileEntity is non-placed (ex. when getting the BlockState from a CraftMetaBlockState).
* Beacon.getEntitiesInRange() would previously throw a NPE if called for a non-placed BlockState. It was changed to now require to be placed and use the current TileEntity in the world. If the TileEntity in the world is no longer a beacon, it will return an empty list.
* EndGateway now supports setting and getting the exit location even for non-placed EndGateways (inside BlockStateMeta) by using / returning a location with world being null.
2017-08-05 14:37:19 +10:00
md_5
63029f4ff3
SPIGOT-3492: Ensure player functionality uses their specific scoreboard
2017-08-05 09:15:52 +10:00
md_5
2a927e8638
Update to Minecraft 1.12.1
2017-08-03 23:00:00 +10:00
md_5
57c323aad1
SPIGOT-3486: Missing check in redstone placement
2017-08-03 08:31:29 +10:00
md_5
2cfb85dae2
SPIGOT-3487: Llama doesn't drop chest
2017-08-03 08:21:05 +10:00
md_5
86aa17fae1
SPIGOT-3482: ProjectileHitEvent for shulker bullet and llama spit
2017-08-02 18:05:28 +10:00
md_5
2c5c611d0c
SPIGOT-3456: Expand calling of ServerCommandEvent
...
Existing usage preserved by checking sender.
2017-07-28 18:10:38 +10:00
md_5
d00c0574cd
SPIGOT-3403: Add an EntityPickupItemEvent
2017-07-28 17:47:59 +10:00
md_5
5c4864398d
SPIGOT-3463: Spurious item drops from event
2017-07-28 17:23:39 +10:00
md_5
b1b9ab0df9
SPIGOT-3461: Standardise plugin load timing
2017-07-26 13:20:29 +10:00
md_5
4670a84bd9
SPIGOT-3432: Add playNote support for new sounds
2017-07-24 17:44:44 +10:00
md_5
f078eed54b
SPIGOT-3440: Non player entities should not make new portals
2017-07-22 16:40:10 +10:00
md_5
5a12442f22
SPIGOT-3433: Improve AreaEffectCloud#getSource
2017-07-22 09:51:22 +10:00
md_5
49c2537fe2
Fix memory leak in PlayerList
2017-07-17 09:55:47 +10:00
md_5
e03b1a556d
SPIGOT-3417: Event for shearing snowman
2017-07-15 09:53:22 +10:00
md_5
50b75cd65d
SPIGOT-3407: Set damager for evoker fangs
2017-07-08 22:40:54 +10:00
md_5
0481ae963a
SPIGOT-3382: Ensure players can pickup stuff
2017-06-26 11:21:38 +10:00
md_5
9de5cb59a0
SPIGOT-3377: Fix subspace bubble advancement
2017-06-26 10:16:54 +10:00
md_5
d7cd7275f2
SPIGOT-3379: Generalise canPickupItems to other entities.
2017-06-26 08:34:52 +10:00
md_5
de76085596
SPIGOT-3376: Fix nested functions
2017-06-26 08:27:25 +10:00
md_5
258575110f
SPIGOT-3373: Fix /execute in gameloop functions
2017-06-25 09:46:19 +10:00
md_5
753a8e700d
SPIGOT-3324: Improve tameable damage handling
2017-06-24 10:01:46 +10:00
md_5
763827668e
SPIGOT-3368: Allow anvil level cost to be overwritten by properties
2017-06-23 20:35:17 +10:00
md_5
5e2a23055e
SPIGOT-3364: Correct EntityResurrectEvent
2017-06-23 12:47:29 +10:00
md_5
03f1e37ae2
Fix nether world border center not adjusting
2017-06-18 19:23:33 +10:00
md_5
a7d074c6c0
SPIGOT-3329: Allow per world loot tables
2017-06-15 20:34:19 +10:00
md_5
732911efbc
SPIGOT-3337: Use special data value to indicate multiple recipe choices
2017-06-15 07:23:08 +10:00
Jacob Martin
f7d14f184d
Fix detection of missing or invalid tile entities for End portals and gateways
2017-06-12 12:41:18 -05:00
md_5
ec47e791bd
SPIGOT-3328: EntityTameEvent for Parrots
2017-06-12 07:27:34 +10:00
md_5
202da9777d
SPIGOT-3324: Best effort fix for shoulder Parrots + cancelled damage event
2017-06-11 12:20:18 +10:00
md_5
639aa0cf48
SPIGOT-3320: Apply tile entity fixer to more types
2017-06-11 08:32:29 +10:00
md_5
ed8c725d19
SPIGOT-3304: Respect duration from Vanilla /weather
2017-06-09 16:17:08 +10:00
md_5
2c34c38d7a
SPIGOT-3303: Warn when attempting to grant non existent recipe
2017-06-09 16:13:35 +10:00
md_5
1b3122eef1
SPIGOT-3302: Armor stands not dropping armor
2017-06-09 15:51:56 +10:00
md_5
bb4ae3b3b8
Update to Minecraft 1.12
2017-06-08 18:00:00 +10:00
chickeneer
fe3ca95c76
Prevent NPE when setting tempt target to null
2017-06-04 08:43:00 +10:00
md_5
10daedccdd
Add proper TeleportCause for /teleport
2017-06-04 08:39:36 +10:00
md_5
9a032b246b
SPIGOT-3290: /teleport command overrides player rotation
2017-06-04 08:34:52 +10:00
md_5
701b06494d
SPIGOT-3286: Call BlockFormEvent for Concrete Powder -> Concrete
2017-06-03 17:39:03 +10:00
md_5
e13d119686
Update to Minecraft 1.12-pre6
2017-05-30 21:55:13 +10:00
Scetra
ccc420a957
Add support for preventing block drops in BreakEvent
2017-05-28 17:08:28 +10:00
md_5
c037fe3d44
Add color API for Teams
2017-05-28 11:00:02 +10:00
Pokechu22
44dd60ac27
SPIGOT-3272: Fix duplicate creative inventory
...
This change properly identifies the creative inventory as one with 5 crafting slots (as that's the default set in ContainerPlayer, and handled properly in other containers), instead of having the same inventory twice (which breaks slot identification).
2017-05-28 10:32:31 +10:00
MiniDigger
274304b8ca
SPIGOT-439: Add player locale related APIs.
2017-05-27 19:06:28 +10:00
md_5
a479029a85
Ensure gameLoop function gets selectors applied.
2017-05-26 16:43:56 +10:00
md_5
c7920f4302
SPIGOT-3257: Issue with AdvancementRewards function
2017-05-21 10:28:07 +10:00
md_5
24147056e0
SPIGOT-3258: VehicleBlockCollisionEvent only fires in certain directions
2017-05-21 10:24:47 +10:00
md_5
cda27c992d
SPIGOT-3254: Check chunks are loaded before ticking entities as per previous versions.
2017-05-20 11:28:38 +10:00
md_5
1004352990
Update to Minecraft 1.12-pre5
2017-05-19 21:00:13 +10:00
md_5
45102fcf28
Misc advancement / recipe reload fixes including SPIGOT-3240
2017-05-16 21:22:07 +10:00
md_5
68b0515b51
SPIGOT-3243: Remove recipe reset on world change / death
2017-05-15 18:11:48 +10:00
md_5
913c5a61f7
SPIGOT-3242: Fix rain not showing client side
2017-05-15 15:01:05 +10:00
md_5
5195487ec6
Update to Minecraft 1.12-pre2
2017-05-14 12:00:00 +10:00
md_5
fcc5dcce54
SPIGOT-3235: Disconnect for payload errors
2017-05-14 09:25:25 +10:00
BlackHole
fbb47e8383
SPIGOT-3215: Call BlockPhysicsEvent for tall plants
2017-05-01 19:49:37 +10:00
Matthew
d9d7552262
Implement getColor / setColor for Shulker entity
2017-04-30 09:54:34 +10:00
Pokechu22
a2af8f0a73
SPIGOT-3207: Fix hiding players in a BukkitRunnable after joining
...
This happened because "joining" wasn't cleared until the player was ticked. Runnables (presumably) ran _after_ the player list packet was sent, but before the player was ticked; thus, the player list packet was sent, but not cleared. The fix is to replace joining with hasSentListPacket, which is set immediately before sending any player list packets (thus, if hidePlayer is called after, it sees that the list packet has been sent and sends a new one to reset it). With this fix, the player is added to the list and then removed shortly afterwards.
The reason why running /hideall in the example wouldn't fix the invisibility is because the server already thinks the player's been removed from the list (as they're hidden), and thus doesn't want to send another hide packet. This is correct behavior assuming that they get hidden correctly the first time, which they now do.
2017-04-28 15:27:57 +10:00
Geoff Crossland
6194f6cc49
Drop RegionFile.chunkExists() in favour of Mojang's own version
2017-04-27 21:25:33 +10:00
Matthew
55a1f9ff12
Implement getColor / setColor for TippedArrow
2017-04-26 20:28:27 -04:00
md_5
2453830549
Reset player arrow count on death
2017-04-26 15:56:06 +10:00
md_5
7b044defc0
Remove players from vehicle when changing world via NMS methods.
2017-04-21 14:56:41 +10:00
md_5
0ab698655b
SPIGOT-3192: Return default value for invalid map icons
2017-04-21 08:20:49 +10:00
md_5
1c3428e534
Add small throttle to book edits.
2017-04-20 22:10:31 +10:00
md_5
be9ef980b9
Implement cooldown API
2017-04-19 18:04:32 +10:00
Pokechu22
1ac133ecc5
SPIGOT-3182: Fix tab-completion in command blocks without leading slash
2017-04-13 17:57:47 -07:00
Jacob Martin
d219213e2b
Fixes to mob equipment behaviour
...
* Set correct flag for CanPickUpLoot on NBT load
* Drop previous equipment on mob equipment pickup
2017-04-09 11:45:37 +10:00
md_5
1f6c04c0f4
SPIGOT-3165: Only increment spawncount when mob spawn succeeds
2017-04-06 21:31:27 +10:00
md_5
41a7d14f8c
SPIGOT-3162: Experience ignored for custom recipes
2017-04-03 09:06:42 +10:00
md_5
b5f7b6d69f
SPIGOT-3157: Use Vanilla gamemode change code
2017-03-31 21:21:11 +11:00
md_5
7dd77d7340
SPIGOT-3154: Sleeping players cannot change dimensions
2017-03-30 21:53:23 +11:00
md_5
d09304e5db
SPIGOT-3144: Add missing PrepareAnvilEvent call.
2017-03-25 09:51:02 +11:00
md_5
186c351a3a
SPIGOT-3149: StructureGrowEvent for dispenser triggered growth
2017-03-24 21:03:44 +11:00
md_5
f4822eb93d
Add additional methods sigs for binary compat
2017-03-24 15:23:23 +11:00
md_5
4959e46f53
Add TeleportCause.COMMAND for inbuilt /tp
2017-03-24 15:14:31 +11:00
md_5
31a852d619
SPIGOT-3142: Plugin event changes not using TeleportCause.PLUGIN
2017-03-24 15:09:34 +11:00
md_5
acf544e775
SPIGOT-3141: Missing TeleportCause.SPECTATE when lift clicking spectate
2017-03-24 15:08:19 +11:00
BlackHole
cf05cccd1b
SPIGOT-3143: Don't decrease item stack size if VehicleCreateEvent is cancelled
2017-03-22 15:15:34 +11:00
md_5
257d6cd04f
Process entity portalling towards the end of a tick.
...
Cross world teleportation works by taking a copy of an entity and moving it to a new world. After this happens the original entity is marked as dead so as to be removed from the original world, however it still undergoes one further tick in the main world, but with some information from the new world. It is not so easy to break out of this tick cycle if needed, so instead we move the portalling process towards the end of an existing tick. This ensures that the entity will not be spuriously ticked.
2017-03-20 15:41:15 +11:00
md_5
2aa5ac6c92
SPIGOT-3128: Shift VehicleCreateEvent calling.
2017-03-15 20:48:47 +11:00
md_5
251e4c9215
SPIGOT-3126: Make fireballs do a better job of respecting mobGriefing
2017-03-15 15:26:36 +11:00
md_5
2ad21b87f1
Ensure PlayerResourcePackStatusEvent is synchronous
2017-03-14 21:56:19 +11:00
Nathan Wolf
aa522c91a8
Add getIgnitingBlock to BlockBurnEvent
2017-03-11 17:22:12 +11:00
md_5
7a7c64714e
SPIGOT-3107: Try and improve shield knockback further
2017-03-08 14:51:48 +11:00
md_5
cb44e932be
SPIGOT-3105: BlockFadeEvent for large snow blocks
2017-03-08 14:24:11 +11:00
md_5
cb61ac0404
MC-111753, SPIGOT-2971: Brewing stand not reloading
2017-02-21 20:47:40 +11:00
md_5
64277ec9bc
SPIGOT-3075: EntityTeleportEvent for Shulkers
2017-02-20 09:55:24 +11:00
md_5
1a710213df
SPIGOT-3067: Wither skeleton heads not dropping
2017-02-15 10:11:41 +11:00
md_5
2683195ecd
SPIGOT-3063: Call EntityAirChangeEvent
2017-02-14 10:34:56 +11:00
md_5
ed8a073298
SPIGOT-3044: BlockDispenseEvent for shulker boxes
2017-01-31 21:38:55 +11:00
md_5
80dd971b52
Make tile activeContainer assignment consistent.
2017-01-27 11:42:21 +11:00
md_5
16b5116c7c
SPIGOT-3033: Alter behaviour of cancelled hopper transfers (reverted from commit 334aa07e2f
)
2017-01-26 14:08:04 +11:00
md_5
334aa07e2f
SPIGOT-3033: Alter behaviour of cancelled hopper transfers
2017-01-26 11:13:00 +11:00
md_5
46226d6a03
SPIGOT-3031: Pigs are not dropping their saddle
2017-01-24 13:39:22 +11:00
Pokechu22
4d3bf20155
Re-enable the vanilla debug MethodProfiler and /debug command
...
This is highly useful for profiling vanilla code, and in some cases plugin code. It is somewhat expensive, though, which is why it was initially disabled.
I chose to use a system property instead of a configuration setting because 1) the MethodProfiler is exclusive to CraftBukkit and not part of the general API (the timings system is the general API equivalent), and 2) using a static final boolean property _may_ allow the JITter to optimize out the methods when disabled (though I'm not sure of it).
There are several changes to fix cases where the profiler code was broken slightly by other craftbukkit changes. All of cases have been fixed, except for the block entity ticking one, due to the cost of the getSimpleName call. For that, a ticking entry is used instead, so that time spent actually ticking the block entities can be compared with time processing the list.
This (effectively) reverts 7dde6cc566
.
2017-01-18 17:42:35 -08:00
md_5
f709362074
SPIGOT-3002: Mob spawners are valid
2017-01-11 09:24:08 +11:00
md_5
27dd3ca45f
SPIGOT-2997: Explicitly disallow invalid tiles to be opened
2017-01-10 09:56:20 +11:00
md_5
270755dc06
Fix crash if entities other than players (somehow?) consume their item.
2017-01-09 14:28:49 +11:00
md_5
d5e7885c2e
SPIGOT-2990: EntityTeleportEvent for tameable animals following owner
2017-01-05 20:44:26 +11:00
md_5
c91863850d
SPIGOT-2989: Use existing horse inventory object.
2017-01-05 15:03:22 +11:00
md_5
ce89845fda
SPIGOT-1915: Fix players seeing their own passengers
2017-01-04 10:50:02 +11:00
md_5
63b5f7d338
More robust inventory handling
2017-01-04 10:04:27 +11:00
md_5
613be0d841
SPIGOT-2980: Improve SpawnEgg NBT application and ItemStack conversion.
2017-01-02 16:13:25 +11:00
md_5
bf8303f25d
Clear effectsToProccess after applying potion effects
2017-01-02 13:51:16 +11:00
md_5
e2a288c863
SPIGOT-2969: Shulker box removal not updating comparators
2016-12-28 14:23:52 +11:00
md_5
70bc70b4ee
SPIGOT-2966: Entirely remove problematic check
2016-12-28 09:50:40 +11:00
md_5
f9e044059f
SPIGOT-2960: Fire HOTBAR_MOVE_AND_READD in more cases
2016-12-27 12:14:55 +11:00
md_5
056af8b9c2
SPIGOT-2964: Correct number of shelve sin PrepareEnchantEvent
2016-12-27 11:53:09 +11:00
md_5
0fb3f8b47a
Correct some code.
2016-12-24 22:52:50 +11:00
md_5
96f03d9065
SPIGOT-2127: Add DamageCause.ENTITY_SWEEP_ATTACK
2016-12-23 22:40:38 +11:00
md_5
746cf0f0d7
Additional fireworks damage tracking.
2016-12-23 22:32:40 +11:00
Zach Brown
622add8458
MC-88491: Fix projectile colliding with shooter
...
In some situations, a projectile made collide with the entity that shot
it. This occurs because the game sets the ignored entity incorrectly.
Our fix is to ensure that the shooter is the only entity that gets
ignored by the projectile.
2016-12-23 16:41:54 +11:00
md_5
e232e1519e
SPIGOT-2953: Set damager for fireworks
2016-12-22 20:26:27 +11:00
md_5
13a5b12206
SPIGOT-2944: Just apply filtering to players
2016-12-22 16:50:24 +11:00
md_5
a86731306b
Update to Minecraft 1.11.2
2016-12-21 22:00:00 +11:00
md_5
fb50a80d0f
SPIGOT-2948: Alter filtering logic
2016-12-21 17:12:39 +11:00
md_5
8ea0c87f51
Update to Minecraft 1.11.1
2016-12-21 07:00:00 +11:00
md_5
c8ff65136f
SPIGOT-2936: Simplify WorldBorder diff
2016-12-19 23:05:39 +11:00
md_5
4602331b1d
SPIGOT-2930: Shift calling of PlayerItemBreakEvent to before break.
2016-12-18 09:26:36 +11:00
md_5
7f313269d7
SPIGOT-2926: Check spawn-npcs setting for NPCs.
...
Probably should refactor this code to be more similar to Vanilla in future.
2016-12-17 14:26:09 +11:00
md_5
655d8407ce
SPIGOT-2918: Always call EnchantItemEvent
2016-12-14 14:38:55 +11:00
md_5
c6d6844254
SPIGOT-2913: Only one enchantment applied to items
2016-12-13 08:44:50 +11:00
md_5
4f479728ee
SPIGOT-2912: Fix enchanting with ID of 0
2016-12-12 09:35:31 +11:00
md_5
c4baa9cdf9
Add getLocation for InventoryEnderChest
2016-12-11 16:41:40 +11:00
md_5
0a81101bd2
Add EnchantmentOffer to PrepareItemEnchantEvent
2016-12-11 11:12:10 +11:00
md_5
7e02867f09
SPIGOT-2242: Handle changed item in PlayerPickupArrowEvent
2016-12-10 12:48:56 +11:00
md_5
aa257534dc
SPIGOT-2524: Update inventory for cancelled air right click
2016-12-10 12:36:09 +11:00
md_5
7dfa530395
SPIGOT-2907: Improve EntityResurrectEvent handling
2016-12-10 12:16:14 +11:00
md_5
622630c823
Clean up BlockFlowing
2016-12-09 12:56:49 +11:00
Brokkonaut
f9eddf3f6e
SPIGOT-2886: Call BlockFormEvent when Lava and Water collide
2016-12-09 12:53:15 +11:00
md_5
caf86c88a9
Use CraftEventFactory for BlockFormEvent
2016-12-09 12:45:21 +11:00
md_5
58bff62b2d
SPIGOT-2891: Remove chunks if first check is false
...
Minecraft does double checking for synchronous generation, but since we generate chunks asynchronously we are required to check the first condition also in case the chunk was loaded between ticks. We leave the other logic to be cleaned up by the loops below.
2016-12-06 22:05:58 +11:00
Senmori
8c4397207f
Implement EntityDeathEvent for ArmorStands
2016-12-06 17:10:33 +11:00
md_5
a710176e46
SPIGOT-2889: Error cancelling creative InventoryClickEvent
2016-12-05 09:07:25 +11:00
Jacob Martin
b64d852496
#326 : Convert BlockMeta to handle older serialized items.
2016-12-03 10:58:18 +11:00
md_5
9beb0c9968
SPIGOT-2879: Change order of entity addition for ender pearls
2016-12-03 09:55:36 +11:00
md_5
b6ad714e85
SPIGOT-2871: Improve BlockStates + BlockStateMeta
2016-12-02 09:29:33 +11:00
Xor Boole
eb6c1bf31a
Add some expansions to Anvil Inventory API
2016-11-30 16:40:40 +11:00
md_5
6d5a66f00f
SPIGOT-2867: Update inventory on cancelled interacts too
2016-11-30 15:33:29 +11:00
md_5
8d7e4d17e9
Expand definition of isFrozen
2016-11-30 09:16:01 +11:00
md_5
41ade2f291
SPIGOT-2860: Don't create 0 exp orbs when breeding
2016-11-29 15:42:46 +11:00
md_5
1c07d5c78f
Add hitEntity to ProjectileHitEvent
2016-11-28 12:47:01 +11:00
md_5
2ba48b4965
SPIGOT-2855: Empty ItemStacks in PlayerDeathEvent drops
2016-11-28 12:34:21 +11:00
md_5
0a1e0455e2
SPIGOT-1401: Issues placing blocks adjacent to eachother
2016-11-28 10:13:49 +11:00
md_5
d7cce99f01
Fix possible leaks in vanish API
2016-11-28 10:02:40 +11:00
LukBukkit
27d625184d
SPIGOT-2695: Added BrewingStandFuelEvent and added fuel level to the BrewEvent
2016-11-27 10:37:54 +11:00
md_5
78c7614349
SPIGOT-2842: Improve item age handling
2016-11-25 10:31:53 +11:00
md_5
c3d951ddcd
Farmland is a pickable block
2016-11-24 21:29:41 +11:00
md_5
281376dfb5
SPIGOT-2833: Tile entities occasionally wiped after placement
2016-11-24 09:30:01 +11:00
md_5
a0d5a841da
SPIGOT-2836: ProjectileHitEvent not always firing for FishHook
2016-11-23 22:50:37 +11:00
md_5
c1462a24d8
SPIGOT-2765: Special case entity triggered explosions for HangingBreakEvent
2016-11-23 10:34:08 +11:00
md_5
7691c87df6
SPIGOT-2824: Llama Strength API
2016-11-23 10:27:49 +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
md_5
ac99d7d474
SPIGOT-2807: Update inventory when attack cancelled
2016-11-20 14:13:21 +11:00
md_5
95436219a5
SPIGOT-2806: Fix PlayerDropItemEvent for disconnected players
2016-11-20 10:19:22 +11:00
LukBukkit
221508dce3
Fix cancelling PlayerEditBookEvent
2016-11-20 09:33:22 +11:00
md_5
eed13ca548
SPIGOT-2800: Can only smelt 63 stack
2016-11-19 21:14:46 +11:00
momothereal
89e6712cde
Add additional APIs for Evoker / EvokerFangs
2016-11-19 18:53:57 +11:00
md_5
ead445ec99
Attempt to sync damage up again - golden apples this time
2016-11-19 14:53:19 +11:00
md_5
32048c4690
SPIGOT-2795: InventoryClickEvent issues
2016-11-19 13:51:10 +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
8095a750e7
SPIGOT-2790: Remove negative item ID filtering again
2016-11-18 15:25:43 +11:00
Senmori
5e51afde49
Get Colors from ShulkerBox; Implement CustomName for Tiles.
2016-11-18 11:28:49 +11:00
md_5
0c3bb76487
SPIGOT-2777: Mobs not being angered by snowballs
2016-11-18 10:57:53 +11:00
md_5
a0269d8e72
SPIGOT-2784: Fix Withers not being built
2016-11-18 09:20:14 +11:00
md_5
129efc132a
SPIGOT-2771: Safely execute command block commands
2016-11-18 08:54:22 +11:00
md_5
2dd38f2dc4
SPIGOT-2785: Wrong effect ID for wither sounds
2016-11-18 08:41:21 +11:00
md_5
a951a88398
SPIGOT-2770: Can Place Structure Blocks Even When Not Op
2016-11-17 21:01:15 +11:00
md_5
c25ddf063a
Update to Minecraft 1.11
2016-11-17 12:41:03 +11:00
md_5
2e39de698d
SPIGOT-1903, MC-98153: Portal Location Sync Issues
2016-10-23 14:00:35 +11:00
md_5
d86d282f63
SPIGOT-2738: Revert SPIGOT-1903 fix
...
Reverted from commit 8e5e90d5eb
2016-10-23 12:45:43 +11:00
md_5
8e5e90d5eb
SPIGOT-1903: Only issue player location update after tick
...
Previously after a player tick, the player's location would be reset back to the location which they had prior to the tick, only to be (hopefully) corrected at a later point, after the client had attempted (and failed) to acknowledge the location change.
2016-10-19 20:43:47 +11:00
Pokechu22
e20928f7da
SPIGOT-2726: Fix duplicate UUID check not always running
...
World.addEntity(Entity entity) calls addEntity(entity, SpawnReason.DEFAULT), which contains the code that was originally in addEntity (and some event code).
However, WorldServer previously only had addEntity(Entity entity), so if addEntity(Entity entity, SpawnReason spawnreason) was called directly, the UUID check that's found in it (the call to 'i') is skipped. This happens, among other places, in ChunkRegionLoader.spawnEntity (which /summon uses).
I fixed this by making WorldServer override the SpawnReason version, rather than the regular version. This is safe to do because the World version calls the SpawnReason version - it's not necessary to do the same thing in WorldServer.
2016-10-16 19:42:23 +11:00
md_5
b5fb9a1cd7
SPIGOT-2686: Vehicles cannot collide with air
2016-10-12 19:47:14 +11:00
md_5
744e1a177a
Fix looting enchant using wrong variable
2016-10-10 17:02:49 +11:00
md_5
70aace0312
SPIGOT-2694: Update other half of door on BlockBreakEvent
2016-10-10 16:58:14 +11:00
md_5
270a3a66ce
SPIGOT-2717: /execute over RCON
2016-10-09 14:00:04 +11:00
Ryan Michela
1cce906e11
MC-54738: Fix ocean biome spikes due to minHeight sign inversion.
2016-10-08 19:22:59 +11:00
md_5
c1b529eddc
SPIGOT-2683: Missing BlockDispenseEvents
2016-09-19 18:20:15 +10:00
md_5
bae15259ed
Remove unneeded change
2016-09-11 14:14:13 +10:00
md_5
8788b79a48
SPIGOT-2639: Better state validation
2016-09-05 17:33:28 +10:00
md_5
fafcfd7529
SPIGOT-2653: Better align combustion with vanilla behaviour
2016-09-03 16:39:21 +10:00
md_5
43ab2669d7
SPIGOT-2634: Concurrency issue in FileIOThread
2016-08-27 15:51:54 +10:00
DemonWav
c74e2a7301
SPIGOT-215: Implement infrastructure for Location tab completes
2016-08-25 09:48:52 +10:00
md_5
4db0855e3e
SPIGOT-2622: Ensure all players are safely disconnected on shutdown
2016-08-23 14:02:48 +10:00
Pokechu22
4507d99aea
SPIGOT-2616: Fix dispensers dispensing TNT making squid sounds
...
This was caused by the wrong obfuscated sound effect being used, probably due to a merge issue.
2016-08-20 09:48:07 +10:00
md_5
5e5cf84f2c
SPIGOT-2581: EntityAirChangeEvent
2016-08-08 18:24:21 +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
f5d891f609
SPIGOT-2537: Relax skull check even for nominally invalid skulls.
2016-07-22 20:34:17 +10:00
md_5
7f9fbe54ba
Simplify a few diffs
2016-07-15 20:10:43 +10:00
md_5
301db84d3d
SPIGOT-2520: Better skull validation
2016-07-13 11:47:57 +10:00
md_5
ca1bb1c445
SPIGOT-2495: Better validation of Skulls.
2016-07-12 20:18:08 +10:00
md_5
0df416d679
SPIGOT-113: Add save status to ChunkUnloadEvent
2016-07-11 21:10:56 +10:00
md_5
a625e4567d
SPIGOT-2427: Fix missed diff in armor damage handling
2016-07-10 12:02:18 +10:00
md_5
54902261c1
SPIGOT-1994: Revert collisions to Vanilla behaviour
2016-07-10 11:44:02 +10:00
md_5
e3b4dd3d9a
Call EntityChangeBlockEvent for Fire Arrows hitting TNT
2016-07-08 11:20:15 +10:00
md_5
d7c257e120
SPIGOT-2490: Villager farming event
2016-07-08 11:12:40 +10:00
md_5
a327d9f1da
SPIGOT-2504: Save structure info for secondary worlds
2016-07-08 10:55:51 +10:00
md_5
2239ff0f97
SPIGOT-2501: Remove period from default quit message
2016-07-07 10:43:49 +10:00
md_5
56813c7fff
SPIGOT-1468: ENDER_PEARL SpawnReason
2016-07-01 12:30:28 +10:00
md_5
3804ba654e
SPIGOT-1373: Implement EntityTargetEvent for TEMPT.
...
This can be a high frequency event call. Use with care.
2016-07-01 11:41:27 +10:00
md_5
45038571f9
SPIGOT-1341: Cancelled cake interact decreases client hunger
2016-07-01 11:20:31 +10:00
md_5
8db0dbfc44
SPIGOT-1405: Call EntityChangeBlockEvent for Rabbits eating Carrots
2016-06-30 16:15:38 +10:00
md_5
121dfc098a
SPIGOT-1288: Sounds played for cancelled BlockPlaceEvent
2016-06-30 15:39:58 +10:00
md_5
6b843d995f
SPIGOT-1284: Run scheduler consistently within a tick
2016-06-30 15:20:04 +10:00
md_5
1faaa340e5
SPIGOT-1283: Copy data directory on world import in case it's required
2016-06-30 15:13:32 +10:00
md_5
6470560480
SPIGOT-1264: Spurious BlockFadeEvent
2016-06-30 14:47:05 +10:00
md_5
37d08c52ca
SPIGOT-1224: InventoryClickEvent issues for containers opened during event
2016-06-30 14:27:49 +10:00
md_5
939423a8f1
SPIGOT-1181: Ensure Minecart command updates visually
2016-06-30 13:33:26 +10:00
md_5
5f61739cb8
SPIGOT-1132: Duplicate Minecart interact event
2016-06-30 13:26:22 +10:00
md_5
287ef78890
SPIGOT-2461: Call player tick specifically
2016-06-28 11:44:48 +10:00
md_5
df75eebc2b
MC-80966 / SPIGOT-957: Send additional lighting data
2016-06-25 20:44:12 +10:00
md_5
ecf4b4238a
SPIGOT-924: Compute attributes one last time after quitting
2016-06-25 20:38:13 +10:00
md_5
75f99ec7c5
Update to Minecraft 1.10.2
2016-06-25 11:54:17 +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
Jadon Fowler
63839165bc
Fix infinite loop when saving chunks
...
Running `/save-all flush` would start an infinite loop that prints:
ThreadedAnvilChunkStorage (world): All chunks are saved
2016-06-18 04:31:44 -07:00
md_5
02f4218da5
SPIGOT-2414: Repeated disconnects
2016-06-15 13:45:11 +10:00
md_5
71cd505d45
SPIGOT-2405: Better event for combust due to fire
2016-06-15 13:31:35 +10:00
md_5
7f1a32252b
SPIGOT-2385: RegionFileCache synchronization issues
2016-06-12 19:28:27 +10:00
md_5
ac58f3840e
SPIGOT-2348: EntityTeleportEvent cancellation
2016-06-12 12:51:53 +10:00
md_5
1f507256e7
SPIGOT-2322: Chunks generating with missing / corrupted data.
2016-06-12 12:28:08 +10:00
md_5
f642d4bcc3
SPIGOT-2397: More calls to VehicleEntityCollisionEvent
2016-06-12 10:45:03 +10:00