aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/dulkirmod/features
diff options
context:
space:
mode:
authoringlettronald <inglettronald@gmail.com>2023-03-22 02:56:04 -0500
committeringlettronald <inglettronald@gmail.com>2023-03-22 02:56:04 -0500
commit2d250a5dd2250c9bd7ada1f9a5ef32f1fcf6166a (patch)
tree595ae64cf933c6e0ffe9da363353666456a878f2 /src/main/kotlin/dulkirmod/features
parent2cb6f4cffee0ab505b35938cf71518e4640a229a (diff)
downloadDulkirMod-2d250a5dd2250c9bd7ada1f9a5ef32f1fcf6166a.tar.gz
DulkirMod-2d250a5dd2250c9bd7ada1f9a5ef32f1fcf6166a.tar.bz2
DulkirMod-2d250a5dd2250c9bd7ada1f9a5ef32f1fcf6166a.zip
bugfixing
Diffstat (limited to 'src/main/kotlin/dulkirmod/features')
-rw-r--r--src/main/kotlin/dulkirmod/features/DragonTimer.kt20
-rw-r--r--src/main/kotlin/dulkirmod/features/HideHealerFairy.kt36
-rw-r--r--src/main/kotlin/dulkirmod/features/MemoryLeakFix.kt2
3 files changed, 53 insertions, 5 deletions
diff --git a/src/main/kotlin/dulkirmod/features/DragonTimer.kt b/src/main/kotlin/dulkirmod/features/DragonTimer.kt
index df1f12f..b21574c 100644
--- a/src/main/kotlin/dulkirmod/features/DragonTimer.kt
+++ b/src/main/kotlin/dulkirmod/features/DragonTimer.kt
@@ -8,8 +8,11 @@ import net.minecraft.util.BlockPos
import net.minecraft.util.Vec3
import net.minecraft.world.World
import net.minecraftforge.client.event.RenderWorldLastEvent
+import net.minecraftforge.event.world.WorldEvent
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import java.awt.Color
+import java.util.concurrent.Executors
+import java.util.concurrent.TimeUnit
import kotlin.math.max
object DragonTimer {
@@ -28,10 +31,9 @@ object DragonTimer {
*/
fun handleNewParticle(pID: Int, x: Double, y: Double, z: Double) {
if (!Config.dragonTimer) return
+ if (!ScoreBoardUtils.isInM7) return
if (pID != 26) return
- // if (!TabListUtils.isInDungeons) return
- //TextUtils.info("ยง6particle id ${particleID} 175 = $p_175720_2_")
val particleVec = Vec3(x, y, z)
dragons.forEach {
@@ -45,6 +47,8 @@ object DragonTimer {
renderDragonBoxes()
if (!Config.dragonTimer) return
+ if (!ScoreBoardUtils.inM7()) return
+
val curTime = System.currentTimeMillis()
dragons.forEach {
if (it.spawnTime + 5000 < curTime || isDead(it.color)) return@forEach
@@ -125,5 +129,13 @@ object DragonTimer {
WorldRenderUtils.drawCustomBox(14.5, 25.0, 13.0, 15.0, 45.5, 25.0, Color(255, 85, 85, 255), 3f, phase = false)
// Orange
WorldRenderUtils.drawCustomBox(72.0, 30.0, 8.0, 20.0, 47.0, 30.0, Color(255, 170, 0, 255), 3f, phase = false)
- }
- } \ No newline at end of file
+ }
+
+ @SubscribeEvent
+ fun updateM7Check(event: WorldEvent.Load) {
+ val executor = Executors.newSingleThreadScheduledExecutor()
+ executor.schedule({
+ ScoreBoardUtils.inM7()
+ }, 10, TimeUnit.SECONDS)
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/dulkirmod/features/HideHealerFairy.kt b/src/main/kotlin/dulkirmod/features/HideHealerFairy.kt
new file mode 100644
index 0000000..43475b1
--- /dev/null
+++ b/src/main/kotlin/dulkirmod/features/HideHealerFairy.kt
@@ -0,0 +1,36 @@
+package dulkirmod.features
+
+
+import dulkirmod.DulkirMod.Companion.config
+import dulkirmod.utils.TabListUtils.isInDungeons
+import net.minecraft.entity.Entity
+import net.minecraft.entity.item.EntityArmorStand
+import net.minecraft.init.Items
+import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable
+
+object HideHealerFairy {
+ fun handle(entity: Entity, cir: CallbackInfoReturnable<Boolean>) {
+ if (!config.hideHealerFairy) return
+ if (!isInDungeons) return
+ if (entity is EntityArmorStand) {
+ if (entity.heldItem != null && entity.heldItem.item === Items.skull) {
+ val stack = entity.heldItem
+ if (stack.hasTagCompound() && stack.tagCompound.hasKey("SkullOwner")) {
+ val skullOwner = stack.tagCompound.getCompoundTag("SkullOwner")
+ if (skullOwner.hasKey("Properties")) {
+ val properties = skullOwner.getCompoundTag("Properties")
+ if (properties.hasKey("textures")) {
+ val healerFairyTexture =
+ "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvOTZjM2UzMWNmYzY2NzMzMjc1YzQyZmNmYjVkOWE0NDM0MmQ2NDNiNTVjZDE0YzljNzdkMjczYTIzNTIifX19"
+ if (healerFairyTexture == properties.getTagList("textures", 10).getCompoundTagAt(0)
+ .getString("Value")
+ ) {
+ cir.cancel()
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/src/main/kotlin/dulkirmod/features/MemoryLeakFix.kt b/src/main/kotlin/dulkirmod/features/MemoryLeakFix.kt
index a4dfc9b..dd69f24 100644
--- a/src/main/kotlin/dulkirmod/features/MemoryLeakFix.kt
+++ b/src/main/kotlin/dulkirmod/features/MemoryLeakFix.kt
@@ -7,7 +7,7 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
import net.minecraftforge.fml.common.gameevent.TickEvent
object MemoryLeakFix {
- var lastClear = System.currentTimeMillis()
+ private var lastClear = System.currentTimeMillis()
@SubscribeEvent
fun onTick(event: TickEvent.ClientTickEvent) {