From a1c4ef8e041292cdf90ab293191db7d27b9046ba Mon Sep 17 00:00:00 2001 From: Boblet Date: Fri, 19 Jan 2024 14:33:28 +0100 Subject: [PATCH] why are there so many foxes, make it stop --- changelog | 3 +++ .../com/hbm/entity/mob/EntityGlyphid.java | 1 - .../hbm/entity/mob/EntityGlyphidDigger.java | 6 +++--- .../hbm/entity/mob/EntityGlyphidScout.java | 19 ++++++++++++++++++ .../handler/pollution/PollutionHandler.java | 14 +++++++------ .../gui/processing/gui_strand_caster.png | Bin 16344 -> 11637 bytes 6 files changed, 33 insertions(+), 10 deletions(-) diff --git a/changelog b/changelog index f0a283661..8c5d6df54 100644 --- a/changelog +++ b/changelog @@ -15,3 +15,6 @@ * Fixed infinite water barrels voiding water completely after the chemplant's input buffer runs full, infinite barrels can no longer void water in chemplants * Fixed fallout affecting things on Y:0 like bedrock ores and oil * Fixed projectiles not being able to pass through open doors +* Fixed material dupe caused by strand caster overflowing +* Fixed rampant mode glyphid scout spawn ignoring light level +* Fixed glyphid diggers' debris attack being able to break concrete diff --git a/src/main/java/com/hbm/entity/mob/EntityGlyphid.java b/src/main/java/com/hbm/entity/mob/EntityGlyphid.java index c0cbb40f2..b9e88e699 100644 --- a/src/main/java/com/hbm/entity/mob/EntityGlyphid.java +++ b/src/main/java/com/hbm/entity/mob/EntityGlyphid.java @@ -23,7 +23,6 @@ import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EnumCreatureAttribute; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.entity.monster.EntityMob; -import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; diff --git a/src/main/java/com/hbm/entity/mob/EntityGlyphidDigger.java b/src/main/java/com/hbm/entity/mob/EntityGlyphidDigger.java index f0c8d6a12..354162f3f 100644 --- a/src/main/java/com/hbm/entity/mob/EntityGlyphidDigger.java +++ b/src/main/java/com/hbm/entity/mob/EntityGlyphidDigger.java @@ -1,5 +1,6 @@ package com.hbm.entity.mob; +import com.hbm.blocks.ModBlocks; import com.hbm.entity.projectile.EntityRubble; import com.hbm.lib.Library; import com.hbm.main.ResourceManager; @@ -9,7 +10,6 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.SharedMonsterAttributes; import net.minecraft.init.Blocks; -import net.minecraft.util.MathHelper; import net.minecraft.util.ResourceLocation; import net.minecraft.util.Vec3; import net.minecraft.world.World; @@ -126,9 +126,9 @@ public class EntityGlyphidDigger extends EntityGlyphid { Block b = worldObj.getBlock(x1, y1, z1); - float k = b.getExplosionResistance(null); + float k = b.getExplosionResistance(this, worldObj, x1, y1, z1, posX, posY, posZ); - if (k < 200 && b.isNormalCube()) { + if (k < ModBlocks.concrete.getExplosionResistance(this) && b.isNormalCube()) { EntityRubble rubble = new EntityRubble(worldObj); rubble.posX = x1 + 0.5F; diff --git a/src/main/java/com/hbm/entity/mob/EntityGlyphidScout.java b/src/main/java/com/hbm/entity/mob/EntityGlyphidScout.java index 4d1e08a89..e6a5a4564 100644 --- a/src/main/java/com/hbm/entity/mob/EntityGlyphidScout.java +++ b/src/main/java/com/hbm/entity/mob/EntityGlyphidScout.java @@ -325,4 +325,23 @@ public class EntityGlyphidScout extends EntityGlyphid { } return PollutionHandler.targetCoords; } + + /** Vanilla implementation, minus the RNG */ + @Override + public boolean isValidLightLevel() { + int x = MathHelper.floor_double(this.posX); + int y = MathHelper.floor_double(this.boundingBox.minY); + int z = MathHelper.floor_double(this.posZ); + + int light = this.worldObj.getBlockLightValue(x, y, z); + + if(this.worldObj.isThundering()) { + int skylightSubtracted = this.worldObj.skylightSubtracted; + this.worldObj.skylightSubtracted = 10; + light = this.worldObj.getBlockLightValue(x, y, z); + this.worldObj.skylightSubtracted = skylightSubtracted; + } + + return light <= 7; + } } diff --git a/src/main/java/com/hbm/handler/pollution/PollutionHandler.java b/src/main/java/com/hbm/handler/pollution/PollutionHandler.java index 934a0524b..61c6e9bc4 100644 --- a/src/main/java/com/hbm/handler/pollution/PollutionHandler.java +++ b/src/main/java/com/hbm/handler/pollution/PollutionHandler.java @@ -364,12 +364,14 @@ public class PollutionHandler { if (soot >= MobConfig.rampantScoutSpawnThresh) { EntityGlyphidScout scout = new EntityGlyphidScout(event.world); - //escort for the scout, which can also deal with obstacles - EntityGlyphidDigger digger = new EntityGlyphidDigger(event.world); - scout.setLocationAndAngles(event.x, event.y, event.z, event.world.rand.nextFloat() * 360.0F, 0.0F); - digger.setLocationAndAngles(event.x, event.y, event.z, event.world.rand.nextFloat() * 360.0F, 0.0F); - event.world.spawnEntityInWorld(scout); - event.world.spawnEntityInWorld(digger); + if(scout.isValidLightLevel()) { + //escort for the scout, which can also deal with obstacles + EntityGlyphidDigger digger = new EntityGlyphidDigger(event.world); + scout.setLocationAndAngles(event.x, event.y, event.z, event.world.rand.nextFloat() * 360.0F, 0.0F); + digger.setLocationAndAngles(event.x, event.y, event.z, event.world.rand.nextFloat() * 360.0F, 0.0F); + event.world.spawnEntityInWorld(scout); + event.world.spawnEntityInWorld(digger); + } } } } diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png index 9f3253374240386f1091cfcace39043063e5c338..2af67e09eb749ed526c61c2ef58bd3f7ff5bd5e1 100644 GIT binary patch literal 11637 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 literal 16344 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