@@ -10,6 +10,7 @@ import com.lambda.client.util.color.DyeColors
10
10
import com.lambda.client.util.color.HueCycler
11
11
import com.lambda.client.util.graphics.ESPRenderer
12
12
import com.lambda.client.util.graphics.GeometryMasks
13
+ import com.lambda.client.util.math.VectorUtils.distanceTo
13
14
import com.lambda.client.util.threads.safeAsyncListener
14
15
import kotlinx.coroutines.Dispatchers
15
16
import kotlinx.coroutines.coroutineScope
@@ -38,6 +39,8 @@ object StorageESP : Module(
38
39
private val dispenser by setting(" Dispenser" , false , { page == Page .TYPE })
39
40
private val hopper by setting(" Hopper" , false , { page == Page .TYPE })
40
41
private val cart by setting(" Minecart" , false , { page == Page .TYPE })
42
+ private val infinite by setting(" Infinite Range" , true ) // To avoid a hard to control range slider
43
+ private val range by setting(" Range" , 64 , 8 .. 512 , 1 , { page == Page .TYPE && ! infinite }, unit = " blocks" )
41
44
42
45
/* Color settings */
43
46
private val colorChest by setting(" Chest Color" , DyeColors .ORANGE , { page == Page .COLOR })
@@ -105,6 +108,7 @@ object StorageESP : Module(
105
108
106
109
private fun SafeClientEvent.updateTileEntities (list : MutableList <Triple <AxisAlignedBB , ColorHolder , Int >>) {
107
110
for (tileEntity in world.loadedTileEntityList.toList()) {
111
+ if (! infinite && player.distanceTo(tileEntity.pos) > range) continue
108
112
if (! checkTileEntityType(tileEntity)) continue
109
113
110
114
val box = world.getBlockState(tileEntity.pos).getSelectedBoundingBox(world, tileEntity.pos) ? : continue
@@ -150,6 +154,7 @@ object StorageESP : Module(
150
154
151
155
private fun SafeClientEvent.updateEntities (list : MutableList <Triple <AxisAlignedBB , ColorHolder , Int >>) {
152
156
for (entity in world.loadedEntityList.toList()) {
157
+ if (! infinite && player.getDistance(entity) > range) continue
153
158
if (! checkEntityType(entity)) continue
154
159
155
160
val box = entity.renderBoundingBox ? : continue
0 commit comments