Аналог MinecraftForge.EVENT_BUS.register(this) в quilt.

Версия Minecraft
1.19.4
Добрый вечер, форумчане. Моддингоом занимаюсь не долго и опыта в этом особо нет. Во время обучения пользовался Forge, но тут решил посмотреть на новый загрузчик Quilt. При переписывании мода с Forge на Quilt столкнулся с проблемой регистрации модуля. Подскажите, пожалуйста, аналог EVENT_BUS.register() в quilt или fabric (вроде они похожи).
 
upd: кое-что нашел


Java:
QuiltEventBus eventBus = Quilt.getEventBus();

// создаем событие
class PlayerJoinEvent extends QuiltEvent {
    private final Player player;

    public PlayerJoinEvent(Player player) {
        this.player = player;
    }

    public Player getPlayer() {
        return player;
    }
}

// регистрируем слушателя на событие
eventBus.register(new PlayerJoinHandler() {
    @Subscribe("playerJoin")
    public void onPlayerJoin(PlayerJoinEvent event) {
        Player player = event.getPlayer();
        // делаем что-то с игроком
    }
});
 
upd: кое-что нашел


Java:
QuiltEventBus eventBus = Quilt.getEventBus();

// создаем событие
class PlayerJoinEvent extends QuiltEvent {
    private final Player player;

    public PlayerJoinEvent(Player player) {
        this.player = player;
    }

    public Player getPlayer() {
        return player;
    }
}

// регистрируем слушателя на событие
eventBus.register(new PlayerJoinHandler() {
    @Subscribe("playerJoin")
    public void onPlayerJoin(PlayerJoinEvent event) {
        Player player = event.getPlayer();
        // делаем что-то с игроком
    }
});
upd: learn
 
Не могу найти такой класс. Можете, пожалуйста, сослаться на источник.
Я включил VPN и подумал то что на EU интернетах будет побольше инфы про это.
Зашел на документацию и увидел такой пример, если у вас осталась надежда то вот я нашел еще кое-что.
upd: везде пишут то что Quilt не предоставляет встроенной системы событий.


Дополнение к коду:
Quilt не предоставляет встроенной системы событий, но вы можете создать свою систему, используя библиотеку EventBus, например, Otto. Вот пример реализации такой системы:
Java:
// Подключаем библиотеку Otto
import com.squareup.otto.Bus;
import com.squareup.otto.Produce;
import com.squareup.otto.Subscribe;

// Создаем класс события
public class Event {
    // Данные события
    private String data;

    // Конструктор
    public Event(String data) {
        this.data = data;
    }

    // Метод для получения данных события
    public String getData() {
        return data;
    }
}

// Класс, в котором происходит обработка события
public class MainActivity extends AppCompatActivity {

    // Объект EventBus
    private Bus bus = new Bus(ThreadEnforcer.MAIN_THREAD);

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        bus.register(this);
    }
 
Сверху