mirror of
https://github.com/WiIIiam278/HuskSync.git
synced 2025-12-26 18:19:10 +00:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c4adec3082 | ||
|
|
107238360c | ||
|
|
6141adbdb9 |
@@ -237,21 +237,20 @@ public abstract class BukkitData implements Data {
|
|||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
public static BukkitData.PotionEffects adapt(@NotNull Collection<Effect> effects) {
|
public static BukkitData.PotionEffects adapt(@NotNull Collection<Effect> effects) {
|
||||||
return from(
|
return from(effects.stream()
|
||||||
effects.stream()
|
.map(effect -> {
|
||||||
.map(effect -> new PotionEffect(
|
final PotionEffectType type = matchEffectType(effect.type());
|
||||||
Objects.requireNonNull(
|
return type != null ? new PotionEffect(
|
||||||
PotionEffectType.getByName(effect.type()),
|
type,
|
||||||
"Invalid potion effect type"
|
effect.duration(),
|
||||||
),
|
effect.amplifier(),
|
||||||
effect.duration(),
|
effect.isAmbient(),
|
||||||
effect.amplifier(),
|
effect.showParticles(),
|
||||||
effect.isAmbient(),
|
effect.hasIcon()
|
||||||
effect.showParticles(),
|
) : null;
|
||||||
effect.hasIcon()
|
})
|
||||||
))
|
.filter(Objects::nonNull)
|
||||||
.toList()
|
.toList());
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@@ -616,7 +615,7 @@ public abstract class BukkitData implements Data {
|
|||||||
if (instance == null) {
|
if (instance == null) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
instance.setBaseValue(attribute == null ? instance.getDefaultValue() : instance.getBaseValue());
|
instance.setBaseValue(attribute == null ? instance.getDefaultValue() : attribute.baseValue());
|
||||||
instance.getModifiers().forEach(instance::removeModifier);
|
instance.getModifiers().forEach(instance::removeModifier);
|
||||||
if (attribute != null) {
|
if (attribute != null) {
|
||||||
attribute.modifiers().forEach(modifier -> instance.addModifier(new AttributeModifier(
|
attribute.modifiers().forEach(modifier -> instance.addModifier(new AttributeModifier(
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ package net.william278.husksync.util;
|
|||||||
import org.bukkit.*;
|
import org.bukkit.*;
|
||||||
import org.bukkit.attribute.Attribute;
|
import org.bukkit.attribute.Attribute;
|
||||||
import org.bukkit.entity.EntityType;
|
import org.bukkit.entity.EntityType;
|
||||||
|
import org.bukkit.potion.PotionEffectType;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
@@ -48,6 +49,11 @@ public final class BukkitKeyedAdapter {
|
|||||||
return getRegistryValue(Registry.ATTRIBUTE, key);
|
return getRegistryValue(Registry.ATTRIBUTE, key);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
public static PotionEffectType matchEffectType(@NotNull String key) {
|
||||||
|
return PotionEffectType.getByName(key); // No registry for this in 1.17 API
|
||||||
|
}
|
||||||
|
|
||||||
private static <T extends Keyed> T getRegistryValue(@NotNull Registry<T> registry, @NotNull String keyString) {
|
private static <T extends Keyed> T getRegistryValue(@NotNull Registry<T> registry, @NotNull String keyString) {
|
||||||
final NamespacedKey key = NamespacedKey.fromString(keyString);
|
final NamespacedKey key = NamespacedKey.fromString(keyString);
|
||||||
return key != null ? registry.get(key) : null;
|
return key != null ? registry.get(key) : null;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ org.gradle.jvmargs='-Dfile.encoding=UTF-8'
|
|||||||
org.gradle.daemon=true
|
org.gradle.daemon=true
|
||||||
javaVersion=17
|
javaVersion=17
|
||||||
|
|
||||||
plugin_version=3.5.2
|
plugin_version=3.5.3
|
||||||
plugin_archive=husksync
|
plugin_archive=husksync
|
||||||
plugin_description=A modern, cross-server player data synchronization system
|
plugin_description=A modern, cross-server player data synchronization system
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user