Search in sources :

Example 21 with Event

use of org.bukkit.event.Event in project Conquer by xXAndrew28Xx.

the class MSEventForwarder method onMembershipChange.

@EventHandler
public void onMembershipChange(EventFactionsMembershipChange event) {
    ConquerFaction faction = MSFaction.get(plugin, event.getNewFaction());
    ConquerPlayer player = MSPlayer.get(plugin, event.getMPlayer());
    Event forwardEvent;
    switch(event.getReason()) {
        case JOIN:
        case CREATE:
            forwardEvent = new ConquerFactionJoinEvent(faction, player);
            break;
        case LEAVE:
        case KICK:
        case DISBAND:
            forwardEvent = new ConquerFactionLeaveEvent(faction, player);
            break;
        default:
            return;
    }
    callEvent(forwardEvent);
    if (((Cancellable) forwardEvent).isCancelled()) {
        event.setCancelled(true);
    }
}
Also used : ConquerFaction(me.andrew28.addons.conquer.api.ConquerFaction) ConquerFactionJoinEvent(me.andrew28.addons.conquer.api.events.ConquerFactionJoinEvent) Cancellable(org.bukkit.event.Cancellable) ConquerUnclaimAllEvent(me.andrew28.addons.conquer.api.events.ConquerUnclaimAllEvent) Event(org.bukkit.event.Event) ConquerFactionRelationEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationEvent) ConquerFactionLeaveEvent(me.andrew28.addons.conquer.api.events.ConquerFactionLeaveEvent) ConquerPowerLossEvent(me.andrew28.addons.conquer.api.events.ConquerPowerLossEvent) ConquerFactionDisbandEvent(me.andrew28.addons.conquer.api.events.ConquerFactionDisbandEvent) ConquerFactionRelationWishEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationWishEvent) ConquerLandClaimEvent(me.andrew28.addons.conquer.api.events.ConquerLandClaimEvent) ConquerFactionJoinEvent(me.andrew28.addons.conquer.api.events.ConquerFactionJoinEvent) ConquerFactionCreateEvent(me.andrew28.addons.conquer.api.events.ConquerFactionCreateEvent) ConquerPlayer(me.andrew28.addons.conquer.api.ConquerPlayer) ConquerFactionLeaveEvent(me.andrew28.addons.conquer.api.events.ConquerFactionLeaveEvent) EventHandler(org.bukkit.event.EventHandler)

Example 22 with Event

use of org.bukkit.event.Event in project Conquer by xXAndrew28Xx.

the class MSEventForwarder method onClaimChange.

@EventHandler
public void onClaimChange(EventFactionsChunksChange event) {
    ConquerFaction faction = MSFaction.get(plugin, event.getNewFaction());
    ConquerPlayer player = MSPlayer.get(plugin, event.getMPlayer());
    Set<PS> chunks = event.getChunks();
    Map<PS, EventFactionsChunkChangeType> chunkTypeMap = event.getChunkType();
    // Check if it's an unclaim all
    if (chunks.size() == faction.getClaims().length && chunkTypeMap.values().stream().allMatch(type -> type == EventFactionsChunkChangeType.SELL)) {
        ConquerUnclaimAllEvent forwardEvent = new ConquerUnclaimAllEvent(faction, player);
        callEvent(forwardEvent);
        if (forwardEvent.isCancelled()) {
            event.setCancelled(true);
        }
    }
    for (PS chunk : chunks) {
        EventFactionsChunkChangeType type = chunkTypeMap.get(chunk);
        ConquerClaim claim = MSClaim.get(plugin, chunk);
        Event forwardEvent;
        switch(type) {
            case NONE:
                continue;
            case BUY:
                forwardEvent = new ConquerLandClaimEvent(claim, true, faction, player);
                break;
            case CONQUER:
            case PILLAGE:
                forwardEvent = new ConquerLandClaimEvent(claim, false, faction, player);
                break;
            default:
                return;
        }
        callEvent(forwardEvent);
        if (((Cancellable) forwardEvent).isCancelled()) {
            event.setCancelled(true);
            return;
        }
    }
}
Also used : EventForwarder(me.andrew28.addons.conquer.api.EventForwarder) Cancellable(org.bukkit.event.Cancellable) ConquerUnclaimAllEvent(me.andrew28.addons.conquer.api.events.ConquerUnclaimAllEvent) EventFactionsCreate(com.massivecraft.factions.event.EventFactionsCreate) EventFactionsRelationChange(com.massivecraft.factions.event.EventFactionsRelationChange) Event(org.bukkit.event.Event) ConquerFactionRelationEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationEvent) EventHandler(org.bukkit.event.EventHandler) EventFactionsDisband(com.massivecraft.factions.event.EventFactionsDisband) ConquerClaim(me.andrew28.addons.conquer.api.ConquerClaim) Map(java.util.Map) EventFactionsMembershipChange(com.massivecraft.factions.event.EventFactionsMembershipChange) ConquerFactionLeaveEvent(me.andrew28.addons.conquer.api.events.ConquerFactionLeaveEvent) ConquerFaction(me.andrew28.addons.conquer.api.ConquerFaction) ConquerPowerLossEvent(me.andrew28.addons.conquer.api.events.ConquerPowerLossEvent) EventFactionsChunkChangeType(com.massivecraft.factions.event.EventFactionsChunkChangeType) ConquerFactionDisbandEvent(me.andrew28.addons.conquer.api.events.ConquerFactionDisbandEvent) Relation(me.andrew28.addons.conquer.api.Relation) PS(com.massivecraft.massivecore.ps.PS) ConquerFactionRelationWishEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationWishEvent) ConquerLandClaimEvent(me.andrew28.addons.conquer.api.events.ConquerLandClaimEvent) EventFactionsPowerChange(com.massivecraft.factions.event.EventFactionsPowerChange) Set(java.util.Set) ConquerFactionJoinEvent(me.andrew28.addons.conquer.api.events.ConquerFactionJoinEvent) EventFactionsChunksChange(com.massivecraft.factions.event.EventFactionsChunksChange) ConquerPlayer(me.andrew28.addons.conquer.api.ConquerPlayer) ConquerFactionCreateEvent(me.andrew28.addons.conquer.api.events.ConquerFactionCreateEvent) PS(com.massivecraft.massivecore.ps.PS) ConquerFaction(me.andrew28.addons.conquer.api.ConquerFaction) Cancellable(org.bukkit.event.Cancellable) ConquerUnclaimAllEvent(me.andrew28.addons.conquer.api.events.ConquerUnclaimAllEvent) Event(org.bukkit.event.Event) ConquerFactionRelationEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationEvent) ConquerFactionLeaveEvent(me.andrew28.addons.conquer.api.events.ConquerFactionLeaveEvent) ConquerPowerLossEvent(me.andrew28.addons.conquer.api.events.ConquerPowerLossEvent) ConquerFactionDisbandEvent(me.andrew28.addons.conquer.api.events.ConquerFactionDisbandEvent) ConquerFactionRelationWishEvent(me.andrew28.addons.conquer.api.events.ConquerFactionRelationWishEvent) ConquerLandClaimEvent(me.andrew28.addons.conquer.api.events.ConquerLandClaimEvent) ConquerFactionJoinEvent(me.andrew28.addons.conquer.api.events.ConquerFactionJoinEvent) ConquerFactionCreateEvent(me.andrew28.addons.conquer.api.events.ConquerFactionCreateEvent) ConquerUnclaimAllEvent(me.andrew28.addons.conquer.api.events.ConquerUnclaimAllEvent) ConquerLandClaimEvent(me.andrew28.addons.conquer.api.events.ConquerLandClaimEvent) ConquerPlayer(me.andrew28.addons.conquer.api.ConquerPlayer) ConquerClaim(me.andrew28.addons.conquer.api.ConquerClaim) EventFactionsChunkChangeType(com.massivecraft.factions.event.EventFactionsChunkChangeType) EventHandler(org.bukkit.event.EventHandler)

Example 23 with Event

use of org.bukkit.event.Event in project Essentials by EssentialsX.

the class EssentialsSpawn method onEnable.

@Override
public void onEnable() {
    final PluginManager pluginManager = getServer().getPluginManager();
    ess = (IEssentials) pluginManager.getPlugin("Essentials");
    if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion())) {
        LOGGER.log(Level.WARNING, tl("versionMismatchAll"));
    }
    if (!ess.isEnabled()) {
        this.setEnabled(false);
        return;
    }
    spawns = new SpawnStorage(ess);
    ess.addReloadListener(spawns);
    final EssentialsSpawnPlayerListener playerListener = new EssentialsSpawnPlayerListener(ess, spawns);
    EventPriority respawnPriority = ess.getSettings().getRespawnPriority();
    if (respawnPriority != null) {
        pluginManager.registerEvent(PlayerRespawnEvent.class, playerListener, respawnPriority, new EventExecutor() {

            @Override
            public void execute(final Listener ll, final Event event) throws EventException {
                ((EssentialsSpawnPlayerListener) ll).onPlayerRespawn((PlayerRespawnEvent) event);
            }
        }, this);
    }
    EventPriority joinPriority = ess.getSettings().getSpawnJoinPriority();
    if (joinPriority != null) {
        pluginManager.registerEvent(PlayerJoinEvent.class, playerListener, joinPriority, new EventExecutor() {

            @Override
            public void execute(final Listener ll, final Event event) throws EventException {
                ((EssentialsSpawnPlayerListener) ll).onPlayerJoin((PlayerJoinEvent) event);
            }
        }, this);
    }
}
Also used : PluginManager(org.bukkit.plugin.PluginManager) PlayerJoinEvent(org.bukkit.event.player.PlayerJoinEvent) EventExecutor(org.bukkit.plugin.EventExecutor) Listener(org.bukkit.event.Listener) EventException(org.bukkit.event.EventException) PlayerRespawnEvent(org.bukkit.event.player.PlayerRespawnEvent) PlayerJoinEvent(org.bukkit.event.player.PlayerJoinEvent) Event(org.bukkit.event.Event) PlayerRespawnEvent(org.bukkit.event.player.PlayerRespawnEvent) EventPriority(org.bukkit.event.EventPriority)

Example 24 with Event

use of org.bukkit.event.Event in project LandLord by SpatiumPrinceps.

the class JoinListener method onJoin.

@EventHandler
public void onJoin(PlayerJoinEvent event) {
    Player p = event.getPlayer();
    new BukkitRunnable() {

        @Override
        public void run() {
            List<Object> lPlayer = plugin.getDatabaseAPI().retrieveObjects(LPlayer.class, new Conditions.Builder().addCondition("uuid", p.getUniqueId().toString()).create());
            LPlayer lp;
            if (lPlayer.size() > 0)
                lp = (LPlayer) lPlayer.get(0);
            else
                lp = new LPlayer(p.getUniqueId());
            if (lp.getName() == null || lp.getName().isEmpty() || !p.getName().equals(lp.getName())) {
                lp.setName(p.getName());
            }
            plugin.getPlayerManager().add(p.getUniqueId(), lp);
            // The next to lines are needed to protect claiming of "inactive" lands although the owner is online right now
            // might just be a rare never happening edge case, but lets be safe
            plugin.getPlayerManager().get(p.getUniqueId()).setLastSeen(LocalDateTime.now());
            plugin.getPlayerManager().save(p.getUniqueId());
            Event event = new FinishedLoadingPlayerEvent(p, lp);
            Bukkit.getPluginManager().callEvent(event);
        }
    }.runTaskAsynchronously(plugin);
}
Also used : LPlayer(biz.princeps.landlord.persistent.LPlayer) FinishedLoadingPlayerEvent(biz.princeps.landlord.api.events.FinishedLoadingPlayerEvent) LPlayer(biz.princeps.landlord.persistent.LPlayer) Player(org.bukkit.entity.Player) BukkitRunnable(org.bukkit.scheduler.BukkitRunnable) PlayerJoinEvent(org.bukkit.event.player.PlayerJoinEvent) FinishedLoadingPlayerEvent(biz.princeps.landlord.api.events.FinishedLoadingPlayerEvent) PlayerQuitEvent(org.bukkit.event.player.PlayerQuitEvent) Event(org.bukkit.event.Event) List(java.util.List) EventHandler(org.bukkit.event.EventHandler)

Example 25 with Event

use of org.bukkit.event.Event in project AuthMeReloaded by AuthMe.

the class EventsConsistencyTest method scanEventClasses.

@BeforeClass
public static void scanEventClasses() {
    ClassCollector classCollector = new ClassCollector(TestHelper.SOURCES_FOLDER, EVENTS_FOLDER);
    classes = classCollector.collectClasses(Event.class);
    if (classes.isEmpty()) {
        throw new IllegalStateException("Did not find any AuthMe event classes. Is the folder correct?");
    }
}
Also used : ClassCollector(fr.xephi.authme.ClassCollector) Event(org.bukkit.event.Event) BeforeClass(org.junit.BeforeClass)

Aggregations

Event (org.bukkit.event.Event)26 Listener (org.bukkit.event.Listener)8 Test (org.junit.Test)7 EventException (org.bukkit.event.EventException)6 EventHandler (org.bukkit.event.EventHandler)6 EventExecutor (org.bukkit.plugin.EventExecutor)6 PluginManager (org.bukkit.plugin.PluginManager)6 RegisteredListener (org.bukkit.plugin.RegisteredListener)5 Cancellable (org.bukkit.event.Cancellable)4 TestEvent (org.bukkit.event.TestEvent)4 Field (java.lang.reflect.Field)3 Map (java.util.Map)3 Set (java.util.Set)3 EventPriority (org.bukkit.event.EventPriority)3 File (java.io.File)2 Method (java.lang.reflect.Method)2 List (java.util.List)2 ConquerFaction (me.andrew28.addons.conquer.api.ConquerFaction)2 ConquerPlayer (me.andrew28.addons.conquer.api.ConquerPlayer)2 ConquerFactionCreateEvent (me.andrew28.addons.conquer.api.events.ConquerFactionCreateEvent)2