Skip to main content

Events

SigmaTools fires three events under com.sigmatools.api.events, all cancellable via isCancelled()/setCancelled(boolean).

EventFieldsWhen it fires
SigmaToolUseEventgetPlayer(), getToolType(), getAffectedBlocks() (Set<Block>), getPlannedCost()/setPlannedCost(double), getPlannedReward()/setPlannedReward(double)When a tool is used, before cost/reward are applied
SigmaToolEconomyDeductEventgetPlayer(), getToolType(), getCurrency(), getAmount()/setAmount(double)When economy is about to be deducted
SigmaToolEconomyRewardEventgetPlayer(), getToolType(), getCurrency(), getAmount()/setAmount(double)When an economy reward is about to be given
public class MyPlugin extends JavaPlugin implements Listener {
@Override
public void onEnable() {
getServer().getPluginManager().registerEvents(this, this);
}

@EventHandler
public void onToolUse(SigmaToolUseEvent event) {
Player player = event.getPlayer();
if (player.hasPermission("myplugin.vip")) {
event.setPlannedCost(event.getPlannedCost() * 0.5);
event.setPlannedReward(event.getPlannedReward() * 2.0);
}
// event.setCancelled(true); // prevents tool usage
}

@EventHandler
public void onEconomyDeduct(SigmaToolEconomyDeductEvent event) {
if (event.getPlayer().hasPermission("myplugin.discount")) {
event.setAmount(event.getAmount() * 0.8); // 20% discount
}
}

@EventHandler
public void onEconomyReward(SigmaToolEconomyRewardEvent event) {
if (event.getPlayer().hasPermission("myplugin.vip")) {
event.setAmount(event.getAmount() * 2.0);
}
}
}

Standard Bukkit @EventHandler(priority = EventPriority.HIGH) priorities apply (default NORMAL).

See Alsoโ€‹