Copy some files from Grasscutter-Quests

NOT completely finished, nor is it completely done. Protocol issues remain! (including lack of packet IDs)
This commit is contained in:
KingRainbow44
2023-04-01 18:06:30 -04:00
Unverified
parent 262ee38ded
commit daa51e53b7
381 changed files with 10284 additions and 9149 deletions
@@ -1,27 +1,26 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketQuestDestroyEntityRsp;
import lombok.val;
import emu.grasscutter.net.proto.QuestDestroyEntityReqOuterClass.QuestDestroyEntityReq;
@Opcodes(PacketOpcodes.QuestDestroyEntityReq)
public class HandlerQuestDestroyEntityReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
val req = QuestDestroyEntityReq.parseFrom(payload);
val scene = session.getPlayer().getWorld().getSceneById(req.getSceneId());
val entity = scene.getEntityById(req.getEntityId());
if(entity!=null){
scene.removeEntity(entity);
}
session.send(new PacketQuestDestroyEntityRsp(entity!=null, req));
}
}
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.QuestDestroyEntityReqOuterClass.QuestDestroyEntityReq;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketQuestDestroyEntityRsp;
import lombok.val;
@Opcodes(PacketOpcodes.QuestDestroyEntityReq)
public class HandlerQuestDestroyEntityReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
val req = QuestDestroyEntityReq.parseFrom(payload);
val scene = session.getPlayer().getWorld().getSceneById(req.getSceneId());
val entity = scene.getEntityById(req.getEntityId());
if (entity != null) {
scene.removeEntity(entity);
}
session.send(new PacketQuestDestroyEntityRsp(entity != null, req));
}
}