DREAMFIRE Docs ← Back to site
Loading...
Searching...
No Matches
HologramAddLineEvent.java
Go to the documentation of this file.
1/*
2 * MIT License
3 *
4 * Copyright (c) 2025 Dreamfire Studio
5 *
6 * Permission is hereby granted, free of charge, to any person obtaining a copy
7 * of this software and associated documentation files (the "Software"), to deal
8 * in the Software without restriction, including without limitation the rights
9 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10 * copies of the Software, and to permit persons to whom the Software is
11 * furnished to do so, subject to the following conditions:
12 *
13 * The above copyright notice and this permission notice shall be included in all
14 * copies or substantial portions of the Software.
15 *
16 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22 * SOFTWARE.
23 */
24package com.dreamfirestudios.dreamcore.DreamHologram;
25
26import lombok.Getter;
27import net.kyori.adventure.text.Component;
28import org.bukkit.Bukkit;
29import org.bukkit.event.Event;
30import org.bukkit.event.HandlerList;
31import org.jetbrains.annotations.NotNull;
32
48@Getter
49public class HologramAddLineEvent extends Event {
50
51 private static final HandlerList HANDLERS = new HandlerList();
52
54 private final DreamHologram hologram;
55
57 private final Component line;
58
64 public HologramAddLineEvent(@NotNull DreamHologram hologram, @NotNull Component line) {
65 super(!Bukkit.isPrimaryThread()); // Async flag mirrors current thread
66 this.hologram = hologram;
67 this.line = line;
68 }
69
75 public static void fire(@NotNull DreamHologram hologram, @NotNull Component line) {
76 Bukkit.getPluginManager().callEvent(new HologramAddLineEvent(hologram, line));
77 }
78
79 @Override public @NotNull HandlerList getHandlers() { return HANDLERS; }
80
85 public static @NotNull HandlerList getHandlerList() { return HANDLERS; }
86}
A multi-line Adventure Component hologram backed by stacked ArmorStands.
Event fired after a hologram line has been inserted and its ArmorStand spawned.
HologramAddLineEvent(@NotNull DreamHologram hologram, @NotNull Component line)
Constructs the event.
static HandlerList getHandlerList()
Static accessor required by Bukkit's event system.
static void fire(@NotNull DreamHologram hologram, @NotNull Component line)
Convenience helper to create and call this event via the plugin manager.