Implement event screen

This commit is contained in:
Melledy
2023-11-23 02:29:00 -08:00
parent 65ffd2ba8b
commit 9505f9e37f
6 changed files with 951 additions and 0 deletions

View File

@@ -0,0 +1,503 @@
// Code generated by protocol buffer compiler. Do not edit!
package emu.lunarcore.proto;
import java.io.IOException;
import us.hebi.quickbuf.FieldName;
import us.hebi.quickbuf.InvalidProtocolBufferException;
import us.hebi.quickbuf.JsonSink;
import us.hebi.quickbuf.JsonSource;
import us.hebi.quickbuf.MessageFactory;
import us.hebi.quickbuf.ProtoMessage;
import us.hebi.quickbuf.ProtoSink;
import us.hebi.quickbuf.ProtoSource;
public final class ActivityScheduleInfoOuterClass {
/**
* Protobuf type {@code ActivityScheduleInfo}
*/
public static final class ActivityScheduleInfo extends ProtoMessage<ActivityScheduleInfo> implements Cloneable {
private static final long serialVersionUID = 0L;
/**
* <code>optional int64 begin_time = 1;</code>
*/
private long beginTime;
/**
* <code>optional int64 end_time = 3;</code>
*/
private long endTime;
/**
* <code>optional uint32 activity_id = 11;</code>
*/
private int activityId;
/**
* <code>optional uint32 module_id = 13;</code>
*/
private int moduleId;
private ActivityScheduleInfo() {
}
/**
* @return a new empty instance of {@code ActivityScheduleInfo}
*/
public static ActivityScheduleInfo newInstance() {
return new ActivityScheduleInfo();
}
/**
* <code>optional int64 begin_time = 1;</code>
* @return whether the beginTime field is set
*/
public boolean hasBeginTime() {
return (bitField0_ & 0x00000001) != 0;
}
/**
* <code>optional int64 begin_time = 1;</code>
* @return this
*/
public ActivityScheduleInfo clearBeginTime() {
bitField0_ &= ~0x00000001;
beginTime = 0L;
return this;
}
/**
* <code>optional int64 begin_time = 1;</code>
* @return the beginTime
*/
public long getBeginTime() {
return beginTime;
}
/**
* <code>optional int64 begin_time = 1;</code>
* @param value the beginTime to set
* @return this
*/
public ActivityScheduleInfo setBeginTime(final long value) {
bitField0_ |= 0x00000001;
beginTime = value;
return this;
}
/**
* <code>optional int64 end_time = 3;</code>
* @return whether the endTime field is set
*/
public boolean hasEndTime() {
return (bitField0_ & 0x00000002) != 0;
}
/**
* <code>optional int64 end_time = 3;</code>
* @return this
*/
public ActivityScheduleInfo clearEndTime() {
bitField0_ &= ~0x00000002;
endTime = 0L;
return this;
}
/**
* <code>optional int64 end_time = 3;</code>
* @return the endTime
*/
public long getEndTime() {
return endTime;
}
/**
* <code>optional int64 end_time = 3;</code>
* @param value the endTime to set
* @return this
*/
public ActivityScheduleInfo setEndTime(final long value) {
bitField0_ |= 0x00000002;
endTime = value;
return this;
}
/**
* <code>optional uint32 activity_id = 11;</code>
* @return whether the activityId field is set
*/
public boolean hasActivityId() {
return (bitField0_ & 0x00000004) != 0;
}
/**
* <code>optional uint32 activity_id = 11;</code>
* @return this
*/
public ActivityScheduleInfo clearActivityId() {
bitField0_ &= ~0x00000004;
activityId = 0;
return this;
}
/**
* <code>optional uint32 activity_id = 11;</code>
* @return the activityId
*/
public int getActivityId() {
return activityId;
}
/**
* <code>optional uint32 activity_id = 11;</code>
* @param value the activityId to set
* @return this
*/
public ActivityScheduleInfo setActivityId(final int value) {
bitField0_ |= 0x00000004;
activityId = value;
return this;
}
/**
* <code>optional uint32 module_id = 13;</code>
* @return whether the moduleId field is set
*/
public boolean hasModuleId() {
return (bitField0_ & 0x00000008) != 0;
}
/**
* <code>optional uint32 module_id = 13;</code>
* @return this
*/
public ActivityScheduleInfo clearModuleId() {
bitField0_ &= ~0x00000008;
moduleId = 0;
return this;
}
/**
* <code>optional uint32 module_id = 13;</code>
* @return the moduleId
*/
public int getModuleId() {
return moduleId;
}
/**
* <code>optional uint32 module_id = 13;</code>
* @param value the moduleId to set
* @return this
*/
public ActivityScheduleInfo setModuleId(final int value) {
bitField0_ |= 0x00000008;
moduleId = value;
return this;
}
@Override
public ActivityScheduleInfo copyFrom(final ActivityScheduleInfo other) {
cachedSize = other.cachedSize;
if ((bitField0_ | other.bitField0_) != 0) {
bitField0_ = other.bitField0_;
beginTime = other.beginTime;
endTime = other.endTime;
activityId = other.activityId;
moduleId = other.moduleId;
}
return this;
}
@Override
public ActivityScheduleInfo mergeFrom(final ActivityScheduleInfo other) {
if (other.isEmpty()) {
return this;
}
cachedSize = -1;
if (other.hasBeginTime()) {
setBeginTime(other.beginTime);
}
if (other.hasEndTime()) {
setEndTime(other.endTime);
}
if (other.hasActivityId()) {
setActivityId(other.activityId);
}
if (other.hasModuleId()) {
setModuleId(other.moduleId);
}
return this;
}
@Override
public ActivityScheduleInfo clear() {
if (isEmpty()) {
return this;
}
cachedSize = -1;
bitField0_ = 0;
beginTime = 0L;
endTime = 0L;
activityId = 0;
moduleId = 0;
return this;
}
@Override
public ActivityScheduleInfo clearQuick() {
if (isEmpty()) {
return this;
}
cachedSize = -1;
bitField0_ = 0;
return this;
}
@Override
public boolean equals(Object o) {
if (o == this) {
return true;
}
if (!(o instanceof ActivityScheduleInfo)) {
return false;
}
ActivityScheduleInfo other = (ActivityScheduleInfo) o;
return bitField0_ == other.bitField0_
&& (!hasBeginTime() || beginTime == other.beginTime)
&& (!hasEndTime() || endTime == other.endTime)
&& (!hasActivityId() || activityId == other.activityId)
&& (!hasModuleId() || moduleId == other.moduleId);
}
@Override
public void writeTo(final ProtoSink output) throws IOException {
if ((bitField0_ & 0x00000001) != 0) {
output.writeRawByte((byte) 8);
output.writeInt64NoTag(beginTime);
}
if ((bitField0_ & 0x00000002) != 0) {
output.writeRawByte((byte) 24);
output.writeInt64NoTag(endTime);
}
if ((bitField0_ & 0x00000004) != 0) {
output.writeRawByte((byte) 88);
output.writeUInt32NoTag(activityId);
}
if ((bitField0_ & 0x00000008) != 0) {
output.writeRawByte((byte) 104);
output.writeUInt32NoTag(moduleId);
}
}
@Override
protected int computeSerializedSize() {
int size = 0;
if ((bitField0_ & 0x00000001) != 0) {
size += 1 + ProtoSink.computeInt64SizeNoTag(beginTime);
}
if ((bitField0_ & 0x00000002) != 0) {
size += 1 + ProtoSink.computeInt64SizeNoTag(endTime);
}
if ((bitField0_ & 0x00000004) != 0) {
size += 1 + ProtoSink.computeUInt32SizeNoTag(activityId);
}
if ((bitField0_ & 0x00000008) != 0) {
size += 1 + ProtoSink.computeUInt32SizeNoTag(moduleId);
}
return size;
}
@Override
@SuppressWarnings("fallthrough")
public ActivityScheduleInfo mergeFrom(final ProtoSource input) throws IOException {
// Enabled Fall-Through Optimization (QuickBuffers)
int tag = input.readTag();
while (true) {
switch (tag) {
case 8: {
// beginTime
beginTime = input.readInt64();
bitField0_ |= 0x00000001;
tag = input.readTag();
if (tag != 24) {
break;
}
}
case 24: {
// endTime
endTime = input.readInt64();
bitField0_ |= 0x00000002;
tag = input.readTag();
if (tag != 88) {
break;
}
}
case 88: {
// activityId
activityId = input.readUInt32();
bitField0_ |= 0x00000004;
tag = input.readTag();
if (tag != 104) {
break;
}
}
case 104: {
// moduleId
moduleId = input.readUInt32();
bitField0_ |= 0x00000008;
tag = input.readTag();
if (tag != 0) {
break;
}
}
case 0: {
return this;
}
default: {
if (!input.skipField(tag)) {
return this;
}
tag = input.readTag();
break;
}
}
}
}
@Override
public void writeTo(final JsonSink output) throws IOException {
output.beginObject();
if ((bitField0_ & 0x00000001) != 0) {
output.writeInt64(FieldNames.beginTime, beginTime);
}
if ((bitField0_ & 0x00000002) != 0) {
output.writeInt64(FieldNames.endTime, endTime);
}
if ((bitField0_ & 0x00000004) != 0) {
output.writeUInt32(FieldNames.activityId, activityId);
}
if ((bitField0_ & 0x00000008) != 0) {
output.writeUInt32(FieldNames.moduleId, moduleId);
}
output.endObject();
}
@Override
public ActivityScheduleInfo mergeFrom(final JsonSource input) throws IOException {
if (!input.beginObject()) {
return this;
}
while (!input.isAtEnd()) {
switch (input.readFieldHash()) {
case -1072839914:
case 1112183971: {
if (input.isAtField(FieldNames.beginTime)) {
if (!input.trySkipNullValue()) {
beginTime = input.readInt64();
bitField0_ |= 0x00000001;
}
} else {
input.skipUnknownField();
}
break;
}
case -1607243192:
case 1725551537: {
if (input.isAtField(FieldNames.endTime)) {
if (!input.trySkipNullValue()) {
endTime = input.readInt64();
bitField0_ |= 0x00000002;
}
} else {
input.skipUnknownField();
}
break;
}
case 2048619658:
case -917278645: {
if (input.isAtField(FieldNames.activityId)) {
if (!input.trySkipNullValue()) {
activityId = input.readUInt32();
bitField0_ |= 0x00000004;
}
} else {
input.skipUnknownField();
}
break;
}
case -604257113:
case -1552079922: {
if (input.isAtField(FieldNames.moduleId)) {
if (!input.trySkipNullValue()) {
moduleId = input.readUInt32();
bitField0_ |= 0x00000008;
}
} else {
input.skipUnknownField();
}
break;
}
default: {
input.skipUnknownField();
break;
}
}
}
input.endObject();
return this;
}
@Override
public ActivityScheduleInfo clone() {
return new ActivityScheduleInfo().copyFrom(this);
}
@Override
public boolean isEmpty() {
return ((bitField0_) == 0);
}
public static ActivityScheduleInfo parseFrom(final byte[] data) throws
InvalidProtocolBufferException {
return ProtoMessage.mergeFrom(new ActivityScheduleInfo(), data).checkInitialized();
}
public static ActivityScheduleInfo parseFrom(final ProtoSource input) throws IOException {
return ProtoMessage.mergeFrom(new ActivityScheduleInfo(), input).checkInitialized();
}
public static ActivityScheduleInfo parseFrom(final JsonSource input) throws IOException {
return ProtoMessage.mergeFrom(new ActivityScheduleInfo(), input).checkInitialized();
}
/**
* @return factory for creating ActivityScheduleInfo messages
*/
public static MessageFactory<ActivityScheduleInfo> getFactory() {
return ActivityScheduleInfoFactory.INSTANCE;
}
private enum ActivityScheduleInfoFactory implements MessageFactory<ActivityScheduleInfo> {
INSTANCE;
@Override
public ActivityScheduleInfo create() {
return ActivityScheduleInfo.newInstance();
}
}
/**
* Contains name constants used for serializing JSON
*/
static class FieldNames {
static final FieldName beginTime = FieldName.forField("beginTime", "begin_time");
static final FieldName endTime = FieldName.forField("endTime", "end_time");
static final FieldName activityId = FieldName.forField("activityId", "activity_id");
static final FieldName moduleId = FieldName.forField("moduleId", "module_id");
}
}
}

View File

@@ -0,0 +1,380 @@
// Code generated by protocol buffer compiler. Do not edit!
package emu.lunarcore.proto;
import java.io.IOException;
import us.hebi.quickbuf.FieldName;
import us.hebi.quickbuf.InvalidProtocolBufferException;
import us.hebi.quickbuf.JsonSink;
import us.hebi.quickbuf.JsonSource;
import us.hebi.quickbuf.MessageFactory;
import us.hebi.quickbuf.ProtoMessage;
import us.hebi.quickbuf.ProtoSink;
import us.hebi.quickbuf.ProtoSource;
import us.hebi.quickbuf.RepeatedMessage;
public final class GetActivityScheduleConfigScRspOuterClass {
/**
* Protobuf type {@code GetActivityScheduleConfigScRsp}
*/
public static final class GetActivityScheduleConfigScRsp extends ProtoMessage<GetActivityScheduleConfigScRsp> implements Cloneable {
private static final long serialVersionUID = 0L;
/**
* <code>optional uint32 retcode = 12;</code>
*/
private int retcode;
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
*/
private final RepeatedMessage<ActivityScheduleInfoOuterClass.ActivityScheduleInfo> activityScheduleList = RepeatedMessage.newEmptyInstance(ActivityScheduleInfoOuterClass.ActivityScheduleInfo.getFactory());
private GetActivityScheduleConfigScRsp() {
}
/**
* @return a new empty instance of {@code GetActivityScheduleConfigScRsp}
*/
public static GetActivityScheduleConfigScRsp newInstance() {
return new GetActivityScheduleConfigScRsp();
}
/**
* <code>optional uint32 retcode = 12;</code>
* @return whether the retcode field is set
*/
public boolean hasRetcode() {
return (bitField0_ & 0x00000001) != 0;
}
/**
* <code>optional uint32 retcode = 12;</code>
* @return this
*/
public GetActivityScheduleConfigScRsp clearRetcode() {
bitField0_ &= ~0x00000001;
retcode = 0;
return this;
}
/**
* <code>optional uint32 retcode = 12;</code>
* @return the retcode
*/
public int getRetcode() {
return retcode;
}
/**
* <code>optional uint32 retcode = 12;</code>
* @param value the retcode to set
* @return this
*/
public GetActivityScheduleConfigScRsp setRetcode(final int value) {
bitField0_ |= 0x00000001;
retcode = value;
return this;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
* @return whether the activityScheduleList field is set
*/
public boolean hasActivityScheduleList() {
return (bitField0_ & 0x00000002) != 0;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
* @return this
*/
public GetActivityScheduleConfigScRsp clearActivityScheduleList() {
bitField0_ &= ~0x00000002;
activityScheduleList.clear();
return this;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
*
* This method returns the internal storage object without modifying any has state.
* The returned object should not be modified and be treated as read-only.
*
* Use {@link #getMutableActivityScheduleList()} if you want to modify it.
*
* @return internal storage object for reading
*/
public RepeatedMessage<ActivityScheduleInfoOuterClass.ActivityScheduleInfo> getActivityScheduleList(
) {
return activityScheduleList;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
*
* This method returns the internal storage object and sets the corresponding
* has state. The returned object will become part of this message and its
* contents may be modified as long as the has state is not cleared.
*
* @return internal storage object for modifications
*/
public RepeatedMessage<ActivityScheduleInfoOuterClass.ActivityScheduleInfo> getMutableActivityScheduleList(
) {
bitField0_ |= 0x00000002;
return activityScheduleList;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
* @param value the activityScheduleList to add
* @return this
*/
public GetActivityScheduleConfigScRsp addActivityScheduleList(
final ActivityScheduleInfoOuterClass.ActivityScheduleInfo value) {
bitField0_ |= 0x00000002;
activityScheduleList.add(value);
return this;
}
/**
* <code>repeated .ActivityScheduleInfo activity_schedule_list = 8;</code>
* @param values the activityScheduleList to add
* @return this
*/
public GetActivityScheduleConfigScRsp addAllActivityScheduleList(
final ActivityScheduleInfoOuterClass.ActivityScheduleInfo... values) {
bitField0_ |= 0x00000002;
activityScheduleList.addAll(values);
return this;
}
@Override
public GetActivityScheduleConfigScRsp copyFrom(final GetActivityScheduleConfigScRsp other) {
cachedSize = other.cachedSize;
if ((bitField0_ | other.bitField0_) != 0) {
bitField0_ = other.bitField0_;
retcode = other.retcode;
activityScheduleList.copyFrom(other.activityScheduleList);
}
return this;
}
@Override
public GetActivityScheduleConfigScRsp mergeFrom(final GetActivityScheduleConfigScRsp other) {
if (other.isEmpty()) {
return this;
}
cachedSize = -1;
if (other.hasRetcode()) {
setRetcode(other.retcode);
}
if (other.hasActivityScheduleList()) {
getMutableActivityScheduleList().addAll(other.activityScheduleList);
}
return this;
}
@Override
public GetActivityScheduleConfigScRsp clear() {
if (isEmpty()) {
return this;
}
cachedSize = -1;
bitField0_ = 0;
retcode = 0;
activityScheduleList.clear();
return this;
}
@Override
public GetActivityScheduleConfigScRsp clearQuick() {
if (isEmpty()) {
return this;
}
cachedSize = -1;
bitField0_ = 0;
activityScheduleList.clearQuick();
return this;
}
@Override
public boolean equals(Object o) {
if (o == this) {
return true;
}
if (!(o instanceof GetActivityScheduleConfigScRsp)) {
return false;
}
GetActivityScheduleConfigScRsp other = (GetActivityScheduleConfigScRsp) o;
return bitField0_ == other.bitField0_
&& (!hasRetcode() || retcode == other.retcode)
&& (!hasActivityScheduleList() || activityScheduleList.equals(other.activityScheduleList));
}
@Override
public void writeTo(final ProtoSink output) throws IOException {
if ((bitField0_ & 0x00000001) != 0) {
output.writeRawByte((byte) 96);
output.writeUInt32NoTag(retcode);
}
if ((bitField0_ & 0x00000002) != 0) {
for (int i = 0; i < activityScheduleList.length(); i++) {
output.writeRawByte((byte) 66);
output.writeMessageNoTag(activityScheduleList.get(i));
}
}
}
@Override
protected int computeSerializedSize() {
int size = 0;
if ((bitField0_ & 0x00000001) != 0) {
size += 1 + ProtoSink.computeUInt32SizeNoTag(retcode);
}
if ((bitField0_ & 0x00000002) != 0) {
size += (1 * activityScheduleList.length()) + ProtoSink.computeRepeatedMessageSizeNoTag(activityScheduleList);
}
return size;
}
@Override
@SuppressWarnings("fallthrough")
public GetActivityScheduleConfigScRsp mergeFrom(final ProtoSource input) throws IOException {
// Enabled Fall-Through Optimization (QuickBuffers)
int tag = input.readTag();
while (true) {
switch (tag) {
case 96: {
// retcode
retcode = input.readUInt32();
bitField0_ |= 0x00000001;
tag = input.readTag();
if (tag != 66) {
break;
}
}
case 66: {
// activityScheduleList
tag = input.readRepeatedMessage(activityScheduleList, tag);
bitField0_ |= 0x00000002;
if (tag != 0) {
break;
}
}
case 0: {
return this;
}
default: {
if (!input.skipField(tag)) {
return this;
}
tag = input.readTag();
break;
}
}
}
}
@Override
public void writeTo(final JsonSink output) throws IOException {
output.beginObject();
if ((bitField0_ & 0x00000001) != 0) {
output.writeUInt32(FieldNames.retcode, retcode);
}
if ((bitField0_ & 0x00000002) != 0) {
output.writeRepeatedMessage(FieldNames.activityScheduleList, activityScheduleList);
}
output.endObject();
}
@Override
public GetActivityScheduleConfigScRsp mergeFrom(final JsonSource input) throws IOException {
if (!input.beginObject()) {
return this;
}
while (!input.isAtEnd()) {
switch (input.readFieldHash()) {
case 1097936398: {
if (input.isAtField(FieldNames.retcode)) {
if (!input.trySkipNullValue()) {
retcode = input.readUInt32();
bitField0_ |= 0x00000001;
}
} else {
input.skipUnknownField();
}
break;
}
case -1397638012:
case -1123181546: {
if (input.isAtField(FieldNames.activityScheduleList)) {
if (!input.trySkipNullValue()) {
input.readRepeatedMessage(activityScheduleList);
bitField0_ |= 0x00000002;
}
} else {
input.skipUnknownField();
}
break;
}
default: {
input.skipUnknownField();
break;
}
}
}
input.endObject();
return this;
}
@Override
public GetActivityScheduleConfigScRsp clone() {
return new GetActivityScheduleConfigScRsp().copyFrom(this);
}
@Override
public boolean isEmpty() {
return ((bitField0_) == 0);
}
public static GetActivityScheduleConfigScRsp parseFrom(final byte[] data) throws
InvalidProtocolBufferException {
return ProtoMessage.mergeFrom(new GetActivityScheduleConfigScRsp(), data).checkInitialized();
}
public static GetActivityScheduleConfigScRsp parseFrom(final ProtoSource input) throws
IOException {
return ProtoMessage.mergeFrom(new GetActivityScheduleConfigScRsp(), input).checkInitialized();
}
public static GetActivityScheduleConfigScRsp parseFrom(final JsonSource input) throws
IOException {
return ProtoMessage.mergeFrom(new GetActivityScheduleConfigScRsp(), input).checkInitialized();
}
/**
* @return factory for creating GetActivityScheduleConfigScRsp messages
*/
public static MessageFactory<GetActivityScheduleConfigScRsp> getFactory() {
return GetActivityScheduleConfigScRspFactory.INSTANCE;
}
private enum GetActivityScheduleConfigScRspFactory implements MessageFactory<GetActivityScheduleConfigScRsp> {
INSTANCE;
@Override
public GetActivityScheduleConfigScRsp create() {
return GetActivityScheduleConfigScRsp.newInstance();
}
}
/**
* Contains name constants used for serializing JSON
*/
static class FieldNames {
static final FieldName retcode = FieldName.forField("retcode");
static final FieldName activityScheduleList = FieldName.forField("activityScheduleList", "activity_schedule_list");
}
}
}

View File

@@ -30,6 +30,7 @@ public class GameData {
@Getter private static Int2ObjectMap<ShopExcel> shopExcelMap = new Int2ObjectOpenHashMap<>(); @Getter private static Int2ObjectMap<ShopExcel> shopExcelMap = new Int2ObjectOpenHashMap<>();
@Getter private static Int2ObjectMap<RewardExcel> rewardExcelMap = new Int2ObjectOpenHashMap<>(); @Getter private static Int2ObjectMap<RewardExcel> rewardExcelMap = new Int2ObjectOpenHashMap<>();
@Getter private static Int2ObjectMap<ItemComposeExcel> itemComposeExcelMap = new Int2ObjectOpenHashMap<>(); @Getter private static Int2ObjectMap<ItemComposeExcel> itemComposeExcelMap = new Int2ObjectOpenHashMap<>();
@Getter private static Int2ObjectMap<ActivityPanelExcel> activityPanelExcelMap = new Int2ObjectOpenHashMap<>();
@Getter private static Int2ObjectMap<ChallengeGroupExcel> challengeGroupExcelMap = new Int2ObjectOpenHashMap<>(); @Getter private static Int2ObjectMap<ChallengeGroupExcel> challengeGroupExcelMap = new Int2ObjectOpenHashMap<>();
@Getter private static Int2ObjectMap<ChallengeExcel> challengeExcelMap = new Int2ObjectOpenHashMap<>(); @Getter private static Int2ObjectMap<ChallengeExcel> challengeExcelMap = new Int2ObjectOpenHashMap<>();

View File

@@ -0,0 +1,20 @@
package emu.lunarcore.data.excel;
import emu.lunarcore.data.GameResource;
import emu.lunarcore.data.ResourceType;
import lombok.Getter;
@Getter
@ResourceType(name = {"ActivityPanel.json"})
public class ActivityPanelExcel extends GameResource {
private int PanelID;
private int Type;
private int ActivityModuleID;
private boolean IsResidentPanel;
@Override
public int getId() {
return PanelID;
}
}

View File

@@ -0,0 +1,17 @@
package emu.lunarcore.server.packet.recv;
import emu.lunarcore.server.game.GameSession;
import emu.lunarcore.server.packet.CmdId;
import emu.lunarcore.server.packet.Opcodes;
import emu.lunarcore.server.packet.PacketHandler;
import emu.lunarcore.server.packet.send.PacketGetActivityScheduleConfigScRsp;
@Opcodes(CmdId.GetActivityScheduleConfigCsReq)
public class HandlerGetActivityScheduleConfigCsReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] data) throws Exception {
session.send(new PacketGetActivityScheduleConfigScRsp());
}
}

View File

@@ -0,0 +1,30 @@
package emu.lunarcore.server.packet.send;
import emu.lunarcore.data.GameData;
import emu.lunarcore.proto.ActivityScheduleInfoOuterClass.ActivityScheduleInfo;
import emu.lunarcore.proto.GetActivityScheduleConfigScRspOuterClass.GetActivityScheduleConfigScRsp;
import emu.lunarcore.server.packet.BasePacket;
import emu.lunarcore.server.packet.CmdId;
public class PacketGetActivityScheduleConfigScRsp extends BasePacket {
public PacketGetActivityScheduleConfigScRsp() {
super(CmdId.GetActivityScheduleConfigScRsp);
var data = GetActivityScheduleConfigScRsp.newInstance();
for (var activity : GameData.getActivityPanelExcelMap().values()) {
if (activity.getType() != 5) continue;
var info = ActivityScheduleInfo.newInstance()
.setActivityId(activity.getPanelID())
.setModuleId(activity.getActivityModuleID())
.setBeginTime(0)
.setEndTime(Integer.MAX_VALUE);
data.addActivityScheduleList(info);
}
this.setData(data);
}
}