1
0
mirror of https://github.com/PaperMC/Paper.git synced 2025-07-28 02:32:03 -07:00
Files
.github
Paper-MojangAPI
build-data
gradle
licenses
patches
api
API-for-an-entity-s-scoreboard-name.patch
API-for-creating-command-sender-which-forwards-feedb.patch
API-for-updating-recipes-on-clients.patch
API-to-get-a-BlockState-without-a-snapshot.patch
Ability-to-apply-mending-to-XP-API.patch
Ability-to-change-PlayerProfile-in-AsyncPreLoginEven.patch
Ability-to-get-Tile-Entities-from-a-chunk-without-sn.patch
Add-API-for-item-entity-health.patch
Add-API-for-quit-reason.patch
Add-API-for-resetting-a-single-score.patch
Add-API-methods-to-control-if-armour-stands-can-move.patch
Add-API-to-get-Material-from-Boats-and-Minecarts.patch
Add-API-to-get-exact-interaction-point-in-PlayerInte.patch
Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch
Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch
Add-ArmorStand-Item-Meta.patch
Add-Ban-Methods-to-Player-Objects.patch
Add-BaseComponent-sendMessage-methods-to-CommandSend.patch
Add-BeaconEffectEvent.patch
Add-BellRevealRaiderEvent.patch
Add-BellRingEvent.patch
Add-Block-isValidTool.patch
Add-BlockBreakBlockEvent.patch
Add-BlockFailedDispenseEvent.patch
Add-BlockLockCheckEvent.patch
Add-BlockPreDispenseEvent.patch
Add-BlockSoundGroup-interface.patch
Add-CompostItemEvent-and-EntityCompostItemEvent.patch
Add-Destroy-Speed-API.patch
Add-ElderGuardianAppearanceEvent.patch
Add-Entity-Body-Yaw-API.patch
Add-EntityBlockStorage-clearEntities.patch
Add-EntityDyeEvent-and-CollarColorable-interface.patch
Add-EntityFertilizeEggEvent.patch
Add-EntityInsideBlockEvent.patch
Add-EntityKnockbackByEntityEvent-and-EntityPushedByE.patch
Add-EntityLoadCrossbowEvent.patch
Add-EntityPortalReadyEvent.patch
Add-EntityTeleportEndGatewayEvent.patch
Add-EntityZapEvent.patch
Add-EquipmentSlot-convenience-methods.patch
Add-FastUtil-to-Bukkit.patch
Add-GS4-Query-event.patch
Add-GameEvent-tags.patch
Add-Git-information-to-version-command-on-startup.patch
Add-Heightmap-API.patch
Add-ItemStack-Recipe-API-helper-methods.patch
Add-ItemStackRecipeChoice-Draft-API.patch
Add-Listing-API-for-Player.patch
Add-LivingEntity-clearActiveItem.patch
Add-LivingEntity-getTargetEntity.patch
Add-LivingEntity-swingHand-EquipmentSlot-convenience.patch
Add-Material-Tags.patch
Add-MetadataStoreBase.removeAll-Plugin.patch
Add-Mob-Experience-reward-API.patch
Add-Mob-Goal-API.patch
Add-Mob-lookAt-API.patch
Add-More-Creeper-API.patch
Add-Moving-Piston-API.patch
Add-NamespacedKey-biome-methods.patch
Add-OBSTRUCTED-reason-to-BedEnterResult.patch
Add-PaperRegistry.patch
Add-PhantomPreSpawnEvent.patch
Add-Player-Client-Options-API.patch
Add-Player-Warden-Warning-API.patch
Add-Player-getFishHook.patch
Add-PlayerArmorChangeEvent.patch
Add-PlayerAttackEntityCooldownResetEvent.patch
Add-PlayerConnectionCloseEvent.patch
Add-PlayerFailMoveEvent.patch
Add-PlayerFlowerPotManipulateEvent.patch
Add-PlayerInitialSpawnEvent.patch
Add-PlayerInventorySlotChangeEvent.patch
Add-PlayerItemCooldownEvent.patch
Add-PlayerItemFrameChangeEvent.patch
Add-PlayerJumpEvent.patch
Add-PlayerKickEvent-causes.patch
Add-PlayerLocaleChangeEvent.patch
Add-PlayerPostRespawnEvent.patch
Add-PlayerSetSpawnEvent.patch
Add-PlayerShearBlockEvent.patch
Add-PlayerSignCommandPreprocessEvent.patch
Add-PlayerStopUsingItemEvent.patch
Add-PlayerUseUnknownEntityEvent.patch
Add-Position.patch
Add-PrePlayerAttackEntityEvent.patch
Add-PrepareResultEvent-PrepareGrindstoneEvent.patch
Add-ProjectileCollideEvent.patch
Add-PufferFishStateChangeEvent.patch
Add-Raw-Byte-Entity-Serialization.patch
Add-Raw-Byte-ItemStack-Serialization.patch
Add-Shearable-API.patch
Add-Sign-getInteractableSideFor.patch
Add-Sneaking-API-for-Entities.patch
Add-String-based-Action-Bar-API.patch
Add-StructuresLocateEvent.patch
Add-TNTPrimeEvent.patch
Add-TameableDeathMessageEvent.patch
Add-TargetHitEvent-API.patch
Add-ThrownEggHatchEvent.patch
Add-Tick-TemporalUnit.patch
Add-UnknownCommandEvent.patch
Add-WardenAngerChangeEvent.patch
Add-WaterBottleSplashEvent.patch
Add-WhitelistToggleEvent.patch
Add-World.getEntity-UUID-API.patch
Add-a-call-helper-to-Event.patch
Add-a-consumer-parameter-to-ProjectileSource-launchP.patch
Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch
Add-additional-open-container-api-to-HumanEntity.patch
Add-an-API-for-CanPlaceOn-and-CanDestroy-NBT-values.patch
Add-and-implement-PlayerRecipeBookClickEvent.patch
Add-basic-Datapack-API.patch
Add-cause-to-Weather-ThunderChangeEvents.patch
Add-command-line-option-to-load-extra-plugin-jars-no.patch
Add-command-to-reload-permissions.yml-and-require-co.patch
Add-configuration-option-to-prevent-player-names-fro.patch
Add-critical-damage-API.patch
Add-dropLeash-variable-to-EntityUnleashEvent.patch
Add-enchantWithLevels-API.patch
Add-entity-knockback-API.patch
Add-entity-liquid-API.patch
Add-event-for-player-editing-sign.patch
Add-exception-reporting-event.patch
Add-exploded-block-state-to-BlockExplodeEvent-and-En.patch
Add-extended-PaperServerListPingEvent.patch
Add-getComputedBiome-API.patch
Add-getDrops-to-BlockState.patch
Add-getI18NDisplayName-API.patch
Add-getMainThreadExecutor-to-BukkitScheduler.patch
Add-getNearbyXXX-methods-to-Location.patch
Add-getOfflinePlayerIfCached-String.patch
Add-getTPS-method.patch
Add-handshake-event-to-allow-plugins-to-handle-clien.patch
Add-helpers-for-left-right-click-to-Action.patch
Add-ignore-discounts-API.patch
Add-isCollidable-methods-to-various-places.patch
Add-item-slot-convenience-methods.patch
Add-legacy-ping-support-to-PaperServerListPingEvent.patch
Add-method-isTickingWorlds-to-Bukkit.patch
Add-method-to-remove-all-active-potion-effects.patch
Add-methods-for-working-with-arrows-stuck-in-living-.patch
Add-methods-to-find-targets-for-lightning-strikes.patch
Add-methods-to-get-translation-keys.patch
Add-missing-Fluid-type.patch
Add-missing-block-data-mins-and-maxes.patch
Add-missing-effects.patch
Add-missing-team-sidebar-display-slots.patch
Add-moon-phase-API.patch
Add-more-Campfire-API.patch
Add-more-Evoker-API.patch
Add-more-LimitedRegion-API.patch
Add-more-WanderingTrader-API.patch
Add-more-Witch-API.patch
Add-more-Zombie-API.patch
Add-more-advancement-API.patch
Add-more-line-of-sight-methods.patch
Add-new-overload-to-PersistentDataContainer-has.patch
Add-openSign-method-to-HumanEntity.patch
Add-paper-dumplisteners-command.patch
Add-playPickupItemAnimation-to-LivingEntity.patch
Add-pre-unbreaking-amount-to-PlayerItemDamageEvent.patch
Add-raw-address-to-AsyncPlayerPreLoginEvent.patch
Add-ray-tracing-methods-to-LivingEntity.patch
Add-recipe-to-cook-events.patch
Add-sendOpLevel-API.patch
Add-sender-name-to-commands.yml-replacement.patch
Add-setPlayerProfile-API-for-Skulls.patch
Add-source-block-constructor-and-getChangedBlockData.patch
Add-source-to-PlayerExpChangeEvent.patch
Add-spectator-target-events.patch
Add-sun-related-API.patch
Add-tick-times-API.patch
Add-transient-modifier-API.patch
Add-view-distance-API.patch
Add-villager-reputation-API.patch
Add-whitelist-events.patch
Add-workaround-for-plugins-modifying-the-parent-of-t.patch
Add-worldborder-events.patch
Added-EntityDamageItemEvent.patch
Added-EntityToggleSitEvent.patch
Added-PlayerBedFailEnterEvent.patch
Added-PlayerChangeBeaconEffectEvent.patch
Added-PlayerDeepSleepEvent.patch
Added-PlayerLecternPageChangeEvent.patch
Added-PlayerLoomPatternSelectEvent.patch
Added-PlayerStonecutterRecipeSelectEvent.patch
Added-PlayerTradeEvent.patch
Added-ServerResourcesReloadedEvent.patch
Added-WorldGameRuleChangeEvent.patch
Added-byte-array-serialization-deserialization-for-P.patch
Added-getHostname-to-AsyncPlayerPreLoginEvent.patch
Added-missing-vanilla-tags.patch
Additional-Block-Material-API-s.patch
Additional-world.getNearbyEntities-API-s.patch
Adds-PlayerArmSwingEvent.patch
Adventure.patch
Allow-Blocks-to-be-accessed-via-a-long-key.patch
Allow-Reloading-of-Command-Aliases.patch
Allow-adding-items-to-BlockDropItemEvent.patch
Allow-changing-bed-s-occupied-property.patch
Allow-delegation-to-vanilla-chunk-gen.patch
Allow-disabling-armour-stand-ticking.patch
Allow-plugins-to-use-SLF4J-for-logging.patch
Allow-setting-the-vex-s-summoner.patch
Allow-to-change-the-podium-of-the-EnderDragon.patch
Also-load-resources-from-LibraryLoader.patch
Amend-PlayerInteractAtEntityEvent-javadoc-for-ArmorS.patch
AnvilDamageEvent.patch
Arrow-pickup-rule-API.patch
Async-Chunks-API.patch
AsyncTabCompleteEvent.patch
Attributes-API-for-item-defaults.patch
Basic-PlayerProfile-API.patch
Beacon-API-custom-effect-ranges.patch
Block-Ticking-API.patch
BlockDestroyEvent.patch
Brand-support.patch
Bucketable-API.patch
Build-system-changes.patch
Cache-the-result-of-Material-isBlock.patch
Change-EnderEye-target-without-changing-other-things.patch
Change-the-reserved-channel-check-to-be-sensible.patch
Collision-API.patch
Complete-resource-pack-API.patch
Configurable-sculk-sensor-listener-range.patch
Convert-project-to-Gradle.patch
Create-HoverEvent-from-ItemStack-Entity.patch
Custom-Chat-Completion-Suggestions-API.patch
Custom-Potion-Mixes.patch
Custom-replacement-for-eaten-items.patch
Deprecate-and-replace-methods-with-old-StructureType.patch
Display-warning-on-deprecated-recipe-API.patch
Dolphin-API.patch
Don-t-use-snapshots-for-Timings-Tile-Entity-reports.patch
Elder-Guardian-appearance-API.patch
EnderDragon-Events.patch
Enderman.teleportRandomly.patch
EndermanAttackPlayerEvent.patch
EndermanEscapeEvent.patch
Entity-AddTo-RemoveFrom-World-Events.patch
Entity-Jump-API.patch
Entity-Origin-API.patch
Entity-fromMobSpawner.patch
Entity-getChunk-API.patch
Entity-getEntitySpawnReason.patch
Entity-isTicking.patch
Entity-powdered-snow-API.patch
EntityMoveEvent.patch
EntityPathfindEvent.patch
EntityRegainHealthEvent-isFastRegen-API.patch
EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch
EntityTransformedEvent.patch
Expand-ArmorStand-API.patch
Expand-Explosions-API.patch
Expand-Location-Manipulation-API.patch
Expand-PlayerItemMendEvent.patch
Expand-World.spawnParticle-API-and-add-Builder.patch
Expand-world-key-API.patch
ExperienceOrbMergeEvent.patch
ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch
Expose-LivingEntity-hurt-direction.patch
Expose-MinecraftServer-isRunning.patch
Expose-Tracked-Players.patch
Expose-WorldBorder-isInBounds-Location-check.patch
Expose-attack-cooldown-methods-for-Player.patch
Expose-client-protocol-version-and-virtual-host.patch
Expose-codepoint-limit-in-YamlConfigOptions-and-incr.patch
Expose-furnace-minecart-push-values.patch
Expose-game-version.patch
Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch
Expose-pre-collision-moving-velocity-to-VehicleBlock.patch
Expose-protocol-version.patch
Expose-server-CommandMap.patch
Expose-the-Entity-Counter-to-allow-plugins-to-use-va.patch
Expose-the-internal-current-tick.patch
Expose-vanilla-BiomeProvider-from-WorldInfo.patch
FallingBlock-auto-expire-setting.patch
Fill-Profile-Property-Events.patch
Fireworks-API-s.patch
Fix-BanList-API.patch
Fix-HandlerList-for-InventoryBlockStartEvent-subclas.patch
Fix-NotePlayEvent.patch
Fix-Potion-toItemStack-swapping-the-extended-and-upg.patch
Fix-ServerListPingEvent-flagging-as-Async.patch
Fix-SpawnEggMeta-get-setSpawnedType.patch
Fix-Spigot-annotation-mistakes.patch
Fix-custom-statistic-criteria-creation.patch
Fix-incorrect-new-blockstate-in-EntityBreakDoorEvent.patch
Fix-issues-with-mob-conversion.patch
Fix-upstream-javadocs.patch
Flying-Fall-Damage-API.patch
Folia-scheduler-and-owned-region-API.patch
Freeze-Tick-Lock-API.patch
Friction-API.patch
Furnace-RecipesUsed-API.patch
Get-entity-default-attributes.patch
Goat-ram-API.patch
Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
Handle-plugin-prefixes-in-implementation-logging-con.patch
IllegalPacketEvent.patch
Implement-furnace-cook-speed-multiplier-API.patch
Implement-regenerateChunk.patch
Improve-Arrow-API.patch
Improve-Block-breakNaturally-API.patch
Improve-PortalEvents.patch
Improve-death-events.patch
Improve-scoreboard-entries.patch
Improve-the-Saddle-API-for-Horses.patch
Increase-custom-payload-channel-message-size.patch
Introduce-beacon-activation-deactivation-events.patch
Inventory-close.patch
Inventory-getHolder-method-without-block-snapshot.patch
Inventory-removeItemAnySlot.patch
InventoryCloseEvent-Reason-API.patch
Item-Rarity-API.patch
Item-canEntityPickup.patch
Item-no-age-no-player-pickup.patch
ItemStack-API-additions-for-quantity-flags-lore.patch
ItemStack-damage-API.patch
ItemStack-editMeta.patch
ItemStack-getMaxItemUseDuration.patch
ItemStack-repair-check-API.patch
Keyed-Cat-Type.patch
Left-handed-API.patch
LivingEntity-Hand-Raised-Item-Use-API.patch
LivingEntity-setKiller.patch
Location.isChunkLoaded-API.patch
Location.toBlockLocation-toCenterLocation.patch
LootTable-API.patch
Make-EntityUnleashEvent-cancellable.patch
Make-shield-blocking-delay-configurable.patch
Make-the-default-permission-message-configurable.patch
Material-API-additions.patch
Misc-Utils.patch
Missing-Entity-API.patch
Mob-Pathfinding-API.patch
Mob-Spawner-API-Enhancements.patch
More-CommandBlock-API.patch
More-Enchantment-API.patch
More-Lidded-Block-API.patch
More-PotionEffectType-API.patch
More-Projectile-API.patch
More-Teleport-API.patch
More-World-API.patch
More-lightning-API.patch
More-vanilla-friendly-methods-to-update-trades.patch
Move-VehicleCollisionEvent-HandlerList-up.patch
Multi-Block-Change-API.patch
Multiple-Entries-with-Scoreboards.patch
Nameable-Banner-API.patch
Optimize-Hoppers.patch
Option-to-prevent-NBT-copy-in-smithing-recipes.patch
Paper-Plugins.patch
Paper-Utils.patch
Performance-Concurrency-Improvements-to-Permissions.patch
Player-Chunk-Load-Unload-Events.patch
Player-Entity-Tracking-Events.patch
Player-Tab-List-and-Title-APIs.patch
Player-affects-spawning-API.patch
Player-elytra-boost-API.patch
Player.setPlayerProfile-API.patch
PlayerAdvancementCriterionGrantEvent.patch
PlayerAttemptPickupItemEvent.patch
PlayerDeathEvent-getItemsToKeep.patch
PlayerDeathEvent-shouldDropExperience.patch
PlayerElytraBoostEvent.patch
PlayerLaunchProjectileEvent.patch
PlayerMoveEvent-Improvements.patch
PlayerNaturallySpawnCreaturesEvent.patch
PlayerPickupExperienceEvent.patch
PlayerPickupItemEvent-setFlyAtPlayer.patch
PlayerReadyArrowEvent.patch
PlayerTeleportEndGatewayEvent.patch
Potential-bed-API.patch
PotionEffect-clone-methods.patch
PreCreatureSpawnEvent.patch
PreSpawnerSpawnEvent.patch
Profile-Lookup-Events.patch
ProfileWhitelistVerifyEvent.patch
Properly-remove-the-experimental-smithing-inventory-.patch
Provide-Chunk-Coordinates-as-a-Long-API.patch
Provide-E-TE-Chunk-count-stat-methods.patch
RangedEntity-API.patch
Reduce-thread-synchronization-in-MetadataStoreBase.patch
Replace-ItemFlag.HIDE_POTION_EFFECTS.patch
Rewrite-LogEvents-to-contain-the-source-jars-in-stac.patch
SculkCatalyst-bloom-API.patch
Server-Tick-Events.patch
Shoulder-Entities-Release-API.patch
SkeletonHorse-Additions.patch
Slime-Pathfinder-Events.patch
Spawn-Reason-API.patch
Stinger-API.patch
Support-cancellation-supression-of-EntityDismount-Ve.patch
Support-components-in-ItemMeta.patch
System-prop-for-default-config-comment-parsing.patch
Tameable-getOwnerUniqueId-API.patch
Test-changes.patch
Timings-v2.patch
Turtle-API.patch
Use-ASM-for-event-executors.patch
Version-Command-2.0.patch
Villager-Restocks-API.patch
Villager-resetOffers.patch
Warn-on-strange-EventHandler-return-types.patch
Win-Screen-API.patch
WitchConsumePotionEvent.patch
WitchReadyPotionEvent.patch
WitchThrowPotionEvent.patch
WorldCreator-keepSpawnLoaded.patch
Zombie-API-breaking-doors.patch
add-DragonEggFormEvent.patch
add-RespawnFlags-to-PlayerRespawnEvent.patch
add-back-EntityPortalExitEvent.patch
add-consumeFuel-to-FurnaceBurnEvent.patch
add-get-set-drop-chance-to-EntityEquipment.patch
add-hand-to-BlockMultiPlaceEvent.patch
add-isDeeplySleeping-to-HumanEntity.patch
added-2-new-TargetReasons-for-1.16-mob-behavior.patch
added-PlayerNameEntityEvent.patch
additions-to-PlayerGameModeChangeEvent.patch
ensureServerConversions-API.patch
fix-Instruments.patch
fix-empty-array-elements-in-command-arguments.patch
getPlayerUniqueId-API.patch
isChunkGenerated-API.patch
living-entity-allow-attribute-registration.patch
server
scripts
test-plugin
work
.editorconfig
.gitattributes
.gitignore
.gitmodules
CONTRIBUTING.md
LICENSE.md
README.md
build.gradle.kts
gradle.properties
gradlew
gradlew.bat
settings.gradle.kts
paper-mc/patches/api/Improve-the-Saddle-API-for-Horses.patch
Nassim Jahnke 7936e7a615 API 'done'
2023-03-14 18:21:11 +01:00

84 lines
3.1 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 10 Dec 2016 16:12:48 -0500
Subject: [PATCH] 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.
diff --git a/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java b/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
--- /dev/null
+++ b/src/main/java/org/bukkit/inventory/ArmoredHorseInventory.java
@@ -0,0 +0,0 @@
+package org.bukkit.inventory;
+
+import org.jetbrains.annotations.Nullable;
+
+public interface ArmoredHorseInventory extends AbstractHorseInventory {
+
+ /**
+ * Gets the item in the horse's armor slot.
+ *
+ * @return the armor item
+ */
+ @Nullable
+ ItemStack getArmor();
+
+ /**
+ * Sets the item in the horse's armor slot.
+ *
+ * @param stack the new item
+ */
+ void setArmor(@Nullable ItemStack stack);
+}
diff --git a/src/main/java/org/bukkit/inventory/HorseInventory.java b/src/main/java/org/bukkit/inventory/HorseInventory.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/HorseInventory.java
+++ b/src/main/java/org/bukkit/inventory/HorseInventory.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
/**
* An interface to the inventory of a Horse.
*/
-public interface HorseInventory extends AbstractHorseInventory {
-
- /**
- * Gets the item in the horse's armor slot.
- *
- * @return the armor item
- */
- @Nullable
- ItemStack getArmor();
-
- /**
- * Sets the item in the horse's armor slot.
- *
- * @param stack the new item
- */
- void setArmor(@Nullable ItemStack stack);
-}
+public interface HorseInventory extends AbstractHorseInventory, ArmoredHorseInventory {}
diff --git a/src/main/java/org/bukkit/inventory/LlamaInventory.java b/src/main/java/org/bukkit/inventory/LlamaInventory.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/inventory/LlamaInventory.java
+++ b/src/main/java/org/bukkit/inventory/LlamaInventory.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
/**
* An interface to the inventory of a {@link Llama}.
*/
-public interface LlamaInventory extends AbstractHorseInventory {
+public interface LlamaInventory extends SaddledHorseInventory {
/**
* Gets the item in the llama's decor slot.
diff --git a/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java b/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java
new file mode 100644
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
--- /dev/null
+++ b/src/main/java/org/bukkit/inventory/SaddledHorseInventory.java
@@ -0,0 +0,0 @@
+package org.bukkit.inventory;
+
+public interface SaddledHorseInventory extends AbstractHorseInventory {}