summaryrefslogtreecommitdiff
path: root/src/main/java/at/lorenz/mod/misc
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/lorenz/mod/misc')
-rw-r--r--src/main/java/at/lorenz/mod/misc/CurrentPetDisplay.kt48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/main/java/at/lorenz/mod/misc/CurrentPetDisplay.kt b/src/main/java/at/lorenz/mod/misc/CurrentPetDisplay.kt
new file mode 100644
index 000000000..9159dc3cc
--- /dev/null
+++ b/src/main/java/at/lorenz/mod/misc/CurrentPetDisplay.kt
@@ -0,0 +1,48 @@
+package at.lorenz.mod.misc
+
+import at.lorenz.mod.LorenzMod
+import at.lorenz.mod.events.LorenzChatEvent
+import at.lorenz.mod.utils.GuiRender.renderString
+import at.lorenz.mod.utils.LorenzUtils.between
+import at.lorenz.mod.utils.LorenzUtils.matchRegex
+import net.minecraftforge.client.event.RenderGameOverlayEvent
+import net.minecraftforge.fml.common.eventhandler.SubscribeEvent
+
+class CurrentPetDisplay {
+
+ companion object {
+ var currentPet: String = ""
+ }
+
+ @SubscribeEvent
+ fun onChatMessage(event: LorenzChatEvent) {
+ var blocked = false
+
+ val message = event.message
+ if (message.matchRegex("§aYou summoned your §r(.*)§r§a!")) {
+ currentPet = message.between("your §r", "§r§a")
+ blocked = true
+ }
+ if (message.matchRegex("§cAutopet §eequipped your §7(.*)§e! §a§lVIEW RULE")) {
+ currentPet = message.between("] ", "§e!")
+ blocked = true
+ }
+ if (message.matchRegex("§aYou despawned your §r(.*)§r§a!")) {
+ currentPet = ""
+ blocked = true
+ }
+
+ if (blocked && LorenzMod.feature.misc.petDisplay) {
+ event.blockedReason = "pets"
+ }
+ }
+
+
+ @SubscribeEvent
+ fun renderOverlay(event: RenderGameOverlayEvent.Post) {
+ if (!LorenzMod.feature.misc.petDisplay) return
+ if (currentPet == "") return
+
+ LorenzMod.feature.misc.petDisplayPos.renderString(currentPet)
+ }
+} \ No newline at end of file