From 8145ab4db3495caac537e1e01680ad623953f81a Mon Sep 17 00:00:00 2001 From: Light_Quanta Date: Tue, 21 May 2024 17:56:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=8F=90=E7=A4=BA=E5=85=A5?= =?UTF-8?q?=E5=9C=BA=E6=95=88=E6=9E=9C=EF=BC=8C=E4=B8=BA=E6=B6=88=E5=A4=B1?= =?UTF-8?q?=E6=95=88=E6=9E=9C=E5=A2=9E=E5=8A=A0=E5=8A=A8=E7=94=BB=E6=9B=B2?= =?UTF-8?q?=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../target/client/screens/KillMessageOverlay.java | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/main/java/net/mcreator/target/client/screens/KillMessageOverlay.java b/src/main/java/net/mcreator/target/client/screens/KillMessageOverlay.java index 71892c886..a719b8fef 100644 --- a/src/main/java/net/mcreator/target/client/screens/KillMessageOverlay.java +++ b/src/main/java/net/mcreator/target/client/screens/KillMessageOverlay.java @@ -92,13 +92,17 @@ public class KillMessageOverlay { ); // TODO 实现图标半透明渲染 - // TODO 实现入场效果 - // TODO 实现非线性动画 + + // 入场效果 + if (record.tick < 3) { + gui.pose().translate((3 - record.tick - event.getPartialTick()) * 33, 0, 0); + } + // 4s后开始消失 if (record.tick >= 80) { - gui.pose().translate((-80 + record.tick + event.getPartialTick()) * 5, 0, 0); - // 时间越久图片越透明 - gui.setColor(1, 1, 1, (100 - (-80 + record.tick + event.getPartialTick()) * 5f) / 100f); + double rate = Math.pow((record.tick + event.getPartialTick() - 80) / 20, 5); + gui.pose().translate(rate * 100, 0, 0); + gui.setColor(1, 1, 1, (float) (1 - rate)); } // 击杀提示是右对齐的,这里从右向左渲染 @@ -202,6 +206,7 @@ public class KillMessageOverlay { RenderSystem.depthMask(true); RenderSystem.enableDepthTest(); + gui.setColor(1, 1, 1, 1); gui.pose().popPose(); }