aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/features
diff options
context:
space:
mode:
authorhannibal2 <24389977+hannibal00212@users.noreply.github.com>2022-10-01 17:00:01 +0200
committerhannibal2 <24389977+hannibal00212@users.noreply.github.com>2022-10-01 17:00:01 +0200
commitce00374e43f54ab574a8198f94d7a13270d48888 (patch)
treea6fa18deea59bb66cec166c2a5f412c0ca29beb2 /src/main/java/at/hannibal2/skyhanni/features
parent9946e80fa0fb5da41c4ad8e5ace2edad6c519167 (diff)
downloadskyhanni-ce00374e43f54ab574a8198f94d7a13270d48888.tar.gz
skyhanni-ce00374e43f54ab574a8198f94d7a13270d48888.tar.bz2
skyhanni-ce00374e43f54ab574a8198f94d7a13270d48888.zip
add blaze particle hide feature
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/features')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/HideBlazeParticles.kt28
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/nether/ashfang/AshfangHideParticles.kt11
-rw-r--r--src/main/java/at/hannibal2/skyhanni/features/slayer/blaze/BlazeSlayerClearView.kt10
3 files changed, 47 insertions, 2 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/features/HideBlazeParticles.kt b/src/main/java/at/hannibal2/skyhanni/features/HideBlazeParticles.kt
new file mode 100644
index 000000000..1216afe6a
--- /dev/null
+++ b/src/main/java/at/hannibal2/skyhanni/features/HideBlazeParticles.kt
@@ -0,0 +1,28 @@
+package at.hannibal2.skyhanni.features
+
+import at.hannibal2.skyhanni.SkyHanniMod
+import at.hannibal2.skyhanni.events.SpawnParticleEvent
+import at.hannibal2.skyhanni.utils.EntityUtils.getEntitiesNearby
+import at.hannibal2.skyhanni.utils.LorenzVec
+import net.minecraft.client.Minecraft
+import net.minecraft.entity.monster.EntityBlaze
+import net.minecraft.util.EnumParticleTypes
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
+
+class HideBlazeParticles {
+
+ @SubscribeEvent
+ fun onSpawnParticle(event: SpawnParticleEvent) {
+ val particleId = event.particleId
+ if (!SkyHanniMod.feature.misc.hideBlazeParticles) return
+
+ val particleType = EnumParticleTypes.values().find { it.particleID == particleId }
+ if (particleType != EnumParticleTypes.SMOKE_LARGE) return
+
+ val location = LorenzVec(event.x, event.y, event.z)
+ val clazz = EntityBlaze::class.java
+ if (Minecraft.getMinecraft().theWorld.getEntitiesNearby(clazz, location, 3.0).isNotEmpty()) {
+ event.isCanceled = true
+ }
+ }
+} \ No newline at end of file
diff --git a/src/main/java/at/hannibal2/skyhanni/features/nether/ashfang/AshfangHideParticles.kt b/src/main/java/at/hannibal2/skyhanni/features/nether/ashfang/AshfangHideParticles.kt
index feb13b2eb..266ec3da8 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/nether/ashfang/AshfangHideParticles.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/nether/ashfang/AshfangHideParticles.kt
@@ -37,7 +37,16 @@ class AshfangHideParticles {
if (!isEnabled()) return
if (!hideParticles) return
- event.isCanceled = true
+
+ when (event.callerClass) {
+ "net.minecraft.block.BlockFire",
+ "net.minecraft.entity.monster.EntityBlaze",
+ "net.minecraft.entity.projectile.EntityFireball",
+ -> {
+ event.isCanceled = true
+ }
+ }
+
}
private fun isEnabled() = LorenzUtils.inSkyblock && SkyHanniMod.feature.ashfang.hideParticles
diff --git a/src/main/java/at/hannibal2/skyhanni/features/slayer/blaze/BlazeSlayerClearView.kt b/src/main/java/at/hannibal2/skyhanni/features/slayer/blaze/BlazeSlayerClearView.kt
index b595f3cfa..5455d3067 100644
--- a/src/main/java/at/hannibal2/skyhanni/features/slayer/blaze/BlazeSlayerClearView.kt
+++ b/src/main/java/at/hannibal2/skyhanni/features/slayer/blaze/BlazeSlayerClearView.kt
@@ -47,7 +47,15 @@ class BlazeSlayerClearView {
@SubscribeEvent
fun onSpawnParticle(event: SpawnParticleEvent) {
if (isEnabled()) {
- event.isCanceled = true
+ when (event.callerClass) {
+ "net.minecraft.block.BlockFire",
+ "net.minecraft.entity.monster.EntityBlaze",
+ "net.minecraft.entity.projectile.EntityFireball",
+ -> {
+ event.isCanceled = true
+ return
+ }
+ }
}
}