diff --git a/gradlew.bat b/gradlew.bat index ac1b06f93..5eb53f8d7 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -1,89 +1,89 @@ -@rem -@rem Copyright 2015 the original author or authors. -@rem -@rem Licensed under the Apache License, Version 2.0 (the "License"); -@rem you may not use this file except in compliance with the License. -@rem You may obtain a copy of the License at -@rem -@rem https://www.apache.org/licenses/LICENSE-2.0 -@rem -@rem Unless required by applicable law or agreed to in writing, software -@rem distributed under the License is distributed on an "AS IS" BASIS, -@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -@rem See the License for the specific language governing permissions and -@rem limitations under the License. -@rem - -@if "%DEBUG%" == "" @echo off -@rem ########################################################################## -@rem -@rem Gradle startup script for Windows -@rem -@rem ########################################################################## - -@rem Set local scope for the variables with windows NT shell -if "%OS%"=="Windows_NT" setlocal - -set DIRNAME=%~dp0 -if "%DIRNAME%" == "" set DIRNAME=. -set APP_BASE_NAME=%~n0 -set APP_HOME=%DIRNAME% - -@rem Resolve any "." and ".." in APP_HOME to make it shorter. -for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi - -@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" - -@rem Find java.exe -if defined JAVA_HOME goto findJavaFromJavaHome - -set JAVA_EXE=java.exe -%JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto execute - -echo. -echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:findJavaFromJavaHome -set JAVA_HOME=%JAVA_HOME:"=% -set JAVA_EXE=%JAVA_HOME%/bin/java.exe - -if exist "%JAVA_EXE%" goto execute - -echo. -echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% -echo. -echo Please set the JAVA_HOME variable in your environment to match the -echo location of your Java installation. - -goto fail - -:execute -@rem Setup the command line - -set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar - - -@rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* - -:end -@rem End local scope for the variables with windows NT shell -if "%ERRORLEVEL%"=="0" goto mainEnd - -:fail -rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of -rem the _cmd.exe /c_ return code! -if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 -exit /b 1 - -:mainEnd -if "%OS%"=="Windows_NT" endlocal - -:omega +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx4G" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerChangeGameTimeReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerChangeGameTimeReq.java index 34954d4ea..2866440b0 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerChangeGameTimeReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerChangeGameTimeReq.java @@ -15,6 +15,6 @@ public class HandlerChangeGameTimeReq extends PacketHandler { var req = ChangeGameTimeReq.parseFrom(payload); session.getPlayer().getWorld().changeTime(req.getGameTime(), req.getExtraDays()); - session.getPlayer().sendPacket(new PacketChangeGameTimeRsp(session.getPlayer())); + session.getPlayer().sendPacket(new PacketChangeGameTimeRsp(session.getPlayer(), req.getExtraDays())); } } diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerEvtDoSkillSuccNotify.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerEvtDoSkillSuccNotify.java index b1c13d419..de5017b40 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerEvtDoSkillSuccNotify.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerEvtDoSkillSuccNotify.java @@ -24,6 +24,6 @@ public class HandlerEvtDoSkillSuccNotify extends PacketHandler { // Handle skill notify in other managers. player.getStaminaManager().handleEvtDoSkillSuccNotify(session, skillId, casterId); player.getEnergyManager().handleEvtDoSkillSuccNotify(session, skillId, casterId); - player.getQuestManager().queueEvent(QuestContent.QUEST_CONTENT_SKILL, skillId, 0); + player.getQuestManager().queueEvent(QuestContent.QUEST_CONTENT_SKILL, skillId); } } diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerNpcTalkReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerNpcTalkReq.java index 64928e8b2..c5c02289f 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerNpcTalkReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerNpcTalkReq.java @@ -3,6 +3,7 @@ package emu.grasscutter.server.packet.recv; import emu.grasscutter.data.GameData; import emu.grasscutter.data.binout.MainQuestData; import emu.grasscutter.data.binout.MainQuestData.TalkData; +import emu.grasscutter.game.quest.enums.QuestCond; import emu.grasscutter.game.quest.enums.QuestContent; import emu.grasscutter.net.packet.Opcodes; import emu.grasscutter.net.packet.PacketHandler; @@ -20,7 +21,7 @@ public class HandlerNpcTalkReq extends PacketHandler { // Check if mainQuest exists // remove last 2 digits to get a mainQuestId int talkId = req.getTalkId(); - int mainQuestId = talkId / 100; + int mainQuestId = GameData.getQuestTalkMap().getOrDefault(talkId, talkId / 100); MainQuestData mainQuestData = GameData.getMainQuestDataMap().get(mainQuestId); if (mainQuestData != null) { @@ -36,30 +37,17 @@ public class HandlerNpcTalkReq extends PacketHandler { } // Add to the list of done talks for this quest. - var mainQuest = session.getPlayer().getQuestManager().getMainQuestById(mainQuestId); + var questManager = session.getPlayer().getQuestManager(); + var mainQuest = questManager.getMainQuestByTalkId(talkId); if (mainQuest != null) { - session - .getPlayer() - .getQuestManager() - .getMainQuestById(mainQuestId) - .getTalks() - .put(talkId, talkForQuest); + mainQuest.getTalks().put(talkId, talkForQuest); } // Fire quest triggers. - session - .getPlayer() - .getQuestManager() - .queueEvent( - QuestContent.QUEST_CONTENT_COMPLETE_ANY_TALK, String.valueOf(req.getTalkId()), 0, 0); - session - .getPlayer() - .getQuestManager() - .queueEvent(QuestContent.QUEST_CONTENT_COMPLETE_TALK, req.getTalkId(), 0); - session - .getPlayer() - .getQuestManager() - .queueEvent(QuestContent.QUEST_CONTENT_FINISH_PLOT, req.getTalkId(), 0); + questManager.queueEvent(QuestContent.QUEST_CONTENT_COMPLETE_ANY_TALK, talkId, 0, 0); + questManager.queueEvent(QuestContent.QUEST_CONTENT_COMPLETE_TALK, talkId, 0); + questManager.queueEvent(QuestContent.QUEST_CONTENT_FINISH_PLOT, talkId, 0); + questManager.queueEvent(QuestCond.QUEST_COND_COMPLETE_TALK, talkId, 0); } session.send(new PacketNpcTalkRsp(req.getNpcEntityId(), req.getTalkId(), req.getEntityId())); diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerEnterDungeonReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerEnterDungeonReq.java index 427451628..5f4056d04 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerEnterDungeonReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerEnterDungeonReq.java @@ -1,22 +1,26 @@ -package emu.grasscutter.server.packet.recv; - -import emu.grasscutter.net.packet.Opcodes; -import emu.grasscutter.net.packet.PacketHandler; -import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.net.proto.PlayerEnterDungeonReqOuterClass.PlayerEnterDungeonReq; -import emu.grasscutter.server.game.GameSession; - -@Opcodes(PacketOpcodes.PlayerEnterDungeonReq) -public class HandlerPlayerEnterDungeonReq extends PacketHandler { - - @Override - public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { - // Auto template - PlayerEnterDungeonReq req = PlayerEnterDungeonReq.parseFrom(payload); - - session - .getServer() - .getDungeonSystem() - .enterDungeon(session.getPlayer(), req.getPointId(), req.getDungeonId()); - } -} +package emu.grasscutter.server.packet.recv; + +import emu.grasscutter.net.packet.Opcodes; +import emu.grasscutter.net.packet.PacketHandler; +import emu.grasscutter.net.packet.PacketOpcodes; +import emu.grasscutter.net.proto.PlayerEnterDungeonReqOuterClass.PlayerEnterDungeonReq; +import emu.grasscutter.server.game.GameSession; +import emu.grasscutter.server.packet.send.PacketPlayerEnterDungeonRsp; + +@Opcodes(PacketOpcodes.PlayerEnterDungeonReq) +public class HandlerPlayerEnterDungeonReq extends PacketHandler { + + @Override + public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { + // Auto template + PlayerEnterDungeonReq req = PlayerEnterDungeonReq.parseFrom(payload); + + var success = session + .getServer() + .getDungeonSystem() + .enterDungeon(session.getPlayer(), req.getPointId(), req.getDungeonId()); + session + .getPlayer() + .sendPacket(new PacketPlayerEnterDungeonRsp(req.getPointId(), req.getDungeonId(), success)); + } +} diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerQuitDungeonReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerQuitDungeonReq.java index 3337c4d25..7a4594bd7 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerQuitDungeonReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerQuitDungeonReq.java @@ -1,15 +1,17 @@ -package emu.grasscutter.server.packet.recv; - -import emu.grasscutter.net.packet.Opcodes; -import emu.grasscutter.net.packet.PacketHandler; -import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.server.game.GameSession; - -@Opcodes(PacketOpcodes.PlayerQuitDungeonReq) -public class HandlerPlayerQuitDungeonReq extends PacketHandler { - - @Override - public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { - session.getPlayer().getServer().getDungeonSystem().exitDungeon(session.getPlayer()); - } -} +package emu.grasscutter.server.packet.recv; + +import emu.grasscutter.net.packet.BasePacket; +import emu.grasscutter.net.packet.Opcodes; +import emu.grasscutter.net.packet.PacketHandler; +import emu.grasscutter.net.packet.PacketOpcodes; +import emu.grasscutter.server.game.GameSession; + +@Opcodes(PacketOpcodes.PlayerQuitDungeonReq) +public class HandlerPlayerQuitDungeonReq extends PacketHandler { + + @Override + public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { + session.getPlayer().getServer().getDungeonSystem().exitDungeon(session.getPlayer()); + session.getPlayer().sendPacket(new BasePacket(PacketOpcodes.PlayerQuitDungeonRsp)); + } +} diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerSetPauseReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerSetPauseReq.java index 4a018f134..9f831fb2c 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerSetPauseReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerPlayerSetPauseReq.java @@ -1,27 +1,27 @@ -package emu.grasscutter.server.packet.recv; - -import emu.grasscutter.net.packet.Opcodes; -import emu.grasscutter.net.packet.PacketHandler; -import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.net.proto.PacketHeadOuterClass.PacketHead; -import emu.grasscutter.net.proto.PlayerSetPauseReqOuterClass.PlayerSetPauseReq; -import emu.grasscutter.server.game.GameSession; -import emu.grasscutter.server.packet.send.PacketPlayerSetPauseRsp; -import emu.grasscutter.server.packet.send.PacketPlayerTimeNotify; -import emu.grasscutter.server.packet.send.PacketSceneTimeNotify; - -@Opcodes(PacketOpcodes.PlayerSetPauseReq) -public class HandlerPlayerSetPauseReq extends PacketHandler { - - @Override - public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { - PacketHead head = PacketHead.parseFrom(header); - PlayerSetPauseReq req = PlayerSetPauseReq.parseFrom(payload); - - session.send(new PacketPlayerSetPauseRsp(head.getClientSequenceId())); - session.getPlayer().setPaused(req.getIsPaused()); - - session.send(new PacketPlayerTimeNotify(session.getPlayer())); - session.send(new PacketSceneTimeNotify(session.getPlayer())); - } -} +package emu.grasscutter.server.packet.recv; + +import emu.grasscutter.net.packet.Opcodes; +import emu.grasscutter.net.packet.PacketHandler; +import emu.grasscutter.net.packet.PacketOpcodes; +import emu.grasscutter.net.proto.PacketHeadOuterClass.PacketHead; +import emu.grasscutter.net.proto.PlayerSetPauseReqOuterClass.PlayerSetPauseReq; +import emu.grasscutter.server.game.GameSession; +import emu.grasscutter.server.packet.send.PacketPlayerSetPauseRsp; +import emu.grasscutter.server.packet.send.PacketPlayerTimeNotify; +import emu.grasscutter.server.packet.send.PacketSceneTimeNotify; + +@Opcodes(PacketOpcodes.PlayerSetPauseReq) +public class HandlerPlayerSetPauseReq extends PacketHandler { + + @Override + public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { + PacketHead head = PacketHead.parseFrom(header); + PlayerSetPauseReq req = PlayerSetPauseReq.parseFrom(payload); + + session.send(new PacketPlayerSetPauseRsp(head.getClientSequenceId())); + session.getPlayer().setPaused(req.getIsPaused()); + + session.send(new PacketPlayerTimeNotify(session.getPlayer())); + session.send(new PacketSceneTimeNotify(session.getPlayer())); + } +} diff --git a/src/main/java/emu/grasscutter/server/packet/recv/HandlerUnlockPersonalLineReq.java b/src/main/java/emu/grasscutter/server/packet/recv/HandlerUnlockPersonalLineReq.java index 4e4aa384d..f98421cef 100644 --- a/src/main/java/emu/grasscutter/server/packet/recv/HandlerUnlockPersonalLineReq.java +++ b/src/main/java/emu/grasscutter/server/packet/recv/HandlerUnlockPersonalLineReq.java @@ -1,27 +1,32 @@ -package emu.grasscutter.server.packet.recv; - -import emu.grasscutter.data.GameData; -import emu.grasscutter.net.packet.Opcodes; -import emu.grasscutter.net.packet.PacketHandler; -import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.net.proto.UnlockPersonalLineReqOuterClass; -import emu.grasscutter.server.game.GameSession; -import emu.grasscutter.server.packet.send.PacketUnlockPersonalLineRsp; - -@Opcodes(PacketOpcodes.UnlockPersonalLineReq) -public class HandlerUnlockPersonalLineReq extends PacketHandler { - - @Override - public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { - var req = UnlockPersonalLineReqOuterClass.UnlockPersonalLineReq.parseFrom(payload); - var data = GameData.getPersonalLineDataMap().get(req.getPersonalLineId()); - if (data == null) { - return; - } - - session.getPlayer().getQuestManager().addQuest(data.getStartQuestId()); - session.getPlayer().useLegendaryKey(1); - - session.send(new PacketUnlockPersonalLineRsp(data.getId(), 1, data.getChapterId())); - } -} +package emu.grasscutter.server.packet.recv; + +import emu.grasscutter.data.GameData; +import emu.grasscutter.net.packet.Opcodes; +import emu.grasscutter.net.packet.PacketHandler; +import emu.grasscutter.net.packet.PacketOpcodes; +import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode; +import emu.grasscutter.net.proto.UnlockPersonalLineReqOuterClass.UnlockPersonalLineReq; +import emu.grasscutter.server.game.GameSession; +import emu.grasscutter.server.packet.send.PacketUnlockPersonalLineRsp; + +@Opcodes(PacketOpcodes.UnlockPersonalLineReq) +public class HandlerUnlockPersonalLineReq extends PacketHandler { + + @Override + public void handle(GameSession session, byte[] header, byte[] payload) throws Exception { + var req = UnlockPersonalLineReq.parseFrom(payload); + var data = GameData.getPersonalLineDataMap().get(req.getPersonalLineId()); + if (data == null) { + session.send( + new PacketUnlockPersonalLineRsp( + req.getPersonalLineId(), Retcode.RET_FAIL)); + return; + } + + session.getPlayer().getQuestManager().addQuest(data.getStartQuestId()); + session.getPlayer().addPersonalLine(data.getId()); + session.getPlayer().useLegendaryKey(1); + + session.send(new PacketUnlockPersonalLineRsp(data.getId(), 1, data.getChapterId())); + } +} diff --git a/src/main/java/emu/grasscutter/server/packet/send/PacketAvatarFightPropUpdateNotify.java b/src/main/java/emu/grasscutter/server/packet/send/PacketAvatarFightPropUpdateNotify.java index f33158502..11bb0d8ab 100644 --- a/src/main/java/emu/grasscutter/server/packet/send/PacketAvatarFightPropUpdateNotify.java +++ b/src/main/java/emu/grasscutter/server/packet/send/PacketAvatarFightPropUpdateNotify.java @@ -1,22 +1,36 @@ -package emu.grasscutter.server.packet.send; - -import emu.grasscutter.game.avatar.Avatar; -import emu.grasscutter.game.props.FightProperty; -import emu.grasscutter.net.packet.BasePacket; -import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.net.proto.AvatarFightPropUpdateNotifyOuterClass.AvatarFightPropUpdateNotify; - -public class PacketAvatarFightPropUpdateNotify extends BasePacket { - - public PacketAvatarFightPropUpdateNotify(Avatar avatar, FightProperty prop) { - super(PacketOpcodes.AvatarFightPropUpdateNotify); - - AvatarFightPropUpdateNotify proto = - AvatarFightPropUpdateNotify.newBuilder() - .setAvatarGuid(avatar.getGuid()) - .putFightPropMap(prop.getId(), avatar.getFightProperty(prop)) - .build(); - - this.setData(proto); - } -} +package emu.grasscutter.server.packet.send; + +import emu.grasscutter.game.avatar.Avatar; +import emu.grasscutter.game.props.FightProperty; +import emu.grasscutter.net.packet.BasePacket; +import emu.grasscutter.net.packet.PacketOpcodes; +import emu.grasscutter.net.proto.AvatarFightPropUpdateNotifyOuterClass.AvatarFightPropUpdateNotify; + +import java.util.Map; + +public class PacketAvatarFightPropUpdateNotify extends BasePacket { + + public PacketAvatarFightPropUpdateNotify(Avatar avatar, FightProperty prop) { + super(PacketOpcodes.AvatarFightPropUpdateNotify); + + AvatarFightPropUpdateNotify proto = + AvatarFightPropUpdateNotify.newBuilder() + .setAvatarGuid(avatar.getGuid()) + .putFightPropMap(prop.getId(), avatar.getFightProperty(prop)) + .build(); + + this.setData(proto); + } + + public PacketAvatarFightPropUpdateNotify(Avatar avatar, Map propUpdateList) { + super(PacketOpcodes.AvatarFightPropUpdateNotify); + + AvatarFightPropUpdateNotify proto = + AvatarFightPropUpdateNotify.newBuilder() + .setAvatarGuid(avatar.getGuid()) + .putAllFightPropMap(propUpdateList) + .build(); + + this.setData(proto); + } +} diff --git a/src/main/java/emu/grasscutter/server/packet/send/PacketChangeGameTimeRsp.java b/src/main/java/emu/grasscutter/server/packet/send/PacketChangeGameTimeRsp.java index 62766db57..8c69337cb 100644 --- a/src/main/java/emu/grasscutter/server/packet/send/PacketChangeGameTimeRsp.java +++ b/src/main/java/emu/grasscutter/server/packet/send/PacketChangeGameTimeRsp.java @@ -7,11 +7,14 @@ import emu.grasscutter.net.proto.ChangeGameTimeRspOuterClass.ChangeGameTimeRsp; public class PacketChangeGameTimeRsp extends BasePacket { - public PacketChangeGameTimeRsp(Player player) { + public PacketChangeGameTimeRsp(Player player, int extraDays) { super(PacketOpcodes.ChangeGameTimeRsp); ChangeGameTimeRsp proto = - ChangeGameTimeRsp.newBuilder().setCurGameTime(player.getWorld().getGameTime()).build(); + ChangeGameTimeRsp.newBuilder() + .setCurGameTime(player.getWorld().getGameTime()) + .setExtraDays(extraDays) + .build(); this.setData(proto); } diff --git a/src/main/java/emu/grasscutter/server/packet/send/PacketPlayerSetPauseRsp.java b/src/main/java/emu/grasscutter/server/packet/send/PacketPlayerSetPauseRsp.java index 114a0bc3d..844c1496e 100644 --- a/src/main/java/emu/grasscutter/server/packet/send/PacketPlayerSetPauseRsp.java +++ b/src/main/java/emu/grasscutter/server/packet/send/PacketPlayerSetPauseRsp.java @@ -2,8 +2,6 @@ package emu.grasscutter.server.packet.send; import emu.grasscutter.net.packet.BasePacket; import emu.grasscutter.net.packet.PacketOpcodes; -import emu.grasscutter.net.proto.PlayerSetPauseRspOuterClass.PlayerSetPauseRsp; -import emu.grasscutter.net.proto.RetcodeOuterClass.Retcode; public class PacketPlayerSetPauseRsp extends BasePacket {