Add Firework power modifier

This commit is contained in:
D0gma_ 2023-08-18 21:43:25 +02:00
parent f2b5c4fd4c
commit c21a372bd8

@ -7,12 +7,14 @@ import org.bukkit.inventory.meta.FireworkMeta;
import org.jetbrains.annotations.Contract;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.Range;
import java.util.ArrayList;
import java.util.List;
public final class FireworkBuilder extends AbstractItemBuilder<FireworkBuilder> {
private int power = -1;
private List<FireworkEffect> effects = new ArrayList<>();
public FireworkBuilder() {
@ -27,6 +29,12 @@ public final class FireworkBuilder extends AbstractItemBuilder<FireworkBuilder>
super(base);
}
@Contract("_ -> this")
public @NotNull FireworkBuilder setPower(@Range(from = 0, to = 127) int power) {
this.power = power;
return this;
}
@Contract("_ -> this")
public @NotNull FireworkBuilder addFireworkEffect(@NotNull FireworkEffect effect) {
effects.add(effect);
@ -57,6 +65,7 @@ public final class FireworkBuilder extends AbstractItemBuilder<FireworkBuilder>
ItemStack item = super.get(lang);
FireworkMeta meta = (FireworkMeta) item.getItemMeta();
if (power != -1) meta.setPower(power);
meta.clearEffects();
meta.addEffects(effects);