diff --git a/patches/server/0003-Rebrand.patch b/patches/server/0003-Rebrand.patch index b68d782f5..246ec3725 100644 --- a/patches/server/0003-Rebrand.patch +++ b/patches/server/0003-Rebrand.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Rebrand diff --git a/build.gradle.kts b/build.gradle.kts -index 8d8c5a8bd2a53ac6d9b36e0330a7be6725aa407c..70d512c0c70d2470eaca295b6e35bb3be2f3f6a3 100644 +index 8d8c5a8bd2a53ac6d9b36e0330a7be6725aa407c..0435c1eb5c1fa6f9180ee8dc36a61afbac0f952e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -7,9 +7,9 @@ plugins { @@ -20,17 +20,18 @@ index 8d8c5a8bd2a53ac6d9b36e0330a7be6725aa407c..70d512c0c70d2470eaca295b6e35bb3b exclude("io.papermc.paper", "paper-api") } // Pufferfish end -@@ -42,6 +42,9 @@ dependencies { +@@ -42,6 +42,10 @@ dependencies { runtimeOnly("mysql:mysql-connector-java:8.0.29") runtimeOnly("com.lmax:disruptor:3.4.4") // Paper -+ implementation("cat.inspiracio:rhino-js-engine:1.7.7.1") // Purpur ++ implementation("org.mozilla:rhino-runtime:1.7.14") // Purpur ++ implementation("org.mozilla:rhino-engine:1.7.14") // Purpur + implementation("dev.omega24:upnp4j:1.0") // Purpur + runtimeOnly("org.apache.maven:maven-resolver-provider:3.8.5") runtimeOnly("org.apache.maven.resolver:maven-resolver-connector-basic:1.7.3") runtimeOnly("org.apache.maven.resolver:maven-resolver-transport-http:1.7.3") -@@ -81,7 +84,7 @@ tasks.jar { +@@ -81,7 +85,7 @@ tasks.jar { attributes( "Main-Class" to "org.bukkit.craftbukkit.Main", "Implementation-Title" to "CraftBukkit", @@ -39,7 +40,7 @@ index 8d8c5a8bd2a53ac6d9b36e0330a7be6725aa407c..70d512c0c70d2470eaca295b6e35bb3b "Implementation-Vendor" to date, // Paper "Specification-Title" to "Bukkit", "Specification-Version" to project.version, -@@ -153,7 +156,7 @@ fun TaskContainer.registerRunTask( +@@ -153,7 +157,7 @@ fun TaskContainer.registerRunTask( name: String, block: JavaExec.() -> Unit ): TaskProvider = register(name) { diff --git a/patches/server/0285-Add-skeleton-bow-accuracy-option.patch b/patches/server/0285-Add-skeleton-bow-accuracy-option.patch index 064218d3a..a9af452cc 100644 --- a/patches/server/0285-Add-skeleton-bow-accuracy-option.patch +++ b/patches/server/0285-Add-skeleton-bow-accuracy-option.patch @@ -18,7 +18,7 @@ index e542407894f58fb8c0339a7a6d2e7b2cb5891eb4..0cfe5cb3ce0ac8554bbdb68c66583693 org.bukkit.event.entity.EntityShootBowEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityShootBowEvent(this, this.getMainHandItem(), entityarrow.getPickupItem(), entityarrow, net.minecraft.world.InteractionHand.MAIN_HAND, 0.8F, true); // Paper if (event.isCancelled()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c0efea82bacda565876b8a01ed1f520706a2d127..af323d3136ca5d51ac122d5758251db965281020 100644 +index c0efea82bacda565876b8a01ed1f520706a2d127..11609d1c8e1dc80886435571d7c6ee1aa97fb177 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2418,6 +2418,8 @@ public class PurpurWorldConfig { @@ -30,16 +30,26 @@ index c0efea82bacda565876b8a01ed1f520706a2d127..af323d3136ca5d51ac122d5758251db9 private void skeletonSettings() { skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable); skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater); -@@ -2432,6 +2434,18 @@ public class PurpurWorldConfig { +@@ -2432,6 +2434,28 @@ public class PurpurWorldConfig { skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp); skeletonHeadVisibilityPercent = getDouble("mobs.skeleton.head-visibility-percent", skeletonHeadVisibilityPercent); skeletonFeedWitherRoses = getInt("mobs.skeleton.feed-wither-roses", skeletonFeedWitherRoses); ++ final String defaultSkeletonBowAccuracy = skeletonBowAccuracy; + skeletonBowAccuracy = getString("mobs.skeleton.bow-accuracy", skeletonBowAccuracy); + for (int i = 1; i < 4; i++) { -+ float divergence; ++ final float divergence; + try { + Entity.scriptEngine.eval("difficulty = " + i); -+ divergence = ((Double)Entity.scriptEngine.eval(skeletonBowAccuracy)).floatValue(); ++ final Object result = Entity.scriptEngine.eval(skeletonBowAccuracy); ++ if (result instanceof Long) { ++ divergence = ((Long) result).floatValue(); ++ } else if (result instanceof Double) { ++ divergence = ((Double) result).floatValue(); ++ } else { ++ set("mobs.skeleton.bow-accuracy", defaultSkeletonBowAccuracy); ++ skeletonBowAccuracy = defaultSkeletonBowAccuracy; ++ divergence = ((Long) Entity.scriptEngine.eval(skeletonBowAccuracy)).floatValue(); ++ } + } catch (Exception e) { + e.printStackTrace(); + continue;