mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2025-12-23 04:15:49 +01:00
Major questing improvements
This commit is contained in:
@@ -7,24 +7,24 @@ import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.QuestProgressUpdateNotifyOuterClass.QuestProgressUpdateNotify;
|
||||
|
||||
public class PacketQuestProgressUpdateNotify extends BasePacket {
|
||||
|
||||
|
||||
public PacketQuestProgressUpdateNotify(GameQuest quest) {
|
||||
super(PacketOpcodes.QuestProgressUpdateNotify);
|
||||
|
||||
QuestProgressUpdateNotify.Builder proto = QuestProgressUpdateNotify.newBuilder().setQuestId(quest.getQuestId());
|
||||
|
||||
|
||||
QuestProgressUpdateNotify.Builder proto = QuestProgressUpdateNotify.newBuilder().setQuestId(quest.getSubQuestId());
|
||||
|
||||
if (quest.getFinishProgressList() != null) {
|
||||
for (int i : quest.getFinishProgressList()) {
|
||||
proto.addFinishProgressList(i);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (quest.getFailProgressList() != null) {
|
||||
for (int i : quest.getFailProgressList()) {
|
||||
proto.addFailProgressList(i);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
package emu.grasscutter.server.packet.send;
|
||||
|
||||
import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.Opcodes;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.QuestUpdateQuestVarReqOuterClass;
|
||||
import emu.grasscutter.net.proto.QuestUpdateQuestVarRspOuterClass;
|
||||
|
||||
@Opcodes(PacketOpcodes.QuestUpdateQuestVarReq)
|
||||
public class PacketQuestUpdateQuestVarRsp extends BasePacket {
|
||||
|
||||
|
||||
public PacketQuestUpdateQuestVarRsp(int questId) {
|
||||
super(PacketOpcodes.QuestUpdateQuestVarRsp);
|
||||
var rsp = QuestUpdateQuestVarRspOuterClass.QuestUpdateQuestVarRsp.newBuilder()
|
||||
.setQuestId(questId).build();
|
||||
this.setData(rsp);
|
||||
}
|
||||
}
|
||||
@@ -6,8 +6,11 @@ import emu.grasscutter.net.packet.BasePacket;
|
||||
import emu.grasscutter.net.packet.PacketOpcodes;
|
||||
import emu.grasscutter.net.proto.ServerCondMeetQuestListUpdateNotifyOuterClass.ServerCondMeetQuestListUpdateNotify;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
public class PacketServerCondMeetQuestListUpdateNotify extends BasePacket {
|
||||
|
||||
|
||||
public PacketServerCondMeetQuestListUpdateNotify(Player player) {
|
||||
super(PacketOpcodes.ServerCondMeetQuestListUpdateNotify);
|
||||
|
||||
@@ -23,13 +26,24 @@ public class PacketServerCondMeetQuestListUpdateNotify extends BasePacket {
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketServerCondMeetQuestListUpdateNotify(GameQuest quest) {
|
||||
|
||||
public PacketServerCondMeetQuestListUpdateNotify(List<GameQuest> quests) {
|
||||
super(PacketOpcodes.ServerCondMeetQuestListUpdateNotify);
|
||||
|
||||
ServerCondMeetQuestListUpdateNotify proto = ServerCondMeetQuestListUpdateNotify.newBuilder()
|
||||
//.addAddQuestIdList(quest.getQuestId())
|
||||
.build();
|
||||
ServerCondMeetQuestListUpdateNotify.Builder proto = ServerCondMeetQuestListUpdateNotify.newBuilder();
|
||||
for (GameQuest quest : quests) {
|
||||
proto.addAddQuestIdList(quest.getSubQuestId());
|
||||
}
|
||||
proto.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
public PacketServerCondMeetQuestListUpdateNotify() {
|
||||
super(PacketOpcodes.ServerCondMeetQuestListUpdateNotify);
|
||||
|
||||
ServerCondMeetQuestListUpdateNotify.Builder proto = ServerCondMeetQuestListUpdateNotify.newBuilder();
|
||||
proto.build();
|
||||
|
||||
this.setData(proto);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user