All Downloads are FREE. Search and download functionalities are using the official Maven repository.

think.rpgitems.power.trigger.BeamHit Maven / Gradle / Ivy

There is a newer version: 3.12.2
Show newest version
package think.rpgitems.power.trigger;

import org.bukkit.entity.Player;
import org.bukkit.event.Event;
import org.bukkit.inventory.ItemStack;
import think.rpgitems.event.BeamEndEvent;
import think.rpgitems.event.BeamHitBlockEvent;
import think.rpgitems.event.BeamHitEntityEvent;
import think.rpgitems.power.PowerBeamHit;
import think.rpgitems.power.PowerResult;

public class BeamHit extends Trigger {

    BeamHit(Class tEventClass, Class tResultClass, Class returnClass, String name) {
        super(tEventClass, PowerBeamHit.class, tResultClass, returnClass, name);
    }

    @Override
    public PowerResult run(PowerBeamHit powerBeamHit, Player player, ItemStack i, TEvent event) {
        if (event instanceof BeamHitBlockEvent event1){
            return (PowerResult) powerBeamHit.hitBlock(player, i, event1.getLocation(), event1);
        }else if (event instanceof BeamHitEntityEvent event1){
            return (PowerResult) powerBeamHit.hitEntity(player, i, event1.getEntity(), event1.getDamage(), event1);
        }else if (event instanceof BeamEndEvent event1){
            return (PowerResult) powerBeamHit.beamEnd(player, i, event1.getLocation(), event1);
        }else {
            return PowerResult.fail();
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy