Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 3 additions & 16 deletions common/src/main/kotlin/com/lambda/command/CommandRegistry.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,10 @@ package com.lambda.command
import com.lambda.config.Configurable
import com.lambda.config.configurations.LambdaConfig
import com.lambda.core.Loadable
import com.lambda.util.reflections.getInstances
import org.reflections.Reflections
import org.reflections.scanners.Scanners
import org.reflections.util.ClasspathHelper.forPackage
import org.reflections.util.ConfigurationBuilder

/**
Expand All @@ -14,24 +16,9 @@ object CommandRegistry : Configurable(LambdaConfig), Loadable {
override val name = "command"

val prefix by setting("prefix", ';')
val commands = mutableSetOf<LambdaCommand>()
val commands = getInstances<LambdaCommand> { forPackages("com.lambda.command.commands") }

override fun load(): String {
Reflections(
ConfigurationBuilder()
.forPackage("com.lambda.command.commands")
.setScanners(Scanners.SubTypes)
).getSubTypesOf(LambdaCommand::class.java).forEach { commandClass ->
commandClass.declaredFields.find {
it.name == "INSTANCE"
}?.apply {
isAccessible = true
(get(null) as? LambdaCommand)?.let { command ->
commands.add(command)
}
}
}

return "Registered ${commands.size} commands"
}
}
4 changes: 2 additions & 2 deletions common/src/main/kotlin/com/lambda/command/LambdaCommand.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package com.lambda.command

import com.lambda.command.CommandManager.dispatcher
import com.lambda.util.Nameable
import com.lambda.util.primitives.extension.CommandBuilder
import com.lambda.util.extension.CommandBuilder
import com.mojang.brigadier.builder.LiteralArgumentBuilder
import net.minecraft.command.CommandRegistryAccess
import net.minecraft.command.CommandSource
Expand All @@ -29,4 +29,4 @@ abstract class LambdaCommand(
}

abstract fun CommandBuilder.create()
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import com.lambda.brigadier.required
import com.lambda.command.LambdaCommand
import com.lambda.config.Configuration
import com.lambda.util.Communication.info
import com.lambda.util.primitives.extension.CommandBuilder
import com.lambda.util.extension.CommandBuilder

object ConfigCommand : LambdaCommand(
name = "config",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import com.lambda.util.Communication.info
import com.lambda.util.Communication.joinToText
import com.lambda.util.Communication.warn
import com.lambda.util.StringUtils
import com.lambda.util.primitives.extension.CommandBuilder
import com.lambda.util.extension.CommandBuilder
import com.lambda.util.text.ClickEvents.suggestCommand
import com.lambda.util.text.buildText
import com.lambda.util.text.clickEvent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import com.lambda.command.LambdaCommand
import com.lambda.module.modules.player.Replay
import com.lambda.util.FolderRegister
import com.lambda.util.FolderRegister.listRecursive
import com.lambda.util.primitives.extension.CommandBuilder
import com.lambda.util.extension.CommandBuilder

object ReplayCommand : LambdaCommand(
name = "replay",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import com.lambda.interaction.material.ContainerManager.containerMatchSelection
import com.lambda.interaction.material.StackSelection.Companion.selectStack
import com.lambda.interaction.material.transfer.TransferResult
import com.lambda.util.Communication.info
import com.lambda.util.primitives.extension.CommandBuilder
import com.lambda.util.extension.CommandBuilder

object TransferCommand : LambdaCommand(
name = "transfer",
Expand Down Expand Up @@ -105,4 +105,4 @@ object TransferCommand : LambdaCommand(
}
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package com.lambda.graphics.animation

import com.lambda.Lambda.mc
import com.lambda.util.math.MathUtils.lerp
import com.lambda.util.primitives.extension.partialTicks
import com.lambda.util.extension.partialTicks
import kotlin.math.abs
import kotlin.reflect.KProperty

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ package com.lambda.graphics.renderer.esp

import com.lambda.util.math.VecUtils.minus
import com.lambda.util.math.VecUtils.plus
import com.lambda.util.primitives.extension.max
import com.lambda.util.primitives.extension.min
import com.lambda.util.primitives.extension.prevPos
import com.lambda.util.extension.max
import com.lambda.util.extension.min
import com.lambda.util.extension.prevPos
import net.minecraft.entity.Entity
import net.minecraft.util.math.Box

Expand Down Expand Up @@ -40,4 +40,4 @@ class DynamicAABB {
update(boundingBox)
}
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import com.lambda.graphics.renderer.esp.DirectionMask
import com.lambda.graphics.renderer.esp.DirectionMask.hasDirection
import com.lambda.graphics.renderer.esp.DynamicAABB
import com.lambda.graphics.renderer.esp.impl.DynamicESPRenderer
import com.lambda.util.primitives.extension.max
import com.lambda.util.primitives.extension.min
import com.lambda.util.extension.max
import com.lambda.util.extension.min
import java.awt.Color

fun DynamicESPRenderer.build(
Expand Down Expand Up @@ -95,4 +95,4 @@ fun DynamicESPRenderer.buildOutline(
if (outlineMode.check(hasNorth, hasEast)) putLine(trb, brb)
if (outlineMode.check(hasEast, hasSouth)) putLine(trf, brf)
if (outlineMode.check(hasSouth, hasWest)) putLine(tlf, blf)
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import com.lambda.graphics.renderer.esp.DirectionMask
import com.lambda.graphics.renderer.esp.DirectionMask.hasDirection
import com.lambda.graphics.renderer.esp.impl.ESPRenderer
import com.lambda.graphics.renderer.esp.impl.StaticESPRenderer
import com.lambda.util.primitives.extension.max
import com.lambda.util.primitives.extension.min
import com.lambda.util.extension.max
import com.lambda.util.extension.min
import net.minecraft.util.math.Box
import java.awt.Color

Expand Down Expand Up @@ -107,4 +107,4 @@ fun StaticESPRenderer.buildOutline(
if (outlineMode.check(hasSouth, hasWest)) putLine(tlf, blf)

updateOutlines = true
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import com.lambda.graphics.gl.GlStateUtils.withFaceCulling
import com.lambda.graphics.gl.GlStateUtils.withLineWidth
import com.lambda.graphics.shader.Shader
import com.lambda.module.modules.client.RenderSettings
import com.lambda.util.primitives.extension.partialTicks
import com.lambda.util.extension.partialTicks

abstract class ESPRenderer(
usage: BufferUsage,
Expand Down Expand Up @@ -57,4 +57,4 @@ abstract class ESPRenderer(
"renderer/box_dynamic"
) to VertexAttrib.Group.DYNAMIC_RENDERER
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import com.lambda.gui.impl.clickgui.buttons.ModuleButton
import com.lambda.gui.impl.clickgui.buttons.SettingButton
import com.lambda.util.KeyCode
import com.lambda.util.math.ColorUtils.multAlpha
import com.lambda.util.primitives.extension.displayValue
import com.lambda.util.extension.displayValue

class BindButton(
setting: KeyBindSetting,
Expand Down Expand Up @@ -44,4 +44,4 @@ class BindButton(
if (!inputBar.isActive) (owner.gui as? AbstractClickGui)?.unfocusSettings()
inputBar.toggle()
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import com.lambda.util.math.MathUtils.floorToInt
import com.lambda.util.math.MathUtils.lerp
import com.lambda.util.math.Vec2d
import com.lambda.util.math.transform
import com.lambda.util.primitives.extension.displayValue
import com.lambda.util.extension.displayValue
import java.awt.Color

class EnumSlider<T : Enum<T>>(
Expand Down Expand Up @@ -57,4 +57,4 @@ class EnumSlider<T : Enum<T>>(
playClickSound()
setting.next()
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import com.lambda.util.collections.LimitedOrderedSet
import com.lambda.util.math.VecUtils.approximate
import com.lambda.util.player.MovementUtils.motionX
import com.lambda.util.player.MovementUtils.motionZ
import com.lambda.util.primitives.extension.component1
import com.lambda.util.primitives.extension.component2
import com.lambda.util.primitives.extension.component3
import com.lambda.util.extension.component1
import com.lambda.util.extension.component2
import com.lambda.util.extension.component3
import net.minecraft.network.packet.c2s.play.ClientCommandC2SPacket
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket.*

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ import com.lambda.threading.runSafe
import com.lambda.util.math.MathUtils.lerp
import com.lambda.util.math.MathUtils.toRadian
import com.lambda.util.math.Vec2d
import com.lambda.util.primitives.extension.partialTicks
import com.lambda.util.primitives.extension.rotation
import com.lambda.util.extension.partialTicks
import com.lambda.util.extension.rotation
import net.minecraft.client.input.Input
import net.minecraft.network.packet.s2c.play.PlayerPositionLookS2CPacket
import kotlin.math.*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import com.lambda.context.SafeContext
import com.lambda.interaction.construction.verify.TargetState
import com.lambda.util.BlockUtils.blockPos
import com.lambda.util.BlockUtils.blockState
import com.lambda.util.primitives.extension.Structure
import com.lambda.util.extension.Structure
import net.minecraft.structure.StructureTemplate
import net.minecraft.util.math.BlockBox
import net.minecraft.util.math.BlockPos
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package com.lambda.interaction.construction

import com.lambda.context.SafeContext
import com.lambda.util.primitives.extension.Structure
import com.lambda.util.extension.Structure
import net.minecraft.util.math.Vec3i

data class DynamicBlueprint(
Expand Down Expand Up @@ -35,4 +35,4 @@ data class DynamicBlueprint(
onTick: SafeContext.(Structure) -> Structure
) = DynamicBlueprint(init = { emptyMap() }, update = onTick)
}
}
}
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
package com.lambda.interaction.construction

import com.lambda.util.primitives.extension.Structure
import com.lambda.util.extension.Structure

data class StaticBlueprint(
override val structure: Structure
) : Blueprint() {
companion object {
fun Structure.toBlueprint() = StaticBlueprint(this)
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ import com.lambda.interaction.material.container.*
import com.lambda.util.BlockUtils.blockEntity
import com.lambda.util.Communication.info
import com.lambda.util.item.ItemUtils
import com.lambda.util.primitives.extension.containerStacks
import com.lambda.util.extension.containerStacks
import com.lambda.util.reflections.getInstances
import net.minecraft.block.BlockState
import net.minecraft.block.entity.BlockEntity
import net.minecraft.block.entity.ChestBlockEntity
Expand All @@ -19,19 +20,16 @@ import net.minecraft.item.ItemStack
import net.minecraft.screen.GenericContainerScreenHandler
import net.minecraft.screen.ScreenHandler
import net.minecraft.screen.ScreenHandlerType
import org.reflections.util.ClasspathHelper.forPackage
import java.util.*

// ToDo: Make this a Configurable to save container caches. Should use a cached region based storage system.
object ContainerManager : Loadable {
// ToDo: Maybe use reflection to get all containers?
private val container = TreeSet<MaterialContainer>().apply {
add(CreativeContainer)
add(EnderChestContainer)
add(HotbarContainer)
add(InventoryContainer)
add(MainHandContainer)
add(OffHandContainer)
}
private val container: List<MaterialContainer>
get() = compileContainers + runtimeContainers

private val compileContainers = getInstances<MaterialContainer> { forPackages("com.lambda.interaction.material.container") }
private val runtimeContainers = mutableSetOf<MaterialContainer>()

private var lastInteractedBlockEntity: BlockEntity? = null

Expand Down Expand Up @@ -64,7 +62,7 @@ object ContainerManager : Loadable {
.filterIsInstance<ChestContainer>()
.find {
it.blockPos == block.pos
}?.update(stacks) ?: container.add(ChestContainer(stacks, block.pos))
}?.update(stacks) ?: runtimeContainers.add(ChestContainer(stacks, block.pos))
}
}
lastInteractedBlockEntity = null
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import com.lambda.interaction.rotation.RotationContext
import com.lambda.module.modules.client.TaskFlow
import com.lambda.util.BlockUtils.blockState
import com.lambda.util.math.VecUtils.distSq
import com.lambda.util.primitives.extension.component6
import com.lambda.util.extension.component6
import com.lambda.util.world.raycast.RayCastUtils.blockResult
import com.lambda.util.world.raycast.RayCastUtils.entityResult
import net.minecraft.entity.Entity
Expand Down
18 changes: 2 additions & 16 deletions common/src/main/kotlin/com/lambda/module/ModuleRegistry.kt
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.lambda.module

import com.lambda.core.Loadable
import com.lambda.util.reflections.getInstances
import org.reflections.Reflections
import org.reflections.scanners.Scanners
import org.reflections.util.ConfigurationBuilder
Expand All @@ -9,27 +10,12 @@ import org.reflections.util.ConfigurationBuilder
* The [ModuleRegistry] object is responsible for managing all [Module] instances in the system.
*/
object ModuleRegistry : Loadable {
val modules = mutableSetOf<Module>()
val modules = getInstances<Module> { forPackages("com.lambda.module.modules") }

val moduleNames: Set<String>
get() = modules.map { it.name }.toSet()

override fun load(): String {
Reflections(
ConfigurationBuilder()
.forPackages("com.lambda.module.modules")
.addScanners(Scanners.SubTypes)
).getSubTypesOf(Module::class.java).forEach { moduleClass ->
moduleClass.declaredFields.find {
it.name == "INSTANCE"
}?.apply {
isAccessible = true
(get(null) as? Module)?.let { module ->
modules.add(module)
}
}
}

return "Registered ${modules.size} modules with ${modules.sumOf { it.settings.size }} settings"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ import com.lambda.interaction.rotation.Rotation
import com.lambda.interaction.rotation.Rotation.Companion.rotationTo
import com.lambda.module.Module
import com.lambda.module.tag.ModuleTag
import com.lambda.util.primitives.extension.component1
import com.lambda.util.primitives.extension.component2
import com.lambda.util.primitives.extension.component3
import com.lambda.util.primitives.extension.rotation
import com.lambda.util.extension.component1
import com.lambda.util.extension.component2
import com.lambda.util.extension.component3
import com.lambda.util.extension.rotation
import net.minecraft.network.packet.c2s.play.PlayerActionC2SPacket
import net.minecraft.network.packet.c2s.play.PlayerInteractItemC2SPacket
import net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket
Expand Down Expand Up @@ -52,4 +52,4 @@ object Criticals : Module(

connection.sendPacket(packet)
}
}
}
Loading