public LightningStrike strike(Location loc, boolean effect) { BaseFullChunk chunk = nukkit.getChunk(loc.getChunk().getX(), loc.getChunk().getZ()); int x = loc.getBlockX(); int z = loc.getBlockZ(); int y = loc.getBlockY(); int bId = nukkit.getBlockIdAt(x, y, z); if (bId != cn.nukkit.block.Block.TALL_GRASS && bId != cn.nukkit.block.Block.WATER) y += 1; CompoundTag nbt = new CompoundTag() .putList(new ListTag<DoubleTag>("Pos").add(new DoubleTag("", x)) .add(new DoubleTag("", y)).add(new DoubleTag("", z))) .putList(new ListTag<DoubleTag>("Motion").add(new DoubleTag("", 0)) .add(new DoubleTag("", 0)).add(new DoubleTag("", 0))) .putList(new ListTag<FloatTag>("Rotation").add(new FloatTag("", 0)) .add(new FloatTag("", 0))); EntityLightning bolt = new EntityLightning(chunk, nbt); bolt.setEffect(effect); bolt.spawnToAll(); return PokkitEntityLightningStrike.toBukkit(bolt); }
public static LightningStrike toBukkit(cn.nukkit.entity.Entity nukkit) { if (nukkit == null) { return null; } if (!(nukkit instanceof EntityLightningStrike)) { return null; } return new PokkitEntityLightningStrike(nukkit); }
@Override public LightningStrike strikeLightning(final Location loc) { return TaskManager.IMP.sync(new RunnableVal<LightningStrike>() { @Override public void run(LightningStrike value) { this.value = parent.strikeLightning(loc); } }); }
@Override public LightningStrike strikeLightningEffect(final Location loc) { return TaskManager.IMP.sync(new RunnableVal<LightningStrike>() { @Override public void run(LightningStrike value) { this.value = parent.strikeLightningEffect(loc); } }); }
public boolean canDodge(Entity damager) { if (Permissions.secondaryAbilityEnabled(getPlayer(), SecondaryAbility.DODGE)) { if (damager instanceof LightningStrike && Acrobatics.dodgeLightningDisabled) { return false; } return skill.shouldProcess(damager); } return false; }
@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true) public void onPlayerDeath(EntityDamageByEntityEvent event) { if (event.getEntity() instanceof Player && event.getDamager() instanceof LightningStrike && strikeID.containsKey(event.getDamager().getEntityId()) && ((Player)event.getEntity()).getHealth() - event.getDamage() <= 0 && Bukkit.getServer().getPlayer(strikeID.get(event.getDamager().getEntityId())) != null) { event.setCancelled(true); ((Player)event.getEntity()).damage(event.getDamage(), Bukkit.getPlayer(strikeID.get(event.getDamager().getEntityId()))); } }
@EventHandler public void onEntityDamageByEntity(EntityDamageByEntityEvent event) { if (event.getEntity() instanceof Player && event.getDamager() instanceof LightningStrike && strikeID.containsKey(event.getDamager().getEntityId()) && strikeID.get(event.getDamager().getEntityId()).equalsIgnoreCase(((Player) event.getEntity()).getName())) event.setCancelled(true); }
@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true) public void onPlayerDeathByLightning(EntityDamageByEntityEvent event) { if (event.getEntity() instanceof Player && event.getDamager() instanceof LightningStrike && strikeID.containsKey(event.getDamager().getEntityId()) && ((Player)event.getEntity()).getHealth() - event.getDamage() <= 0 && Bukkit.getServer().getPlayer(strikeID.get(event.getDamager().getEntityId())) != null) { event.setCancelled(true); ((Player)event.getEntity()).damage(event.getDamage(), Bukkit.getPlayer(strikeID.get(event.getDamager().getEntityId()))); } }
@EventHandler public void onEntityDamageByLightning(EntityDamageByEntityEvent event) { if (event.getEntity() instanceof Player && event.getDamager() instanceof LightningStrike && strikeID.containsKey(event.getDamager().getEntityId()) && strikeID.get(event.getDamager().getEntityId()).equalsIgnoreCase(((Player) event.getEntity()).getName())) event.setCancelled(true); }
public LightningStrike strikeLightning(Location loc) { net.minecraft.entity.effect.EntityLightningBolt lightning = new net.minecraft.entity.effect.EntityLightningBolt(world, loc.getX(), loc.getY(), loc.getZ()); world.addWeatherEffect(lightning); return new CraftLightningStrike(server, lightning); }
public LightningStrike strikeLightningEffect(Location loc) { net.minecraft.entity.effect.EntityLightningBolt lightning = new net.minecraft.entity.effect.EntityLightningBolt(world, loc.getX(), loc.getY(), loc.getZ(), true); world.addWeatherEffect(lightning); return new CraftLightningStrike(server, lightning); }
public static PigZapEvent callPigZapEvent(net.minecraft.entity.Entity pig, net.minecraft.entity.Entity lightning, net.minecraft.entity.Entity pigzombie) { PigZapEvent event = new PigZapEvent((Pig) pig.getBukkitEntity(), (LightningStrike) lightning.getBukkitEntity(), (PigZombie) pigzombie.getBukkitEntity()); pig.getBukkitEntity().getServer().getPluginManager().callEvent(event); return event; }
public static CreeperPowerEvent callCreeperPowerEvent(net.minecraft.entity.Entity creeper, net.minecraft.entity.Entity lightning, CreeperPowerEvent.PowerCause cause) { CreeperPowerEvent event = new CreeperPowerEvent((Creeper) creeper.getBukkitEntity(), (LightningStrike) lightning.getBukkitEntity(), cause); creeper.getBukkitEntity().getServer().getPluginManager().callEvent(event); return event; }
@Override public LightningStrike strikeLightning(Location loc) { // TODO Auto-generated method stub throw new UnimplementedOperationException(); }
@Override public LightningStrike strikeLightningEffect(Location loc) { // TODO Auto-generated method stub throw new UnimplementedOperationException(); }
public CreeperPowerEvent(final Creeper creeper, final LightningStrike bolt, final PowerCause cause) { this(creeper, cause); this.bolt = bolt; }
public PigZapEvent(final Pig pig, final LightningStrike bolt, final PigZombie pigzombie) { super(pig); this.bolt = bolt; this.pigzombie = pigzombie; }
public LightningStrikeEvent(final World world, final LightningStrike bolt) { super(world); this.bolt = bolt; }
@Override public LightningStrike strikeLightning(Location loc) { return strike(loc, true); }
@Override public LightningStrike strikeLightningEffect(Location loc) { return strike(loc, false); }
@Override public org.bukkit.entity.LightningStrike.Spigot spigot() { return new org.bukkit.entity.LightningStrike.Spigot(); }
public LightningStrike strikeLightning(Location loc) { throw new NotImplementedException("strikeLightning(Location)"); }
public LightningStrike strikeLightningEffect(Location loc) { throw new NotImplementedException("strikeLightningEffect(Location)"); }