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