70ce6ce831
This makes it easier for downstream projects (forks) to replace the version fetching system with their own. It is as simple as implementing an interface and overriding the default implementation of org.bukkit.UnsafeValues#getVersionFetcher() It also makes it easier for us to organize things like the version history feature. Lastly I have updated the paper implementation to check against the site API rather than against jenkins.
48 Zeilen
1.9 KiB
Diff
48 Zeilen
1.9 KiB
Diff
From c7a93ea87077c8180f4a4bdb6012b45c63a84543 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sun, 3 Jun 2018 04:10:13 -0400
|
|
Subject: [PATCH] PotionEffect clone methods
|
|
|
|
|
|
diff --git a/src/main/java/org/bukkit/potion/PotionEffect.java b/src/main/java/org/bukkit/potion/PotionEffect.java
|
|
index bbefcd58..0193e075 100644
|
|
--- a/src/main/java/org/bukkit/potion/PotionEffect.java
|
|
+++ b/src/main/java/org/bukkit/potion/PotionEffect.java
|
|
@@ -101,6 +101,33 @@ public class PotionEffect implements ConfigurationSerializable {
|
|
this(getEffectType(map), getInt(map, DURATION), getInt(map, AMPLIFIER), getBool(map, AMBIENT, false), getBool(map, PARTICLES, true), getBool(map, ICON, getBool(map, PARTICLES, true)));
|
|
}
|
|
|
|
+ // Paper start
|
|
+ @NotNull
|
|
+ public PotionEffect withType(@NotNull PotionEffectType type) {
|
|
+ return new PotionEffect(type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ @NotNull
|
|
+ public PotionEffect withDuration(int duration) {
|
|
+ return new PotionEffect(this.type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ @NotNull
|
|
+ public PotionEffect withAmplifier(int amplifier) {
|
|
+ return new PotionEffect(this.type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ @NotNull
|
|
+ public PotionEffect withAmbient(boolean ambient) {
|
|
+ return new PotionEffect(this.type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ @NotNull
|
|
+ public PotionEffect withParticles(boolean particles) {
|
|
+ return new PotionEffect(this.type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ @NotNull
|
|
+ public PotionEffect withIcon(boolean icon) {
|
|
+ return new PotionEffect(this.type, duration, amplifier, ambient, particles, icon);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
@NotNull
|
|
private static PotionEffectType getEffectType(@NotNull Map<?, ?> map) {
|
|
int type = getInt(map, TYPE);
|
|
--
|
|
2.21.0
|
|
|