Commit Graph

3307 Commits

Author SHA1 Message Date
Aikar
b513a8369d ItemStack#getMaxItemUseDuration
Allows you to determine how long it takes to use a usable/consumable item
2018-06-05 22:59:50 -04:00
Aikar
a4ea7eef0b WitchReadyPotionEvent
Control what potion the witch readies to use
2018-06-05 22:47:08 -04:00
Aikar
bf8735b85b PotionEffect clone methods 2018-06-03 04:10:13 -04:00
Aikar
0432bbd3a8 Location.toBlockLocation/toCenterLocation()
Convert location objects to their block coordinates, or the center of the block
2018-05-24 21:01:13 -04:00
Aikar
9970e9dfde WitchThrowPotionEvent
Fired when a witch throws a potion at a player
2018-05-16 20:39:09 -04:00
Aikar
045c3d85fe WitchConsumePotionEvent
Fires when a witch consumes the potion in their hand
2018-05-16 20:26:16 -04:00
Aikar
4be5a9c1a7 EndermanAttackPlayerEvent
Allow control over whether or not an enderman aggros a player.

This allows you to override/extend the pumpkin/stare logic.
2018-05-01 20:17:44 -04:00
Aikar
2a57740d34 Expand World.spawnParticle API and add Builder
Adds ability to control who receives it and who is the source/sender (vanish API)
the standard API is to send the packet to everyone in the world, which is ineffecient.

This adds a new Builder API which is much friendlier to use.
2017-08-29 23:58:48 -04:00
Aikar
623c56ab78 Location.isChunkLoaded() API 2018-04-30 19:27:31 -04:00
Aikar
f8d5489645 Additional world.getNearbyEntities API's
Provides more methods to get nearby entities, and filter by types and predicates
2018-04-30 17:55:28 -04:00
Aikar
228f9bab1c Enderman.teleportRandomly()
Ability to trigger the vanilla "teleport randomly" mechanic of an enderman.
2018-04-30 13:29:15 -04:00
Aikar
1281d5b384 EndermanEscapeEvent
Fires an event anytime an enderman intends to teleport away from the player

You may cancel this, enabling ranged attacks to damage the enderman for example.
2018-04-30 13:14:30 -04:00
Aikar
92482f8e92 Add Ban Methods to Player Objects
Allows a more logical API for banning players.

player.banPlayer("Breaking the rules");
2018-04-28 10:28:50 -04:00
Mark Vainomaa
a97f03a018 Add openSign method to HumanEntity 2018-04-01 02:28:43 +03:00
Minecrell
16b17bdc68 Add legacy ping support to PaperServerListPingEvent
Add a new method to StatusClient check if the client is a legacy
client that does not support all of the features provided in the
event.
2017-10-11 19:30:20 +02:00
Aikar
635e3fa1fa getPlayerUniqueId API
Gets the unique ID of the player currently known as the specified player name
In Offline Mode, will return an Offline UUID

This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer
2018-03-22 01:39:28 -04:00
Aikar
4447307899 Player.setPlayerProfile API
This can be useful for changing name or skins after a player has logged in.
2018-03-18 12:28:55 -04:00
Minecrell
2eaa723e96 Add extended PaperServerListPingEvent
Add a new event that extends the original ServerListPingEvent
and allows full control of the response sent to the client.
2017-10-11 15:55:38 +02:00
Aikar
bb5e4dd0eb Add more fields to AsyncPreLoginEvent
Co-authored-by: Connor Linfoot <connorlinfoot@me.com>
Co-authored-by: MCMDEV <john-m.1@gmx.de>
2018-03-18 11:43:30 -04:00
Aikar
4198da1e99 Tameable#getOwnerUniqueId API
This is faster if all you need is the UUID, as .getOwner() will cause
an OfflinePlayer to be loaded from disk.
2018-02-24 00:55:52 -05:00
Aikar
f229e2c798 Optimize Hoppers 2018-01-18 01:00:27 -05:00
Zach Brown
0347d9b819 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 addition should serve a
starting point for future additions in this area.
2018-01-27 17:06:24 -05:00
Aikar
bfdd7ccc77 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-02 00:31:08 -05:00
BillyGalbreath
6535733e66 Add PlayerAdvancementCriterionGrantEvent
Co-authored-by: The456gamer <the456gamer@the456gamer.dev>
2018-01-19 08:15:14 -06:00
Aikar
142b065979 Add setPlayerProfile API for Skulls
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:29:28 -05:00
Aikar
b1e4edb712 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:31:37 -05:00
Aikar
d1f7f3a5ae PreCreatureSpawnEvent
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 16:59:43 -05:00
Aikar
8bfc474fb4 Ability to apply mending to XP API
This allows plugins that give players the ability to apply the experience
points to the Item Mending formula, which will repair an item instead
of giving the player experience points.

Both an API To standalone mend, and apply mending logic to .giveExp has been added.
2017-12-20 17:38:07 -05:00
Aikar
bb15855d47 ExperienceOrb merging/stacking API
Adds ExperienceOrbMergeEvent
Fired when the server is about to merge 2 experience orbs
Plugins can cancel this if they want to ensure experience orbs do not lose important
metadata such as spawn reason, or conditionally move data from source to target.

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2017-12-19 22:56:24 -05:00
Aikar
bef438ad25 PlayerPickupExperienceEvent
Allows plugins to cancel a player picking up an experience orb
2017-12-19 22:00:41 -05:00
Aikar
332152c40d Display warning on deprecated recipe API
Any plugin still using this API will result in the server saving an inconsistent UUID to player data files,
which then triggers warnings such as "Tried to load unrecognized recipe: bukkit:9e5b92f5-e549-4f47-b0a8-9f89390ed77b removed now."
on the players login.

Plugin authors need to define a key to keep it consistent between server restarts.
2017-12-09 12:40:25 -05:00
Minecrell
5de53af38b Expose client protocol version and virtual host
Add a NetworkClient interface that provides access to:
  - The socket address
  - The protocol version
  - The virtual host (the hostname/port the client used to connect
    to the server)
2017-10-10 18:44:42 +02:00
Jason Penilla
7132df4810 AsyncTabCompleteEvent
Let plugins be able to control tab completion of commands and chat async.

This will be useful for frameworks like ACF so we can define async safe completion handlers,
and avoid going to main for tab completions.

Especially useful if you need to query a database in order to obtain the results for tab
completion, such as offline players.

Also Enforces mutability of the existing TabCompleteEvent.

Co-authored-by: Aikar <aikar@aikar.co>
2017-11-26 13:17:09 -05:00
Aikar
8306cc5b4f API to get a BlockState without a snapshot
This allows you to get a BlockState without creating a snapshot, operating
on the real tile entity.

This is useful for where performance is needed
2017-11-06 21:10:01 -05:00
pkt77
74e0518b1a Add PlayerArmorChangeEvent 2017-11-10 23:45:59 -05:00
Minecrell
c85ea66260 Add workaround for plugins modifying the parent of the plugin logger
Essentials uses a custom logger name ("Essentials") instead of the
plugin logger. Log messages are redirected to the plugin logger by
setting the parent of the "Essentials" logger to the plugin logger.

With our changes, the plugin logger is now also called "Essentials",
resulting in an infinite loop. Make sure plugins can't change the
parent of the plugin logger to avoid this.
2017-09-21 19:41:20 +02:00
Zach Brown
bb09886459 Add PlayerJumpEvent 2017-09-28 17:21:32 -04:00
Minecrell
31a575f5f7 Handle plugin prefixes in implementation logging configuration
Currently, plugin prefixes are prepended to the log message in
the PluginLogger before passing the message to the underlying
logging framework. This is bad design because they need to be
stripped manually when using custom appenders to log messages
in a different format.

Additionally, it makes integration of alternative logging APIs hard
because all logging must go through the PluginLogger. Avoid using
PluginLogger and create a regular logger using the plugin name.
The implementation should handle plugin prefixes by displaying
logger names when appropriate.
2017-09-21 16:14:13 +02:00
Minecrell
1caeaef01d Allow plugins to use SLF4J for logging
SLF4J is a commonly used abstraction for various logging frameworks
such as java.util.logging (JUL) or Log4j. Currently, plugins are
required to do all their logging using the provided JUL logger.
This is annoying for plugins that target multiple platforms or when
using libraries that log messages using SLF4J.

Expose SLF4J as optional logging API for plugins, so they can use
it without having to shade it in the plugin and going through
several layers of logging abstraction.
2017-09-21 16:33:12 +02:00
Aikar
9dc2eb6be7 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-03 18:11:34 -05:00
BillyGalbreath
eb5ae9c077 LivingEntity#setKiller 2017-07-31 01:49:43 -05:00
Aikar
8df1d2656c 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.
2016-05-04 23:55:48 -04:00
Aikar
221abecc78 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.
2016-05-04 23:55:48 -04:00
Aikar
9895d6c5c3 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.
2016-12-10 16:12:48 -05:00
Aikar
48d1719745 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 16:30:44 -04:00
BillyGalbreath
7bde46eefa Entity#fromMobSpawner() 2017-06-18 18:17:05 -05:00
Aikar
705daba3f5 Shoulder Entities Release API 2017-06-17 15:04:51 -04:00
BillyGalbreath
f5829fec2e PlayerPickupItemEvent#setFlyAtPlayer 2017-05-07 06:26:01 -05:00
Aikar
ccd4375fa5 Basic PlayerProfile API
Provides basic elements of a PlayerProfile to be used by future API/events
2018-01-15 21:46:46 -05:00
Sweepyoface
95384179d4 Add UnknownCommandEvent 2017-06-17 18:48:06 -04:00
BillyGalbreath
915a67d444 PlayerAttemptPickupItemEvent 2017-06-11 16:30:37 -05:00
BillyGalbreath
9dc1cc8212 Item#canEntityPickup 2017-05-05 03:57:08 -05:00
Zach Brown
0c37d20354 Fix upstream javadocs 2017-06-10 16:59:40 -05:00
Riley Park
f7eff332be Add configuration option to prevent player names from being suggested 2017-06-09 07:24:24 -07:00
Aikar
f0d3438c11 ExperienceOrbs API for Reason/Source/Triggering player
Adds lots of information about why this orb exists.

Replaces isFromBottle() with logic that persists entity reloads too.
2017-12-19 16:28:32 -05:00
Aikar
204f5daef7 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:23:03 -05:00
Aikar
5c20ef4c6b PlayerTeleportEndGatewayEvent
Allows you to access the Gateway being used in a teleport event
2016-12-31 20:29:33 -05:00
Aikar
d84384e895 Fireworks API's
Get the Entity being boosted
Get the firework launcher
2016-12-28 01:18:55 -05:00
Aikar
75274808b6 IllegalPacketEvent
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-04 01:19:14 -05:00
Riley Park
614404fa55 Add API methods to control if armour stands can move 2016-12-21 11:47:25 -06:00
Aikar
e5e56e1ee1 Add String based Action Bar API 2016-12-20 15:55:55 -05:00
Techcable
8da0c13f67 Add ProjectileCollideEvent
Now deprecated and replaced with ProjectileHitEvent
2016-12-16 21:25:39 -06:00
AlphaBlend
df6649ed5d Add source to PlayerExpChangeEvent 2016-09-08 08:47:08 -07:00
willies952002
55dc3ff664 Allow Reloading of Command Aliases
Reload the aliases stored in commands.yml
2016-11-28 10:16:39 -05:00
vemacs
2b323743b6 Misc Utils 2016-11-23 12:53:43 -05:00
AlphaBlend
4d7ecbdb78 Add EntityZapEvent 2016-10-16 23:19:34 -07:00
Aikar
397d3cac4b LootTable API
Provides API to control what Loot Table an object uses.

Also provides an Event to control if a lootable inventory should
auto replenish for a player.

Provides methods to determine players looted state for an object
2016-05-01 15:19:49 -04:00
Zach Brown
391451207f EntityRegainHealthEvent isFastRegen API 2016-04-22 01:43:11 -05:00
Jedediah Smith
bcd6aecdab Arrow pickup rule API 2016-03-04 03:13:18 -05:00
Riley Park
21575c024f Add handshake event to allow plugins to handle client handshaking logic themselves 2016-04-13 20:20:18 -07:00
Jedediah Smith
6adf5b5f6c Add PlayerUseUnknownEntityEvent
Adds the PlayerUseUnknownEntityEvent to be used by plugins dealing with
virtual entities/entities that are not actually known to the server.

Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2016-04-02 05:08:36 -04:00
Aikar
542f830ebc Add MetadataStoreBase.removeAll(Plugin)
So that on reload, metadata will be cleared
2013-07-16 21:26:50 -04:00
crast
fc77a4d2d3 Reduce thread synchronization in MetadataStoreBase
Use ConcurrentHashMap to allow thread-safe access methods and very
limited synchronized portions to allow much higher concurrency in
MetadataStore as well as far less locking, especially on reads
2013-06-01 13:52:30 -06:00
Aikar
002a6a15e5 EntityPathfindEvent
Fires when an Entity decides to start moving to a location.
2016-03-28 21:15:34 -04:00
Aikar
7ad9895c25 Entity AddTo/RemoveFrom World Events 2016-03-28 20:26:34 -04:00
Jedediah Smith
1e271136de Custom replacement for eaten items 2015-06-21 15:05:21 -04:00
William
97112daade Add command to reload permissions.yml and require confirm to reload 2016-03-18 03:28:07 -04:00
Aikar
65a5fbb91a Add sender name to commands.yml replacement
This allows you to use $sender in commands.yml definitions to make
commands that auto target self.
2015-07-22 18:50:41 -04:00
Aikar
7ec6dfa78b Add a call helper to Event
Reduces diff in Server patches
2013-05-19 20:36:58 -04:00
Jedediah Smith
ecfabc25c7 Complete resource pack API 2015-04-04 22:59:54 -04:00
mrapple
333cc0c4e1 Add methods for working with arrows stuck in living entities
Upstream added methods for this so the original methods
are now deprecated
2012-11-25 13:47:27 -06:00
Techcable
b8f6338201 Player Tab List and Title APIs
Co-authored-by: Fruxz <cedricspitzer@outlook.de>
2016-02-29 20:02:40 -06:00
Aikar
459551a9d5 Fix ServerListPingEvent flagging as Async
This event can sometimes fire Async, set the proper boolean
2016-02-29 20:26:39 -06:00
Riley Park
8b45793902 Add BaseComponent sendMessage methods to CommandSender 2016-03-08 13:05:59 -08:00
Zach Brown
7c31d0a39b Add exception reporting event 2016-02-29 20:24:35 -06:00
Zach Brown
b007bb8264 Graduate bungeecord chat API from spigot subclasses
Change Javadoc to be accurate
2016-02-29 19:54:32 -06:00
Riley Park
07c65b03e0 Expose server CommandMap 2016-02-29 19:48:59 -06:00
Byteflux
a445dc4f3f Add BeaconEffectEvent 2016-02-29 18:09:40 -06:00
Byteflux
5fe2709f4c Add view distance API
Add per player no-tick, tick, and send view distances.

Also add send/no-tick view distance to World.
2016-02-29 18:05:37 -06:00
Byteflux
0cf4a9a62e Entity Origin API 2016-02-29 17:50:31 -06:00
Zach Brown
05ec73f817 Expose server build information
Co-authored-by: Professor Bloodstone <git@bloodstone.dev>
Co-authored-by: Mark Vainomaa <mikroskeem@mikroskeem.eu>
Co-authored-by: masmc05 <masmc05@gmail.com>
Co-authored-by: Riley Park <rileysebastianpark@gmail.com>
2019-05-27 01:10:06 -05:00
Aikar
376251dab7 Add getTPS method 2016-02-29 17:24:57 -06:00
Jedediah Smith
978feffa80 Player affects spawning API 2016-02-29 17:22:34 -06:00
Jason Penilla
e183355647 Add command line option to load extra plugin jars not in the plugins folder
ex: java -jar paperclip.jar nogui -add-plugin=/path/to/plugin.jar -add-plugin=/path/to/another/plugin_jar.jar
2021-05-18 14:42:26 -07:00
Aikar
d4d8262f6e Timings v2
TODO: Add #isStopping to FullServerTickHandler#stopTiming in patch 191
expose isRunning
2016-02-29 18:48:17 -06:00
Jake Potrebic
30e04bfa2f Add Position 2022-03-20 10:42:28 -07:00
Owen1212055
23095683d0 Paper Plugins 2022-07-06 23:00:36 -04:00
Techcable
844bc6c46a Use ASM for event executors.
Uses method handles for private or static methods.
2016-03-03 13:20:33 -07:00
Aikar
258a2ce7b8 Paper Utils 2019-02-23 11:26:21 -05:00
Riley Park
15081a5912 Adventure
Co-authored-by: zml <zml@stellardrift.ca>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Yannick Lamprecht <yannicklamprecht@live.de>
2021-01-29 17:21:55 +01:00
Aikar
8888031206 Add FastUtil to Bukkit
Doesn't expose to plugins, just allows Paper-API to use it for optimization
2016-04-01 00:02:47 -04:00
Jake Potrebic
4fd928df47 Code Generation
Currently includes generated key holder classes for types
used in the Registry Modification API
2023-05-26 18:14:44 -07:00
Shane Freeder
b42af839f3 Test changes
- Allow use of TYPE_USE annotations
- Ignore package-private methods for nullability annotations
- Add excludes for classes which don't pass
- Disable stupid BukkitMirrorTest
- configure mockito agent to address changes in newer java versions see https://openjdk.org/jeps/451

Co-authored-by: Riley Park <rileysebastianpark@gmail.com>
Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Yannick Lamprecht <yannicklamprecht@live.de>
2019-03-17 23:04:30 +00:00
Zach Brown
74b3d383cc Build system changes 2016-03-01 00:16:08 +01:00
Kyle Wood
136bc4ed8e Convert project to Gradle
The pom.xml file is deleted in this patch so the patch will fail to
apply if there are changes made to it from upstream - thus notifying us
that changes were made.
2020-12-10 20:50:33 -08:00
Initial Source
1669b2f843 Removed unneeded files 2024-12-11 22:25:03 +01:00
Bukkit/Spigot
5d70190d5f Add restart API.
By: md_5 <git@md-5.net>
2015-07-13 19:10:15 +10:00
Bukkit/Spigot
28e80d52a4 BungeeCord Chat API
By: md_5 <git@md-5.net>
2014-12-13 02:59:14 +01:00
Bukkit/Spigot
e5642b1949 Add PlayerSpawnLocationEvent.
By: ninja <xninja@openmailbox.org>
2014-04-08 14:01:32 +02:00
Bukkit/Spigot
7e29c12d04 Silenceable Lightning API
By: drXor <mcyoungsota@gmail.com>
2014-02-23 16:16:29 -04:00
Bukkit/Spigot
666a89b3e3 Add support for fetching hidden players
By: Tux <write@imaginarycode.com>
2014-02-09 14:02:11 -05:00
Bukkit/Spigot
84ac5b3cf2 Add respawn API.
By: ninja- <xninja@openmailbox.org>
2013-10-08 14:35:58 +02:00
Bukkit/Spigot
43633a43a9 BungeeCord Support
By: md_5 <git@md-5.net>
2013-06-02 15:20:49 +10:00
Bukkit/Spigot
c2123d2080 Spigot Timings
Adds performance tracking timings all around the Minecraft Server, and improves the usability of the /timings command

Plugins can track their own timings with CustomTimingsHandler

By: Aikar <aikar@aikar.co>
2013-06-02 10:42:57 +10:00
Bukkit/Spigot
8de3a6a15d Skeleton API Implementations
By: md_5 <git@md-5.net>
2017-05-15 15:16:15 +10:00
Bukkit/Spigot
29381e2731 POM Changes
By: md_5 <git@md-5.net>
2013-06-02 10:36:24 +10:00
Bukkit/Spigot
88499aa05b Update to Minecraft 1.21.4
By: md_5 <git@md-5.net>
2024-12-04 03:20:00 +11:00
Bukkit/Spigot
f722ad8301 SPIGOT-7965: Unknown TransformReason for Hoglins
By: md_5 <git@md-5.net>
2024-11-27 07:08:11 +11:00
Bukkit/Spigot
0381154988 SPIGOT-7964: Fix typo in Deprecation annotation
By: md_5 <git@md-5.net>
2024-11-25 20:01:43 +11:00
Bukkit/Spigot
0023e5549a #1082: Add "since" to Deprecation annotations
By: DerFrZocker <derrieple@gmail.com>
2024-11-25 07:52:33 +11:00
Bukkit/Spigot
98f6ab9a04 #1067: Add method to get Advancement requirements
By: Nothixal <nothixal@gmail.com>
2024-11-23 21:25:09 +11:00
Bukkit/Spigot
471ecd8e4a Fix copy pasting in UseCooldownComponent
By: md_5 <git@md-5.net>
2024-11-12 20:37:54 +11:00
Bukkit/Spigot
c5deb83324 #1078: Improve Javadocs of Player#loadData() and Player#saveData()
By: Jan Boerman <jannyboy11@gmail.com>
2024-11-09 16:53:30 +11:00
Bukkit/Spigot
eca2ac0d7e SPIGOT-7946: API for server pause when empty seconds
By: md_5 <git@md-5.net>
2024-11-06 20:38:04 +11:00
Bukkit/Spigot
efc7364e5b SPIGOT-7944, #1077: Allow nullable fields in DamageTypeTags
By: Doc <nachito94@msn.com>
2024-11-05 11:58:25 +11:00
Bukkit/Spigot
36faa64876 SPIGOT-7933: Improve custom Minecart max speed
By: md_5 <git@md-5.net>
2024-11-03 09:22:16 +11:00
Bukkit/Spigot
5b6f5c4a3a Fix InstrumentTest
By: md_5 <git@md-5.net>
2024-11-02 11:23:43 +11:00
Bukkit/Spigot
42504c5ab7 #1075: Make Art an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-02 11:00:10 +11:00
Bukkit/Spigot
79319a05d4 #1074: Make Sound an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-02 11:00:03 +11:00
Bukkit/Spigot
a45964ac0e #1073: Make Biome an interface
By: DerFrZocker <derrieple@gmail.com>
2024-11-01 08:05:31 +11:00
Bukkit/Spigot
4cc4ec924a Fix further javadoc errors
By: md_5 <git@md-5.net>
2024-10-29 07:47:57 +11:00
Bukkit/Spigot
c110a53a90 Fix javadoc error
By: md_5 <git@md-5.net>
2024-10-29 07:09:12 +11:00
Bukkit/Spigot
4243e6b666 #1072: Fix bad naming for Vault State methods
By: Doc <nachito94@msn.com>
2024-10-29 06:43:24 +11:00
Bukkit/Spigot
79a73f5e87 #1071: Make Fluid an interface and add missing entry
By: DerFrZocker <derrieple@gmail.com>
2024-10-29 06:43:18 +11:00
Bukkit/Spigot
5b78d5d8a2 #1070: Make Attribute an interface and align names with the new minecraft ones
By: DerFrZocker <derrieple@gmail.com>
2024-10-29 06:43:08 +11:00
Bukkit/Spigot
8ec64c4481 #1069: Add missing winter drop experimental annotation to pale boats
By: DerFrZocker <derrieple@gmail.com>
2024-10-27 07:28:58 +11:00
Bukkit/Spigot
21795ec6f6 Add PlayerInputEvent
By: md_5 <git@md-5.net>
2024-10-24 20:42:26 +11:00
Bukkit/Spigot
817b117728 #1068: TreeType - add missing pale oak trees
By: shanebeee <shanebolenback@me.com>
2024-10-24 07:07:52 +11:00
Bukkit/Spigot
ed88e3dc32 Update to Minecraft 1.21.3
By: md_5 <git@md-5.net>
2024-10-24 06:15:00 +11:00
Bukkit/Spigot
ed038ac6c8 SPIGOT-7919: Add API to access current player input
By: md_5 <git@md-5.net>
2024-10-23 08:04:12 +11:00
Bukkit/Spigot
032ab01850 SPIGOT-7920: Expose enderpearls of Player
By: md_5 <git@md-5.net>
2024-10-23 07:20:04 +11:00
Bukkit/Spigot
015aeabb40 Feature flag end date should be exclusive
By: md_5 <git@md-5.net>
2024-10-23 07:20:02 +11:00
Bukkit/Spigot
cd27f1b0c7 Update to Minecraft 1.21.2
By: md_5 <git@md-5.net>
2024-10-23 02:15:00 +11:00
Bukkit/Spigot
68de2de253 Add support for Java 23
By: md_5 <git@md-5.net>
2024-10-14 19:57:01 +11:00
Bukkit/Spigot
bf211e633c Bump asm to 9.7.1
By: DerFrZocker <derrieple@gmail.com>
2024-10-06 14:40:55 +02:00
Bukkit/Spigot
196d06aa91 #1064: Add specific getTopInventory methods for InventoryView derivatives
By: Miles Holder <mwholder@proton.me>
2024-10-06 18:45:07 +11:00
Bukkit/Spigot
68492a4f7e SPIGOT-7911: Fix Location#isWorldLoaded() for re-loaded worlds
By: md_5 <git@md-5.net>
2024-10-06 18:13:21 +11:00
Bukkit/Spigot
5f8dbb00f6 Improve Registry#getOrThrow messages
By: md_5 <git@md-5.net>
2024-09-27 08:21:26 +10:00
Bukkit/Spigot
42cd6c82ff #1058: Add tests for Minecraft registry <-> Bukkit fields
By: DerFrZocker <derrieple@gmail.com>
2024-09-27 08:15:05 +10:00
Bukkit/Spigot
49d12d442a #1062: Clarify BeaconView documentation
By: Miles Holder <mwholder@proton.me>
2024-09-25 07:48:43 +10:00
Bukkit/Spigot
3ea55de712 #1060: Cache Material to BlockType and ItemType conversion
By: DerFrZocker <derrieple@gmail.com>
2024-09-24 21:07:47 +10:00
Bukkit/Spigot
f73b5cbdb3 SPIGOT-7906: Increase YAML nesting limit to 100
By: blablubbabc <lukas@wirsindwir.de>
2024-09-24 07:47:30 +10:00
Bukkit/Spigot
afaa0a1d88 SPIGOT-7899: Smithing recipes don't require inputs
By: md_5 <git@md-5.net>
2024-09-15 16:50:14 +10:00
Bukkit/Spigot
f585e110be #1049: Add MenuType API
By: Miles Holder <mwholder2005@gmail.com>
2024-09-07 18:51:55 +10:00
Bukkit/Spigot
aae72268cb #1055: Expand riptiding API
By: ShreyasAyyengar <shreyas.ayyengar@gmail.com>
2024-09-07 18:06:52 +10:00
Bukkit/Spigot
cc919bf976 SPIGOT-7890: AttributeModifier#getUniqueId() doesn't match the UUID passed to its constructor
By: md_5 <git@md-5.net>
2024-08-31 08:57:51 +10:00
Bukkit/Spigot
b5a8d2cf35 SPIGOT-7886: Fix mistake in AttributeModifier UUID shim
By: md_5 <git@md-5.net>
2024-08-28 18:32:56 +10:00
Bukkit/Spigot
8d803e683c #1054: Add FireworkMeta#hasPower
By: Doc <nachito94@msn.com>
2024-08-24 07:44:42 +10:00
Bukkit/Spigot
baffaf0195 SPIGOT-7873: Add powered state for skulls
By: md_5 <git@md-5.net>
2024-08-24 07:41:52 +10:00
Bukkit/Spigot
7104b35192 #1053: Change docs for max power in FireworkMeta
By: Doc <nachito94@msn.com>
2024-08-17 08:37:41 +10:00
Bukkit/Spigot
adbd9c39ef SPIGOT-7783, SPIGOT-7784, #1051: Add Trial Vault & Spawner event API
By: ShreyasAyyengar <shreyas.ayyengar@gmail.com>
2024-08-13 20:49:59 +10:00
Bukkit/Spigot
70566085b8 #1052: Fix broken links and minor improvement for checkstyle.xml
By: Doc <nachito94@msn.com>
2024-08-12 21:26:44 +10:00
Bukkit/Spigot
bac0b178c0 Update to Minecraft 1.21.1
By: md_5 <git@md-5.net>
2024-08-09 07:00:00 +10:00
Bukkit/Spigot
4378d2ea30 #1050: Fix empty result check for Complex Recipes
By: Doc <nachito94@msn.com>
Also-by: Bjarne Koll <lynxplay101@gmail.com>
2024-08-01 07:53:56 +10:00
Bukkit/Spigot
bc71bebfb4 #1044: Add CrafterCraftEvent
By: ploppyperson <nathat890@outlook.com>
2024-07-30 07:07:06 +10:00
Bukkit/Spigot
6d5823ee01 Use correct method in JavaDoc
By: md_5 <git@md-5.net>
2024-07-27 11:29:45 +10:00
Bukkit/Spigot
0611d599bd SPIGOT-7850: Add API for Bogged shear state
By: md_5 <git@md-5.net>
2024-07-27 10:28:32 +10:00
Bukkit/Spigot
d767353e69 SPIGOT-7837: Support data pack banner patterns
By: Doc <nachito94@msn.com>
2024-07-27 10:14:38 +10:00
Bukkit/Spigot
d716606f61 Fix JavaDoc error
By: md_5 <git@md-5.net>
2024-07-27 10:08:56 +10:00
Bukkit/Spigot
2c04f1b473 #1036: Add API for InventoryView derivatives
By: Miles Holder <mwholder2005@gmail.com>
2024-07-27 10:01:25 +10:00
Bukkit/Spigot
fa9505e579 SPIGOT-7809: Add ShieldMeta
By: Doc <nachito94@msn.com>
2024-07-20 10:15:18 +10:00
Bukkit/Spigot
ecf335eebe SPIGOT-7829: Increase maximum outgoing plugin message size to match Vanilla intention
By: md_5 <git@md-5.net>
2024-07-16 19:59:14 +10:00
Bukkit/Spigot
acb31909b0 SPIGOT-7831: Add CreatureSpawnEvent.SpawnReason#POTION_EFFECT
By: Doc <nachito94@msn.com>
2024-07-16 19:53:03 +10:00
Bukkit/Spigot
da7c1149bc SPIGOT-7827: Sync EntityPortalEvent with PlayerPortalEvent since non-players can now create portals
By: md_5 <git@md-5.net>
2024-07-10 19:43:39 +10:00
Bukkit/Spigot
bf8d602a0a Remove spurious ApiStatus.Internal annotation
By: md_5 <git@md-5.net>
2024-07-07 17:25:31 +10:00
Bukkit/Spigot
58999b263e SPIGOT-7799, #1039: Expose explosion world interaction in EntityExplodeEvent and BlockExplodeEvent
By: antiPerson <nathat890@outlook.com>
2024-07-06 17:19:42 +10:00
Bukkit/Spigot
abc756fce8 #1029: Trial changing a small number of inner enums to classes/interfaces to better support custom values
This PR is a subset of the enum PR #660 and is designed as a low impact
trial run of the design and backwards compatibility to inform subsequent
development.

Additional plugin compatibility features may be available by setting
`settings.compatibility.enum-compatibility-mode` to `true` in
`bukkit.yml`.

By: DerFrZocker <derrieple@gmail.com>
2024-07-06 17:14:17 +10:00
Bukkit/Spigot
250d585147 #1041: Improve getPlayer(String) docs to clarify it matches the name
By: Phoenix616 <max@themoep.de>
2024-07-03 20:30:38 +10:00
Bukkit/Spigot
a414ad97f2 Fix spawner API documentation
By: md_5 <git@md-5.net>
2024-06-28 07:17:26 +10:00
Bukkit/Spigot
9683d23812 #1034: Add TrialSpawnerSpawnEvent
By: Doc <nachito94@msn.com>
2024-06-28 07:06:33 +10:00
Bukkit/Spigot
6db0f40e5b #973: Improve spawner API and add API for Trial Spawners
By: coll1234567 <joshl5324@gmail.com>
2024-06-28 07:06:14 +10:00
Bukkit/Spigot
68d6fa6800 #1038: Clarify HumanEntity#openInventory(InventoryView) JavaDoc
By: Miles Holder <mwholder2005@gmail.com>
2024-06-22 18:48:49 +10:00
Bukkit/Spigot
125fef9ab7 SPIGOT-7732, SPIGOT-7786: Add freezing damage modifier
By: LoliColleen <76620594+LoliColleen@users.noreply.github.com>
2024-06-22 18:46:39 +10:00
Bukkit/Spigot
d7e18281ec #1034: Add CreatureSpawnEvent.SpawnReason#TRIAL_SPAWNER
By: Doc <nachito94@msn.com>
2024-06-19 19:18:42 +10:00
Bukkit/Spigot
540caab840 SPIGOT-7777: All entity potion effects are removed on death
By: md_5 <git@md-5.net>
2024-06-19 07:09:58 +10:00
Bukkit/Spigot
48b3ffa858 #1031: Expose Creeper igniter
By: Doc <nachito94@msn.com>
2024-06-19 06:45:43 +10:00
Bukkit/Spigot
7df49b52f2 SPIGOT-7770: Reserve spaces in shaped recipes for blank ingredients
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-06-18 19:06:03 +10:00
Bukkit/Spigot
8952c0a90f Clarify ambiguity around what is API
By: md_5 <git@md-5.net>
2024-06-18 06:45:40 +10:00
Bukkit/Spigot
0584f1033a Remove note from InventoryView JavaDoc
By: Miles Holder <mwholder2005@gmail.com>
2024-06-17 15:35:59 -05:00
Bukkit/Spigot
edbeab47e3 #1030: Deprecate more unused methods in UnsafeValues
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-06-17 20:56:15 +10:00
Bukkit/Spigot
97799a3ec0 SPIGOT-7771: Material.getDefaultAttributes always returns an empty map
By: md_5 <git@md-5.net>
2024-06-17 19:44:09 +10:00
Bukkit/Spigot
dbc554a91b #1023: Convert InventoryView to interface
By: Miles Holder <mwholder2005@gmail.com>
2024-06-16 08:47:34 +10:00
Bukkit/Spigot
d7e28ba2f2 Make MapCursor#type not depends on deprecated values
By: Doc <nachito94@msn.com>
2024-06-14 15:34:04 -04:00
Bukkit/Spigot
4ec75943ed SPIGOT-7740: Fix using new map cursor types
By: md_5 <git@md-5.net>
2024-06-14 07:09:19 +10:00
Bukkit/Spigot
2b6b2a9f20 Add EntityDamageEvent.DamageCause#CAMPFIRE
By: Doc <nachito94@msn.com>
2024-06-13 12:21:46 -04:00
Bukkit/Spigot
5c69fd52f0 Update to Minecraft 1.21
By: md_5 <git@md-5.net>
2024-06-14 01:05:00 +10:00
Bukkit/Spigot
9c6bdb14e4 SPIGOT-7677: Update which entities are marked as spawnable
By: md_5 <git@md-5.net>
2024-06-12 07:16:40 +10:00
Bukkit/Spigot
bb018f51f6 SPIGOT-7737: Add separate TreeType.MEGA_PINE
By: md_5 <git@md-5.net>
2024-06-11 21:04:52 +10:00
Bukkit/Spigot
69683a66cc SPIGOT-7731: Spawn eggs cannot have damage
By: Doc <nachito94@msn.com>
2024-06-10 14:06:27 +10:00
Bukkit/Spigot
a19c7f8470 #1022: Add force option to Player#spawnParticle
By: Jishuna <joshl5324@gmail.com>
2024-06-08 09:11:25 +10:00
Bukkit/Spigot
b4ac71a201 #1018: Add methods to get players seeing specific chunks
By: MetallicGoat <the.great.metallic.goat@gmail.com>
2024-06-08 09:03:39 +10:00
Bukkit/Spigot
3dcb0dfc9a #978: Add Material#isCompostable and Material#getCompostChance
By: mfnalex <mfnalex@jeff-media.com>
2024-06-05 07:15:46 +10:00
Bukkit/Spigot
a3fb15bc23 SPIGOT-7676: Enforce locale parameter in toLowerCase and toUpperCase method calls and always use root locale
By: DerFrZocker <derrieple@gmail.com>
2024-06-03 07:18:14 +10:00
Bukkit/Spigot
b0df4fc813 #1020: Cast instead of using #typed when getting BlockType and ItemType to better work with testing / mocks
By: DerFrZocker <derrieple@gmail.com>
2024-06-03 07:15:10 +10:00
Bukkit/Spigot
f9b0675bdd #1016: Fix incorrect assumption of Fireball having constant speed
By: DerFrZocker <derrieple@gmail.com>
2024-05-29 06:56:40 +10:00
Bukkit/Spigot
932c4966ad #1015: Add a tool component to ItemMeta
By: 2008Choco <hawkeboyz2@hotmail.com>
Also-by: md_5 <git@md-5.net>
2024-05-29 06:53:57 +10:00
Bukkit/Spigot
2642e438f0 #1014: Add PotionEffectTypeCategory to distinguish between beneficial and harmful effects
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-29 06:50:05 +10:00
Bukkit/Spigot
ce747e1973 #1013, SPIGOT-4288, SPIGOT-6202: Add material rerouting in preparation for the switch to ItemType and BlockType
This also moves the conversion from and to legacy material to the method
calls of legacy plugins, and no longer allows them directly in the
server.

This has the side effect of fixing some legacy plugin issues, such as
SPIGOT-4288, SPIGOT-6161. Also fixes legacy items sometimes not stacking
in inventory when using addItem, a client disconnect when using legacy
items in recipes and probably some more.

By: DerFrZocker <derrieple@gmail.com>
2024-05-29 06:48:52 +10:00
Bukkit/Spigot
6a3d5c24c2 SPIGOT-7669: Fix typo in ProjectileHitEvent#getHitBlockFace documentation
By: Doc <nachito94@msn.com>
2024-05-20 21:56:11 +10:00
Bukkit/Spigot
25c8c8a3da #1011: Throw an exception if a RecipeChoice is ever supplied air
This would otherwise crash the client.

By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-14 19:52:25 +10:00
Bukkit/Spigot
30784afe2f #1007: Add ItemMeta#getAsComponentString()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-06 20:23:36 +10:00
Bukkit/Spigot
0ece9a991b Fix copy-pasted BlockType.Typed documentation
By: md_5 <git@md-5.net>
2024-05-06 20:20:54 +10:00
Bukkit/Spigot
26f4f1cf7d Largely restore deprecated PotionData API
By: md_5 <git@md-5.net>
2024-05-05 20:45:43 +10:00
Bukkit/Spigot
d8b68e62df #1008: Deprecate ITEMS_TOOLS, removed in 1.20.5
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-05-05 10:42:08 +10:00
Bukkit/Spigot
b7f877a67d Fix Javadoc reference
By: md_5 <git@md-5.net>
2024-05-05 10:18:53 +10:00
Bukkit/Spigot
fc9e5af885 #919: Add internal ItemType and BlockType, delegate Material methods to them
By: Jishuna <joshl5324@gmail.com>
Also-by: Bjarne Koll <lynxplay101@gmail.com>
Also-by: DerFrZocker <derrieple@gmail.com>
Also-by: md_5 <git@md-5.net>
2024-05-05 10:08:51 +10:00
Bukkit/Spigot
ba1db8acb9 SPIGOT-1166, SPIGOT-7647: Expose Damager BlockState in EntityDamageByBlockEvent
By: Doc <nachito94@msn.com>
2024-05-05 09:34:53 +10:00
Bukkit/Spigot
eb7e6bde61 SPIGOT-6993: Allow #setVelocity to change the speed of a fireball and add a note to #setDirection about it
By: DerFrZocker <derrieple@gmail.com>
2024-05-04 19:34:24 +10:00
Bukkit/Spigot
92293c1b89 #1004: Improve field rename handling and centralize conversion between bukkit and string more
By: DerFrZocker <derrieple@gmail.com>
2024-05-04 08:19:04 +10:00
Bukkit/Spigot
a3c30e3ee2 SPIGOT-7650: Add DamageSource for EntityDeathEvent and PlayerDeathEvent
By: Doc <nachito94@msn.com>
2024-05-04 08:15:58 +10:00
Bukkit/Spigot
9bbcd799fa Update to Minecraft 1.20.6
By: md_5 <git@md-5.net>
2024-04-30 06:15:00 +10:00
Bukkit/Spigot
d8e657a271 SPIGOT-7617: Add BlockExplodeEvent#getExplodedBlockState()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-29 20:08:52 +10:00
Bukkit/Spigot
74cf79c267 #1002: Improve documentation and implementation of getMaxStackSize
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-28 09:11:30 +10:00
Bukkit/Spigot
d89271b470 SPIGOT-7638: Library loader does not seem to resolve every dependency
By: DerFrZocker <derrieple@gmail.com>
2024-04-27 09:23:19 +10:00
Bukkit/Spigot
c30ea3a2d3 SPIGOT-7637: Bad logic in checking nullability of AttributeModifier slots
Also fix Class loading order issues, which resulted in EquipmentSlot#getGroup returning null, since EquipmentSlot and EquipmentSlotGroup referencing each other on class init.
This caused EquipmentSlot to being init first, when the fields in EquipmentSlotGroup are still null, resulting in the group being null.

By: DerFrZocker <derrieple@gmail.com>
2024-04-25 21:06:52 +02:00
Bukkit/Spigot
1ba56ce1ca Add some missing deprecation annotations
By: md_5 <git@md-5.net>
2024-04-25 10:27:43 +10:00
Bukkit/Spigot
374841b40f Update Maven plugins/versions
By: md_5 <git@md-5.net>
2024-04-25 10:27:40 +10:00
Bukkit/Spigot
1411d482d5 Use regular compiler seeing as ECJ doesn't support Java 21 JRE
By: md_5 <git@md-5.net>
2024-04-25 07:49:52 +10:00
Bukkit/Spigot
2304bc31f5 Revert "BUILDTOOLS-676: Downgrade Maven compiler version"
This reverts commit c5183dc422.

By: md_5 <git@md-5.net>
2024-04-25 07:49:51 +10:00
Bukkit/Spigot
1be3d0749e SPIGOT-7355: More field renames and fixes
- Rename MapCursor Types to match their Minecraft names
- SPIGOT-7355: Rename ItemFlag#HIDE_POTION_EFFECTS to better reflect its function

By: DerFrZocker <derrieple@gmail.com>
2024-04-25 07:49:38 +10:00
Bukkit/Spigot
39c16e418e Fix bad merge in penultimate commit
By: md_5 <git@md-5.net>
2024-04-24 18:56:26 +10:00
Bukkit/Spigot
63e9877c7a Fix imports in previous commit
By: md_5 <git@md-5.net>
2024-04-24 18:51:23 +10:00
Bukkit/Spigot
9f064c2cc7 #995: Add required feature to MinecraftExperimental for easy lookups
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-24 18:19:37 +10:00
Bukkit/Spigot
c5183dc422 BUILDTOOLS-676: Downgrade Maven compiler version
By: md_5 <git@md-5.net>
2024-04-24 11:05:43 +10:00
Bukkit/Spigot
358a4da17e #997: Change wolf variant from enum to interface
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 04:21:58 +10:00
Bukkit/Spigot
4ba949cee7 #996: Rename FoodMeta#get/setSaturationModifier() to #get/setSaturation()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-24 02:32:44 +10:00
Bukkit/Spigot
d1a68a02b4 Fix JavaDoc errors
By: md_5 <git@md-5.net>
2024-04-24 01:47:31 +10:00
Bukkit/Spigot
bfd5351193 #994: Add methods to convert between an entity and a string
By: Jishuna <joshl5324@gmail.com>
2024-04-24 01:15:00 +10:00
Bukkit/Spigot
d9a704e3f6 SPIGOT-5336: Field name parity with Minecraft keys
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 01:15:00 +10:00
Bukkit/Spigot
60b9f5bacc #977: Remove legacy Particle values
By: DerFrZocker <derrieple@gmail.com>
2024-04-24 01:15:00 +10:00
Bukkit/Spigot
f3502f6dac Update to Minecraft 1.20.5
By: md_5 <git@md-5.net>
2024-04-24 01:15:00 +10:00
Bukkit/Spigot
899f2acb84 #993: Deprecate Command's permission message methods as they no longer work
Ever since Mojang's introduction of Brigadier in 1.13, the client is not
sent any commands to which it does not have permission to execute. If a
client executes a command it is not aware of (and consequently does not
have permission for), the client will send itself instead of forwarding
the failure to the server for its response.

By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-20 11:26:09 +10:00
Bukkit/Spigot
c71ea48a49 SPIGOT-7613: Make note of impact of mobGriefing gamerule for World#createExplosion()
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-17 19:13:27 +10:00
Bukkit/Spigot
dcfc5f30a3 Improve documentation of Enchantment#values()
By: md_5 <git@md-5.net>
2024-04-17 19:11:14 +10:00
Bukkit/Spigot
e3c025977a Remove no longer required deprecation on display color APIs
By: md_5 <git@md-5.net>
2024-04-14 17:00:24 +10:00
Bukkit/Spigot
afe543345e #991: Add PluginManager#loadPlugins(File[])
By: MikChan <georgeendo0@gmail.com>
2024-04-13 17:01:48 +10:00
Bukkit/Spigot
ef44483fd2 #982: Add API to copy BlockState to a new Location
By: lbenav8095 <lubensaico@gmail.com>
2024-04-07 12:22:08 +10:00
Bukkit/Spigot
5479913288 #986: Add more Conduit API
By: 2008Choco <hawkeboyz2@hotmail.com>
2024-04-07 12:05:21 +10:00
Bukkit/Spigot
1f1ef375be #988: Add World#getIntersectingChunks(BoundingBox)
By: Flo0 <flo.roma@web.de>
2024-04-01 09:43:44 +11:00
Bukkit/Spigot
97876f3d25 Move getItemInUse up to LivingEntity
By: md_5 <git@md-5.net>
2024-03-30 12:54:23 +11:00