From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Axionize <154778082+Axionize@users.noreply.github.com>
Date: Wed, 25 Sep 2024 04:43:26 -0400
Subject: [PATCH] Void damage configuration API


diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
--- a/src/main/java/org/bukkit/World.java
+++ b/src/main/java/org/bukkit/World.java
@@ -0,0 +0,0 @@ import org.jetbrains.annotations.Nullable;
  */
 public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient, Metadatable, PersistentDataHolder, Keyed, net.kyori.adventure.audience.ForwardingAudience { // Paper
 
+    // Paper start - void damage configuration
+    /**
+     * Checks if void damage is enabled on this world.
+     *
+     * @return true if enabled
+     */
+    boolean isVoidDamageEnabled();
+
+    /**
+     * Sets whether void damage is enabled on this world.
+     *
+     * @param enabled true to enable void damage
+     */
+    void setVoidDamageEnabled(boolean enabled);
+
+    /**
+     * Gets the damage applied to the player when they are in the void in this world.
+     * Check {@link #isVoidDamageEnabled()} to see if void damage is enabled.
+     *
+     * @return amount of damage to apply
+     * @see #isVoidDamageEnabled()
+     */
+    float getVoidDamageAmount();
+
+    /**
+     * Sets the damage applied to the player when they are in the void in this world.
+     * Check {@link #isVoidDamageEnabled()} to see if void damage is enabled.
+     *
+     * @param voidDamageAmount amount of damage to apply
+     */
+    void setVoidDamageAmount(float voidDamageAmount);
+
+    /**
+     * Gets the offset applied to {@link #getMinHeight()} to determine the height at which void damage starts to apply.
+     *
+     * @return offset from min build height
+     * @see #isVoidDamageEnabled()
+     */
+    double getVoidDamageMinBuildHeightOffset();
+
+    /**
+     * Sets the offset applied to {@link #getMinHeight()} to determine the height at which void damage starts to apply.
+     *
+     * @param minBuildHeightOffset offset from min build height
+     */
+    void setVoidDamageMinBuildHeightOffset(double minBuildHeightOffset);
+    // Paper end - void damage configuration
+
     // Paper start
     /**
      * @return The amount of Entities in this world