diff --git a/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/misc/ModuleTeams.kt b/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/misc/ModuleTeams.kt index 08466626ce6..54855fb5818 100644 --- a/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/misc/ModuleTeams.kt +++ b/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/misc/ModuleTeams.kt @@ -93,7 +93,7 @@ object ModuleTeams : ClientModule("Teams", ModuleCategories.MISC) { * Check if [entity] is in your own team using scoreboard, * name color, armor color or team prefix. */ - private fun isInClientPlayersTeam(entity: LivingEntity) = + fun isInClientPlayersTeam(entity: LivingEntity) = matches.matchesAny(entity) || checkArmor(entity) /** diff --git a/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/render/ModuleRadar.kt b/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/render/ModuleRadar.kt index 666e40169ad..5e7652d61ff 100644 --- a/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/render/ModuleRadar.kt +++ b/src/main/kotlin/net/ccbluex/liquidbounce/features/module/modules/render/ModuleRadar.kt @@ -24,10 +24,13 @@ import net.ccbluex.liquidbounce.LiquidBounce import net.ccbluex.liquidbounce.config.types.CurveValue.Axis.Companion.axis import net.ccbluex.liquidbounce.config.types.group.Mode import net.ccbluex.liquidbounce.config.types.group.ModeValueGroup +import net.ccbluex.liquidbounce.config.types.group.ToggleableValueGroup import net.ccbluex.liquidbounce.event.events.OverlayRenderEvent import net.ccbluex.liquidbounce.event.handler import net.ccbluex.liquidbounce.features.module.ClientModule import net.ccbluex.liquidbounce.features.module.ModuleCategories +import net.ccbluex.liquidbounce.features.module.modules.misc.ModuleTeams +import net.ccbluex.liquidbounce.features.module.modules.misc.ModuleTeams.isInClientPlayersTeam import net.ccbluex.liquidbounce.render.ClientRenderPipelines import net.ccbluex.liquidbounce.render.GenericDistanceHSBColorMode import net.ccbluex.liquidbounce.render.GenericEntityHealthColorMode @@ -105,7 +108,13 @@ object ModuleRadar : ClientModule("Radar", ModuleCategories.RENDER, aliases = li private val radius by float("Radius", 40f, 2f..200f) - private val onlyPlayers by boolean("OnlyPlayers", false) + private object OnlyPlayers : ToggleableValueGroup(this, "OnlyPlayers", false) { + val ignoreTeams by boolean("IgnoreTeams", true) + } + + init { + tree(OnlyPlayers) + } private val pointerModes = choices("PointerMode", 0) { arrayOf( @@ -220,8 +229,16 @@ object ModuleRadar : ClientModule("Radar", ModuleCategories.RENDER, aliases = li rotate(-yawRad) + val onlyPlayers = OnlyPlayers.enabled + val ignoreTeams = + OnlyPlayers.ignoreTeams && onlyPlayers && ModuleTeams.enabled + for (entity in RenderedEntities) { - if (entity === player || (onlyPlayers && entity !is Player)) continue + if (entity === player + || (onlyPlayers && entity !is Player) + || (ignoreTeams && isInClientPlayersTeam(entity)) + ) { continue } + val entityPos = entity.interpolateCurrentPosition(it.tickDelta) val cameraDistance = entityPos.cameraDistance().toFloat()