ForgePatch/patches/minecraft/net/minecraft/entity/monster/EntitySlime.java.patch
2016-11-13 17:09:55 -05:00

35 lines
1.7 KiB
Diff

--- ../src-base/minecraft/net/minecraft/entity/monster/EntitySlime.java
+++ ../src-work/minecraft/net/minecraft/entity/monster/EntitySlime.java
@@ -137,7 +137,7 @@
if (this.field_70122_E && !this.field_175452_bi)
{
int i = this.func_70809_q();
-
+ if (spawnCustomParticles()) { i = 0; } // don't spawn particles if it's handled by the implementation itself
for (int j = 0; j < i * 8; ++j)
{
float f = this.field_70146_Z.nextFloat() * ((float)Math.PI * 2F);
@@ -304,7 +304,7 @@
BlockPos blockpos = new BlockPos(MathHelper.func_76128_c(this.field_70165_t), 0, MathHelper.func_76128_c(this.field_70161_v));
Chunk chunk = this.field_70170_p.func_175726_f(blockpos);
- if (this.field_70170_p.func_72912_H().func_76067_t() == WorldType.field_77138_c && this.field_70146_Z.nextInt(4) != 1)
+ if (this.field_70170_p.func_72912_H().func_76067_t().handleSlimeSpawnReduction(field_70146_Z, field_70170_p))
{
return false;
}
@@ -370,6 +370,14 @@
return this.func_189101_db() ? SoundEvents.field_189110_fE : SoundEvents.field_187882_fq;
}
+ /* ======================================== FORGE START =====================================*/
+ /**
+ * Called when the slime spawns particles on landing, see onUpdate.
+ * Return true to prevent the spawning of the default particles.
+ */
+ protected boolean spawnCustomParticles() { return false; }
+ /* ======================================== FORGE END =====================================*/
+
static class AISlimeAttack extends EntityAIBase
{
private final EntitySlime field_179466_a;