Skip to content
Bartłomiej Stępień edited this page Sep 13, 2023 · 3 revisions

Events

Eagle Factions provides many events that occur during faction creation, player promotion/demotion, faction area entering etc.

Listening on faction event

Listening on a faction event is very simple and is setup in exactly the same way as you would setup your listeners for other events.

For example, to notify everyone when a new faction gets created, we could do something like this:

public MyFactionCreationListener {

	@Listener
	@IsCancelled(value = Tristate.FALSE)
	public void onFactionCreate(final FactionCreateEvent.Post event, @Root final Player player)
	{
		final Faction faction = event.getFaction();
		final Collection<ServerPlayer> players = Sponge.server().onlinePlayers();
		for (final ServerPlayer player : players)
		{
                        player.sendMessage(Component.text("Faction " + faction.getName() + " just got created!"));
		}
	}
}

We are using here ``FactionCreateEvent.Post`` beacause we do not need to cancel this event. We just need to know that faction got created and ``Post`` event is perfect for us in that case.

Clone this wiki locally