package tc.oc.pgm.tracker.damage;
import javax.annotation.Nullable;
import net.md_5.bungee.api.chat.BaseComponent;
import net.md_5.bungee.api.chat.TranslatableComponent;
import org.bukkit.potion.PotionEffectType;
import tc.oc.commons.bukkit.util.NMSHacks;
import tc.oc.commons.core.inspect.Inspectable;
import tc.oc.pgm.match.ParticipantState;
public class GenericPotionInfo extends Inspectable.Impl implements PotionInfo {
@Inspect private final PotionEffectType effectType;
public GenericPotionInfo(PotionEffectType effectType) {
this.effectType = effectType;
}
@Override
public @Nullable PotionEffectType getPotionEffect() {
return effectType;
}
@Override
public String getIdentifier() {
PotionEffectType effectType = getPotionEffect();
return effectType != null ? effectType.getName() : "EMPTY";
}
@Override
public BaseComponent getLocalizedName() {
return new TranslatableComponent(NMSHacks.getTranslationKey(getPotionEffect()));
}
@Override
public @Nullable ParticipantState getOwner() {
return null;
}
@Override
public @Nullable ParticipantState getAttacker() {
return null;
}
}