Commit Graph

321 Commits

Author SHA1 Message Date
Shane Freeder
9c79dd3214
Cache generated EventExecutors (fixes #786)
the first 'major' change in this PR is to cache the generated event
executrs from the ASM class, by doing this we only generate a single
class for every method that we need an executor for, thus reducing the
number of classes that are needed, especially in cases where plugins
re/unregister events all the time.

The second change is to modify the generated classloader map, generated
classloaders are not held against the plugin itself but the classloader
that the event is declared in, the implication here is that we cannot
drop generated classloaders when a plugin disable, and so we use a guava
weak-key'd hashmap, downfall here is that classes won't be GC'd until
guava drops the generated classloader, however the first change should
deal with most of the grunt.
2017-09-14 14:57:50 +01:00
Shane Freeder
2104c3a683
Update CB/S 2017-09-09 08:17:12 +01:00
BillyGalbreath
75cb198fd2
LivingEntity#setKiller 2017-08-24 15:19:29 -04:00
kashike
85c6f826e4 Deprecate usages of authlib
ref #828
2017-08-22 19:12:34 -07:00
Shane Freeder
4368f412c6
Update CB 2017-08-16 16:47:06 +01:00
Shane Freeder
d77731eee2
Update S 2017-08-12 22:51:29 +01:00
Zach Brown
a8508dc5df
Remove null values in TileEntity tick list
Because who wouldn't want to tick a null tile entity right?
Fixes GH-851
2017-08-11 17:59:44 -05:00
Aikar
ff5bd7b03b Upstream update 2017-08-07 23:05:16 -04:00
Shane Freeder
bec1253aa9
Update B/CB/S 2017-08-06 00:08:21 +01:00
BlackHole
6879328bf6 Update to 1.12.1 2017-08-03 17:27:54 +02:00
BillyGalbreath
2670d1f8eb Make /plugins list alphabetical 2017-07-31 02:09:13 -05:00
Aikar
cdd6d8562a Update Upstream 2017-07-30 18:41:08 -04:00
Shane Freeder
fed4815fff
Update B/CB 2017-07-28 15:51:46 +01:00
Aikar
5b6dfbc428 ProfileWhitelistVerifyEvent
Fires when the server is validating if a player is whitelisted.

Allows you to do dynamic whitelisting and change of kick message
2017-07-27 23:42:19 -04:00
Aikar
9a7cdcec39 Add getI18NDisplayName API
Gets the Display name as seen in the Client.
Currently the server only supports the English language. To override this,
You must replace the language file embedded in the server jar.
2017-07-26 23:44:29 -04:00
Aikar
8e78124e46 Implement ensureServerConversions API
This will take a Bukkit ItemStack and run it through any conversions a server process would perform on it,
to ensure it meets latest minecraft expectations.
2017-07-26 23:44:29 -04:00
Aikar
4a35e438e9 Improve the Saddle API for Horses
Not all horses with Saddles have armor. This lets us break up the horses with saddles
and access their saddle state separately from an interface shared with Armor.
2017-07-26 23:44:29 -04:00
willies952002
c86f61f8af Allow Changing of Player Sample in ServerListPingEvent 2017-07-26 23:06:56 -04:00
Aikar
a7cb000633 Update upstream (memory leak fix) 2017-07-16 20:36:27 -04:00
Shane Freeder
18be9d24e4
Update B/CB 2017-07-10 14:04:41 +01:00
BillyGalbreath
e0e23db485
Add Entity#fromMobSpawner API
Merges and closes GH-752
2017-07-09 01:39:09 -05:00
Shane Freeder
18c16a6111
Fix javadoc warnings 2017-07-03 19:54:40 +01:00
Zach Brown
b1d34f6180
Make timings more tolerant of corrupt chunks
Fixes GH-744
2017-07-02 20:54:29 -05:00
Aikar
3244d917f3 Update upstream 2017-06-25 20:26:00 -04:00
Aikar
b3d6ec2d26 SPIGOT-3381: Alias SWEEPING to SWEEPING_EDGE 2017-06-25 19:40:34 -04:00
Zach Brown
b61aec52a4
Update upstream B/CB 2017-06-25 18:00:32 -05:00
Zach Brown
8a45451a97
Update upstream B/CB/S 2017-06-21 22:12:40 -05:00
Aikar
a96a996213 Allow plugins to override Vanilla commands with aliases
Spigot broke this in 1.12, re-adding the logic back
2017-06-20 18:59:23 -04:00
Aikar
1ebe37e5a3 Profile Lookup Events
Adds a Pre Lookup Event and a Post Lookup Event so that plugins may prefill in profile data, and cache the responses from
profiles that had to be looked up.
2017-06-17 20:57:29 -04:00
sweepyoface
a88fd61a23 Add UnknownCommandEvent (#746) 2017-06-17 20:53:31 -04:00
Aikar
68e8778890 Shoulder Entities Release API
Let's you eject the Parrot naturally and get the newly spawned Parrot.
2017-06-17 15:21:39 -04:00
Zach Brown
2b51986c25
Update upstream B/CB/S 2017-06-12 22:28:09 -05:00
Zach Brown
cb887bb4f4
Renumber patches, fix conflicts, update for 1.12 2017-06-11 20:02:57 -05:00
BillyGalbreath
d6358a6ac1 PlayerAttemptPickupItemEvent (#732) 2017-06-11 19:46:11 -05:00
BillyGalbreath
209b70caab PlayerPickupItemEvent#setFlyAtPlayer (#683)
* PlayerPickupItemEvent#setFlyAtPlayer
2017-06-11 19:43:59 -05:00
BillyGalbreath
8ad4216e18 EntityPickupItemEvent (#679)
EntityPickupItemEvent
2017-06-11 19:42:01 -05:00
BillyGalbreath
1ca53dcefe Item#canEntityPickup (#680)
Item#canEntityPickup
2017-06-11 19:40:42 -05:00
Zach Brown
fe4678c414
Properly fix JavaDoc linting issues
Fixes our own, and upstream's, issues with the stricter Java 8 JavaDoc
linter.

Also removes the destroystokyo-release maven repository. I'm not sure
why I added it originally, but it's unnecessary now.
2017-06-10 17:12:48 -05:00
Zach Brown
1df56f4369
Go back to disabling javadoc linting for now
It's breaking our maven deployments. This should be fixed properly in
the future when I have more time and have had less to drink.
2017-06-09 19:40:41 -05:00
kashike
90b2d02091 Add configuration option to prevent player names from being suggested 2017-06-09 07:32:12 -07:00
Zach Brown
5e40806ee2
Remove 1.12 prerelease changes patch 2017-06-08 17:19:12 -05:00
Shane Freeder
3c9f2a0a20
Update Paper to MC 1.12 2017-06-08 15:17:11 +01:00
Zach Brown
04d2d38581
Update upstream B/CB 2017-06-02 23:41:05 -05:00
Shane Freeder
adab11a1f7
Update to 1.12-pre6 2017-05-31 22:12:46 -05:00
Zach Brown
7611b62cf0
Remove unnecessary doclint param on API 2017-05-27 23:36:18 -05:00
Zach Brown
066f383b95
Update upstream B/CB/S 2017-05-27 23:25:17 -05:00
Zach Brown
720769bf30
Update upstream B/S 2017-05-23 17:11:28 -05:00
Zach Brown
c1d0b4b4c6
Update Paper to MC 1.12-pre5 2017-05-20 23:49:56 -05:00
Zach Brown
baf762a2c1
Update upstream B/CB/S 2017-05-15 11:25:20 -05:00
Zach Brown
6e2332a592
Switch 1.12-pre2 to its own version checks
Fix stream formatting issue that had been bugging me
2017-05-15 10:28:28 -05:00
Zach Brown
828d600143
Update API patches to MC 1.12pre2 2017-05-14 08:46:44 -05:00
Zach Brown
2103c75247
Publicly execute the main thread at dawn
GH-684

Better handles most true deadlock situations
2017-05-13 06:08:09 -05:00
Shane Freeder
ffb572ce9a
Remove Ignore invalid Marker Icon ID's in maps
Spigot has patched this issue inside MapIcon, meaning that we no longer need to maintain this patch; Spigots patch also fixes #668 in that it will verify the length of the array, as well as protect against a negative type value being fetched from the array. Only real change is that Spigots patch returns a MapIcon.Type.PLAYER, instead of the RED_MARKER as originally PR'd by Aikar.
2017-04-22 15:52:56 +01:00
Zach Brown
e4a071f6e4
Update upstream B/CB 2017-03-31 23:24:42 -05:00
Zach
246712ed92 Merge pull request #628 from willies952002/feature/reloadCommands
Don't Display Success Message on Alias Reload Fail
2017-03-24 22:34:13 -05:00
Zach Brown
dbabbdbdbe
Update upstream B/CB 2017-03-18 21:01:13 -05:00
willies952002
77fdfd6de1
Don't Display Success Message on Alias Reload Fail
Also add "commands" to Tab Completion
Note: This required a signature change to Bukkit#reloadCommandAliases() so that it returns a boolean based on if the command aliases reloaded or not.
2017-03-12 13:52:04 -04:00
Zach Brown
ae98591b8c
Update upstream B/CB/S 2017-02-17 20:03:38 -06:00
Spottedleaf
f33f4b9c31 Use invokeinterface for methods defined in interfaces in the ASM executor 2017-02-14 03:04:20 -08:00
Zach Brown
919cb9d19a
Update upstream CB, reduce version cache time
Closes GH-602
2017-02-07 16:29:26 -06:00
Aikar
ee7f13ea3c Add API to get the url in a timing report listener 2017-02-04 23:07:09 -05:00
Aikar
d033b57b47 More improvements to Timings, RCON now is no longer blocking!
Finally made timings accept "Callback style" reports, so plugins
can listen for when the report is done.

Added new Util interfaces, MessageCommandSender and BufferedCommandSender

This restores and improves using RCON to generate timings reports
2017-02-04 22:47:39 -05:00
Aikar
f938ae30fd Run timings reports after end of tick
I believe we are getting data corruption by doing it in the middle of the tick, as I was seeing
really odd reports from automated ones vs command ones.

This will break issueing timings over rcon single command mode and getting the report link in the response back

But I will try to restore that (and make RCON no longer cause spikes) soon.

Reports will still generate, just because its async, the RCON connection
will drop if not in terminal mode before its done.
2017-02-04 20:46:27 -05:00
Zach Brown
1e1541a2e9
Update upstream S 2017-01-30 22:33:54 -06:00
Zach Brown
88205cd8fe
Update upstream B/CB/S 2017-01-25 22:27:42 -06:00
Zach Brown
3f88bc1ec7
Expose WorldBorder@isInBounds(Location) check 2017-01-21 17:06:28 -06:00
BillyGalbreath
36078e1a3d Add fromBottle flag to Experience Orbs (#584)
* Add fromBottle flag to Experience Orbs
2017-01-20 09:01:53 -06:00
Zach Brown
c1641b8e0c
Update upstream B/CB/S 2017-01-20 05:21:44 -06:00
Michael Himing
9606774ee6 Add World.getPlayerCount 2017-01-13 23:00:33 +11:00
Aikar
e4ef645032 Enforce Sync Chunk Unloads
Unloading Chunks async is extremely dangerous. This will force it to main
the same way we handle async chunk loads.
2017-01-07 16:10:56 -05:00
Aikar
7e06f2145e Provide E/TE/Chunk count stat methods
Provides counts without the ineffeciency of using .getEntities().size()
which creates copy of the collections.
2017-01-07 15:27:46 -05:00
Zach Brown
63130fd2aa
Update upstream B/CB
Closes GH-569
2017-01-06 15:45:59 -06:00
Aikar
1b18e93607 Remove my copyright headers, copy/pasted 2016-12-31 21:51:49 -05:00
Aikar
16b99d6dab PlayerTeleportEndGatewayEvent
Allows you to access the Gateway being used in a teleport event
2016-12-31 21:46:34 -05:00
Aikar
49aca0c04d New Firework API's
Get the launcher of a Firework and who it is boosting
2016-12-28 02:25:35 -05:00
Aikar
bf756994b0 JavaDoc String ActionBar API and Deprecate Component based methods.
The Component based methods are not even safe to use, as it may result in invalid items being sent to the client.

The string based method we have added is the only safe way to send with the API.

The client is stricter about componenents being sent for this API, and does not accept children components.

The client is expecting a legacy string.
2016-12-27 15:20:09 -05:00
Aikar
fc6f3510a2 Change implementation of String based Action Bar API
Appears colors did not work for Bungee version, as Action Bar is stricter
2016-12-27 15:06:14 -05:00
Aikar
23236ef8aa IllegalPacketEvent - Resolves #419
Fire an event when an illegal packet is received to let plugins handle it

Lets plugins change the kick message and if it should kick or not.
2016-12-21 21:22:02 -05:00
kashike
c8fb4667af
API for ArmorStand movement and option for entity lookups 2016-12-21 11:56:09 -06:00
Zach Brown
cae453c16b
Update to Paper to MC 1.11.2 2016-12-21 11:21:40 -06:00
Zach Brown
33163525f3
Update Paper to MC 1.11.1 2016-12-20 17:45:00 -06:00
Aikar
f4ea1998ee Actually set the ChatPosition 2016-12-20 16:02:05 -05:00
Aikar
29369fb085 Add String based Action Bar API 2016-12-20 15:56:41 -05:00
Zach Brown
0728696e06
Add ProjectileCollideEvent
Base our vanish changes on top of that event.
2016-12-16 22:13:46 -06:00
Zach Brown
1d8b7e2ecc
Update upstream B/CB 2016-12-16 15:00:16 -06:00
Zach Brown
57c2b8de43
Update upstream B/CB 2016-12-06 17:12:19 -06:00
AlphaBlend
dfdd4e3334
Add source to PlayerExpChangeEvent 2016-11-30 17:33:06 -06:00
Jamie Mansfield
b4c00f4b27
Resolve previous pr 2016-11-29 19:58:13 +00:00
willies952002
6d966ed034 Allow Reloading of Command Aliases
Use "/reload commands" to reload the aliases stored in commands.yml
2016-11-28 21:54:19 -05:00
Zach Brown
ed6bd4ea4a
Update upstream B/CB - hitEntity added upstream 2016-11-28 17:16:07 -06:00
Alfie Cleveland
324acd64b4
Optimise NetworkManager 2016-11-26 21:48:09 -06:00
vemacs
ddbf7318b2 Optimize network queue by making size() constant-time
Idea from @AlfieC
2016-11-23 13:20:16 -05:00
Zach Brown
97e0eac6e7
Update upstream B/CB 2016-11-21 15:51:27 -06:00
Zach Brown
cb66c8dce7
Add ShulkerBoxes to the LootTable API 2016-11-19 11:31:01 -06:00
Aikar
9725050889 Update Upstream 2016-11-18 23:58:56 -05:00
Aikar
ae5a66ed1b Re-add dependency reduced pom
Learned the correct way to handle that file
2016-11-18 21:09:03 -05:00
Zach Brown
a6d146a939
Update Paper to MC 1.11 2016-11-18 16:21:06 -06:00
Zach Brown
65538782cd
Update upstream B/CB/S 2016-11-12 20:21:46 -06:00
Zach Brown
493caa07b4
MC uses JSR 1.3.9 2016-11-03 14:51:00 -05:00
Zach Brown
f0baa4b9cc
t 2016-11-03 14:28:58 -05:00