mirror of
https://github.com/Melledy/LunarCore.git
synced 2025-12-24 19:24:35 +01:00
Added group state handler and improved interaction handling
This commit is contained in:
@@ -0,0 +1,281 @@
|
||||
// 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 GroupStateChangeCsReqOuterClass {
|
||||
/**
|
||||
* Protobuf type {@code GroupStateChangeCsReq}
|
||||
*/
|
||||
public static final class GroupStateChangeCsReq extends ProtoMessage<GroupStateChangeCsReq> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</code>
|
||||
*/
|
||||
private final GroupStateInfoOuterClass.GroupStateInfo groupInfo = GroupStateInfoOuterClass.GroupStateInfo.newInstance();
|
||||
|
||||
private GroupStateChangeCsReq() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new empty instance of {@code GroupStateChangeCsReq}
|
||||
*/
|
||||
public static GroupStateChangeCsReq newInstance() {
|
||||
return new GroupStateChangeCsReq();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</code>
|
||||
* @return whether the groupInfo field is set
|
||||
*/
|
||||
public boolean hasGroupInfo() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeCsReq clearGroupInfo() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</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 #getMutableGroupInfo()} if you want to modify it.
|
||||
*
|
||||
* @return internal storage object for reading
|
||||
*/
|
||||
public GroupStateInfoOuterClass.GroupStateInfo getGroupInfo() {
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</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 GroupStateInfoOuterClass.GroupStateInfo getMutableGroupInfo() {
|
||||
bitField0_ |= 0x00000001;
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 6;</code>
|
||||
* @param value the groupInfo to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeCsReq setGroupInfo(final GroupStateInfoOuterClass.GroupStateInfo value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
groupInfo.copyFrom(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq copyFrom(final GroupStateChangeCsReq other) {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
groupInfo.copyFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq mergeFrom(final GroupStateChangeCsReq other) {
|
||||
if (other.isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasGroupInfo()) {
|
||||
getMutableGroupInfo().mergeFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq clear() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq clearQuick() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
groupInfo.clearQuick();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o == this) {
|
||||
return true;
|
||||
}
|
||||
if (!(o instanceof GroupStateChangeCsReq)) {
|
||||
return false;
|
||||
}
|
||||
GroupStateChangeCsReq other = (GroupStateChangeCsReq) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasGroupInfo() || groupInfo.equals(other.groupInfo));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 50);
|
||||
output.writeMessageNoTag(groupInfo);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeMessageSizeNoTag(groupInfo);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("fallthrough")
|
||||
public GroupStateChangeCsReq mergeFrom(final ProtoSource input) throws IOException {
|
||||
// Enabled Fall-Through Optimization (QuickBuffers)
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 50: {
|
||||
// groupInfo
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000001;
|
||||
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.writeMessage(FieldNames.groupInfo, groupInfo);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq mergeFrom(final JsonSource input) throws IOException {
|
||||
if (!input.beginObject()) {
|
||||
return this;
|
||||
}
|
||||
while (!input.isAtEnd()) {
|
||||
switch (input.readFieldHash()) {
|
||||
case -1483311155:
|
||||
case 1282170478: {
|
||||
if (input.isAtField(FieldNames.groupInfo)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
input.endObject();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq clone() {
|
||||
return new GroupStateChangeCsReq().copyFrom(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return ((bitField0_) == 0);
|
||||
}
|
||||
|
||||
public static GroupStateChangeCsReq parseFrom(final byte[] data) throws
|
||||
InvalidProtocolBufferException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeCsReq(), data).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeCsReq parseFrom(final ProtoSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeCsReq(), input).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeCsReq parseFrom(final JsonSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeCsReq(), input).checkInitialized();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return factory for creating GroupStateChangeCsReq messages
|
||||
*/
|
||||
public static MessageFactory<GroupStateChangeCsReq> getFactory() {
|
||||
return GroupStateChangeCsReqFactory.INSTANCE;
|
||||
}
|
||||
|
||||
private enum GroupStateChangeCsReqFactory implements MessageFactory<GroupStateChangeCsReq> {
|
||||
INSTANCE;
|
||||
|
||||
@Override
|
||||
public GroupStateChangeCsReq create() {
|
||||
return GroupStateChangeCsReq.newInstance();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName groupInfo = FieldName.forField("groupInfo", "group_info");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,282 @@
|
||||
// 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 GroupStateChangeScNotifyOuterClass {
|
||||
/**
|
||||
* Protobuf type {@code GroupStateChangeScNotify}
|
||||
*/
|
||||
public static final class GroupStateChangeScNotify extends ProtoMessage<GroupStateChangeScNotify> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 8;</code>
|
||||
*/
|
||||
private final GroupStateInfoOuterClass.GroupStateInfo groupInfo = GroupStateInfoOuterClass.GroupStateInfo.newInstance();
|
||||
|
||||
private GroupStateChangeScNotify() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new empty instance of {@code GroupStateChangeScNotify}
|
||||
*/
|
||||
public static GroupStateChangeScNotify newInstance() {
|
||||
return new GroupStateChangeScNotify();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 8;</code>
|
||||
* @return whether the groupInfo field is set
|
||||
*/
|
||||
public boolean hasGroupInfo() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 8;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScNotify clearGroupInfo() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 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 #getMutableGroupInfo()} if you want to modify it.
|
||||
*
|
||||
* @return internal storage object for reading
|
||||
*/
|
||||
public GroupStateInfoOuterClass.GroupStateInfo getGroupInfo() {
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 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 GroupStateInfoOuterClass.GroupStateInfo getMutableGroupInfo() {
|
||||
bitField0_ |= 0x00000001;
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 8;</code>
|
||||
* @param value the groupInfo to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScNotify setGroupInfo(
|
||||
final GroupStateInfoOuterClass.GroupStateInfo value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
groupInfo.copyFrom(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify copyFrom(final GroupStateChangeScNotify other) {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
groupInfo.copyFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify mergeFrom(final GroupStateChangeScNotify other) {
|
||||
if (other.isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasGroupInfo()) {
|
||||
getMutableGroupInfo().mergeFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify clear() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify clearQuick() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
groupInfo.clearQuick();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o == this) {
|
||||
return true;
|
||||
}
|
||||
if (!(o instanceof GroupStateChangeScNotify)) {
|
||||
return false;
|
||||
}
|
||||
GroupStateChangeScNotify other = (GroupStateChangeScNotify) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasGroupInfo() || groupInfo.equals(other.groupInfo));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 66);
|
||||
output.writeMessageNoTag(groupInfo);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeMessageSizeNoTag(groupInfo);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("fallthrough")
|
||||
public GroupStateChangeScNotify mergeFrom(final ProtoSource input) throws IOException {
|
||||
// Enabled Fall-Through Optimization (QuickBuffers)
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 66: {
|
||||
// groupInfo
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000001;
|
||||
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.writeMessage(FieldNames.groupInfo, groupInfo);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify mergeFrom(final JsonSource input) throws IOException {
|
||||
if (!input.beginObject()) {
|
||||
return this;
|
||||
}
|
||||
while (!input.isAtEnd()) {
|
||||
switch (input.readFieldHash()) {
|
||||
case -1483311155:
|
||||
case 1282170478: {
|
||||
if (input.isAtField(FieldNames.groupInfo)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
input.endObject();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify clone() {
|
||||
return new GroupStateChangeScNotify().copyFrom(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return ((bitField0_) == 0);
|
||||
}
|
||||
|
||||
public static GroupStateChangeScNotify parseFrom(final byte[] data) throws
|
||||
InvalidProtocolBufferException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScNotify(), data).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeScNotify parseFrom(final ProtoSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScNotify(), input).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeScNotify parseFrom(final JsonSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScNotify(), input).checkInitialized();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return factory for creating GroupStateChangeScNotify messages
|
||||
*/
|
||||
public static MessageFactory<GroupStateChangeScNotify> getFactory() {
|
||||
return GroupStateChangeScNotifyFactory.INSTANCE;
|
||||
}
|
||||
|
||||
private enum GroupStateChangeScNotifyFactory implements MessageFactory<GroupStateChangeScNotify> {
|
||||
INSTANCE;
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScNotify create() {
|
||||
return GroupStateChangeScNotify.newInstance();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName groupInfo = FieldName.forField("groupInfo", "group_info");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,361 @@
|
||||
// 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 GroupStateChangeScRspOuterClass {
|
||||
/**
|
||||
* Protobuf type {@code GroupStateChangeScRsp}
|
||||
*/
|
||||
public static final class GroupStateChangeScRsp extends ProtoMessage<GroupStateChangeScRsp> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 retcode = 4;</code>
|
||||
*/
|
||||
private int retcode;
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</code>
|
||||
*/
|
||||
private final GroupStateInfoOuterClass.GroupStateInfo groupInfo = GroupStateInfoOuterClass.GroupStateInfo.newInstance();
|
||||
|
||||
private GroupStateChangeScRsp() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new empty instance of {@code GroupStateChangeScRsp}
|
||||
*/
|
||||
public static GroupStateChangeScRsp newInstance() {
|
||||
return new GroupStateChangeScRsp();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 retcode = 4;</code>
|
||||
* @return whether the retcode field is set
|
||||
*/
|
||||
public boolean hasRetcode() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 retcode = 4;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScRsp clearRetcode() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
retcode = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 retcode = 4;</code>
|
||||
* @return the retcode
|
||||
*/
|
||||
public int getRetcode() {
|
||||
return retcode;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 retcode = 4;</code>
|
||||
* @param value the retcode to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScRsp setRetcode(final int value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
retcode = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</code>
|
||||
* @return whether the groupInfo field is set
|
||||
*/
|
||||
public boolean hasGroupInfo() {
|
||||
return (bitField0_ & 0x00000002) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScRsp clearGroupInfo() {
|
||||
bitField0_ &= ~0x00000002;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</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 #getMutableGroupInfo()} if you want to modify it.
|
||||
*
|
||||
* @return internal storage object for reading
|
||||
*/
|
||||
public GroupStateInfoOuterClass.GroupStateInfo getGroupInfo() {
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</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 GroupStateInfoOuterClass.GroupStateInfo getMutableGroupInfo() {
|
||||
bitField0_ |= 0x00000002;
|
||||
return groupInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .GroupStateInfo group_info = 3;</code>
|
||||
* @param value the groupInfo to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateChangeScRsp setGroupInfo(final GroupStateInfoOuterClass.GroupStateInfo value) {
|
||||
bitField0_ |= 0x00000002;
|
||||
groupInfo.copyFrom(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp copyFrom(final GroupStateChangeScRsp other) {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
retcode = other.retcode;
|
||||
groupInfo.copyFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp mergeFrom(final GroupStateChangeScRsp other) {
|
||||
if (other.isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasRetcode()) {
|
||||
setRetcode(other.retcode);
|
||||
}
|
||||
if (other.hasGroupInfo()) {
|
||||
getMutableGroupInfo().mergeFrom(other.groupInfo);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp clear() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
retcode = 0;
|
||||
groupInfo.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp clearQuick() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
groupInfo.clearQuick();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o == this) {
|
||||
return true;
|
||||
}
|
||||
if (!(o instanceof GroupStateChangeScRsp)) {
|
||||
return false;
|
||||
}
|
||||
GroupStateChangeScRsp other = (GroupStateChangeScRsp) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasRetcode() || retcode == other.retcode)
|
||||
&& (!hasGroupInfo() || groupInfo.equals(other.groupInfo));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 32);
|
||||
output.writeUInt32NoTag(retcode);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeRawByte((byte) 26);
|
||||
output.writeMessageNoTag(groupInfo);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(retcode);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
size += 1 + ProtoSink.computeMessageSizeNoTag(groupInfo);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("fallthrough")
|
||||
public GroupStateChangeScRsp mergeFrom(final ProtoSource input) throws IOException {
|
||||
// Enabled Fall-Through Optimization (QuickBuffers)
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 32: {
|
||||
// retcode
|
||||
retcode = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
tag = input.readTag();
|
||||
if (tag != 26) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 26: {
|
||||
// groupInfo
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000002;
|
||||
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.writeUInt32(FieldNames.retcode, retcode);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeMessage(FieldNames.groupInfo, groupInfo);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp 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 -1483311155:
|
||||
case 1282170478: {
|
||||
if (input.isAtField(FieldNames.groupInfo)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
input.readMessage(groupInfo);
|
||||
bitField0_ |= 0x00000002;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
input.endObject();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp clone() {
|
||||
return new GroupStateChangeScRsp().copyFrom(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return ((bitField0_) == 0);
|
||||
}
|
||||
|
||||
public static GroupStateChangeScRsp parseFrom(final byte[] data) throws
|
||||
InvalidProtocolBufferException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScRsp(), data).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeScRsp parseFrom(final ProtoSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScRsp(), input).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateChangeScRsp parseFrom(final JsonSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateChangeScRsp(), input).checkInitialized();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return factory for creating GroupStateChangeScRsp messages
|
||||
*/
|
||||
public static MessageFactory<GroupStateChangeScRsp> getFactory() {
|
||||
return GroupStateChangeScRspFactory.INSTANCE;
|
||||
}
|
||||
|
||||
private enum GroupStateChangeScRspFactory implements MessageFactory<GroupStateChangeScRsp> {
|
||||
INSTANCE;
|
||||
|
||||
@Override
|
||||
public GroupStateChangeScRsp create() {
|
||||
return GroupStateChangeScRsp.newInstance();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName retcode = FieldName.forField("retcode");
|
||||
|
||||
static final FieldName groupInfo = FieldName.forField("groupInfo", "group_info");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,502 @@
|
||||
// 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 GroupStateInfoOuterClass {
|
||||
/**
|
||||
* Protobuf type {@code GroupStateInfo}
|
||||
*/
|
||||
public static final class GroupStateInfo extends ProtoMessage<GroupStateInfo> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 FIKOEFBNMHB = 4;</code>
|
||||
*/
|
||||
private int fIKOEFBNMHB;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 entry_id = 5;</code>
|
||||
*/
|
||||
private int entryId;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_id = 9;</code>
|
||||
*/
|
||||
private int groupId;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_state = 15;</code>
|
||||
*/
|
||||
private int groupState;
|
||||
|
||||
private GroupStateInfo() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new empty instance of {@code GroupStateInfo}
|
||||
*/
|
||||
public static GroupStateInfo newInstance() {
|
||||
return new GroupStateInfo();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 FIKOEFBNMHB = 4;</code>
|
||||
* @return whether the fIKOEFBNMHB field is set
|
||||
*/
|
||||
public boolean hasFIKOEFBNMHB() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 FIKOEFBNMHB = 4;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo clearFIKOEFBNMHB() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
fIKOEFBNMHB = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 FIKOEFBNMHB = 4;</code>
|
||||
* @return the fIKOEFBNMHB
|
||||
*/
|
||||
public int getFIKOEFBNMHB() {
|
||||
return fIKOEFBNMHB;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 FIKOEFBNMHB = 4;</code>
|
||||
* @param value the fIKOEFBNMHB to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo setFIKOEFBNMHB(final int value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
fIKOEFBNMHB = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 entry_id = 5;</code>
|
||||
* @return whether the entryId field is set
|
||||
*/
|
||||
public boolean hasEntryId() {
|
||||
return (bitField0_ & 0x00000002) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 entry_id = 5;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo clearEntryId() {
|
||||
bitField0_ &= ~0x00000002;
|
||||
entryId = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 entry_id = 5;</code>
|
||||
* @return the entryId
|
||||
*/
|
||||
public int getEntryId() {
|
||||
return entryId;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 entry_id = 5;</code>
|
||||
* @param value the entryId to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo setEntryId(final int value) {
|
||||
bitField0_ |= 0x00000002;
|
||||
entryId = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_id = 9;</code>
|
||||
* @return whether the groupId field is set
|
||||
*/
|
||||
public boolean hasGroupId() {
|
||||
return (bitField0_ & 0x00000004) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_id = 9;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo clearGroupId() {
|
||||
bitField0_ &= ~0x00000004;
|
||||
groupId = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_id = 9;</code>
|
||||
* @return the groupId
|
||||
*/
|
||||
public int getGroupId() {
|
||||
return groupId;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_id = 9;</code>
|
||||
* @param value the groupId to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo setGroupId(final int value) {
|
||||
bitField0_ |= 0x00000004;
|
||||
groupId = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_state = 15;</code>
|
||||
* @return whether the groupState field is set
|
||||
*/
|
||||
public boolean hasGroupState() {
|
||||
return (bitField0_ & 0x00000008) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_state = 15;</code>
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo clearGroupState() {
|
||||
bitField0_ &= ~0x00000008;
|
||||
groupState = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_state = 15;</code>
|
||||
* @return the groupState
|
||||
*/
|
||||
public int getGroupState() {
|
||||
return groupState;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 group_state = 15;</code>
|
||||
* @param value the groupState to set
|
||||
* @return this
|
||||
*/
|
||||
public GroupStateInfo setGroupState(final int value) {
|
||||
bitField0_ |= 0x00000008;
|
||||
groupState = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo copyFrom(final GroupStateInfo other) {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
fIKOEFBNMHB = other.fIKOEFBNMHB;
|
||||
entryId = other.entryId;
|
||||
groupId = other.groupId;
|
||||
groupState = other.groupState;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo mergeFrom(final GroupStateInfo other) {
|
||||
if (other.isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasFIKOEFBNMHB()) {
|
||||
setFIKOEFBNMHB(other.fIKOEFBNMHB);
|
||||
}
|
||||
if (other.hasEntryId()) {
|
||||
setEntryId(other.entryId);
|
||||
}
|
||||
if (other.hasGroupId()) {
|
||||
setGroupId(other.groupId);
|
||||
}
|
||||
if (other.hasGroupState()) {
|
||||
setGroupState(other.groupState);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo clear() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
fIKOEFBNMHB = 0;
|
||||
entryId = 0;
|
||||
groupId = 0;
|
||||
groupState = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo 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 GroupStateInfo)) {
|
||||
return false;
|
||||
}
|
||||
GroupStateInfo other = (GroupStateInfo) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasFIKOEFBNMHB() || fIKOEFBNMHB == other.fIKOEFBNMHB)
|
||||
&& (!hasEntryId() || entryId == other.entryId)
|
||||
&& (!hasGroupId() || groupId == other.groupId)
|
||||
&& (!hasGroupState() || groupState == other.groupState);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 32);
|
||||
output.writeUInt32NoTag(fIKOEFBNMHB);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeRawByte((byte) 40);
|
||||
output.writeUInt32NoTag(entryId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
output.writeRawByte((byte) 72);
|
||||
output.writeUInt32NoTag(groupId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
output.writeRawByte((byte) 120);
|
||||
output.writeUInt32NoTag(groupState);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(fIKOEFBNMHB);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(entryId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(groupId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(groupState);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("fallthrough")
|
||||
public GroupStateInfo mergeFrom(final ProtoSource input) throws IOException {
|
||||
// Enabled Fall-Through Optimization (QuickBuffers)
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 32: {
|
||||
// fIKOEFBNMHB
|
||||
fIKOEFBNMHB = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
tag = input.readTag();
|
||||
if (tag != 40) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 40: {
|
||||
// entryId
|
||||
entryId = input.readUInt32();
|
||||
bitField0_ |= 0x00000002;
|
||||
tag = input.readTag();
|
||||
if (tag != 72) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 72: {
|
||||
// groupId
|
||||
groupId = input.readUInt32();
|
||||
bitField0_ |= 0x00000004;
|
||||
tag = input.readTag();
|
||||
if (tag != 120) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 120: {
|
||||
// groupState
|
||||
groupState = 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.writeUInt32(FieldNames.fIKOEFBNMHB, fIKOEFBNMHB);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeUInt32(FieldNames.entryId, entryId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
output.writeUInt32(FieldNames.groupId, groupId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000008) != 0) {
|
||||
output.writeUInt32(FieldNames.groupState, groupState);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo mergeFrom(final JsonSource input) throws IOException {
|
||||
if (!input.beginObject()) {
|
||||
return this;
|
||||
}
|
||||
while (!input.isAtEnd()) {
|
||||
switch (input.readFieldHash()) {
|
||||
case -1689558285: {
|
||||
if (input.isAtField(FieldNames.fIKOEFBNMHB)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
fIKOEFBNMHB = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case -1591558867:
|
||||
case -2093663224: {
|
||||
if (input.isAtField(FieldNames.entryId)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
entryId = input.readUInt32();
|
||||
bitField0_ |= 0x00000002;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 293428218:
|
||||
case 506361563: {
|
||||
if (input.isAtField(FieldNames.groupId)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
groupId = input.readUInt32();
|
||||
bitField0_ |= 0x00000004;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 1271403858:
|
||||
case 1101988561: {
|
||||
if (input.isAtField(FieldNames.groupState)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
groupState = input.readUInt32();
|
||||
bitField0_ |= 0x00000008;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
input.endObject();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public GroupStateInfo clone() {
|
||||
return new GroupStateInfo().copyFrom(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return ((bitField0_) == 0);
|
||||
}
|
||||
|
||||
public static GroupStateInfo parseFrom(final byte[] data) throws
|
||||
InvalidProtocolBufferException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateInfo(), data).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateInfo parseFrom(final ProtoSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateInfo(), input).checkInitialized();
|
||||
}
|
||||
|
||||
public static GroupStateInfo parseFrom(final JsonSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new GroupStateInfo(), input).checkInitialized();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return factory for creating GroupStateInfo messages
|
||||
*/
|
||||
public static MessageFactory<GroupStateInfo> getFactory() {
|
||||
return GroupStateInfoFactory.INSTANCE;
|
||||
}
|
||||
|
||||
private enum GroupStateInfoFactory implements MessageFactory<GroupStateInfo> {
|
||||
INSTANCE;
|
||||
|
||||
@Override
|
||||
public GroupStateInfo create() {
|
||||
return GroupStateInfo.newInstance();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName fIKOEFBNMHB = FieldName.forField("FIKOEFBNMHB");
|
||||
|
||||
static final FieldName entryId = FieldName.forField("entryId", "entry_id");
|
||||
|
||||
static final FieldName groupId = FieldName.forField("groupId", "group_id");
|
||||
|
||||
static final FieldName groupState = FieldName.forField("groupState", "group_state");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -18,6 +18,11 @@ public final class InteractPropCsReqOuterClass {
|
||||
public static final class InteractPropCsReq extends ProtoMessage<InteractPropCsReq> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 interact_id = 7;</code>
|
||||
*/
|
||||
private int interactId;
|
||||
|
||||
/**
|
||||
* <code>optional uint32 prop_entity_id = 15;</code>
|
||||
*/
|
||||
@@ -33,12 +38,49 @@ public final class InteractPropCsReqOuterClass {
|
||||
return new InteractPropCsReq();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 interact_id = 7;</code>
|
||||
* @return whether the interactId field is set
|
||||
*/
|
||||
public boolean hasInteractId() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 interact_id = 7;</code>
|
||||
* @return this
|
||||
*/
|
||||
public InteractPropCsReq clearInteractId() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
interactId = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 interact_id = 7;</code>
|
||||
* @return the interactId
|
||||
*/
|
||||
public int getInteractId() {
|
||||
return interactId;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 interact_id = 7;</code>
|
||||
* @param value the interactId to set
|
||||
* @return this
|
||||
*/
|
||||
public InteractPropCsReq setInteractId(final int value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
interactId = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint32 prop_entity_id = 15;</code>
|
||||
* @return whether the propEntityId field is set
|
||||
*/
|
||||
public boolean hasPropEntityId() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
return (bitField0_ & 0x00000002) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -46,7 +88,7 @@ public final class InteractPropCsReqOuterClass {
|
||||
* @return this
|
||||
*/
|
||||
public InteractPropCsReq clearPropEntityId() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
bitField0_ &= ~0x00000002;
|
||||
propEntityId = 0;
|
||||
return this;
|
||||
}
|
||||
@@ -65,7 +107,7 @@ public final class InteractPropCsReqOuterClass {
|
||||
* @return this
|
||||
*/
|
||||
public InteractPropCsReq setPropEntityId(final int value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
bitField0_ |= 0x00000002;
|
||||
propEntityId = value;
|
||||
return this;
|
||||
}
|
||||
@@ -75,6 +117,7 @@ public final class InteractPropCsReqOuterClass {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
interactId = other.interactId;
|
||||
propEntityId = other.propEntityId;
|
||||
}
|
||||
return this;
|
||||
@@ -86,6 +129,9 @@ public final class InteractPropCsReqOuterClass {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasInteractId()) {
|
||||
setInteractId(other.interactId);
|
||||
}
|
||||
if (other.hasPropEntityId()) {
|
||||
setPropEntityId(other.propEntityId);
|
||||
}
|
||||
@@ -99,6 +145,7 @@ public final class InteractPropCsReqOuterClass {
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
interactId = 0;
|
||||
propEntityId = 0;
|
||||
return this;
|
||||
}
|
||||
@@ -123,12 +170,17 @@ public final class InteractPropCsReqOuterClass {
|
||||
}
|
||||
InteractPropCsReq other = (InteractPropCsReq) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasInteractId() || interactId == other.interactId)
|
||||
&& (!hasPropEntityId() || propEntityId == other.propEntityId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 56);
|
||||
output.writeUInt32NoTag(interactId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeRawByte((byte) 120);
|
||||
output.writeUInt32NoTag(propEntityId);
|
||||
}
|
||||
@@ -138,6 +190,9 @@ public final class InteractPropCsReqOuterClass {
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(interactId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt32SizeNoTag(propEntityId);
|
||||
}
|
||||
return size;
|
||||
@@ -150,10 +205,19 @@ public final class InteractPropCsReqOuterClass {
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 56: {
|
||||
// interactId
|
||||
interactId = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
tag = input.readTag();
|
||||
if (tag != 120) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 120: {
|
||||
// propEntityId
|
||||
propEntityId = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
bitField0_ |= 0x00000002;
|
||||
tag = input.readTag();
|
||||
if (tag != 0) {
|
||||
break;
|
||||
@@ -177,6 +241,9 @@ public final class InteractPropCsReqOuterClass {
|
||||
public void writeTo(final JsonSink output) throws IOException {
|
||||
output.beginObject();
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeUInt32(FieldNames.interactId, interactId);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeUInt32(FieldNames.propEntityId, propEntityId);
|
||||
}
|
||||
output.endObject();
|
||||
@@ -189,12 +256,24 @@ public final class InteractPropCsReqOuterClass {
|
||||
}
|
||||
while (!input.isAtEnd()) {
|
||||
switch (input.readFieldHash()) {
|
||||
case -1603081743:
|
||||
case 1844094916: {
|
||||
if (input.isAtField(FieldNames.interactId)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
interactId = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case -68717343:
|
||||
case -57484005: {
|
||||
if (input.isAtField(FieldNames.propEntityId)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
propEntityId = input.readUInt32();
|
||||
bitField0_ |= 0x00000001;
|
||||
bitField0_ |= 0x00000002;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
@@ -254,6 +333,8 @@ public final class InteractPropCsReqOuterClass {
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName interactId = FieldName.forField("interactId", "interact_id");
|
||||
|
||||
static final FieldName propEntityId = FieldName.forField("propEntityId", "prop_entity_id");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,483 +0,0 @@
|
||||
// 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.Utf8String;
|
||||
|
||||
public final class PlayerLoginCsReqOuterClass {
|
||||
/**
|
||||
* Protobuf type {@code PlayerLoginCsReq}
|
||||
*/
|
||||
public static final class PlayerLoginCsReq extends ProtoMessage<PlayerLoginCsReq> implements Cloneable {
|
||||
private static final long serialVersionUID = 0L;
|
||||
|
||||
/**
|
||||
* <code>optional uint64 login_random = 1;</code>
|
||||
*/
|
||||
private long loginRandom;
|
||||
|
||||
/**
|
||||
* <code>optional .PlatformType platform = 12;</code>
|
||||
*/
|
||||
private int platform;
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
*/
|
||||
private final Utf8String signature = Utf8String.newEmptyInstance();
|
||||
|
||||
private PlayerLoginCsReq() {
|
||||
}
|
||||
|
||||
/**
|
||||
* @return a new empty instance of {@code PlayerLoginCsReq}
|
||||
*/
|
||||
public static PlayerLoginCsReq newInstance() {
|
||||
return new PlayerLoginCsReq();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint64 login_random = 1;</code>
|
||||
* @return whether the loginRandom field is set
|
||||
*/
|
||||
public boolean hasLoginRandom() {
|
||||
return (bitField0_ & 0x00000001) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint64 login_random = 1;</code>
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq clearLoginRandom() {
|
||||
bitField0_ &= ~0x00000001;
|
||||
loginRandom = 0L;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint64 login_random = 1;</code>
|
||||
* @return the loginRandom
|
||||
*/
|
||||
public long getLoginRandom() {
|
||||
return loginRandom;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional uint64 login_random = 1;</code>
|
||||
* @param value the loginRandom to set
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq setLoginRandom(final long value) {
|
||||
bitField0_ |= 0x00000001;
|
||||
loginRandom = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .PlatformType platform = 12;</code>
|
||||
* @return whether the platform field is set
|
||||
*/
|
||||
public boolean hasPlatform() {
|
||||
return (bitField0_ & 0x00000002) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .PlatformType platform = 12;</code>
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq clearPlatform() {
|
||||
bitField0_ &= ~0x00000002;
|
||||
platform = 0;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .PlatformType platform = 12;</code>
|
||||
* @return the platform
|
||||
*/
|
||||
public PlatformTypeOuterClass.PlatformType getPlatform() {
|
||||
return PlatformTypeOuterClass.PlatformType.forNumber(platform);
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the value of the internal enum store. The result is
|
||||
* equivalent to {@link PlayerLoginCsReq#getPlatform()}.getNumber().
|
||||
*
|
||||
* @return numeric wire representation
|
||||
*/
|
||||
public int getPlatformValue() {
|
||||
return platform;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the value of the internal enum store. This does not
|
||||
* do any validity checks, so be sure to use appropriate value
|
||||
* constants from {@link PlatformTypeOuterClass.PlatformType}. Setting an invalid value
|
||||
* can cause {@link PlayerLoginCsReq#getPlatform()} to return null
|
||||
*
|
||||
* @param value the numeric wire value to set
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq setPlatformValue(final int value) {
|
||||
bitField0_ |= 0x00000002;
|
||||
platform = value;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional .PlatformType platform = 12;</code>
|
||||
* @param value the platform to set
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq setPlatform(final PlatformTypeOuterClass.PlatformType value) {
|
||||
bitField0_ |= 0x00000002;
|
||||
platform = value.getNumber();
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @return whether the signature field is set
|
||||
*/
|
||||
public boolean hasSignature() {
|
||||
return (bitField0_ & 0x00000004) != 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq clearSignature() {
|
||||
bitField0_ &= ~0x00000004;
|
||||
signature.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @return the signature
|
||||
*/
|
||||
public String getSignature() {
|
||||
return signature.getString();
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @return internal {@code Utf8String} representation of signature for reading
|
||||
*/
|
||||
public Utf8String getSignatureBytes() {
|
||||
return this.signature;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @return internal {@code Utf8String} representation of signature for modifications
|
||||
*/
|
||||
public Utf8String getMutableSignatureBytes() {
|
||||
bitField0_ |= 0x00000004;
|
||||
return this.signature;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @param value the signature to set
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq setSignature(final CharSequence value) {
|
||||
bitField0_ |= 0x00000004;
|
||||
signature.copyFrom(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* <code>optional string signature = 4;</code>
|
||||
* @param value the signature to set
|
||||
* @return this
|
||||
*/
|
||||
public PlayerLoginCsReq setSignature(final Utf8String value) {
|
||||
bitField0_ |= 0x00000004;
|
||||
signature.copyFrom(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq copyFrom(final PlayerLoginCsReq other) {
|
||||
cachedSize = other.cachedSize;
|
||||
if ((bitField0_ | other.bitField0_) != 0) {
|
||||
bitField0_ = other.bitField0_;
|
||||
loginRandom = other.loginRandom;
|
||||
platform = other.platform;
|
||||
signature.copyFrom(other.signature);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq mergeFrom(final PlayerLoginCsReq other) {
|
||||
if (other.isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
if (other.hasLoginRandom()) {
|
||||
setLoginRandom(other.loginRandom);
|
||||
}
|
||||
if (other.hasPlatform()) {
|
||||
setPlatformValue(other.platform);
|
||||
}
|
||||
if (other.hasSignature()) {
|
||||
getMutableSignatureBytes().copyFrom(other.signature);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq clear() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
loginRandom = 0L;
|
||||
platform = 0;
|
||||
signature.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq clearQuick() {
|
||||
if (isEmpty()) {
|
||||
return this;
|
||||
}
|
||||
cachedSize = -1;
|
||||
bitField0_ = 0;
|
||||
signature.clear();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object o) {
|
||||
if (o == this) {
|
||||
return true;
|
||||
}
|
||||
if (!(o instanceof PlayerLoginCsReq)) {
|
||||
return false;
|
||||
}
|
||||
PlayerLoginCsReq other = (PlayerLoginCsReq) o;
|
||||
return bitField0_ == other.bitField0_
|
||||
&& (!hasLoginRandom() || loginRandom == other.loginRandom)
|
||||
&& (!hasPlatform() || platform == other.platform)
|
||||
&& (!hasSignature() || signature.equals(other.signature));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void writeTo(final ProtoSink output) throws IOException {
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
output.writeRawByte((byte) 8);
|
||||
output.writeUInt64NoTag(loginRandom);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeRawByte((byte) 96);
|
||||
output.writeEnumNoTag(platform);
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
output.writeRawByte((byte) 34);
|
||||
output.writeStringNoTag(signature);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
protected int computeSerializedSize() {
|
||||
int size = 0;
|
||||
if ((bitField0_ & 0x00000001) != 0) {
|
||||
size += 1 + ProtoSink.computeUInt64SizeNoTag(loginRandom);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
size += 1 + ProtoSink.computeEnumSizeNoTag(platform);
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
size += 1 + ProtoSink.computeStringSizeNoTag(signature);
|
||||
}
|
||||
return size;
|
||||
}
|
||||
|
||||
@Override
|
||||
@SuppressWarnings("fallthrough")
|
||||
public PlayerLoginCsReq mergeFrom(final ProtoSource input) throws IOException {
|
||||
// Enabled Fall-Through Optimization (QuickBuffers)
|
||||
int tag = input.readTag();
|
||||
while (true) {
|
||||
switch (tag) {
|
||||
case 8: {
|
||||
// loginRandom
|
||||
loginRandom = input.readUInt64();
|
||||
bitField0_ |= 0x00000001;
|
||||
tag = input.readTag();
|
||||
if (tag != 96) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 96: {
|
||||
// platform
|
||||
final int value = input.readInt32();
|
||||
if (PlatformTypeOuterClass.PlatformType.forNumber(value) != null) {
|
||||
platform = value;
|
||||
bitField0_ |= 0x00000002;
|
||||
}
|
||||
tag = input.readTag();
|
||||
if (tag != 34) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
case 34: {
|
||||
// signature
|
||||
input.readString(signature);
|
||||
bitField0_ |= 0x00000004;
|
||||
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.writeUInt64(FieldNames.loginRandom, loginRandom);
|
||||
}
|
||||
if ((bitField0_ & 0x00000002) != 0) {
|
||||
output.writeEnum(FieldNames.platform, platform, PlatformTypeOuterClass.PlatformType.converter());
|
||||
}
|
||||
if ((bitField0_ & 0x00000004) != 0) {
|
||||
output.writeString(FieldNames.signature, signature);
|
||||
}
|
||||
output.endObject();
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq mergeFrom(final JsonSource input) throws IOException {
|
||||
if (!input.beginObject()) {
|
||||
return this;
|
||||
}
|
||||
while (!input.isAtEnd()) {
|
||||
switch (input.readFieldHash()) {
|
||||
case 1268567436:
|
||||
case -201491879: {
|
||||
if (input.isAtField(FieldNames.loginRandom)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
loginRandom = input.readUInt64();
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 1874684019: {
|
||||
if (input.isAtField(FieldNames.platform)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
final PlatformTypeOuterClass.PlatformType value = input.readEnum(PlatformTypeOuterClass.PlatformType.converter());
|
||||
if (value != null) {
|
||||
platform = value.getNumber();
|
||||
bitField0_ |= 0x00000002;
|
||||
} else {
|
||||
input.skipUnknownEnumValue();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 1073584312: {
|
||||
if (input.isAtField(FieldNames.signature)) {
|
||||
if (!input.trySkipNullValue()) {
|
||||
input.readString(signature);
|
||||
bitField0_ |= 0x00000004;
|
||||
}
|
||||
} else {
|
||||
input.skipUnknownField();
|
||||
}
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
input.skipUnknownField();
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
input.endObject();
|
||||
return this;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq clone() {
|
||||
return new PlayerLoginCsReq().copyFrom(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isEmpty() {
|
||||
return ((bitField0_) == 0);
|
||||
}
|
||||
|
||||
public static PlayerLoginCsReq parseFrom(final byte[] data) throws
|
||||
InvalidProtocolBufferException {
|
||||
return ProtoMessage.mergeFrom(new PlayerLoginCsReq(), data).checkInitialized();
|
||||
}
|
||||
|
||||
public static PlayerLoginCsReq parseFrom(final ProtoSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new PlayerLoginCsReq(), input).checkInitialized();
|
||||
}
|
||||
|
||||
public static PlayerLoginCsReq parseFrom(final JsonSource input) throws IOException {
|
||||
return ProtoMessage.mergeFrom(new PlayerLoginCsReq(), input).checkInitialized();
|
||||
}
|
||||
|
||||
/**
|
||||
* @return factory for creating PlayerLoginCsReq messages
|
||||
*/
|
||||
public static MessageFactory<PlayerLoginCsReq> getFactory() {
|
||||
return PlayerLoginCsReqFactory.INSTANCE;
|
||||
}
|
||||
|
||||
private enum PlayerLoginCsReqFactory implements MessageFactory<PlayerLoginCsReq> {
|
||||
INSTANCE;
|
||||
|
||||
@Override
|
||||
public PlayerLoginCsReq create() {
|
||||
return PlayerLoginCsReq.newInstance();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Contains name constants used for serializing JSON
|
||||
*/
|
||||
static class FieldNames {
|
||||
static final FieldName loginRandom = FieldName.forField("loginRandom", "login_random");
|
||||
|
||||
static final FieldName platform = FieldName.forField("platform");
|
||||
|
||||
static final FieldName signature = FieldName.forField("signature");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,6 +33,7 @@ public class GameData {
|
||||
@Getter private static Int2ObjectMap<HeroExcel> heroExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<ShopExcel> shopExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<RewardExcel> rewardExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<InteractExcel> interactExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<PlayerIconExcel> playerIconExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<ItemComposeExcel> itemComposeExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
@Getter private static Int2ObjectMap<ActivityPanelExcel> activityPanelExcelMap = new Int2ObjectOpenHashMap<>();
|
||||
|
||||
@@ -72,10 +72,12 @@ public class FloorInfo {
|
||||
// Hacky way to setup prop triggers
|
||||
if (json.contains("Maze_GroupProp_OpenTreasure_WhenMonsterDie")) {
|
||||
prop.setTrigger(new TriggerOpenTreasureWhenMonsterDie(group.getId()));
|
||||
} else if (json.contains("Maze_Chap02_X201_Event_PuzzleCompass_WayPoint_Controller_01")) {
|
||||
prop.setTrigger(new TriggerPuzzleCompassWayPointController(prop.getSharedValueByKey("PuzzleCompass_Prop"), prop.getSharedValueByKey("PuzzleChest_Prop")));
|
||||
} else if (json.contains("Maze_Chap02_X201_Event_PuzzleCompass_WayPoint_Controller")) {
|
||||
prop.setTrigger(new TriggerPuzzleCompassWayPointController(group.getId()));
|
||||
}
|
||||
|
||||
// Clear for garbage collection
|
||||
prop.setValueSource(null);
|
||||
prop.setInitLevelGraph(null);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -25,8 +25,8 @@ public class PropInfo extends ObjectInfo {
|
||||
private int CocoonID;
|
||||
private int FarmElementID;
|
||||
private boolean IsClientOnly;
|
||||
private PropValueSource ValueSource;
|
||||
|
||||
@Setter private PropValueSource ValueSource;
|
||||
@Setter private String InitLevelGraph;
|
||||
@Setter private PropState State = PropState.Closed;
|
||||
|
||||
|
||||
27
src/main/java/emu/lunarcore/data/excel/InteractExcel.java
Normal file
27
src/main/java/emu/lunarcore/data/excel/InteractExcel.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package emu.lunarcore.data.excel;
|
||||
|
||||
import emu.lunarcore.data.GameResource;
|
||||
import emu.lunarcore.data.ResourceType;
|
||||
import emu.lunarcore.game.enums.PropState;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
@ResourceType(name = {"InteractConfig.json"})
|
||||
public class InteractExcel extends GameResource {
|
||||
private int InteractID;
|
||||
private PropState SrcState;
|
||||
private PropState TargetState = PropState.Closed;
|
||||
|
||||
@Override
|
||||
public int getId() {
|
||||
return InteractID;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLoad() {
|
||||
// Just in case we forget to update the prop state enum
|
||||
if (this.TargetState == null) {
|
||||
this.TargetState = PropState.Closed;
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,7 +1,10 @@
|
||||
package emu.lunarcore.data.excel;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import emu.lunarcore.data.GameResource;
|
||||
import emu.lunarcore.data.ResourceType;
|
||||
import emu.lunarcore.game.enums.PropState;
|
||||
import emu.lunarcore.game.enums.PropType;
|
||||
import lombok.Getter;
|
||||
|
||||
@@ -12,6 +15,7 @@ public class PropExcel extends GameResource {
|
||||
private long PropName;
|
||||
private String JsonPath;
|
||||
private PropType PropType;
|
||||
private Set<PropState> PropStateList;
|
||||
|
||||
private transient boolean recoverHp;
|
||||
private transient boolean recoverMp;
|
||||
@@ -35,6 +39,11 @@ public class PropExcel extends GameResource {
|
||||
}
|
||||
}
|
||||
|
||||
// Sanity
|
||||
if (this.PropStateList == null) {
|
||||
this.PropStateList = Set.of();
|
||||
}
|
||||
|
||||
// Clear for optimization
|
||||
this.JsonPath = null;
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import emu.lunarcore.data.GameData;
|
||||
import emu.lunarcore.data.config.AnchorInfo;
|
||||
import emu.lunarcore.data.config.FloorInfo;
|
||||
import emu.lunarcore.data.config.PropInfo;
|
||||
import emu.lunarcore.data.excel.InteractExcel;
|
||||
import emu.lunarcore.data.excel.ItemUseExcel;
|
||||
import emu.lunarcore.data.excel.MapEntranceExcel;
|
||||
import emu.lunarcore.data.excel.MazePlaneExcel;
|
||||
@@ -578,7 +579,7 @@ public class Player implements Tickable {
|
||||
return true;
|
||||
}
|
||||
|
||||
public EntityProp interactWithProp(int propEntityId) {
|
||||
public EntityProp interactWithProp(int interactId, int propEntityId) {
|
||||
// Sanity
|
||||
if (this.getScene() == null) return null;
|
||||
|
||||
@@ -592,33 +593,44 @@ public class Player implements Tickable {
|
||||
return null;
|
||||
}
|
||||
|
||||
// Handle prop interaction action
|
||||
// Get interact handler
|
||||
InteractExcel interactExcel = GameData.getInteractExcelMap().get(interactId);
|
||||
if (interactExcel == null) {
|
||||
return prop;
|
||||
}
|
||||
|
||||
// Validate
|
||||
if (interactExcel.getSrcState() != null && prop.getState() != interactExcel.getSrcState()) {
|
||||
return prop;
|
||||
}
|
||||
|
||||
// Save old state
|
||||
PropState oldState = prop.getState();
|
||||
|
||||
// Set group and prop state
|
||||
this.sendPacket(new PacketGroupStateChangeScNotify(getEntryId(), prop.getGroupId(), interactExcel.getTargetState()));
|
||||
prop.setState(interactExcel.getTargetState());
|
||||
|
||||
// Handle any extra interaction actions
|
||||
switch (prop.getExcel().getPropType()) {
|
||||
case PROP_TREASURE_CHEST -> {
|
||||
if (prop.getState() == PropState.ChestClosed) {
|
||||
// Open chest
|
||||
prop.setState(PropState.ChestUsed);
|
||||
if (oldState == PropState.ChestClosed && prop.getState() == PropState.ChestUsed) {
|
||||
// Handle drops
|
||||
var drops = this.getServer().getDropService().calculateDropsFromProp(prop.getPropId());
|
||||
this.getInventory().addItems(drops, true);
|
||||
// Done
|
||||
return prop;
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
case PROP_MAZE_PUZZLE -> {
|
||||
// Finish puzzle
|
||||
prop.setState(PropState.Locked);
|
||||
// Trigger event
|
||||
this.getScene().invokePropTrigger(PropTriggerType.PUZZLE_FINISH, prop.getGroupId(), prop.getInstId());
|
||||
//
|
||||
return prop;
|
||||
}
|
||||
default -> {
|
||||
return null;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Return prop when we are done
|
||||
return prop;
|
||||
}
|
||||
|
||||
public void onMove() {
|
||||
|
||||
@@ -156,6 +156,14 @@ public class Scene implements Tickable {
|
||||
return this.getEntities().get(id);
|
||||
}
|
||||
|
||||
public synchronized <T extends GameEntity> List<T> getEntitiesByGroup(Class<T> entityType, int groupId) {
|
||||
return this.getEntities().values()
|
||||
.stream()
|
||||
.filter(e -> entityType.isInstance(e) && e.getGroupId() == groupId)
|
||||
.map(entityType::cast)
|
||||
.toList();
|
||||
}
|
||||
|
||||
public void syncLineup() {
|
||||
// Get current lineup
|
||||
PlayerLineup lineup = getPlayer().getLineupManager().getCurrentLineup();
|
||||
|
||||
@@ -54,17 +54,30 @@ public class EntityProp implements GameEntity {
|
||||
return excel.getId();
|
||||
}
|
||||
|
||||
public void setState(PropState state) {
|
||||
this.setState(state, this.getScene().isLoaded());
|
||||
public boolean setState(PropState state) {
|
||||
return this.setState(state, this.getScene().isLoaded());
|
||||
}
|
||||
|
||||
public boolean setState(PropState state, boolean sendPacket) {
|
||||
// Only set state if its been changed
|
||||
PropState oldState = this.getState();
|
||||
if (oldState == state) return false;
|
||||
|
||||
// Sanity check
|
||||
if (!this.getExcel().getPropStateList().contains(state)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
public void setState(PropState state, boolean sendPacket) {
|
||||
// Set state
|
||||
this.state = state;
|
||||
|
||||
// Sync state update to client
|
||||
if (sendPacket) {
|
||||
this.getScene().getPlayer().sendPacket(new PacketSceneGroupRefreshScNotify(this, null));
|
||||
}
|
||||
|
||||
// Success
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -98,6 +111,10 @@ public class EntityProp implements GameEntity {
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Prop: " + this.getEntityId() + ", Group: " + this.groupId + ", Inst: " + this.getInstId();
|
||||
return "[Prop] EntityId: " + this.getEntityId() +
|
||||
", PropId: " + this.getExcel().getId() +
|
||||
" (" + this.getExcel().getPropType() + ")" +
|
||||
", Group: " + this.groupId +
|
||||
", ConfigId: " + this.getInstId();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,6 @@ import emu.lunarcore.game.enums.PropState;
|
||||
import emu.lunarcore.game.enums.PropType;
|
||||
import emu.lunarcore.game.scene.Scene;
|
||||
import emu.lunarcore.game.scene.entity.EntityProp;
|
||||
import emu.lunarcore.game.scene.entity.GameEntity;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
@@ -27,18 +26,11 @@ public class TriggerOpenTreasureWhenMonsterDie extends PropTrigger {
|
||||
|
||||
@Override
|
||||
public void run(Scene scene) {
|
||||
synchronized (scene) {
|
||||
for (GameEntity entity : scene.getEntities().values()) {
|
||||
if (entity.getGroupId() != this.groupId) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (entity instanceof EntityProp prop) {
|
||||
// Open trigger
|
||||
for (var prop : scene.getEntitiesByGroup(EntityProp.class, this.getGroupId())) {
|
||||
if (prop.getExcel().getPropType() == PropType.PROP_TREASURE_CHEST) {
|
||||
prop.setState(PropState.ChestClosed);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,23 +3,14 @@ package emu.lunarcore.game.scene.triggers;
|
||||
import emu.lunarcore.game.enums.PropState;
|
||||
import emu.lunarcore.game.scene.Scene;
|
||||
import emu.lunarcore.game.scene.entity.EntityProp;
|
||||
import emu.lunarcore.game.scene.entity.GameEntity;
|
||||
import emu.lunarcore.util.Utils;
|
||||
import lombok.Getter;
|
||||
|
||||
@Getter
|
||||
public class TriggerPuzzleCompassWayPointController extends PropTrigger {
|
||||
private int groupId;
|
||||
private int puzzleInstId;
|
||||
private int chestInstId;
|
||||
|
||||
public TriggerPuzzleCompassWayPointController(String compassKey, String chestKey) {
|
||||
String[] compass = compassKey.split(",");
|
||||
String[] chest = chestKey.split(",");
|
||||
|
||||
this.groupId = Utils.parseSafeInt(compass[0]);
|
||||
this.puzzleInstId = Utils.parseSafeInt(compass[1]);
|
||||
this.chestInstId = Utils.parseSafeInt(chest[1]);
|
||||
public TriggerPuzzleCompassWayPointController(int groupId) {
|
||||
this.groupId = groupId;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -29,23 +20,13 @@ public class TriggerPuzzleCompassWayPointController extends PropTrigger {
|
||||
|
||||
@Override
|
||||
public boolean shouldRun(int groupId, int instId) {
|
||||
return this.groupId == groupId && this.puzzleInstId == instId;
|
||||
return this.groupId == groupId;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run(Scene scene) {
|
||||
synchronized (scene) {
|
||||
for (GameEntity entity : scene.getEntities().values()) {
|
||||
if (entity.getGroupId() != this.groupId) {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (entity instanceof EntityProp prop) {
|
||||
if (prop.getInstId() == chestInstId) {
|
||||
prop.setState(PropState.ChestClosed);
|
||||
}
|
||||
}
|
||||
}
|
||||
for (var prop : scene.getEntitiesByGroup(EntityProp.class, groupId)) {
|
||||
prop.setState(PropState.Open);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
package emu.lunarcore.server.packet.recv;
|
||||
|
||||
import emu.lunarcore.proto.GroupStateChangeCsReqOuterClass.GroupStateChangeCsReq;
|
||||
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.PacketGroupStateChangeScNotify;
|
||||
import emu.lunarcore.server.packet.send.PacketGroupStateChangeScRsp;
|
||||
|
||||
@Opcodes(CmdId.GroupStateChangeCsReq)
|
||||
public class HandlerGroupStateChangeCsReq extends PacketHandler {
|
||||
|
||||
@Override
|
||||
public void handle(GameSession session, byte[] data) throws Exception {
|
||||
var req = GroupStateChangeCsReq.parseFrom(data);
|
||||
var groupInfo = req.getMutableGroupInfo();
|
||||
|
||||
session.send(new PacketGroupStateChangeScNotify(groupInfo));
|
||||
session.send(new PacketGroupStateChangeScRsp(groupInfo));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -15,7 +15,7 @@ public class HandlerInteractPropCsReq extends PacketHandler {
|
||||
public void handle(GameSession session, byte[] data) throws Exception {
|
||||
var req = InteractPropCsReq.parseFrom(data);
|
||||
|
||||
EntityProp prop = session.getPlayer().interactWithProp(req.getPropEntityId());
|
||||
EntityProp prop = session.getPlayer().interactWithProp(req.getInteractId(), req.getPropEntityId());
|
||||
|
||||
session.send(new PacketInteractPropScRsp(prop));
|
||||
}
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
package emu.lunarcore.server.packet.send;
|
||||
|
||||
import emu.lunarcore.game.enums.PropState;
|
||||
import emu.lunarcore.proto.GroupStateChangeScNotifyOuterClass.GroupStateChangeScNotify;
|
||||
import emu.lunarcore.proto.GroupStateInfoOuterClass.GroupStateInfo;
|
||||
import emu.lunarcore.server.packet.BasePacket;
|
||||
import emu.lunarcore.server.packet.CmdId;
|
||||
|
||||
public class PacketGroupStateChangeScNotify extends BasePacket {
|
||||
|
||||
public PacketGroupStateChangeScNotify(GroupStateInfo groupInfo) {
|
||||
super(CmdId.GroupStateChangeScNotify);
|
||||
|
||||
var data = GroupStateChangeScNotify.newInstance();
|
||||
data.setGroupInfo(groupInfo);
|
||||
|
||||
this.setData(data);
|
||||
}
|
||||
|
||||
public PacketGroupStateChangeScNotify(int entryId, int groupId, PropState state) {
|
||||
super(CmdId.GroupStateChangeScNotify);
|
||||
|
||||
var data = GroupStateChangeScNotify.newInstance();
|
||||
|
||||
data.getMutableGroupInfo()
|
||||
.setEntryId(entryId)
|
||||
.setGroupId(groupId)
|
||||
.setGroupState(state.getVal());
|
||||
|
||||
this.setData(data);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package emu.lunarcore.server.packet.send;
|
||||
|
||||
import emu.lunarcore.proto.GroupStateChangeScNotifyOuterClass.GroupStateChangeScNotify;
|
||||
import emu.lunarcore.proto.GroupStateInfoOuterClass.GroupStateInfo;
|
||||
import emu.lunarcore.server.packet.BasePacket;
|
||||
import emu.lunarcore.server.packet.CmdId;
|
||||
|
||||
public class PacketGroupStateChangeScRsp extends BasePacket {
|
||||
|
||||
public PacketGroupStateChangeScRsp(GroupStateInfo groupInfo) {
|
||||
super(CmdId.GroupStateChangeScRsp);
|
||||
|
||||
var data = GroupStateChangeScNotify.newInstance();
|
||||
data.setGroupInfo(groupInfo);
|
||||
|
||||
this.setData(data);
|
||||
}
|
||||
}
|
||||
@@ -35,13 +35,17 @@ public class PacketSceneGroupRefreshScNotify extends BasePacket {
|
||||
|
||||
var group = SceneGroupRefreshInfo.newInstance();
|
||||
|
||||
if (toAdd != null) {
|
||||
for (var entity : toAdd) {
|
||||
group.addRefreshEntity(SceneEntityRefreshInfo.newInstance().setAddEntity(entity.toSceneEntityProto()));
|
||||
}
|
||||
}
|
||||
|
||||
if (toRemove != null) {
|
||||
for (var entity : toRemove) {
|
||||
group.addRefreshEntity(SceneEntityRefreshInfo.newInstance().setDelEntity(entity.getEntityId()));
|
||||
}
|
||||
}
|
||||
|
||||
var data = SceneGroupRefreshScNotify.newInstance()
|
||||
.addGroupRefreshInfo(group);
|
||||
|
||||
Reference in New Issue
Block a user