Merge branch 'development' into unstable

# Conflicts:
#	src/generated/main/java/emu/grasscutter/net/proto/ResinChangeNotifyOuterClass.java
#	src/main/java/emu/grasscutter/game/managers/ResinManager.java
#	src/main/java/emu/grasscutter/game/player/Player.java
#	src/main/java/emu/grasscutter/game/props/ItemUseAction/ItemUseAddItem.java
#	src/main/java/emu/grasscutter/server/packet/send/PacketResinChangeNotify.java
This commit is contained in:
KingRainbow44 2023-04-10 01:49:12 -04:00
commit 7ad6c892ce
No known key found for this signature in database
GPG Key ID: FC2CB64B00D257BE
13 changed files with 3313 additions and 940 deletions

View File

@ -1,7 +1,7 @@
## Description ## Description
Please carefully read the [Contributing note](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md) and [Code of conduct](https://github.com/Grasscutters/Grasscutter/blob/development/CODE_OF_CONDUCT.md) before making any pull requests. Please carefully read the [Contributing note](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md) and [Code of conduct](https://github.com/Grasscutters/Grasscutter/blob/development/CODE_OF_CONDUCT.md) before making any pull requests.
And, **Do not make a pull request to merge into stable unless it is a hotfix. Use the development branch instead.**
## Issues fixed by this PR ## Issues fixed by this PR
<!--- Put the links of issues that may be fixed by this PR here (if any). --> <!--- Put the links of issues that may be fixed by this PR here (if any). -->

View File

@ -0,0 +1,475 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: BuyResinReq.proto
package emu.grasscutter.net.proto;
public final class BuyResinReqOuterClass {
private BuyResinReqOuterClass() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
public interface BuyResinReqOrBuilder extends
// @@protoc_insertion_point(interface_extends:BuyResinReq)
com.google.protobuf.MessageOrBuilder {
}
/**
* <pre>
* Name: NIBFJEFHMIM
* CmdId: 630
* </pre>
*
* Protobuf type {@code BuyResinReq}
*/
public static final class BuyResinReq extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:BuyResinReq)
BuyResinReqOrBuilder {
private static final long serialVersionUID = 0L;
// Use BuyResinReq.newBuilder() to construct.
private BuyResinReq(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private BuyResinReq() {
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new BuyResinReq();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private BuyResinReq(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.internal_static_BuyResinReq_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.internal_static_BuyResinReq_fieldAccessorTable
.ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.class, emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.Builder.class);
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq)) {
return super.equals(obj);
}
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq other = (emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq) obj;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Name: NIBFJEFHMIM
* CmdId: 630
* </pre>
*
* Protobuf type {@code BuyResinReq}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:BuyResinReq)
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReqOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.internal_static_BuyResinReq_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.internal_static_BuyResinReq_fieldAccessorTable
.ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.class, emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.Builder.class);
}
// Construct using emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.internal_static_BuyResinReq_descriptor;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq getDefaultInstanceForType() {
return emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.getDefaultInstance();
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq build() {
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq buildPartial() {
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq result = new emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq(this);
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq) {
return mergeFrom((emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq other) {
if (other == emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq.getDefaultInstance()) return this;
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:BuyResinReq)
}
// @@protoc_insertion_point(class_scope:BuyResinReq)
private static final emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq();
}
public static emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<BuyResinReq>
PARSER = new com.google.protobuf.AbstractParser<BuyResinReq>() {
@java.lang.Override
public BuyResinReq parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new BuyResinReq(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<BuyResinReq> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<BuyResinReq> getParserForType() {
return PARSER;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinReqOuterClass.BuyResinReq getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_BuyResinReq_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_BuyResinReq_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor;
}
private static com.google.protobuf.Descriptors.FileDescriptor
descriptor;
static {
java.lang.String[] descriptorData = {
"\n\021BuyResinReq.proto\"\r\n\013BuyResinReqB\033\n\031em" +
"u.grasscutter.net.protob\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
});
internal_static_BuyResinReq_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_BuyResinReq_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_BuyResinReq_descriptor,
new java.lang.String[] { });
}
// @@protoc_insertion_point(outer_class_scope)
}

View File

@ -0,0 +1,616 @@
// Generated by the protocol buffer compiler. DO NOT EDIT!
// source: BuyResinRsp.proto
package emu.grasscutter.net.proto;
public final class BuyResinRspOuterClass {
private BuyResinRspOuterClass() {}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistryLite registry) {
}
public static void registerAllExtensions(
com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
public interface BuyResinRspOrBuilder extends
// @@protoc_insertion_point(interface_extends:BuyResinRsp)
com.google.protobuf.MessageOrBuilder {
/**
* <code>int32 retcode = 9;</code>
* @return The retcode.
*/
int getRetcode();
/**
* <code>uint32 cur_value = 3;</code>
* @return The curValue.
*/
int getCurValue();
}
/**
* <pre>
* Name: PFLBPGOHFKJ
* CmdId: 687
* </pre>
*
* Protobuf type {@code BuyResinRsp}
*/
public static final class BuyResinRsp extends
com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:BuyResinRsp)
BuyResinRspOrBuilder {
private static final long serialVersionUID = 0L;
// Use BuyResinRsp.newBuilder() to construct.
private BuyResinRsp(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder);
}
private BuyResinRsp() {
}
@java.lang.Override
@SuppressWarnings({"unused"})
protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new BuyResinRsp();
}
@java.lang.Override
public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields;
}
private BuyResinRsp(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
this();
if (extensionRegistry == null) {
throw new java.lang.NullPointerException();
}
com.google.protobuf.UnknownFieldSet.Builder unknownFields =
com.google.protobuf.UnknownFieldSet.newBuilder();
try {
boolean done = false;
while (!done) {
int tag = input.readTag();
switch (tag) {
case 0:
done = true;
break;
case 24: {
curValue_ = input.readUInt32();
break;
}
case 72: {
retcode_ = input.readInt32();
break;
}
default: {
if (!parseUnknownField(
input, unknownFields, extensionRegistry, tag)) {
done = true;
}
break;
}
}
}
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally {
this.unknownFields = unknownFields.build();
makeExtensionsImmutable();
}
}
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.internal_static_BuyResinRsp_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.internal_static_BuyResinRsp_fieldAccessorTable
.ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.class, emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.Builder.class);
}
public static final int RETCODE_FIELD_NUMBER = 9;
private int retcode_;
/**
* <code>int32 retcode = 9;</code>
* @return The retcode.
*/
@java.lang.Override
public int getRetcode() {
return retcode_;
}
public static final int CUR_VALUE_FIELD_NUMBER = 3;
private int curValue_;
/**
* <code>uint32 cur_value = 3;</code>
* @return The curValue.
*/
@java.lang.Override
public int getCurValue() {
return curValue_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized;
if (isInitialized == 1) return true;
if (isInitialized == 0) return false;
memoizedIsInitialized = 1;
return true;
}
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
if (curValue_ != 0) {
output.writeUInt32(3, curValue_);
}
if (retcode_ != 0) {
output.writeInt32(9, retcode_);
}
unknownFields.writeTo(output);
}
@java.lang.Override
public int getSerializedSize() {
int size = memoizedSize;
if (size != -1) return size;
size = 0;
if (curValue_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeUInt32Size(3, curValue_);
}
if (retcode_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeInt32Size(9, retcode_);
}
size += unknownFields.getSerializedSize();
memoizedSize = size;
return size;
}
@java.lang.Override
public boolean equals(final java.lang.Object obj) {
if (obj == this) {
return true;
}
if (!(obj instanceof emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp)) {
return super.equals(obj);
}
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp other = (emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp) obj;
if (getRetcode()
!= other.getRetcode()) return false;
if (getCurValue()
!= other.getCurValue()) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@java.lang.Override
public int hashCode() {
if (memoizedHashCode != 0) {
return memoizedHashCode;
}
int hash = 41;
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + RETCODE_FIELD_NUMBER;
hash = (53 * hash) + getRetcode();
hash = (37 * hash) + CUR_VALUE_FIELD_NUMBER;
hash = (53 * hash) + getCurValue();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(byte[] data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parseFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
@java.lang.Override
public Builder newBuilderForType() { return newBuilder(); }
public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder();
}
public static Builder newBuilder(emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
}
@java.lang.Override
public Builder toBuilder() {
return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
}
@java.lang.Override
protected Builder newBuilderForType(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
Builder builder = new Builder(parent);
return builder;
}
/**
* <pre>
* Name: PFLBPGOHFKJ
* CmdId: 687
* </pre>
*
* Protobuf type {@code BuyResinRsp}
*/
public static final class Builder extends
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
// @@protoc_insertion_point(builder_implements:BuyResinRsp)
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRspOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor
getDescriptor() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.internal_static_BuyResinRsp_descriptor;
}
@java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.internal_static_BuyResinRsp_fieldAccessorTable
.ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.class, emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.Builder.class);
}
// Construct using emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.newBuilder()
private Builder() {
maybeForceBuilderInitialization();
}
private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent);
maybeForceBuilderInitialization();
}
private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
}
@java.lang.Override
public Builder clear() {
super.clear();
retcode_ = 0;
curValue_ = 0;
return this;
}
@java.lang.Override
public com.google.protobuf.Descriptors.Descriptor
getDescriptorForType() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.internal_static_BuyResinRsp_descriptor;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp getDefaultInstanceForType() {
return emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.getDefaultInstance();
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp build() {
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp result = buildPartial();
if (!result.isInitialized()) {
throw newUninitializedMessageException(result);
}
return result;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp buildPartial() {
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp result = new emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp(this);
result.retcode_ = retcode_;
result.curValue_ = curValue_;
onBuilt();
return result;
}
@java.lang.Override
public Builder clone() {
return super.clone();
}
@java.lang.Override
public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value);
}
@java.lang.Override
public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field);
}
@java.lang.Override
public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof);
}
@java.lang.Override
public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
int index, java.lang.Object value) {
return super.setRepeatedField(field, index, value);
}
@java.lang.Override
public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value);
}
@java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) {
if (other instanceof emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp) {
return mergeFrom((emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp)other);
} else {
super.mergeFrom(other);
return this;
}
}
public Builder mergeFrom(emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp other) {
if (other == emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp.getDefaultInstance()) return this;
if (other.getRetcode() != 0) {
setRetcode(other.getRetcode());
}
if (other.getCurValue() != 0) {
setCurValue(other.getCurValue());
}
this.mergeUnknownFields(other.unknownFields);
onChanged();
return this;
}
@java.lang.Override
public final boolean isInitialized() {
return true;
}
@java.lang.Override
public Builder mergeFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp parsedMessage = null;
try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = (emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp) e.getUnfinishedMessage();
throw e.unwrapIOException();
} finally {
if (parsedMessage != null) {
mergeFrom(parsedMessage);
}
}
return this;
}
private int retcode_ ;
/**
* <code>int32 retcode = 9;</code>
* @return The retcode.
*/
@java.lang.Override
public int getRetcode() {
return retcode_;
}
/**
* <code>int32 retcode = 9;</code>
* @param value The retcode to set.
* @return This builder for chaining.
*/
public Builder setRetcode(int value) {
retcode_ = value;
onChanged();
return this;
}
/**
* <code>int32 retcode = 9;</code>
* @return This builder for chaining.
*/
public Builder clearRetcode() {
retcode_ = 0;
onChanged();
return this;
}
private int curValue_ ;
/**
* <code>uint32 cur_value = 3;</code>
* @return The curValue.
*/
@java.lang.Override
public int getCurValue() {
return curValue_;
}
/**
* <code>uint32 cur_value = 3;</code>
* @param value The curValue to set.
* @return This builder for chaining.
*/
public Builder setCurValue(int value) {
curValue_ = value;
onChanged();
return this;
}
/**
* <code>uint32 cur_value = 3;</code>
* @return This builder for chaining.
*/
public Builder clearCurValue() {
curValue_ = 0;
onChanged();
return this;
}
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.setUnknownFields(unknownFields);
}
@java.lang.Override
public final Builder mergeUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
return super.mergeUnknownFields(unknownFields);
}
// @@protoc_insertion_point(builder_scope:BuyResinRsp)
}
// @@protoc_insertion_point(class_scope:BuyResinRsp)
private static final emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp DEFAULT_INSTANCE;
static {
DEFAULT_INSTANCE = new emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp();
}
public static emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp getDefaultInstance() {
return DEFAULT_INSTANCE;
}
private static final com.google.protobuf.Parser<BuyResinRsp>
PARSER = new com.google.protobuf.AbstractParser<BuyResinRsp>() {
@java.lang.Override
public BuyResinRsp parsePartialFrom(
com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException {
return new BuyResinRsp(input, extensionRegistry);
}
};
public static com.google.protobuf.Parser<BuyResinRsp> parser() {
return PARSER;
}
@java.lang.Override
public com.google.protobuf.Parser<BuyResinRsp> getParserForType() {
return PARSER;
}
@java.lang.Override
public emu.grasscutter.net.proto.BuyResinRspOuterClass.BuyResinRsp getDefaultInstanceForType() {
return DEFAULT_INSTANCE;
}
}
private static final com.google.protobuf.Descriptors.Descriptor
internal_static_BuyResinRsp_descriptor;
private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_BuyResinRsp_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor;
}
private static com.google.protobuf.Descriptors.FileDescriptor
descriptor;
static {
java.lang.String[] descriptorData = {
"\n\021BuyResinRsp.proto\"1\n\013BuyResinRsp\022\017\n\007re" +
"tcode\030\t \001(\005\022\021\n\tcur_value\030\003 \001(\rB\033\n\031emu.gr" +
"asscutter.net.protob\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
new com.google.protobuf.Descriptors.FileDescriptor[] {
});
internal_static_BuyResinRsp_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_BuyResinRsp_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_BuyResinRsp_descriptor,
new java.lang.String[] { "Retcode", "CurValue", });
}
// @@protoc_insertion_point(outer_class_scope)
}

View File

@ -5,51 +5,42 @@ package emu.grasscutter.net.proto;
public final class ResinChangeNotifyOuterClass { public final class ResinChangeNotifyOuterClass {
private ResinChangeNotifyOuterClass() {} private ResinChangeNotifyOuterClass() {}
public static void registerAllExtensions(
public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {} com.google.protobuf.ExtensionRegistryLite registry) {
public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
} }
public interface ResinChangeNotifyOrBuilder public static void registerAllExtensions(
extends com.google.protobuf.ExtensionRegistry registry) {
registerAllExtensions(
(com.google.protobuf.ExtensionRegistryLite) registry);
}
public interface ResinChangeNotifyOrBuilder extends
// @@protoc_insertion_point(interface_extends:ResinChangeNotify) // @@protoc_insertion_point(interface_extends:ResinChangeNotify)
com.google.protobuf.MessageOrBuilder { com.google.protobuf.MessageOrBuilder {
/** /**
* <code>uint32 cur_value = 14;</code> * <code>uint32 cur_value = 14;</code>
*
* @return The curValue. * @return The curValue.
*/ */
int getCurValue(); int getCurValue();
/** /**
* <code>uint32 curBuyCount = 13;</code> * <code>uint32 next_add_timestamp = 13;</code>
*
* @return The curBuyCount.
*/
int getCurBuyCount();
/**
* <code>uint32 nextAddTimestamp = 12;</code>
*
* @return The nextAddTimestamp. * @return The nextAddTimestamp.
*/ */
int getNextAddTimestamp(); int getNextAddTimestamp();
/**
* <code>uint32 cur_buy_count = 12;</code>
* @return The curBuyCount.
*/
int getCurBuyCount();
} }
/** /**
*
*
* <pre>
* Name: IBIMGHOHNDK
* CmdId: 649
* </pre>
*
* Protobuf type {@code ResinChangeNotify} * Protobuf type {@code ResinChangeNotify}
*/ */
public static final class ResinChangeNotify extends com.google.protobuf.GeneratedMessageV3 public static final class ResinChangeNotify extends
implements com.google.protobuf.GeneratedMessageV3 implements
// @@protoc_insertion_point(message_implements:ResinChangeNotify) // @@protoc_insertion_point(message_implements:ResinChangeNotify)
ResinChangeNotifyOrBuilder { ResinChangeNotifyOrBuilder {
private static final long serialVersionUID = 0L; private static final long serialVersionUID = 0L;
@ -57,20 +48,21 @@ public final class ResinChangeNotifyOuterClass {
private ResinChangeNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) { private ResinChangeNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
super(builder); super(builder);
} }
private ResinChangeNotify() {
private ResinChangeNotify() {} }
@java.lang.Override @java.lang.Override
@SuppressWarnings({"unused"}) @SuppressWarnings({"unused"})
protected java.lang.Object newInstance(UnusedPrivateParameter unused) { protected java.lang.Object newInstance(
UnusedPrivateParameter unused) {
return new ResinChangeNotify(); return new ResinChangeNotify();
} }
@java.lang.Override @java.lang.Override
public final com.google.protobuf.UnknownFieldSet getUnknownFields() { public final com.google.protobuf.UnknownFieldSet
getUnknownFields() {
return this.unknownFields; return this.unknownFields;
} }
private ResinChangeNotify( private ResinChangeNotify(
com.google.protobuf.CodedInputStream input, com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) com.google.protobuf.ExtensionRegistryLite extensionRegistry)
@ -89,24 +81,24 @@ public final class ResinChangeNotifyOuterClass {
case 0: case 0:
done = true; done = true;
break; break;
case 96: case 96: {
{
nextAddTimestamp_ = input.readUInt32();
break;
}
case 104:
{
curBuyCount_ = input.readUInt32(); curBuyCount_ = input.readUInt32();
break; break;
} }
case 112: case 104: {
{
nextAddTimestamp_ = input.readUInt32();
break;
}
case 112: {
curValue_ = input.readUInt32(); curValue_ = input.readUInt32();
break; break;
} }
default: default: {
{ if (!parseUnknownField(
if (!parseUnknownField(input, unknownFields, extensionRegistry, tag)) { input, unknownFields, extensionRegistry, tag)) {
done = true; done = true;
} }
break; break;
@ -116,34 +108,30 @@ public final class ResinChangeNotifyOuterClass {
} catch (com.google.protobuf.InvalidProtocolBufferException e) { } catch (com.google.protobuf.InvalidProtocolBufferException e) {
throw e.setUnfinishedMessage(this); throw e.setUnfinishedMessage(this);
} catch (java.io.IOException e) { } catch (java.io.IOException e) {
throw new com.google.protobuf.InvalidProtocolBufferException(e).setUnfinishedMessage(this); throw new com.google.protobuf.InvalidProtocolBufferException(
e).setUnfinishedMessage(this);
} finally { } finally {
this.unknownFields = unknownFields.build(); this.unknownFields = unknownFields.build();
makeExtensionsImmutable(); makeExtensionsImmutable();
} }
} }
public static final com.google.protobuf.Descriptors.Descriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { getDescriptor() {
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.internal_static_ResinChangeNotify_descriptor;
.internal_static_ResinChangeNotify_descriptor;
} }
@java.lang.Override @java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() { internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.internal_static_ResinChangeNotify_fieldAccessorTable
.internal_static_ResinChangeNotify_fieldAccessorTable
.ensureFieldAccessorsInitialized( .ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.class, emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.class, emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.Builder.class);
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.Builder
.class);
} }
public static final int CUR_VALUE_FIELD_NUMBER = 14; public static final int CUR_VALUE_FIELD_NUMBER = 14;
private int curValue_; private int curValue_;
/** /**
* <code>uint32 cur_value = 14;</code> * <code>uint32 cur_value = 14;</code>
*
* @return The curValue. * @return The curValue.
*/ */
@java.lang.Override @java.lang.Override
@ -151,23 +139,10 @@ public final class ResinChangeNotifyOuterClass {
return curValue_; return curValue_;
} }
public static final int CURBUYCOUNT_FIELD_NUMBER = 13; public static final int NEXT_ADD_TIMESTAMP_FIELD_NUMBER = 13;
private int curBuyCount_;
/**
* <code>uint32 curBuyCount = 13;</code>
*
* @return The curBuyCount.
*/
@java.lang.Override
public int getCurBuyCount() {
return curBuyCount_;
}
public static final int NEXTADDTIMESTAMP_FIELD_NUMBER = 12;
private int nextAddTimestamp_; private int nextAddTimestamp_;
/** /**
* <code>uint32 nextAddTimestamp = 12;</code> * <code>uint32 next_add_timestamp = 13;</code>
*
* @return The nextAddTimestamp. * @return The nextAddTimestamp.
*/ */
@java.lang.Override @java.lang.Override
@ -175,8 +150,18 @@ public final class ResinChangeNotifyOuterClass {
return nextAddTimestamp_; return nextAddTimestamp_;
} }
private byte memoizedIsInitialized = -1; public static final int CUR_BUY_COUNT_FIELD_NUMBER = 12;
private int curBuyCount_;
/**
* <code>uint32 cur_buy_count = 12;</code>
* @return The curBuyCount.
*/
@java.lang.Override
public int getCurBuyCount() {
return curBuyCount_;
}
private byte memoizedIsInitialized = -1;
@java.lang.Override @java.lang.Override
public final boolean isInitialized() { public final boolean isInitialized() {
byte isInitialized = memoizedIsInitialized; byte isInitialized = memoizedIsInitialized;
@ -188,12 +173,13 @@ public final class ResinChangeNotifyOuterClass {
} }
@java.lang.Override @java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { public void writeTo(com.google.protobuf.CodedOutputStream output)
if (nextAddTimestamp_ != 0) { throws java.io.IOException {
output.writeUInt32(12, nextAddTimestamp_);
}
if (curBuyCount_ != 0) { if (curBuyCount_ != 0) {
output.writeUInt32(13, curBuyCount_); output.writeUInt32(12, curBuyCount_);
}
if (nextAddTimestamp_ != 0) {
output.writeUInt32(13, nextAddTimestamp_);
} }
if (curValue_ != 0) { if (curValue_ != 0) {
output.writeUInt32(14, curValue_); output.writeUInt32(14, curValue_);
@ -207,14 +193,17 @@ public final class ResinChangeNotifyOuterClass {
if (size != -1) return size; if (size != -1) return size;
size = 0; size = 0;
if (nextAddTimestamp_ != 0) {
size += com.google.protobuf.CodedOutputStream.computeUInt32Size(12, nextAddTimestamp_);
}
if (curBuyCount_ != 0) { if (curBuyCount_ != 0) {
size += com.google.protobuf.CodedOutputStream.computeUInt32Size(13, curBuyCount_); size += com.google.protobuf.CodedOutputStream
.computeUInt32Size(12, curBuyCount_);
}
if (nextAddTimestamp_ != 0) {
size += com.google.protobuf.CodedOutputStream
.computeUInt32Size(13, nextAddTimestamp_);
} }
if (curValue_ != 0) { if (curValue_ != 0) {
size += com.google.protobuf.CodedOutputStream.computeUInt32Size(14, curValue_); size += com.google.protobuf.CodedOutputStream
.computeUInt32Size(14, curValue_);
} }
size += unknownFields.getSerializedSize(); size += unknownFields.getSerializedSize();
memoizedSize = size; memoizedSize = size;
@ -226,16 +215,17 @@ public final class ResinChangeNotifyOuterClass {
if (obj == this) { if (obj == this) {
return true; return true;
} }
if (!(obj if (!(obj instanceof emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify)) {
instanceof emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify)) {
return super.equals(obj); return super.equals(obj);
} }
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify other = emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify other = (emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) obj;
(emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) obj;
if (getCurValue() != other.getCurValue()) return false; if (getCurValue()
if (getCurBuyCount() != other.getCurBuyCount()) return false; != other.getCurValue()) return false;
if (getNextAddTimestamp() != other.getNextAddTimestamp()) return false; if (getNextAddTimestamp()
!= other.getNextAddTimestamp()) return false;
if (getCurBuyCount()
!= other.getCurBuyCount()) return false;
if (!unknownFields.equals(other.unknownFields)) return false; if (!unknownFields.equals(other.unknownFields)) return false;
return true; return true;
} }
@ -249,105 +239,97 @@ public final class ResinChangeNotifyOuterClass {
hash = (19 * hash) + getDescriptor().hashCode(); hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + CUR_VALUE_FIELD_NUMBER; hash = (37 * hash) + CUR_VALUE_FIELD_NUMBER;
hash = (53 * hash) + getCurValue(); hash = (53 * hash) + getCurValue();
hash = (37 * hash) + CURBUYCOUNT_FIELD_NUMBER; hash = (37 * hash) + NEXT_ADD_TIMESTAMP_FIELD_NUMBER;
hash = (53 * hash) + getCurBuyCount();
hash = (37 * hash) + NEXTADDTIMESTAMP_FIELD_NUMBER;
hash = (53 * hash) + getNextAddTimestamp(); hash = (53 * hash) + getNextAddTimestamp();
hash = (37 * hash) + CUR_BUY_COUNT_FIELD_NUMBER;
hash = (53 * hash) + getCurBuyCount();
hash = (29 * hash) + unknownFields.hashCode(); hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash; memoizedHashCode = hash;
return hash; return hash;
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { java.nio.ByteBuffer data)
throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data); return PARSER.parseFrom(data);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) java.nio.ByteBuffer data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException { throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry); return PARSER.parseFrom(data, extensionRegistry);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
com.google.protobuf.ByteString data) com.google.protobuf.ByteString data)
throws com.google.protobuf.InvalidProtocolBufferException { throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data); return PARSER.parseFrom(data);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
com.google.protobuf.ByteString data, com.google.protobuf.ByteString data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException { throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry); return PARSER.parseFrom(data, extensionRegistry);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(byte[] data)
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( throws com.google.protobuf.InvalidProtocolBufferException {
byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data); return PARSER.parseFrom(data);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) byte[] data,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws com.google.protobuf.InvalidProtocolBufferException { throws com.google.protobuf.InvalidProtocolBufferException {
return PARSER.parseFrom(data, extensionRegistry); return PARSER.parseFrom(data, extensionRegistry);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(java.io.InputStream input)
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
java.io.InputStream input) throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException { throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3.parseWithIOException( return com.google.protobuf.GeneratedMessageV3
PARSER, input, extensionRegistry); .parseWithIOException(PARSER, input);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify
parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify
parseDelimitedFrom(
java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
com.google.protobuf.CodedInputStream input) throws java.io.IOException { java.io.InputStream input,
return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input); com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseDelimitedFrom(java.io.InputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseDelimitedFrom(
java.io.InputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseDelimitedWithIOException(PARSER, input, extensionRegistry);
}
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
com.google.protobuf.CodedInputStream input)
throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3
.parseWithIOException(PARSER, input);
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom( public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parseFrom(
com.google.protobuf.CodedInputStream input, com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException { throws java.io.IOException {
return com.google.protobuf.GeneratedMessageV3.parseWithIOException( return com.google.protobuf.GeneratedMessageV3
PARSER, input, extensionRegistry); .parseWithIOException(PARSER, input, extensionRegistry);
} }
@java.lang.Override @java.lang.Override
public Builder newBuilderForType() { public Builder newBuilderForType() { return newBuilder(); }
return newBuilder();
}
public static Builder newBuilder() { public static Builder newBuilder() {
return DEFAULT_INSTANCE.toBuilder(); return DEFAULT_INSTANCE.toBuilder();
} }
public static Builder newBuilder(emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify prototype) {
public static Builder newBuilder(
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify prototype) {
return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
} }
@java.lang.Override @java.lang.Override
public Builder toBuilder() { public Builder toBuilder() {
return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); return this == DEFAULT_INSTANCE
? new Builder() : new Builder().mergeFrom(this);
} }
@java.lang.Override @java.lang.Override
@ -357,80 +339,66 @@ public final class ResinChangeNotifyOuterClass {
return builder; return builder;
} }
/** /**
*
*
* <pre>
* Name: IBIMGHOHNDK
* CmdId: 649
* </pre>
*
* Protobuf type {@code ResinChangeNotify} * Protobuf type {@code ResinChangeNotify}
*/ */
public static final class Builder public static final class Builder extends
extends com.google.protobuf.GeneratedMessageV3.Builder<Builder> com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
implements
// @@protoc_insertion_point(builder_implements:ResinChangeNotify) // @@protoc_insertion_point(builder_implements:ResinChangeNotify)
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotifyOrBuilder { emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotifyOrBuilder {
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { public static final com.google.protobuf.Descriptors.Descriptor
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass getDescriptor() {
.internal_static_ResinChangeNotify_descriptor; return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.internal_static_ResinChangeNotify_descriptor;
} }
@java.lang.Override @java.lang.Override
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable() { internalGetFieldAccessorTable() {
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.internal_static_ResinChangeNotify_fieldAccessorTable
.internal_static_ResinChangeNotify_fieldAccessorTable
.ensureFieldAccessorsInitialized( .ensureFieldAccessorsInitialized(
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.class, emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.class, emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.Builder.class);
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.Builder
.class);
} }
// Construct using // Construct using emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.newBuilder()
// emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.newBuilder()
private Builder() { private Builder() {
maybeForceBuilderInitialization(); maybeForceBuilderInitialization();
} }
private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { private Builder(
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
super(parent); super(parent);
maybeForceBuilderInitialization(); maybeForceBuilderInitialization();
} }
private void maybeForceBuilderInitialization() { private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders) {} if (com.google.protobuf.GeneratedMessageV3
.alwaysUseFieldBuilders) {
}
} }
@java.lang.Override @java.lang.Override
public Builder clear() { public Builder clear() {
super.clear(); super.clear();
curValue_ = 0; curValue_ = 0;
curBuyCount_ = 0;
nextAddTimestamp_ = 0; nextAddTimestamp_ = 0;
curBuyCount_ = 0;
return this; return this;
} }
@java.lang.Override @java.lang.Override
public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { public com.google.protobuf.Descriptors.Descriptor
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass getDescriptorForType() {
.internal_static_ResinChangeNotify_descriptor; return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.internal_static_ResinChangeNotify_descriptor;
} }
@java.lang.Override @java.lang.Override
public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify getDefaultInstanceForType() {
getDefaultInstanceForType() { return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.getDefaultInstance();
return emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify
.getDefaultInstance();
} }
@java.lang.Override @java.lang.Override
public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify build() { public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify build() {
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify result = emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify result = buildPartial();
buildPartial();
if (!result.isInitialized()) { if (!result.isInitialized()) {
throw newUninitializedMessageException(result); throw newUninitializedMessageException(result);
} }
@ -438,13 +406,11 @@ public final class ResinChangeNotifyOuterClass {
} }
@java.lang.Override @java.lang.Override
public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify buildPartial() {
buildPartial() { emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify result = new emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify(this);
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify result =
new emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify(this);
result.curValue_ = curValue_; result.curValue_ = curValue_;
result.curBuyCount_ = curBuyCount_;
result.nextAddTimestamp_ = nextAddTimestamp_; result.nextAddTimestamp_ = nextAddTimestamp_;
result.curBuyCount_ = curBuyCount_;
onBuilt(); onBuilt();
return result; return result;
} }
@ -453,63 +419,55 @@ public final class ResinChangeNotifyOuterClass {
public Builder clone() { public Builder clone() {
return super.clone(); return super.clone();
} }
@java.lang.Override @java.lang.Override
public Builder setField( public Builder setField(
com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.setField(field, value); return super.setField(field, value);
} }
@java.lang.Override @java.lang.Override
public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) { public Builder clearField(
com.google.protobuf.Descriptors.FieldDescriptor field) {
return super.clearField(field); return super.clearField(field);
} }
@java.lang.Override @java.lang.Override
public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) { public Builder clearOneof(
com.google.protobuf.Descriptors.OneofDescriptor oneof) {
return super.clearOneof(oneof); return super.clearOneof(oneof);
} }
@java.lang.Override @java.lang.Override
public Builder setRepeatedField( public Builder setRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field, com.google.protobuf.Descriptors.FieldDescriptor field,
int index, int index, java.lang.Object value) {
java.lang.Object value) {
return super.setRepeatedField(field, index, value); return super.setRepeatedField(field, index, value);
} }
@java.lang.Override @java.lang.Override
public Builder addRepeatedField( public Builder addRepeatedField(
com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { com.google.protobuf.Descriptors.FieldDescriptor field,
java.lang.Object value) {
return super.addRepeatedField(field, value); return super.addRepeatedField(field, value);
} }
@java.lang.Override @java.lang.Override
public Builder mergeFrom(com.google.protobuf.Message other) { public Builder mergeFrom(com.google.protobuf.Message other) {
if (other if (other instanceof emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) {
instanceof emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) { return mergeFrom((emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify)other);
return mergeFrom(
(emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) other);
} else { } else {
super.mergeFrom(other); super.mergeFrom(other);
return this; return this;
} }
} }
public Builder mergeFrom( public Builder mergeFrom(emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify other) {
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify other) { if (other == emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify.getDefaultInstance()) return this;
if (other
== emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify
.getDefaultInstance()) return this;
if (other.getCurValue() != 0) { if (other.getCurValue() != 0) {
setCurValue(other.getCurValue()); setCurValue(other.getCurValue());
} }
if (other.getCurBuyCount() != 0) {
setCurBuyCount(other.getCurBuyCount());
}
if (other.getNextAddTimestamp() != 0) { if (other.getNextAddTimestamp() != 0) {
setNextAddTimestamp(other.getNextAddTimestamp()); setNextAddTimestamp(other.getNextAddTimestamp());
} }
if (other.getCurBuyCount() != 0) {
setCurBuyCount(other.getCurBuyCount());
}
this.mergeUnknownFields(other.unknownFields); this.mergeUnknownFields(other.unknownFields);
onChanged(); onChanged();
return this; return this;
@ -525,14 +483,11 @@ public final class ResinChangeNotifyOuterClass {
com.google.protobuf.CodedInputStream input, com.google.protobuf.CodedInputStream input,
com.google.protobuf.ExtensionRegistryLite extensionRegistry) com.google.protobuf.ExtensionRegistryLite extensionRegistry)
throws java.io.IOException { throws java.io.IOException {
emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parsedMessage = emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify parsedMessage = null;
null;
try { try {
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
} catch (com.google.protobuf.InvalidProtocolBufferException e) { } catch (com.google.protobuf.InvalidProtocolBufferException e) {
parsedMessage = parsedMessage = (emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify) e.getUnfinishedMessage();
(emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify)
e.getUnfinishedMessage();
throw e.unwrapIOException(); throw e.unwrapIOException();
} finally { } finally {
if (parsedMessage != null) { if (parsedMessage != null) {
@ -545,7 +500,6 @@ public final class ResinChangeNotifyOuterClass {
private int curValue_ ; private int curValue_ ;
/** /**
* <code>uint32 cur_value = 14;</code> * <code>uint32 cur_value = 14;</code>
*
* @return The curValue. * @return The curValue.
*/ */
@java.lang.Override @java.lang.Override
@ -554,7 +508,6 @@ public final class ResinChangeNotifyOuterClass {
} }
/** /**
* <code>uint32 cur_value = 14;</code> * <code>uint32 cur_value = 14;</code>
*
* @param value The curValue to set. * @param value The curValue to set.
* @return This builder for chaining. * @return This builder for chaining.
*/ */
@ -566,7 +519,6 @@ public final class ResinChangeNotifyOuterClass {
} }
/** /**
* <code>uint32 cur_value = 14;</code> * <code>uint32 cur_value = 14;</code>
*
* @return This builder for chaining. * @return This builder for chaining.
*/ */
public Builder clearCurValue() { public Builder clearCurValue() {
@ -576,44 +528,9 @@ public final class ResinChangeNotifyOuterClass {
return this; return this;
} }
private int curBuyCount_;
/**
* <code>uint32 curBuyCount = 13;</code>
*
* @return The curBuyCount.
*/
@java.lang.Override
public int getCurBuyCount() {
return curBuyCount_;
}
/**
* <code>uint32 curBuyCount = 13;</code>
*
* @param value The curBuyCount to set.
* @return This builder for chaining.
*/
public Builder setCurBuyCount(int value) {
curBuyCount_ = value;
onChanged();
return this;
}
/**
* <code>uint32 curBuyCount = 13;</code>
*
* @return This builder for chaining.
*/
public Builder clearCurBuyCount() {
curBuyCount_ = 0;
onChanged();
return this;
}
private int nextAddTimestamp_ ; private int nextAddTimestamp_ ;
/** /**
* <code>uint32 nextAddTimestamp = 12;</code> * <code>uint32 next_add_timestamp = 13;</code>
*
* @return The nextAddTimestamp. * @return The nextAddTimestamp.
*/ */
@java.lang.Override @java.lang.Override
@ -621,8 +538,7 @@ public final class ResinChangeNotifyOuterClass {
return nextAddTimestamp_; return nextAddTimestamp_;
} }
/** /**
* <code>uint32 nextAddTimestamp = 12;</code> * <code>uint32 next_add_timestamp = 13;</code>
*
* @param value The nextAddTimestamp to set. * @param value The nextAddTimestamp to set.
* @return This builder for chaining. * @return This builder for chaining.
*/ */
@ -633,8 +549,7 @@ public final class ResinChangeNotifyOuterClass {
return this; return this;
} }
/** /**
* <code>uint32 nextAddTimestamp = 12;</code> * <code>uint32 next_add_timestamp = 13;</code>
*
* @return This builder for chaining. * @return This builder for chaining.
*/ */
public Builder clearNextAddTimestamp() { public Builder clearNextAddTimestamp() {
@ -644,6 +559,36 @@ public final class ResinChangeNotifyOuterClass {
return this; return this;
} }
private int curBuyCount_ ;
/**
* <code>uint32 cur_buy_count = 12;</code>
* @return The curBuyCount.
*/
@java.lang.Override
public int getCurBuyCount() {
return curBuyCount_;
}
/**
* <code>uint32 cur_buy_count = 12;</code>
* @param value The curBuyCount to set.
* @return This builder for chaining.
*/
public Builder setCurBuyCount(int value) {
curBuyCount_ = value;
onChanged();
return this;
}
/**
* <code>uint32 cur_buy_count = 12;</code>
* @return This builder for chaining.
*/
public Builder clearCurBuyCount() {
curBuyCount_ = 0;
onChanged();
return this;
}
@java.lang.Override @java.lang.Override
public final Builder setUnknownFields( public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) { final com.google.protobuf.UnknownFieldSet unknownFields) {
@ -656,25 +601,22 @@ public final class ResinChangeNotifyOuterClass {
return super.mergeUnknownFields(unknownFields); return super.mergeUnknownFields(unknownFields);
} }
// @@protoc_insertion_point(builder_scope:ResinChangeNotify) // @@protoc_insertion_point(builder_scope:ResinChangeNotify)
} }
// @@protoc_insertion_point(class_scope:ResinChangeNotify) // @@protoc_insertion_point(class_scope:ResinChangeNotify)
private static final emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify private static final emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify DEFAULT_INSTANCE;
DEFAULT_INSTANCE;
static { static {
DEFAULT_INSTANCE = DEFAULT_INSTANCE = new emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify();
new emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify();
} }
public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify public static emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify getDefaultInstance() {
getDefaultInstance() {
return DEFAULT_INSTANCE; return DEFAULT_INSTANCE;
} }
private static final com.google.protobuf.Parser<ResinChangeNotify> PARSER = private static final com.google.protobuf.Parser<ResinChangeNotify>
new com.google.protobuf.AbstractParser<ResinChangeNotify>() { PARSER = new com.google.protobuf.AbstractParser<ResinChangeNotify>() {
@java.lang.Override @java.lang.Override
public ResinChangeNotify parsePartialFrom( public ResinChangeNotify parsePartialFrom(
com.google.protobuf.CodedInputStream input, com.google.protobuf.CodedInputStream input,
@ -694,40 +636,41 @@ public final class ResinChangeNotifyOuterClass {
} }
@java.lang.Override @java.lang.Override
public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify getDefaultInstanceForType() {
getDefaultInstanceForType() {
return DEFAULT_INSTANCE; return DEFAULT_INSTANCE;
} }
} }
private static final com.google.protobuf.Descriptors.Descriptor private static final com.google.protobuf.Descriptors.Descriptor
internal_static_ResinChangeNotify_descriptor; internal_static_ResinChangeNotify_descriptor;
private static final com.google.protobuf.GeneratedMessageV3.FieldAccessorTable private static final
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internal_static_ResinChangeNotify_fieldAccessorTable; internal_static_ResinChangeNotify_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() { public static com.google.protobuf.Descriptors.FileDescriptor
getDescriptor() {
return descriptor; return descriptor;
} }
private static com.google.protobuf.Descriptors.FileDescriptor
private static com.google.protobuf.Descriptors.FileDescriptor descriptor; descriptor;
static { static {
java.lang.String[] descriptorData = { java.lang.String[] descriptorData = {
"\n\027ResinChangeNotify.proto\"U\n\021ResinChange" "\n\027ResinChangeNotify.proto\"Y\n\021ResinChange" +
+ "Notify\022\021\n\tcur_value\030\016 \001(\r\022\023\n\013curBuyCount" "Notify\022\021\n\tcur_value\030\016 \001(\r\022\032\n\022next_add_ti" +
+ "\030\r \001(\r\022\030\n\020nextAddTimestamp\030\014 \001(\rB\033\n\031emu." "mestamp\030\r \001(\r\022\025\n\rcur_buy_count\030\014 \001(\rB\033\n\031" +
+ "grasscutter.net.protob\006proto3" "emu.grasscutter.net.protob\006proto3"
}; };
descriptor = descriptor = com.google.protobuf.Descriptors.FileDescriptor
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom( .internalBuildGeneratedFileFrom(descriptorData,
descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] {}); new com.google.protobuf.Descriptors.FileDescriptor[] {
internal_static_ResinChangeNotify_descriptor = getDescriptor().getMessageTypes().get(0);
internal_static_ResinChangeNotify_fieldAccessorTable =
new com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_ResinChangeNotify_descriptor,
new java.lang.String[] {
"CurValue", "CurBuyCount", "NextAddTimestamp",
}); });
internal_static_ResinChangeNotify_descriptor =
getDescriptor().getMessageTypes().get(0);
internal_static_ResinChangeNotify_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_ResinChangeNotify_descriptor,
new java.lang.String[] { "CurValue", "NextAddTimestamp", "CurBuyCount", });
} }
// @@protoc_insertion_point(outer_class_scope) // @@protoc_insertion_point(outer_class_scope)

File diff suppressed because it is too large Load Diff

View File

@ -1,15 +1,22 @@
package emu.grasscutter.game.managers; package emu.grasscutter.game.managers;
import static emu.grasscutter.config.Configuration.GAME_OPTIONS; import emu.grasscutter.game.inventory.GameItem;
import emu.grasscutter.game.player.BasePlayerManager; import emu.grasscutter.game.player.BasePlayerManager;
import emu.grasscutter.game.player.Player; import emu.grasscutter.game.player.Player;
import emu.grasscutter.game.props.ActionReason;
import emu.grasscutter.game.props.PlayerProperty; import emu.grasscutter.game.props.PlayerProperty;
import emu.grasscutter.game.props.WatcherTriggerType; import emu.grasscutter.game.props.WatcherTriggerType;
import emu.grasscutter.net.proto.RetcodeOuterClass;
import emu.grasscutter.server.packet.send.PacketItemAddHintNotify;
import emu.grasscutter.server.packet.send.PacketResinChangeNotify; import emu.grasscutter.server.packet.send.PacketResinChangeNotify;
import emu.grasscutter.utils.Utils; import emu.grasscutter.utils.Utils;
import static emu.grasscutter.config.Configuration.GAME_OPTIONS;
public class ResinManager extends BasePlayerManager { public class ResinManager extends BasePlayerManager {
public static final int MAX_RESIN_BUYING_COUNT = 6;
public static final int AMOUNT_TO_ADD = 60;
public static final int[] HCOIN_NUM_TO_BUY_RESIN = new int[]{50, 100, 100, 150, 200, 200};
public ResinManager(Player player) { public ResinManager(Player player) {
super(player); super(player);
@ -151,4 +158,22 @@ public class ResinManager extends BasePlayerManager {
// Send initial notifications on logon. // Send initial notifications on logon.
this.player.sendPacket(new PacketResinChangeNotify(this.player)); this.player.sendPacket(new PacketResinChangeNotify(this.player));
} }
public int buy() {
if (this.player.getResinBuyCount() >= MAX_RESIN_BUYING_COUNT) {
return RetcodeOuterClass.Retcode.RET_RESIN_BOUGHT_COUNT_EXCEEDED_VALUE;
}
var res = this.player.getInventory().payItem(201, HCOIN_NUM_TO_BUY_RESIN[this.player.getResinBuyCount()]);
if (!res) {
return RetcodeOuterClass.Retcode.RET_HCOIN_NOT_ENOUGH_VALUE;
}
this.player.setResinBuyCount(this.player.getResinBuyCount() + 1);
this.player.setProperty(PlayerProperty.PROP_PLAYER_WAIT_SUB_HCOIN, 0);
this.addResin(AMOUNT_TO_ADD);
this.player.sendPacket(new PacketItemAddHintNotify(new GameItem(106, AMOUNT_TO_ADD), ActionReason.BuyResin));
return 0;
}
} }

View File

@ -319,9 +319,12 @@ public class Player {
private int nextResinRefresh; private int nextResinRefresh;
@Getter @Getter
@Setter @Setter
private int resinBuyCount;
@Getter
@Setter
private int lastDailyReset; private int lastDailyReset;
@Getter @Getter
private final transient MpSettingType mpSetting = MpSettingType.MP_SETTING_TYPE_ENTER_AFTER_APPLY; // TODO private transient MpSettingType mpSetting = MpSettingType.MP_SETTING_TYPE_ENTER_AFTER_APPLY; // TODO
@Deprecated @Deprecated
@SuppressWarnings({"rawtypes", "unchecked"}) // Morphia only! @SuppressWarnings({"rawtypes", "unchecked"}) // Morphia only!
@ -1269,6 +1272,9 @@ public class Player {
this.getBattlePassManager().resetWeeklyMissions(); this.getBattlePassManager().resetWeeklyMissions();
} }
// Reset resin-buying count.
this.setResinBuyCount(0);
// Done. Update last reset time. // Done. Update last reset time.
this.setLastDailyReset(currentTime); this.setLastDailyReset(currentTime);
} }

View File

@ -1,25 +1,25 @@
package emu.grasscutter.game.props.ItemUseAction; package emu.grasscutter.game.props.ItemUseAction;
import emu.grasscutter.game.props.ActionReason;
import emu.grasscutter.game.props.ItemUseOp; import emu.grasscutter.game.props.ItemUseOp;
public class ItemUseAddItem extends ItemUseInt { public class ItemUseAddItem extends ItemUseInt {
private int count = 0; private int count = 0;
public ItemUseAddItem(String[] useParam) {
super(useParam);
try {
this.count = Integer.parseInt(useParam[1]);
} catch (NumberFormatException | ArrayIndexOutOfBoundsException ignored) {
}
}
@Override @Override
public ItemUseOp getItemUseOp() { public ItemUseOp getItemUseOp() {
return ItemUseOp.ITEM_USE_ADD_ITEM; return ItemUseOp.ITEM_USE_ADD_ITEM;
} }
public ItemUseAddItem(String[] useParam) {
super(useParam);
try {
this.count = Integer.parseInt(useParam[1]);
} catch (NumberFormatException | ArrayIndexOutOfBoundsException ignored) {}
}
@Override @Override
public boolean useItem(UseItemParams params) { public boolean useItem(UseItemParams params) {
return params.player.getInventory().addItem(this.i, this.count * params.count); return params.player.getInventory().addItem(this.i, this.count * params.count, ActionReason.PlayerUseItem);
} }
} }

View File

@ -0,0 +1,16 @@
package emu.grasscutter.server.packet.recv;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketBuyResinRsp;
@Opcodes(PacketOpcodes.BuyResinReq)
public class HandlerBuyResinReq extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
var player = session.getPlayer();
session.send(new PacketBuyResinRsp(player, player.getResinManager().buy()));
}
}

View File

@ -0,0 +1,31 @@
package emu.grasscutter.server.packet.recv;
import javax.lang.model.type.TypeMirror;
import emu.grasscutter.net.packet.Opcodes;
import emu.grasscutter.net.packet.PacketHandler;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.SceneAudioNotifyOuterClass.SceneAudioNotify;
import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.packet.send.PacketSceneAudioNotify;
import java.util.List;
@Opcodes(PacketOpcodes.SceneAudioNotify)
public class HandlerSceneAudioNotify extends PacketHandler {
@Override
public void handle(GameSession session, byte[] header, byte[] payload) throws Exception {
SceneAudioNotify notify = SceneAudioNotify.parseFrom(payload);
int sourceUid = notify.getSourceUid();
List<Float> param2 = notify.getParam2List();
List<String> param3 = notify.getParam3List();
int type = notify.getType();
List<Integer> param1 = notify.getParam1List();
session.getPlayer().getScene().broadcastPacket(new PacketSceneAudioNotify(sourceUid, param2, param3, type, param1));
}
}

View File

@ -0,0 +1,18 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.game.player.Player;
import emu.grasscutter.game.props.PlayerProperty;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.BuyResinRspOuterClass;
public class PacketBuyResinRsp extends BasePacket {
public PacketBuyResinRsp(Player player, int ret) {
super(PacketOpcodes.BuyResinRsp);
this.setData(BuyResinRspOuterClass.BuyResinRsp.newBuilder()
.setCurValue(player.getProperty(PlayerProperty.PROP_PLAYER_RESIN))
.setRetcode(ret)
.build());
}
}

View File

@ -11,14 +11,12 @@ public class PacketResinChangeNotify extends BasePacket {
public PacketResinChangeNotify(Player player) { public PacketResinChangeNotify(Player player) {
super(PacketOpcodes.ResinChangeNotify); super(PacketOpcodes.ResinChangeNotify);
ResinChangeNotify proto = ResinChangeNotify proto = ResinChangeNotify.newBuilder()
ResinChangeNotify.newBuilder()
.setCurValue(player.getProperty(PlayerProperty.PROP_PLAYER_RESIN)) .setCurValue(player.getProperty(PlayerProperty.PROP_PLAYER_RESIN))
.setNextAddTimestamp(player.getNextResinRefresh()) .setNextAddTimestamp(player.getNextResinRefresh())
.setCurBuyCount(player.getResinBuyCount())
.build(); .build();
// ToDo: Add ability to buy resin with primogems, has to be included here.
this.setData(proto); this.setData(proto);
} }
} }

View File

@ -0,0 +1,23 @@
package emu.grasscutter.server.packet.send;
import emu.grasscutter.net.packet.BasePacket;
import emu.grasscutter.net.packet.PacketOpcodes;
import emu.grasscutter.net.proto.SceneAudioNotifyOuterClass;
import java.util.List;
public class PacketSceneAudioNotify extends BasePacket {
public PacketSceneAudioNotify(int sourceUid, List<Float> param2, List<String> param3, int type, List<Integer> param1) {
super(PacketOpcodes.SceneAudioNotify);
SceneAudioNotifyOuterClass.SceneAudioNotify proto = SceneAudioNotifyOuterClass.SceneAudioNotify.newBuilder()
.setSourceUid(sourceUid)
.addAllParam2(param2)
.addAllParam3(param3)
.setType(type)
.addAllParam1(param1)
.build();
this.setData(proto);
}
}