From b302c2b73b69be265f6c62de4212c1d6c432c0bc Mon Sep 17 00:00:00 2001 From: SpikeHD Date: Fri, 14 Apr 2023 23:35:15 -0700 Subject: [PATCH 1/3] forever engraved (#2120) --- gradle.properties | 1 + 1 file changed, 1 insertion(+) diff --git a/gradle.properties b/gradle.properties index e9157af4d..af86da4e1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1 +1,2 @@ org.gradle.jvmargs=-Xmx1024m +# spikehd was here :) From abcabc986135e07a5134285f4949dd3a5eab21fd Mon Sep 17 00:00:00 2001 From: Moistcrafter <63527712+Moistcrafter@users.noreply.github.com> Date: Sun, 16 Apr 2023 22:08:08 -0700 Subject: [PATCH 2/3] Parse dungeon entry info req from payload instead of player scene (#2122) --- .../java/emu/grasscutter/game/dungeons/DungeonSystem.java | 4 ++-- .../server/packet/recv/HandlerDungeonEntryInfoReq.java | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/emu/grasscutter/game/dungeons/DungeonSystem.java b/src/main/java/emu/grasscutter/game/dungeons/DungeonSystem.java index 4a74a65ba..d697f2a72 100644 --- a/src/main/java/emu/grasscutter/game/dungeons/DungeonSystem.java +++ b/src/main/java/emu/grasscutter/game/dungeons/DungeonSystem.java @@ -26,8 +26,8 @@ public class DungeonSystem extends BaseGameSystem { super(server); } - public void getEntryInfo(Player player, int pointId) { - ScenePointEntry entry = GameData.getScenePointEntryById(player.getScene().getId(), pointId); + public void getEntryInfo(Player player, int pointId, int sceneId) { + ScenePointEntry entry = GameData.getScenePointEntryById(sceneId, pointId); if (entry == null) { // Error diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerDungeonEntryInfoReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerDungeonEntryInfoReq.java index 34ad24be7..93e696aa4 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerDungeonEntryInfoReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerDungeonEntryInfoReq.java @@ -13,7 +13,7 @@ public class HandlerDungeonEntryInfoReq extends PacketHandler { public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { DungeonEntryInfoReq req = DungeonEntryInfoReq.parseFrom(payload); - session.getServer().getDungeonSystem().getEntryInfo(session.getPlayer(), req.getPointId()); + session.getServer().getDungeonSystem().getEntryInfo(session.getPlayer(), req.getPointId(), req.getSceneId()); } } From 8c6b166a42dad3c0d57771c93f921284c4812611 Mon Sep 17 00:00:00 2001 From: FlourishingWorld <31504849+FlourishingWorld@users.noreply.github.com> Date: Wed, 19 Apr 2023 03:19:34 +0800 Subject: [PATCH 3/3] fix co-op mode avatar animation interrupt (#2124) --- .../server/packet/recv/HandlerCombatInvocationsNotify.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerCombatInvocationsNotify.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerCombatInvocationsNotify.java index 80dcf9849..d5b66d63f 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerCombatInvocationsNotify.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerCombatInvocationsNotify.java @@ -89,8 +89,8 @@ public class HandlerCombatInvocationsNotify extends PacketHandler { } } - // MOTION_STATE_NOTIFY = Dont send to other players - if (motionState == MotionState.MOTION_STATE_NOTIFY) { + // as long as one of these two packets be forwarded to client, the animation of avatar will be interrupted + if (motionState == MotionState.MOTION_STATE_NOTIFY || motionState == MotionState.MOTION_STATE_FIGHT) { continue; } } @@ -146,7 +146,7 @@ public class HandlerCombatInvocationsNotify extends PacketHandler { } if (damageFactor > 0) { Grasscutter.getLogger().debug(currentHP + "/" + maxHP + "\tLandingSpeed: " + cachedLandingSpeed + - "\tDamageFactor: " + damageFactor + "\tDamage: " + damage + "\tNewHP: " + newHP); + "\tDamageFactor: " + damageFactor + "\tDamage: " + damage + "\tNewHP: " + newHP); } else { Grasscutter.getLogger().trace(currentHP + "/" + maxHP + "\tLandingSpeed: 0\tNo damage"); }