From dfb6935b7b9e49ca0fe9b2235efdf4ed50ffe67c Mon Sep 17 00:00:00 2001 From: Skye Date: Sun, 14 May 2023 21:47:21 +0900 Subject: [PATCH] feat: error handling --- .../skye/e4mc_minecraft/E4mcRelayHandler.kt | 20 +++++++++++++++++++ .../assets/e4mc_quilt/lang/en_us.json | 3 ++- .../assets/e4mc_quilt/lang/ko_kr.json | 3 ++- 3 files changed, 24 insertions(+), 2 deletions(-) diff --git a/src/main/kotlin/vg/skye/e4mc_minecraft/E4mcRelayHandler.kt b/src/main/kotlin/vg/skye/e4mc_minecraft/E4mcRelayHandler.kt index ee3c15e..716b812 100644 --- a/src/main/kotlin/vg/skye/e4mc_minecraft/E4mcRelayHandler.kt +++ b/src/main/kotlin/vg/skye/e4mc_minecraft/E4mcRelayHandler.kt @@ -86,6 +86,26 @@ class E4mcRelayHandler: WebSocketClient(URI(System.getProperty("vg.skye.e4mc_min override fun onError(ex: java.lang.Exception) { ex.printStackTrace() + //#if FABRIC==1 + val isClient = FabricLoader.getInstance().environmentType.equals(EnvType.CLIENT) + //#else + //$$ val isClient = FMLLoader.getDist().isClient + //#endif + if (isClient) { + try { + MinecraftClient.getInstance().inGameHud.chatHud.addMessage( + //#if MC>=11900 + Text.translatable("text.e4mc_minecraft.error") + //#elseif FABRIC==1 + //$$ TranslatableText("text.e4mc_minecraft.error") + //#else + //$$ TranslatableComponent("text.e4mc_minecraft.error") + //#endif + ) + } catch (e: Exception) { + e.printStackTrace() + } + } } private fun handleDomainAssigned(json: JsonObject) { diff --git a/src/main/resources/assets/e4mc_quilt/lang/en_us.json b/src/main/resources/assets/e4mc_quilt/lang/en_us.json index 84e4747..263159a 100644 --- a/src/main/resources/assets/e4mc_quilt/lang/en_us.json +++ b/src/main/resources/assets/e4mc_quilt/lang/en_us.json @@ -2,5 +2,6 @@ "text.e4mc_minecraft.domainAssigned": "Local game hosted on domain [%s]", "text.e4mc_minecraft.closeServer": "Local game no longer publicly hosted", "text.e4mc_minecraft.serverAlreadyClosed": "Local game not publicly hosted", - "text.e4mc_minecraft.clickToStop": " (Click here to stop)" + "text.e4mc_minecraft.clickToStop": " (Click here to stop)", + "text.e4mc_minecraft.error": "An error occurred in e4mc" } diff --git a/src/main/resources/assets/e4mc_quilt/lang/ko_kr.json b/src/main/resources/assets/e4mc_quilt/lang/ko_kr.json index 85b2264..59ca600 100644 --- a/src/main/resources/assets/e4mc_quilt/lang/ko_kr.json +++ b/src/main/resources/assets/e4mc_quilt/lang/ko_kr.json @@ -2,5 +2,6 @@ "text.e4mc_minecraft.domainAssigned": "로컬 게임을 도메인 [%s]에서 호스트합니다", "text.e4mc_minecraft.closeServer": "로컬 게임이 더이상 공개되지 않습니다", "text.e4mc_minecraft.serverAlreadyClosed": "로컬 게임이 이미 공개중이 아닙니다", - "text.e4mc_minecraft.clickToStop": " (멉추려면 여기를 클릭하세요)" + "text.e4mc_minecraft.clickToStop": " (멉추려면 여기를 클릭하세요)", + "text.e4mc_minecraft.error": "e4mc에서 오류가 발생했습니다." } \ No newline at end of file