Commit graph

2923 commits

Author SHA1 Message Date
Aikar
d39553c217 Rename getOwnerUUID to Tameable#getOwnerUniqueId for consistency
for the @kashike, thanks for adding a server diff to use this name!
2018-02-24 01:16:01 -05:00
Aikar
d285cd8073 Tameable#getOwnerUUID API
This is faster if all you need is the UUID, as .getOwner() will cause
an OfflinePlayer to be loaded from disk.

This method is already implemented on the server, just needed to expose it.
2018-02-24 00:57:03 -05:00
Shane Freeder
cf2f346ccb Update B/CB 2018-02-24 04:03:32 +00:00
Zach Brown
3d54d86de2 Merge pull request #1016 from ShelLuser/master
Allowing Paper to be build on FreeBSD
2018-02-22 10:47:58 -05:00
ShelLuser
f512fe2faa This patch allows Paper to be build on FreeBSD using the paper script. FreeBSD also doesn't have md5sum and uses md5, just like OS X. As such I added an extra check for the presence of FreeBSD. 2018-02-22 11:43:31 +01:00
Aikar
e6af5c897e update url to my repo 2018-02-19 22:35:32 -05:00
Zach Brown
d793872ffd Update parent pom
Switch repos to use HTTPS (@demonwav)
Add destroystokyo public
Add note that screwing with this file sucks
Remove outdated parent
2018-02-18 19:37:12 -05:00
Shane Freeder
f10fedcc19 Update CB 2018-02-18 14:41:40 +00:00
Shane Freeder
ca86dc72f6 Extend Player Interact to cover CommandBlocks (@Phoenix616) 2018-02-18 14:39:02 +00:00
Aikar
1fcba9b26d Ignore AsyncCatcher setting for Command Dispatch, always force sync
Plugins were abusing this to dispatch commands async anyways.

We will no longer check that flag, and force all commands to be ran sync.

Use a different boolean for allowing things go to through on shutdown/restart instead.

Resolves #1004
Resolves #1005
2018-02-15 00:34:58 -05:00
Aikar
c28c88eb35 Fix bug with hopper optimizations when amount > 3 - Closes #1011 2018-02-14 21:30:12 -05:00
Aikar
3d9d0a7227 Optimize Hoppers
- Lots of itemstack cloning removed. Only clone if the item is actually moved
- Return true when a plugin cancels inventory move item event instead of false, as false causes pulls to cycle through all items.
  However, pushes do not exhibit the same behavior, so this is not something plugins could of been relying on.
- Add option (Default on) to cooldown hoppers when they fail to move an item due to full inventory
- Skip subsequent InventoryMoveItemEvents if a plugin does not use the item after first event fire for an iteration
2018-01-18 01:00:51 -05:00
Nikita Rudy
9105e06867 Added options to disable additional ore generation in Mesa and Extreme Hills (#1006) 2018-02-13 03:44:50 +03:00
Shane Freeder
808e2dff16 Update B/CB 2018-02-12 18:04:05 +00:00
Shane Freeder
a95873bd35 Close Structure Window when PlayerInteractEvent is cancelled
This is opened on the client, and so we send a CloseWindow packet
2018-02-11 10:52:04 +00:00
Shane Freeder
26144e31b3 Update B/CB 2018-02-08 10:07:27 +00:00
Zach Brown
963ddeb6ed Properly flag profile events as async as needed 2018-02-01 23:24:27 -05:00
Zach Brown
5ea311d92f Fix ArmorStand Item serialization
Broken in 690c955207
2018-02-01 22:24:37 -05:00
Aikar
79e1eb906f Remove warning for custom entities in precreaturespawn, add note to event
We can't fix this. The event will simply not fire for hacky plugins replacing
entity registrations.
2018-01-28 22:50:35 -05:00
Aikar
66e439e381 improve Profile Fill Events early return logic - #997 2018-01-28 19:40:19 -05:00
Zach Brown
690c955207 Add ArmorStand Item Meta
This is adds basic item meta for armor stands. It does not add all
possible metadata however.

There are armor, hand, and equipment types, as well as position data
that can also be added here. This initial implementation should serve as
a starting point for future additions in this area.

Fixes GH-559
2018-01-27 20:40:42 -05:00
Zach Brown
07af79adb4 Make push based hoppers imitate vanilla bounds
This is vanilla behavior https://i.imgur.com/zMIpRcQ.png
So we have to allow that sort of thing.

Fixes GH-993
2018-01-26 21:28:34 -05:00
Zach Brown
bf11c1fabb Add file import and patch notes to CONTRIBUTING.md
Also does some minor cleanup for broken formatting
2018-01-24 22:47:00 -05:00
Aikar
d69bbb5126 MC-99321 - Dont check for blocked double chest for hoppers etc
This is a source of MAJOR lag for hoppers, as well as a gameplay bug.

This removes the necessity to disable the cat on chest behavior to improve performance.

now performance will be improved even if you have cat chest detection on.
2018-01-24 20:08:58 -05:00
Shane Freeder
6d2da5e46e Update B/CB 2018-01-24 17:31:43 +00:00
Aikar
5671bb65b6 Fix build due to IDE inserting bad import 2018-01-21 14:12:54 -05:00
Aikar
8d654f26d3 Make PlayerProfile.getProperties mutable
Most other collections returned like this is mutable, lets be consistent.
2018-01-21 14:09:09 -05:00
Aikar
8ed1cbe0fb Update upstream 2018-01-21 14:03:55 -05:00
BillyGalbreath
b89d7add43 PlayerAdvancementCriterionGrantEvent (#978) 2018-01-21 12:23:34 -06:00
Aikar
0d9f8672b1 Fill Profile Property Events
Allows plugins to populate profile properties from local sources to avoid calls out to Mojang API
to fill in textures for example.

If Mojang API does need to be hit, event fire so you can get the results.

This is useful for implementing a ProfileCache for Player Skulls
2018-01-19 00:55:38 -05:00
Aikar
e06cc30ff7 Add SkullMeta.setPlayerProfile API
This allows you to create already filled textures on Skulls to avoid texture lookups
which commonly cause rate limit issues with Mojang API
2018-01-19 00:38:49 -05:00
Aikar
d065e0b00e Move ProfileWhitelistVerifyEvent to use new PlayerProfile API
Also update javadocs on lookup events to link the new methods to use
2018-01-19 00:12:03 -05:00
Aikar
17bec29ef0 Update Profile Lookup Events to use new PlayerProfile API 2018-01-19 00:03:09 -05:00
Aikar
a7da447b88 Add PlayerProfile API to replace GameProfile
This simply provides the base API to create the objects. Further commits will come that adds
adds usage of this API to existing GameProfile based API's, as well as new API's.
2018-01-15 22:13:17 -05:00
Aikar
8e612cbc0a Check for missing EntityType for PreCreatureSpawnEvent - Resolves #973 2018-01-15 23:44:21 -05:00
Aikar
093629c1f2 Fix "unlimited" max chunk gens per tick setting
hopefully tried to set it to be unlimited in the first place....
2018-01-15 23:43:46 -05:00
Aikar
70f7748553 PlayerNaturallySpawnCreaturesEvent
This event can be used for when you want to exclude a certain player
from triggering monster spawns on a server.

Also a highly more effecient way to blanket block spawns in a world
2018-01-14 17:36:24 -05:00
Aikar
5a2b8d5cdc Move definition of fields up 2018-01-14 17:15:27 -05:00
Aikar
2e05bc73b3 PreCreatureSpawnEvent - Closes #917
Adds an event to fire before an Entity is created, so that plugins that need to cancel
CreatureSpawnEvent can do so from this event instead.

Cancelling CreatureSpawnEvent rapidly causes a lot of garbage collection and CPU waste
as it's done after the Entity object has been fully created.

Mob Limiting plugins and blanket "ban this type of monster" plugins should use this event
instead and save a lot of server resources.

See: https://github.com/PaperMC/Paper/issues/917
2018-01-14 17:02:38 -05:00
Aikar
241f7f59d8 update upstream for spigot-3764 fix 2018-01-14 16:15:56 -05:00
Aikar
4a97e9c309 Fix SPIGOT-3764 - Fixes deadlock with Skull Owner changes 2018-01-13 12:29:50 -05:00
Zach Brown
4303c3b48d Re-add config option for max squid spawn height
Apparently not only do people actually use it, but upstream missed it.
2018-01-11 16:50:27 -06:00
Zach Brown
c93e1ee068 Update upstream B/CB/S 2018-01-10 23:31:19 -06:00
Zach Brown
5513c9377d Update upstream B/CB 2018-01-08 15:22:44 -06:00
Zach Brown
cea113cb77 Update README badge for CI URL change 2018-01-06 02:08:23 -06:00
Zach Brown
a088a9fa51 Update patches that slipped through last 2018-01-05 01:30:03 -06:00
Zach Brown
03ce426ddf Update upstream CB/S 2018-01-05 00:46:00 -06:00
Zach Brown
ef505a9a32 Update upstream B/CB/S 2018-01-04 02:04:31 -06:00
Aikar
a101fadf4f upstream update 2018-01-01 20:09:39 -05:00
Aikar
580ae44414 Configurable Max Chunk Gens per Tick
Limit the number of generations that can occur in a single tick, forcing them
to be spread out more.

Defaulting to 10 as an average generation is going to be 3-6ms, which means 10 will
likely cause the server to lose TPS, but constrain how much.

This should result in no noticeable speed reduction in generation for servers not
lagging, and let larger servers reduce this value according to their own desires.
2018-01-01 16:38:34 -05:00