mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-05-16 12:42:40 +08:00
79e4172c47
* Fix Daily dungeon didn't display in note(笔记) -- Buggy * 123
44 lines
1.7 KiB
Java
44 lines
1.7 KiB
Java
package emu.grasscutter.server.packet.send;
|
|
|
|
import emu.grasscutter.Grasscutter;
|
|
import emu.grasscutter.data.GameData;
|
|
import emu.grasscutter.data.excels.DungeonEntryData;
|
|
import emu.grasscutter.net.packet.BasePacket;
|
|
import emu.grasscutter.net.packet.PacketOpcodes;
|
|
import emu.grasscutter.net.proto.DailyDungeonEntryInfoOuterClass;
|
|
import emu.grasscutter.net.proto.DungeonEntryInfoOuterClass;
|
|
import emu.grasscutter.net.proto.GetDailyDungeonEntryInfoRspOuterClass;
|
|
|
|
import java.util.List;
|
|
|
|
public class PacketGetDailyDungeonEntryInfoRsp extends BasePacket {
|
|
|
|
public PacketGetDailyDungeonEntryInfoRsp(Integer sceneID) {
|
|
super(PacketOpcodes.GetDailyDungeonEntryInfoRsp);
|
|
|
|
var resp= GetDailyDungeonEntryInfoRspOuterClass.GetDailyDungeonEntryInfoRsp.newBuilder();
|
|
|
|
for (var info : GameData.getDungeonEntryDatatMap().values().parallelStream().filter(d -> d.getSceneId() == sceneID).map(this::getDungonEntryInfo).toList())
|
|
resp.addDailyDungeonInfoList(info);
|
|
|
|
this.setData(resp.build());
|
|
}
|
|
|
|
private DailyDungeonEntryInfoOuterClass.DailyDungeonEntryInfo getDungonEntryInfo(DungeonEntryData data) {
|
|
var dungeonEntryId = data.getDungeonEntryId();
|
|
var id = data.getId();
|
|
|
|
//TODO: 来个爹把这块整活了吧 咚咚咚
|
|
DungeonEntryInfoOuterClass.DungeonEntryInfo dungeonEntryInfo
|
|
= DungeonEntryInfoOuterClass.DungeonEntryInfo.newBuilder().setDungeonId(130).build();
|
|
|
|
var builder = DailyDungeonEntryInfoOuterClass.DailyDungeonEntryInfo.newBuilder();
|
|
|
|
builder.setDungeonEntryId(dungeonEntryId);
|
|
builder.setDungeonEntryConfigId(id);
|
|
builder.setRecommendDungeonEntryInfo(dungeonEntryInfo);
|
|
return builder.build();
|
|
}
|
|
|
|
}
|