List of usage examples for net.minecraftforge.event.entity.living EnderTeleportEvent getAttackDamage
public float getAttackDamage()
From source file:com.github.liachmodded.uhcreloaded.forge.rule.CancelEnderPearlDamage.java
License:Open Source License
@SubscribeEvent(priority = EventPriority.HIGH) public void onPlayerUseEnderPearl(EnderTeleportEvent event) { if (event.getAttackDamage() > 0.0F) { event.setAttackDamage(0.0F);/*from w w w . ja va 2 s . co m*/ } }
From source file:vazkii.quark.misc.entity.EntityArrowEnder.java
License:Creative Commons License
@Override protected void onHit(RayTraceResult raytraceResultIn) { super.onHit(raytraceResultIn); if (shootingEntity != null) { if (shootingEntity instanceof EntityPlayerMP) { EntityPlayerMP entityplayermp = (EntityPlayerMP) shootingEntity; if (entityplayermp.connection.getNetworkManager().isChannelOpen() && entityplayermp.getEntityWorld() == getEntityWorld() && !entityplayermp.isPlayerSleeping()) { EnderTeleportEvent event = new EnderTeleportEvent(entityplayermp, posX, posY, posZ, 5.0F); if (!MinecraftForge.EVENT_BUS.post(event) && rand.nextFloat() < 0.025F && getEntityWorld().getGameRules().getBoolean("doMobSpawning")) { EntityEndermite entityendermite = new EntityEndermite(getEntityWorld()); entityendermite.setSpawnedByPlayer(true); entityendermite.setLocationAndAngles(shootingEntity.posX, shootingEntity.posY, shootingEntity.posZ, shootingEntity.rotationYaw, shootingEntity.rotationPitch); getEntityWorld().spawnEntity(entityendermite); }//from ww w .j a v a 2s .co m if (shootingEntity.isRiding()) shootingEntity.dismountRidingEntity(); shootingEntity.setPositionAndUpdate(event.getTargetX(), event.getTargetY(), event.getTargetZ()); shootingEntity.fallDistance = 0.0F; shootingEntity.attackEntityFrom(DamageSource.FALL, event.getAttackDamage()); } } else { shootingEntity.setPositionAndUpdate(this.posX, this.posY, this.posZ); shootingEntity.fallDistance = 0.0F; } // Full copypasta from EntityEnderPearl for (int i = 0; i < 32; ++i) this.getEntityWorld().spawnParticle(EnumParticleTypes.PORTAL, this.posX, this.posY + this.rand.nextDouble() * 2.0D, this.posZ, this.rand.nextGaussian(), 0.0D, this.rand.nextGaussian(), new int[0]); setDead(); } }
From source file:vazkii.quark.world.entity.arrow.EntityArrowEnder.java
License:Creative Commons License
@Override protected void onHit(RayTraceResult raytraceResultIn) { super.onHit(raytraceResultIn); if (shootingEntity != null) { if (shootingEntity instanceof EntityPlayerMP) { EntityPlayerMP entityplayermp = (EntityPlayerMP) shootingEntity; if (entityplayermp.connection.getNetworkManager().isChannelOpen() && entityplayermp.worldObj == worldObj && !entityplayermp.isPlayerSleeping()) { EnderTeleportEvent event = new EnderTeleportEvent(entityplayermp, posX, posY, posZ, 5.0F); if (!MinecraftForge.EVENT_BUS.post(event) && rand.nextFloat() < 0.025F && worldObj.getGameRules().getBoolean("doMobSpawning")) { EntityEndermite entityendermite = new EntityEndermite(worldObj); entityendermite.setSpawnedByPlayer(true); entityendermite.setLocationAndAngles(shootingEntity.posX, shootingEntity.posY, shootingEntity.posZ, shootingEntity.rotationYaw, shootingEntity.rotationPitch); worldObj.spawnEntityInWorld(entityendermite); }/* w w w . jav a 2 s.com*/ if (shootingEntity.isRiding()) shootingEntity.dismountRidingEntity(); shootingEntity.setPositionAndUpdate(event.getTargetX(), event.getTargetY(), event.getTargetZ()); shootingEntity.fallDistance = 0.0F; shootingEntity.attackEntityFrom(DamageSource.fall, event.getAttackDamage()); } } else { shootingEntity.setPositionAndUpdate(this.posX, this.posY, this.posZ); shootingEntity.fallDistance = 0.0F; } // Full copypasta from EntityEnderPearl for (int i = 0; i < 32; ++i) this.worldObj.spawnParticle(EnumParticleTypes.PORTAL, this.posX, this.posY + this.rand.nextDouble() * 2.0D, this.posZ, this.rand.nextGaussian(), 0.0D, this.rand.nextGaussian(), new int[0]); setDead(); } }