mirror of
https://github.com/barkeser2002/CatServer.git
synced 2026-09-25 08:39:58 +03:00
40 lines
1.8 KiB
Diff
40 lines
1.8 KiB
Diff
--- ../src-base/minecraft/net/minecraft/entity/projectile/EntitySmallFireball.java
|
|
+++ ../src-work/minecraft/net/minecraft/entity/projectile/EntitySmallFireball.java
|
|
@@ -1,5 +1,7 @@
|
|
package net.minecraft.entity.projectile;
|
|
|
|
+import org.bukkit.event.entity.EntityCombustByEntityEvent;
|
|
+
|
|
import net.minecraft.entity.EntityLiving;
|
|
import net.minecraft.entity.EntityLivingBase;
|
|
import net.minecraft.init.Blocks;
|
|
@@ -47,7 +49,14 @@
|
|
if (flag)
|
|
{
|
|
this.applyEnchantments(this.shootingEntity, result.entityHit);
|
|
- result.entityHit.setFire(5);
|
|
+ // CraftBukkit start - Entity damage by entity event + combust event
|
|
+ EntityCombustByEntityEvent event = new EntityCombustByEntityEvent(this.getBukkitEntity(), result.entityHit.getBukkitEntity(), 5);
|
|
+ result.entityHit.worldObj.getServer().getPluginManager().callEvent(event);
|
|
+
|
|
+ if (!event.isCancelled()) {
|
|
+ result.entityHit.setFire(event.getDuration());
|
|
+ }
|
|
+ // CraftBukkit end
|
|
}
|
|
}
|
|
}
|
|
@@ -66,7 +75,11 @@
|
|
|
|
if (this.worldObj.isAirBlock(blockpos))
|
|
{
|
|
- this.worldObj.setBlockState(blockpos, Blocks.FIRE.getDefaultState());
|
|
+ // CraftBukkit start
|
|
+ if (!org.bukkit.craftbukkit.event.CraftEventFactory.callBlockIgniteEvent(worldObj, blockpos.getX(), blockpos.getY(), blockpos.getZ(), this).isCancelled()) {
|
|
+ this.worldObj.setBlockState(blockpos, Blocks.FIRE.getDefaultState());
|
|
+ }
|
|
+ // CraftBukkit end
|
|
}
|
|
}
|
|
}
|