[fix] Proper tick event fix

This commit is contained in:
Xiaro 2021-01-04 16:30:13 -05:00
parent 63e6218100
commit 374a666236
No known key found for this signature in database
GPG Key ID: 996D265D6E155377
8 changed files with 20 additions and 39 deletions

View File

@ -1,14 +0,0 @@
package me.zeroeightsix.kami.event.events
import me.zeroeightsix.kami.event.Event
import me.zeroeightsix.kami.util.threads.safeListener
import net.minecraftforge.fml.common.gameevent.TickEvent
/**
* Similar to [TickEvent.ClientTickEvent], but with a null check
*
* @see safeListener
* @see TickEvent.ClientTickEvent
*/
@Deprecated("Use safeListener with TickEvent.ClientTickEvent instead")
class SafeTickEvent(val phase: TickEvent.Phase) : Event

View File

@ -1,7 +1,6 @@
package me.zeroeightsix.kami.gui
import me.zeroeightsix.kami.event.events.RenderOverlayEvent
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.gui.rgui.WindowComponent
import me.zeroeightsix.kami.gui.rgui.windows.ColorPicker
import me.zeroeightsix.kami.gui.rgui.windows.SettingWindow
@ -15,12 +14,12 @@ import me.zeroeightsix.kami.util.graphics.*
import me.zeroeightsix.kami.util.graphics.font.FontRenderAdapter
import me.zeroeightsix.kami.util.math.Vec2d
import me.zeroeightsix.kami.util.math.Vec2f
import me.zeroeightsix.kami.util.threads.safeListener
import net.minecraft.client.gui.GuiScreen
import net.minecraft.client.gui.ScaledResolution
import net.minecraft.client.renderer.GlStateManager
import net.minecraft.util.ResourceLocation
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.event.listener.listener
import org.lwjgl.input.Keyboard
import org.lwjgl.input.Mouse
import org.lwjgl.opengl.GL11.*
@ -85,8 +84,8 @@ abstract class AbstractKamiGui<S : SettingWindow<*>, E : Any> : GuiScreen() {
mc = Wrapper.minecraft
windowList.add(ColorPicker)
listener<SafeTickEvent> { event ->
if (event.phase != TickEvent.Phase.START) return@listener
safeListener<TickEvent.ClientTickEvent> { event ->
if (event.phase != TickEvent.Phase.START) return@safeListener
blurShader.shader?.let {
val multiplier = ClickGUI.blur * fadeMultiplier
@ -100,7 +99,7 @@ abstract class AbstractKamiGui<S : SettingWindow<*>, E : Any> : GuiScreen() {
}
}
listener<RenderOverlayEvent>(-69420) {
safeListener<RenderOverlayEvent>(-69420) {
if (!displayed.value && fadeMultiplier > 0.0f) {
drawScreen(0, 0, mc.renderPartialTicks)
}

View File

@ -1,7 +1,6 @@
package me.zeroeightsix.kami.gui.hudgui
import me.zeroeightsix.kami.event.KamiEventBus
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.gui.rgui.windows.BasicWindow
import me.zeroeightsix.kami.module.modules.client.GuiColors
import me.zeroeightsix.kami.module.modules.client.Hud
@ -10,9 +9,9 @@ import me.zeroeightsix.kami.util.graphics.RenderUtils2D
import me.zeroeightsix.kami.util.graphics.VertexHelper
import me.zeroeightsix.kami.util.math.Vec2d
import me.zeroeightsix.kami.util.math.Vec2f
import me.zeroeightsix.kami.util.threads.safeListener
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.commons.interfaces.DisplayEnum
import org.kamiblue.event.listener.listener
open class HudElement(
name: String,
@ -28,8 +27,8 @@ open class HudElement(
val settingList get() = GuiConfig.getGroupOrPut(SettingGroup.HUD_GUI.groupName).getGroupOrPut(originalName).getSettings()
init {
listener<SafeTickEvent> {
if (it.phase != TickEvent.Phase.END || !visible) return@listener
safeListener<TickEvent.ClientTickEvent> {
if (it.phase != TickEvent.Phase.END || !visible) return@safeListener
width = maxWidth
height = maxHeight
}

View File

@ -1,12 +1,11 @@
package me.zeroeightsix.kami.gui.hudgui
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.util.graphics.VertexHelper
import me.zeroeightsix.kami.util.graphics.font.FontRenderAdapter
import me.zeroeightsix.kami.util.graphics.font.TextComponent
import me.zeroeightsix.kami.util.math.Vec2d
import me.zeroeightsix.kami.util.threads.safeAsyncListener
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.event.listener.asyncListener
abstract class LabelHud(
name: String,
@ -25,8 +24,8 @@ abstract class LabelHud(
protected val displayText = TextComponent()
init {
asyncListener<SafeTickEvent> {
if (it.phase != TickEvent.Phase.END) return@asyncListener
safeAsyncListener<TickEvent.ClientTickEvent> {
if (it.phase != TickEvent.Phase.END) return@safeAsyncListener
displayText.clear()
updateText()
}

View File

@ -1,6 +1,5 @@
package me.zeroeightsix.kami.gui.hudgui.elements.client
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.gui.hudgui.HudElement
import me.zeroeightsix.kami.module.Module
import me.zeroeightsix.kami.module.ModuleManager
@ -14,11 +13,11 @@ import me.zeroeightsix.kami.util.graphics.font.FontRenderAdapter
import me.zeroeightsix.kami.util.graphics.font.HAlign
import me.zeroeightsix.kami.util.graphics.font.TextComponent
import me.zeroeightsix.kami.util.graphics.font.VAlign
import me.zeroeightsix.kami.util.threads.safeAsyncListener
import net.minecraft.client.renderer.GlStateManager
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.commons.extension.sumByFloat
import org.kamiblue.commons.interfaces.DisplayEnum
import org.kamiblue.event.listener.asyncListener
import org.lwjgl.opengl.GL11.*
import java.awt.Color
import java.util.*
@ -67,8 +66,8 @@ object ModuleList : HudElement(
.toMutableMap()
init {
asyncListener<SafeTickEvent> { event ->
if (event.phase != TickEvent.Phase.END) return@asyncListener
safeAsyncListener<TickEvent.ClientTickEvent> { event ->
if (event.phase != TickEvent.Phase.END) return@safeAsyncListener
val moduleSet = ModuleManager.getModules().toSet()

View File

@ -1,6 +1,5 @@
package me.zeroeightsix.kami.gui.hudgui.elements.combat
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.gui.hudgui.HudElement
import me.zeroeightsix.kami.setting.GuiConfig.setting
import me.zeroeightsix.kami.util.InventoryUtils
@ -11,12 +10,12 @@ import me.zeroeightsix.kami.util.graphics.VertexHelper
import me.zeroeightsix.kami.util.graphics.font.FontRenderAdapter
import me.zeroeightsix.kami.util.graphics.font.HAlign
import me.zeroeightsix.kami.util.graphics.font.VAlign
import me.zeroeightsix.kami.util.threads.safeAsyncListener
import net.minecraft.client.renderer.GlStateManager
import net.minecraft.init.Items
import net.minecraft.item.ItemStack
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.commons.utils.MathUtils
import org.kamiblue.event.listener.asyncListener
import kotlin.math.max
object Armor : HudElement(
@ -53,8 +52,8 @@ object Armor : HudElement(
)
init {
asyncListener<SafeTickEvent> { event ->
if (event.phase != TickEvent.Phase.END) return@asyncListener
safeAsyncListener<TickEvent.ClientTickEvent> { event ->
if (event.phase != TickEvent.Phase.END) return@safeAsyncListener
for ((index, item) in armorItems.withIndex()) {
armorCounts[index] = InventoryUtils.countItemAll(item)

View File

@ -1,6 +1,5 @@
package me.zeroeightsix.kami.gui.hudgui.elements.player
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.gui.hudgui.LabelHud
import me.zeroeightsix.kami.setting.GuiConfig.setting
import me.zeroeightsix.kami.util.InfoCalculator
@ -28,7 +27,7 @@ object PlayerSpeed : LabelHud(
private val speedList = ArrayDeque<Double>()
init {
listener<SafeTickEvent> {
listener<TickEvent.ClientTickEvent> {
if (it.phase == TickEvent.Phase.END) updateSpeedList()
}
}

View File

@ -1,7 +1,6 @@
package me.zeroeightsix.kami.module.modules.chat
import me.zeroeightsix.kami.event.events.PacketEvent
import me.zeroeightsix.kami.event.events.SafeTickEvent
import me.zeroeightsix.kami.module.Module
import me.zeroeightsix.kami.setting.ModuleConfig.setting
import me.zeroeightsix.kami.util.TickTimer
@ -9,7 +8,9 @@ import me.zeroeightsix.kami.util.TimeUnit
import me.zeroeightsix.kami.util.text.MessageDetection
import me.zeroeightsix.kami.util.text.MessageSendHelper
import me.zeroeightsix.kami.util.text.MessageSendHelper.sendServerMessage
import me.zeroeightsix.kami.util.threads.safeListener
import net.minecraft.network.play.server.SPacketChat
import net.minecraftforge.fml.common.gameevent.TickEvent
import org.kamiblue.event.listener.listener
@Module.Info(
@ -33,7 +34,7 @@ object AutoReply : Module() {
}
}
listener<SafeTickEvent> {
safeListener<TickEvent.ClientTickEvent> {
if (timer.tick(5L) && customMessage.value && customText.value.equals("unchanged", true)) {
MessageSendHelper.sendWarningMessage("$chatName Warning: In order to use the custom $name, please change the CustomText setting in ClickGUI")
}