Skip to content
This repository was archived by the owner on Nov 27, 2024. It is now read-only.

Commit 31c2f57

Browse files
committed
move nucleus run trackers into one dir
1 parent 92eb3ec commit 31c2f57

File tree

5 files changed

+55
-4
lines changed

5 files changed

+55
-4
lines changed

src/main/kotlin/dev/nyon/skylper/skyblock/mining/hollows/HollowsModule.kt

+1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import dev.nyon.skylper.skyblock.mining.hollows.render.ChestHighlighter
1212
import dev.nyon.skylper.skyblock.mining.hollows.render.ChestParticleHighlighter
1313
import dev.nyon.skylper.skyblock.mining.hollows.solvers.metaldetector.MetalDetectorSolver
1414
import dev.nyon.skylper.skyblock.mining.hollows.tracker.PassExpiryTracker
15+
import dev.nyon.skylper.skyblock.mining.hollows.tracker.nucleus.CrystalRunListener
1516
import net.minecraft.world.phys.AABB
1617
import net.minecraft.world.phys.Vec3
1718

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
package dev.nyon.skylper.skyblock.mining.hollows.tracker.nucleus
2+
3+
import dev.nyon.skylper.config.config
4+
import dev.nyon.skylper.extensions.*
5+
import dev.nyon.skylper.extensions.render.hud.TableHudWidget
6+
import dev.nyon.skylper.extensions.render.hud.components.PlainTextHudComponent
7+
import dev.nyon.skylper.independentScope
8+
import dev.nyon.skylper.skyblock.data.skylper.currentProfile
9+
import kotlinx.coroutines.delay
10+
import kotlinx.coroutines.launch
11+
import net.minecraft.network.chat.Component
12+
import kotlin.reflect.KClass
13+
import kotlin.time.Duration.Companion.seconds
14+
15+
object CrystalCompletionWidget : TableHudWidget(
16+
Component.translatable("menu.skylper.hollows.tabhud.crystals.title"), 5, 2
17+
) {
18+
override var x: Double = config.mining.crystalHollows.crystalOverlay.x.toDouble()
19+
set(value) {
20+
config.mining.crystalHollows.crystalOverlay.x = value.toInt()
21+
field = value
22+
}
23+
override var y: Double = config.mining.crystalHollows.crystalOverlay.y.toDouble()
24+
set(value) {
25+
config.mining.crystalHollows.crystalOverlay.y = value.toInt()
26+
field = value
27+
}
28+
override val updateTriggerEvents: List<KClass<out Event<out Any>>> = listOf(
29+
CrystalFoundEvent::class, CrystalPlaceEvent::class, NucleusRunCompleteEvent::class, LevelChangeEvent::class
30+
)
31+
32+
override fun update() {
33+
super.update()
34+
currentProfile.mining.crystalHollows.crystals.forEachIndexed { index, instance ->
35+
addComponent(index, 0, PlainTextHudComponent(Component.literal(instance.crystal.displayName)))
36+
addComponent(index, 1, PlainTextHudComponent(instance.state.component))
37+
}
38+
}
39+
40+
init {
41+
init()
42+
43+
independentScope.launch {
44+
while (true) {
45+
delay(5.seconds)
46+
update()
47+
}
48+
}
49+
}
50+
}

src/main/kotlin/dev/nyon/skylper/skyblock/mining/hollows/locations/CrystalRunListener.kt src/main/kotlin/dev/nyon/skylper/skyblock/mining/hollows/tracker/nucleus/CrystalRunListener.kt

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
1-
package dev.nyon.skylper.skyblock.mining.hollows.locations
1+
package dev.nyon.skylper.skyblock.mining.hollows.tracker.nucleus
22

33
import dev.nyon.skylper.extensions.*
44
import dev.nyon.skylper.extensions.EventHandler.listenEvent
55
import dev.nyon.skylper.minecraft
66
import dev.nyon.skylper.skyblock.mining.hollows.Crystal
77
import dev.nyon.skylper.skyblock.mining.hollows.HollowsModule
8+
import dev.nyon.skylper.skyblock.mining.hollows.locations.HollowsLocation
89

910
object CrystalRunListener {
1011
private val crystalFoundRegex = regex("chat.hollows.run.crystalFound")

src/main/kotlin/dev/nyon/skylper/skyblock/render/SkylperHud.kt

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,11 @@ import dev.nyon.skylper.config.config
44
import dev.nyon.skylper.extensions.EventHandler.listenEvent
55
import dev.nyon.skylper.extensions.RenderHudEvent
66
import dev.nyon.skylper.extensions.render.hud.HudWidget
7-
import dev.nyon.skylper.skyblock.Mining
87
import dev.nyon.skylper.skyblock.data.online.IslandGroups
98
import dev.nyon.skylper.skyblock.data.session.PlayerSessionData
109
import dev.nyon.skylper.skyblock.mining.TotalPowderWidget
1110
import dev.nyon.skylper.skyblock.mining.hollows.HollowsModule
12-
import dev.nyon.skylper.skyblock.mining.hollows.render.hud.CrystalCompletionWidget
11+
import dev.nyon.skylper.skyblock.mining.hollows.tracker.nucleus.CrystalCompletionWidget
1312
import dev.nyon.skylper.skyblock.mining.hollows.tracker.powder.PowderGrindingTracker
1413
import net.minecraft.client.gui.GuiGraphics
1514

src/main/kotlin/dev/nyon/skylper/skyblock/render/SkylperHudModifier.kt

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import dev.nyon.konfig.config.saveConfig
44
import dev.nyon.skylper.config.config
55
import dev.nyon.skylper.extensions.render.hud.HudWidget
66
import dev.nyon.skylper.skyblock.mining.TotalPowderWidget
7-
import dev.nyon.skylper.skyblock.mining.hollows.render.hud.CrystalCompletionWidget
7+
import dev.nyon.skylper.skyblock.mining.hollows.tracker.nucleus.CrystalCompletionWidget
88
import dev.nyon.skylper.skyblock.mining.hollows.tracker.powder.PowderGrindingTracker
99
import net.minecraft.ChatFormatting
1010
import net.minecraft.client.gui.GuiGraphics

0 commit comments

Comments
 (0)