diff --git a/src/generated/main/java/emu/grasscutter/net/proto/BuyResinReqOuterClass.java b/src/generated/main/java/emu/grasscutter/net/proto/BuyResinReqOuterClass.java new file mode 100644 index 000000000..69be718d5 --- /dev/null +++ b/src/generated/main/java/emu/grasscutter/net/proto/BuyResinReqOuterClass.java @@ -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 { + } + /** + *
+ * Name: NIBFJEFHMIM + * CmdId: 630 + *+ * + * 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; + } + /** + *
+ * Name: NIBFJEFHMIM + * CmdId: 630 + *+ * + * Protobuf type {@code BuyResinReq} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder
int32 retcode = 9;
+ * @return The retcode.
+ */
+ int getRetcode();
+
+ /**
+ * uint32 cur_value = 3;
+ * @return The curValue.
+ */
+ int getCurValue();
+ }
+ /**
+ * + * Name: PFLBPGOHFKJ + * CmdId: 687 + *+ * + * 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_; + /** + *
int32 retcode = 9;
+ * @return The retcode.
+ */
+ @java.lang.Override
+ public int getRetcode() {
+ return retcode_;
+ }
+
+ public static final int CUR_VALUE_FIELD_NUMBER = 3;
+ private int curValue_;
+ /**
+ * uint32 cur_value = 3;
+ * @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;
+ }
+ /**
+ * + * Name: PFLBPGOHFKJ + * CmdId: 687 + *+ * + * Protobuf type {@code BuyResinRsp} + */ + public static final class Builder extends + com.google.protobuf.GeneratedMessageV3.Builder
int32 retcode = 9;
+ * @return The retcode.
+ */
+ @java.lang.Override
+ public int getRetcode() {
+ return retcode_;
+ }
+ /**
+ * int32 retcode = 9;
+ * @param value The retcode to set.
+ * @return This builder for chaining.
+ */
+ public Builder setRetcode(int value) {
+
+ retcode_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * int32 retcode = 9;
+ * @return This builder for chaining.
+ */
+ public Builder clearRetcode() {
+
+ retcode_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private int curValue_ ;
+ /**
+ * uint32 cur_value = 3;
+ * @return The curValue.
+ */
+ @java.lang.Override
+ public int getCurValue() {
+ return curValue_;
+ }
+ /**
+ * uint32 cur_value = 3;
+ * @param value The curValue to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCurValue(int value) {
+
+ curValue_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * uint32 cur_value = 3;
+ * @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.Parseruint32 curBuyCount = 13;
- * @return The curBuyCount.
- */
- int getCurBuyCount();
-
- /**
- * uint32 nextAddTimestamp = 12;
+ * uint32 next_add_timestamp = 13;
* @return The nextAddTimestamp.
*/
int getNextAddTimestamp();
+
+ /**
+ * uint32 cur_buy_count = 12;
+ * @return The curBuyCount.
+ */
+ int getCurBuyCount();
}
/**
- * - * Name: IBIMGHOHNDK - * CmdId: 649 - *- * * Protobuf type {@code ResinChangeNotify} */ public static final class ResinChangeNotify extends @@ -88,12 +83,12 @@ public final class ResinChangeNotifyOuterClass { break; case 96: { - nextAddTimestamp_ = input.readUInt32(); + curBuyCount_ = input.readUInt32(); break; } case 104: { - curBuyCount_ = input.readUInt32(); + nextAddTimestamp_ = input.readUInt32(); break; } case 112: { @@ -144,21 +139,10 @@ public final class ResinChangeNotifyOuterClass { return curValue_; } - public static final int CURBUYCOUNT_FIELD_NUMBER = 13; - private int curBuyCount_; - /** - *
uint32 curBuyCount = 13;
- * @return The curBuyCount.
- */
- @java.lang.Override
- public int getCurBuyCount() {
- return curBuyCount_;
- }
-
- public static final int NEXTADDTIMESTAMP_FIELD_NUMBER = 12;
+ public static final int NEXT_ADD_TIMESTAMP_FIELD_NUMBER = 13;
private int nextAddTimestamp_;
/**
- * uint32 nextAddTimestamp = 12;
+ * uint32 next_add_timestamp = 13;
* @return The nextAddTimestamp.
*/
@java.lang.Override
@@ -166,6 +150,17 @@ public final class ResinChangeNotifyOuterClass {
return nextAddTimestamp_;
}
+ public static final int CUR_BUY_COUNT_FIELD_NUMBER = 12;
+ private int curBuyCount_;
+ /**
+ * uint32 cur_buy_count = 12;
+ * @return The curBuyCount.
+ */
+ @java.lang.Override
+ public int getCurBuyCount() {
+ return curBuyCount_;
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
public final boolean isInitialized() {
@@ -180,11 +175,11 @@ public final class ResinChangeNotifyOuterClass {
@java.lang.Override
public void writeTo(com.google.protobuf.CodedOutputStream output)
throws java.io.IOException {
- if (nextAddTimestamp_ != 0) {
- output.writeUInt32(12, nextAddTimestamp_);
- }
if (curBuyCount_ != 0) {
- output.writeUInt32(13, curBuyCount_);
+ output.writeUInt32(12, curBuyCount_);
+ }
+ if (nextAddTimestamp_ != 0) {
+ output.writeUInt32(13, nextAddTimestamp_);
}
if (curValue_ != 0) {
output.writeUInt32(14, curValue_);
@@ -198,13 +193,13 @@ public final class ResinChangeNotifyOuterClass {
if (size != -1) return size;
size = 0;
- if (nextAddTimestamp_ != 0) {
- size += com.google.protobuf.CodedOutputStream
- .computeUInt32Size(12, nextAddTimestamp_);
- }
if (curBuyCount_ != 0) {
size += com.google.protobuf.CodedOutputStream
- .computeUInt32Size(13, curBuyCount_);
+ .computeUInt32Size(12, curBuyCount_);
+ }
+ if (nextAddTimestamp_ != 0) {
+ size += com.google.protobuf.CodedOutputStream
+ .computeUInt32Size(13, nextAddTimestamp_);
}
if (curValue_ != 0) {
size += com.google.protobuf.CodedOutputStream
@@ -227,10 +222,10 @@ public final class ResinChangeNotifyOuterClass {
if (getCurValue()
!= other.getCurValue()) return false;
- if (getCurBuyCount()
- != other.getCurBuyCount()) return false;
if (getNextAddTimestamp()
!= other.getNextAddTimestamp()) return false;
+ if (getCurBuyCount()
+ != other.getCurBuyCount()) return false;
if (!unknownFields.equals(other.unknownFields)) return false;
return true;
}
@@ -244,10 +239,10 @@ public final class ResinChangeNotifyOuterClass {
hash = (19 * hash) + getDescriptor().hashCode();
hash = (37 * hash) + CUR_VALUE_FIELD_NUMBER;
hash = (53 * hash) + getCurValue();
- hash = (37 * hash) + CURBUYCOUNT_FIELD_NUMBER;
- hash = (53 * hash) + getCurBuyCount();
- hash = (37 * hash) + NEXTADDTIMESTAMP_FIELD_NUMBER;
+ hash = (37 * hash) + NEXT_ADD_TIMESTAMP_FIELD_NUMBER;
hash = (53 * hash) + getNextAddTimestamp();
+ hash = (37 * hash) + CUR_BUY_COUNT_FIELD_NUMBER;
+ hash = (53 * hash) + getCurBuyCount();
hash = (29 * hash) + unknownFields.hashCode();
memoizedHashCode = hash;
return hash;
@@ -344,11 +339,6 @@ public final class ResinChangeNotifyOuterClass {
return builder;
}
/**
- * - * Name: IBIMGHOHNDK - * CmdId: 649 - *- * * Protobuf type {@code ResinChangeNotify} */ public static final class Builder extends @@ -388,10 +378,10 @@ public final class ResinChangeNotifyOuterClass { super.clear(); curValue_ = 0; - curBuyCount_ = 0; - nextAddTimestamp_ = 0; + curBuyCount_ = 0; + return this; } @@ -419,8 +409,8 @@ public final class ResinChangeNotifyOuterClass { public emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify buildPartial() { emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify result = new emu.grasscutter.net.proto.ResinChangeNotifyOuterClass.ResinChangeNotify(this); result.curValue_ = curValue_; - result.curBuyCount_ = curBuyCount_; result.nextAddTimestamp_ = nextAddTimestamp_; + result.curBuyCount_ = curBuyCount_; onBuilt(); return result; } @@ -472,12 +462,12 @@ public final class ResinChangeNotifyOuterClass { if (other.getCurValue() != 0) { setCurValue(other.getCurValue()); } - if (other.getCurBuyCount() != 0) { - setCurBuyCount(other.getCurBuyCount()); - } if (other.getNextAddTimestamp() != 0) { setNextAddTimestamp(other.getNextAddTimestamp()); } + if (other.getCurBuyCount() != 0) { + setCurBuyCount(other.getCurBuyCount()); + } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; @@ -538,40 +528,9 @@ public final class ResinChangeNotifyOuterClass { return this; } - private int curBuyCount_ ; - /** - *
uint32 curBuyCount = 13;
- * @return The curBuyCount.
- */
- @java.lang.Override
- public int getCurBuyCount() {
- return curBuyCount_;
- }
- /**
- * uint32 curBuyCount = 13;
- * @param value The curBuyCount to set.
- * @return This builder for chaining.
- */
- public Builder setCurBuyCount(int value) {
-
- curBuyCount_ = value;
- onChanged();
- return this;
- }
- /**
- * uint32 curBuyCount = 13;
- * @return This builder for chaining.
- */
- public Builder clearCurBuyCount() {
-
- curBuyCount_ = 0;
- onChanged();
- return this;
- }
-
private int nextAddTimestamp_ ;
/**
- * uint32 nextAddTimestamp = 12;
+ * uint32 next_add_timestamp = 13;
* @return The nextAddTimestamp.
*/
@java.lang.Override
@@ -579,7 +538,7 @@ public final class ResinChangeNotifyOuterClass {
return nextAddTimestamp_;
}
/**
- * uint32 nextAddTimestamp = 12;
+ * uint32 next_add_timestamp = 13;
* @param value The nextAddTimestamp to set.
* @return This builder for chaining.
*/
@@ -590,7 +549,7 @@ public final class ResinChangeNotifyOuterClass {
return this;
}
/**
- * uint32 nextAddTimestamp = 12;
+ * uint32 next_add_timestamp = 13;
* @return This builder for chaining.
*/
public Builder clearNextAddTimestamp() {
@@ -599,6 +558,37 @@ public final class ResinChangeNotifyOuterClass {
onChanged();
return this;
}
+
+ private int curBuyCount_ ;
+ /**
+ * uint32 cur_buy_count = 12;
+ * @return The curBuyCount.
+ */
+ @java.lang.Override
+ public int getCurBuyCount() {
+ return curBuyCount_;
+ }
+ /**
+ * uint32 cur_buy_count = 12;
+ * @param value The curBuyCount to set.
+ * @return This builder for chaining.
+ */
+ public Builder setCurBuyCount(int value) {
+
+ curBuyCount_ = value;
+ onChanged();
+ return this;
+ }
+ /**
+ * uint32 cur_buy_count = 12;
+ * @return This builder for chaining.
+ */
+ public Builder clearCurBuyCount() {
+
+ curBuyCount_ = 0;
+ onChanged();
+ return this;
+ }
@java.lang.Override
public final Builder setUnknownFields(
final com.google.protobuf.UnknownFieldSet unknownFields) {
@@ -666,10 +656,10 @@ public final class ResinChangeNotifyOuterClass {
descriptor;
static {
java.lang.String[] descriptorData = {
- "\n\027ResinChangeNotify.proto\"U\n\021ResinChange" +
- "Notify\022\021\n\tcur_value\030\016 \001(\r\022\023\n\013curBuyCount" +
- "\030\r \001(\r\022\030\n\020nextAddTimestamp\030\014 \001(\rB\033\n\031emu." +
- "grasscutter.net.protob\006proto3"
+ "\n\027ResinChangeNotify.proto\"Y\n\021ResinChange" +
+ "Notify\022\021\n\tcur_value\030\016 \001(\r\022\032\n\022next_add_ti" +
+ "mestamp\030\r \001(\r\022\025\n\rcur_buy_count\030\014 \001(\rB\033\n\031" +
+ "emu.grasscutter.net.protob\006proto3"
};
descriptor = com.google.protobuf.Descriptors.FileDescriptor
.internalBuildGeneratedFileFrom(descriptorData,
@@ -680,7 +670,7 @@ public final class ResinChangeNotifyOuterClass {
internal_static_ResinChangeNotify_fieldAccessorTable = new
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
internal_static_ResinChangeNotify_descriptor,
- new java.lang.String[] { "CurValue", "CurBuyCount", "NextAddTimestamp", });
+ new java.lang.String[] { "CurValue", "NextAddTimestamp", "CurBuyCount", });
}
// @@protoc_insertion_point(outer_class_scope)
diff --git a/src/main/java/emu/grasscutter/game/managers/ResinManager.java b/src/main/java/emu/grasscutter/game/managers/ResinManager.java
index d6056571e..6e865b525 100644
--- a/src/main/java/emu/grasscutter/game/managers/ResinManager.java
+++ b/src/main/java/emu/grasscutter/game/managers/ResinManager.java
@@ -1,16 +1,22 @@
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.Player;
+import emu.grasscutter.game.props.ActionReason;
import emu.grasscutter.game.props.PlayerProperty;
import emu.grasscutter.game.props.WatcherTriggerType;
-import emu.grasscutter.server.packet.send.PacketPlayerPropNotify;
+import emu.grasscutter.net.proto.RetcodeOuterClass;
+import emu.grasscutter.server.packet.send.PacketItemAddHintNotify;
import emu.grasscutter.server.packet.send.PacketResinChangeNotify;
import emu.grasscutter.utils.Utils;
+import static emu.grasscutter.config.Configuration.GAME_OPTIONS;
+
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) {
super(player);
@@ -146,4 +152,22 @@ public class ResinManager extends BasePlayerManager {
// Send initial notifications on logon.
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;
+ }
}
diff --git a/src/main/java/emu/grasscutter/game/player/Player.java b/src/main/java/emu/grasscutter/game/player/Player.java
index 1e504dd2d..0c7d91815 100644
--- a/src/main/java/emu/grasscutter/game/player/Player.java
+++ b/src/main/java/emu/grasscutter/game/player/Player.java
@@ -15,29 +15,30 @@ import emu.grasscutter.game.activity.ActivityManager;
import emu.grasscutter.game.avatar.Avatar;
import emu.grasscutter.game.avatar.AvatarStorage;
import emu.grasscutter.game.battlepass.BattlePassManager;
-import emu.grasscutter.game.entity.*;
-import emu.grasscutter.game.home.GameHome;
+import emu.grasscutter.game.entity.GameEntity;
import emu.grasscutter.game.expedition.ExpeditionInfo;
import emu.grasscutter.game.friends.FriendsList;
import emu.grasscutter.game.friends.PlayerProfile;
import emu.grasscutter.game.gacha.PlayerGachaInfo;
+import emu.grasscutter.game.home.GameHome;
import emu.grasscutter.game.inventory.GameItem;
import emu.grasscutter.game.inventory.Inventory;
import emu.grasscutter.game.mail.Mail;
import emu.grasscutter.game.mail.MailHandler;
-import emu.grasscutter.game.managers.cooking.ActiveCookCompoundData;
-import emu.grasscutter.game.managers.cooking.CookingCompoundManager;
-import emu.grasscutter.game.managers.cooking.CookingManager;
import emu.grasscutter.game.managers.FurnitureManager;
import emu.grasscutter.game.managers.ResinManager;
import emu.grasscutter.game.managers.SatiationManager;
+import emu.grasscutter.game.managers.SotSManager;
+import emu.grasscutter.game.managers.cooking.ActiveCookCompoundData;
+import emu.grasscutter.game.managers.cooking.CookingCompoundManager;
+import emu.grasscutter.game.managers.cooking.CookingManager;
import emu.grasscutter.game.managers.deforestation.DeforestationManager;
import emu.grasscutter.game.managers.energy.EnergyManager;
import emu.grasscutter.game.managers.forging.ActiveForgeData;
import emu.grasscutter.game.managers.forging.ForgingManager;
-import emu.grasscutter.game.managers.mapmark.*;
+import emu.grasscutter.game.managers.mapmark.MapMark;
+import emu.grasscutter.game.managers.mapmark.MapMarksManager;
import emu.grasscutter.game.managers.stamina.StaminaManager;
-import emu.grasscutter.game.managers.SotSManager;
import emu.grasscutter.game.props.ActionReason;
import emu.grasscutter.game.props.ClimateType;
import emu.grasscutter.game.props.PlayerProperty;
@@ -50,17 +51,20 @@ import emu.grasscutter.game.tower.TowerManager;
import emu.grasscutter.game.world.Scene;
import emu.grasscutter.game.world.World;
import emu.grasscutter.net.packet.BasePacket;
-import emu.grasscutter.net.proto.*;
import emu.grasscutter.net.proto.AbilityInvokeEntryOuterClass.AbilityInvokeEntry;
import emu.grasscutter.net.proto.AttackResultOuterClass.AttackResult;
import emu.grasscutter.net.proto.CombatInvokeEntryOuterClass.CombatInvokeEntry;
import emu.grasscutter.net.proto.GadgetInteractReqOuterClass.GadgetInteractReq;
import emu.grasscutter.net.proto.MpSettingTypeOuterClass.MpSettingType;
import emu.grasscutter.net.proto.OnlinePlayerInfoOuterClass.OnlinePlayerInfo;
+import emu.grasscutter.net.proto.PlayerApplyEnterMpResultNotifyOuterClass;
import emu.grasscutter.net.proto.PlayerLocationInfoOuterClass.PlayerLocationInfo;
+import emu.grasscutter.net.proto.PlayerWorldLocationInfoOuterClass;
import emu.grasscutter.net.proto.ProfilePictureOuterClass.ProfilePicture;
import emu.grasscutter.net.proto.PropChangeReasonOuterClass.PropChangeReason;
+import emu.grasscutter.net.proto.ShowAvatarInfoOuterClass;
import emu.grasscutter.net.proto.SocialDetailOuterClass.SocialDetail;
+import emu.grasscutter.net.proto.SocialShowAvatarInfoOuterClass;
import emu.grasscutter.scripts.data.SceneRegion;
import emu.grasscutter.server.event.player.PlayerJoinEvent;
import emu.grasscutter.server.event.player.PlayerQuitEvent;
@@ -69,16 +73,14 @@ import emu.grasscutter.server.game.GameSession;
import emu.grasscutter.server.game.GameSession.SessionState;
import emu.grasscutter.server.packet.send.*;
import emu.grasscutter.utils.DateHelper;
-import emu.grasscutter.utils.Position;
import emu.grasscutter.utils.MessageHandler;
+import emu.grasscutter.utils.Position;
import emu.grasscutter.utils.Utils;
import it.unimi.dsi.fastutil.ints.Int2ObjectMap;
import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap;
import lombok.Getter;
import lombok.Setter;
-import static emu.grasscutter.config.Configuration.*;
-
import java.time.DayOfWeek;
import java.time.Instant;
import java.time.LocalDate;
@@ -87,6 +89,8 @@ import java.util.*;
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.concurrent.LinkedBlockingQueue;
+import static emu.grasscutter.config.Configuration.GAME_OPTIONS;
+
@Entity(value = "players", useDiscriminator = false)
public class Player {
@Id private int id;
@@ -199,6 +203,7 @@ public class Player {
@Getter @Setter private long springLastUsed;
private HashMap