Search in sources :

Example 1 with SignInteractEvent

use of net.ess3.api.events.SignInteractEvent in project Essentials by drtshock.

the class EssentialsSign method onSignInteract.

protected final boolean onSignInteract(final Block block, final Player player, final IEssentials ess) {
    final ISign sign = new BlockSign(block);
    final User user = ess.getUser(player);
    if (user.checkSignThrottle()) {
        return false;
    }
    try {
        if (user.getBase().isDead() || !(user.isAuthorized("essentials.signs." + signName.toLowerCase(Locale.ENGLISH) + ".use") || user.isAuthorized("essentials.signs.use." + signName.toLowerCase(Locale.ENGLISH)))) {
            return false;
        }
        final SignInteractEvent signEvent = new SignInteractEvent(sign, this, user);
        ess.getServer().getPluginManager().callEvent(signEvent);
        if (signEvent.isCancelled()) {
            return false;
        }
        return onSignInteract(sign, user, getUsername(user), ess);
    } catch (ChargeException ex) {
        showError(ess, user.getSource(), ex, signName);
        return false;
    } catch (Exception ex) {
        showError(ess, user.getSource(), ex, signName);
        return false;
    }
}
Also used : SignInteractEvent(net.ess3.api.events.SignInteractEvent) MaxMoneyException(net.ess3.api.MaxMoneyException)

Example 2 with SignInteractEvent

use of net.ess3.api.events.SignInteractEvent in project Essentials by EssentialsX.

the class EssentialsSign method onSignInteract.

protected final boolean onSignInteract(final Block block, final Player player, final IEssentials ess) {
    final ISign sign = new BlockSign(block);
    final User user = ess.getUser(player);
    if (user.checkSignThrottle()) {
        return false;
    }
    try {
        if (user.getBase().isDead() || !(user.isAuthorized("essentials.signs." + signName.toLowerCase(Locale.ENGLISH) + ".use") || user.isAuthorized("essentials.signs.use." + signName.toLowerCase(Locale.ENGLISH)))) {
            return false;
        }
        final SignInteractEvent signEvent = new SignInteractEvent(sign, this, user);
        ess.getServer().getPluginManager().callEvent(signEvent);
        if (signEvent.isCancelled()) {
            return false;
        }
        return onSignInteract(sign, user, getUsername(user), ess);
    } catch (ChargeException ex) {
        showError(ess, user.getSource(), ex, signName);
        return false;
    } catch (Exception ex) {
        showError(ess, user.getSource(), ex, signName);
        return false;
    }
}
Also used : SignInteractEvent(net.ess3.api.events.SignInteractEvent) MaxMoneyException(net.ess3.api.MaxMoneyException)

Aggregations

MaxMoneyException (net.ess3.api.MaxMoneyException)2 SignInteractEvent (net.ess3.api.events.SignInteractEvent)2