mirror of
https://github.com/Grasscutters/Grasscutter.git
synced 2026-05-14 00:55:27 +08:00
Compare commits
798 Commits
v1.2.2-dev
...
unstable
+3
-3
@@ -5,10 +5,10 @@ charset = utf-8
|
||||
end_of_line = lf
|
||||
indent_size = 4
|
||||
indent_style = space
|
||||
insert_final_newline = false
|
||||
insert_final_newline = true
|
||||
max_line_length = 120
|
||||
tab_width = 4
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
[{*.json,*.xml}]
|
||||
indent_size = 2
|
||||
[{*.json,*.xml,*.yml,*.html}]
|
||||
indent_size = 2
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
* text=auto
|
||||
@@ -1,7 +1,7 @@
|
||||
## 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.
|
||||
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
|
||||
|
||||
<!--- Put the links of issues that may be fixed by this PR here (if any). -->
|
||||
@@ -19,4 +19,4 @@ And, **Do not make a pull request to merge into stable unless it is a hotfix. Us
|
||||
- [ ] My code follows the style guidelines of this project
|
||||
- [ ] My pull request is unique and no other pull requests have been opened for these changes
|
||||
- [ ] I have 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)
|
||||
- [ ] I am responsible for any copyright issues with my code if it occurs in the future.
|
||||
- [ ] I am responsible for any copyright issues with my code if it occurs in the future.
|
||||
|
||||
@@ -7,6 +7,7 @@ on:
|
||||
branches:
|
||||
- "stable"
|
||||
- "development"
|
||||
- "unstable"
|
||||
pull_request:
|
||||
paths:
|
||||
- "**.java"
|
||||
@@ -24,7 +25,7 @@ jobs:
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: '17'
|
||||
java-version: '21'
|
||||
- name: Cache gradle files
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
name: Build Docker Container
|
||||
on:
|
||||
push:
|
||||
release:
|
||||
types: [published]
|
||||
workflow_dispatch: ~
|
||||
|
||||
jobs:
|
||||
publish:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
packages: write
|
||||
|
||||
steps:
|
||||
- name: Checkout Project
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Generate Docker Meta
|
||||
uses: docker/metadata-action@v5
|
||||
id: meta
|
||||
with:
|
||||
images: ghcr.io/${{ github.repository }}
|
||||
tags: |
|
||||
type=ref,event=branch
|
||||
type=semver,pattern={{version}}
|
||||
type=semver,pattern={{major}}.{{minor}}
|
||||
type=semver,pattern={{major}}
|
||||
type=sha
|
||||
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: Setup Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3.1.0
|
||||
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v3.0.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build and Push Docker image
|
||||
uses: docker/build-push-action@v5.2.0
|
||||
with:
|
||||
context: .
|
||||
push: true
|
||||
platforms: linux/amd64
|
||||
tags: ${{ steps.meta.outputs.tags }}
|
||||
labels: ${{ steps.meta.outputs.labels }}
|
||||
@@ -0,0 +1,78 @@
|
||||
name: "Lint & Format Code"
|
||||
|
||||
on:
|
||||
workflow_dispatch: ~
|
||||
push:
|
||||
paths:
|
||||
- "src/main/**.java"
|
||||
- "**.json"
|
||||
branches:
|
||||
- "development"
|
||||
- "unstable"
|
||||
|
||||
jobs:
|
||||
Format-Code:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Extract branch name
|
||||
shell: bash
|
||||
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
|
||||
id: extract_branch
|
||||
- name: Setup Java
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: temurin
|
||||
java-version: '21'
|
||||
- name: Cache gradle files
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.gradle/caches
|
||||
~/.gradle/wrapper
|
||||
./.gradle/loom-cache
|
||||
key: ${{ runner.os }}-gradle-${{ hashFiles('*.gradle', 'gradle.properties', '**/*.accesswidener') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-gradle-
|
||||
- name: Format Code
|
||||
run: ./gradlew && ./gradlew spotlessApply
|
||||
|
||||
- run: git config --global user.name "github-actions"
|
||||
- run: git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
- run: git stash
|
||||
- run: git checkout ${{ steps.extract_branch.outputs.branch }} && git pull
|
||||
- run: git stash pop || true
|
||||
|
||||
- name: Commit Code Changes
|
||||
run: git add -u && git commit -m 'Format code [skip actions]' || true
|
||||
- name: Push Code Changes
|
||||
run: git push --set-upstream --force origin ${{ steps.extract_branch.outputs.branch }}
|
||||
|
||||
Update-Languages:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Extract branch name
|
||||
shell: bash
|
||||
run: echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT
|
||||
id: extract_branch
|
||||
|
||||
- name: Update Languages
|
||||
run: python scripts/manage_languages.py -u
|
||||
|
||||
- run: git config --global user.name "github-actions"
|
||||
- run: git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
- run: git stash
|
||||
- run: git checkout ${{ steps.extract_branch.outputs.branch }} && git pull
|
||||
- run: git stash pop || true
|
||||
|
||||
- name: Commit any language changes
|
||||
run: git add -u && git commit -m 'Update languages [skip actions]' || true
|
||||
- name: Push language changes
|
||||
run: git push --set-upstream --force origin ${{ steps.extract_branch.outputs.branch }}
|
||||
@@ -3,15 +3,20 @@ on:
|
||||
workflow_dispatch: ~
|
||||
push:
|
||||
paths:
|
||||
- "**.java"
|
||||
- ".github/workflows/**"
|
||||
- "src/main/**.java"
|
||||
- "**.json"
|
||||
- "scripts/manage_languages.py"
|
||||
branches:
|
||||
- "stable"
|
||||
- "development"
|
||||
- "unstable"
|
||||
pull_request:
|
||||
paths:
|
||||
- "**.java"
|
||||
- ".github/workflows/**"
|
||||
- "src/main/**.java"
|
||||
- "**.json"
|
||||
- "scripts/manage_languages.py"
|
||||
types:
|
||||
- opened
|
||||
- synchronize
|
||||
@@ -24,4 +29,4 @@ jobs:
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10' # Version range or exact version of a Python version to use, using SemVer's version range syntax
|
||||
- run: python3 manage_languages.py -l
|
||||
- run: python3 scripts/manage_languages.py -l
|
||||
|
||||
@@ -1,41 +0,0 @@
|
||||
name: "Lint whitespace and languages"
|
||||
on:
|
||||
workflow_dispatch: ~
|
||||
push:
|
||||
paths:
|
||||
- "**.java"
|
||||
- "**.json"
|
||||
branches:
|
||||
- "development"
|
||||
jobs:
|
||||
Build-Server-Jar:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Run Whitespace Linter
|
||||
run: python format_whitespace.py
|
||||
- run: git config --global user.name "github-actions"
|
||||
- run: git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
- run: git stash
|
||||
# - name: Remove Whitespace Linter's LintRatchet ref
|
||||
# run: git branch -D LintRatchet
|
||||
# - name: Fetch this repo's LintRatchet branch
|
||||
# run: git fetch origin LintRatchet:LintRatchet
|
||||
- run: git checkout LintRatchet
|
||||
# - run: git merge development
|
||||
- run: git reset --hard development
|
||||
- run: git stash pop
|
||||
- name: Commit any whitespace changes
|
||||
run: git add -u && git commit -m 'Fix whitespace [skip actions]' || true
|
||||
- name: Update Languages
|
||||
run: python manage_languages.py -u
|
||||
- name: Commit any language changes
|
||||
run: git add -u && git commit -m 'Update languages [skip actions]' || true
|
||||
- run: git push --set-upstream --force origin LintRatchet
|
||||
@@ -0,0 +1,22 @@
|
||||
name: Protect write-access files from being PR'd
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types:
|
||||
- opened
|
||||
branches:
|
||||
- development
|
||||
paths:
|
||||
- '.github/'
|
||||
- '.editorconfig'
|
||||
- 'CODE_OF_CONDUCT.md'
|
||||
- 'CONTRIBUTING.md'
|
||||
- 'LICENSE'
|
||||
|
||||
jobs:
|
||||
run:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: superbrothers/close-pull-request@v3
|
||||
with:
|
||||
comment: "This PR has been closed for modifying protected files. See `CONTRIBUTING.md` for more information."
|
||||
+15
-3
@@ -52,6 +52,7 @@ tmp/
|
||||
.vscode
|
||||
|
||||
# Grasscutter
|
||||
/cache
|
||||
/resources
|
||||
/logs
|
||||
/plugins
|
||||
@@ -59,12 +60,14 @@ tmp/
|
||||
/keys
|
||||
/language
|
||||
/languages
|
||||
/src/generated
|
||||
/proto
|
||||
|
||||
/*.jar
|
||||
/*.sh
|
||||
!entrypoint.sh
|
||||
|
||||
GM Handbook*.txt
|
||||
|
||||
GM Handbook.txt
|
||||
config.json
|
||||
mitmdump.exe
|
||||
mongod.exe
|
||||
@@ -72,6 +75,7 @@ mongod.exe
|
||||
gacha-mapping.js
|
||||
mappings.js
|
||||
BuildConfig.java
|
||||
data/hk4e/announcement/
|
||||
|
||||
# lombok
|
||||
/.apt_generated/
|
||||
@@ -79,4 +83,12 @@ BuildConfig.java
|
||||
# macOS
|
||||
.DS_Store
|
||||
.directory
|
||||
data/hk4e/announcement/
|
||||
|
||||
# Hotswap Agent
|
||||
hotswap-agent.properties
|
||||
|
||||
# Debug patches
|
||||
patches/*.patch
|
||||
|
||||
# Artifact Signatures
|
||||
*.asc
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
[submodule "docs/wiki"]
|
||||
path = docs/wiki
|
||||
url = https://github.com/Grasscutters/Grasscutter.wiki.git
|
||||
@@ -12,3 +12,20 @@ Please note we have a code of conduct, please follow it in all your interactions
|
||||
1. Ensure any install or build dependencies are removed before the end of the layer when doing a build.
|
||||
2. Update the README.md and wiki with details of changes to the interface, this includes new environment variables, exposed ports, useful file locations and container parameters.
|
||||
3. Write with detail on your pull request description what you have committed, to make it easier for the collaborators to make a changelog.
|
||||
|
||||
## Code Content
|
||||
|
||||
Your code should follow the standards set below:
|
||||
|
||||
- Your code can be run purely using a Java 17 JVM.
|
||||
- Dependencies that use a separate language (ex. Kotlin) that can run on a JVM are acceptable.
|
||||
- Dependencies that require the use of native code (ex. JNI) are prohibited.
|
||||
- Directly adding foreign code (other languages, ex. Kotlin) into the main codebase is prohibited.
|
||||
- Certain files and folders are forbidden to modify in Pull Requests and may only be changed by Write-Access members. The current list for this can be found in `.github/workflows/protect_files.yml`.
|
||||
|
||||
## Intellectual Property
|
||||
|
||||
Please avoid adding any direct references to the following, whenever possible:
|
||||
- Game names
|
||||
- Character names
|
||||
- Notable weapon names
|
||||
|
||||
+38
@@ -0,0 +1,38 @@
|
||||
# Builder
|
||||
FROM gradle:jdk21-alpine as builder
|
||||
|
||||
RUN apk add --update nodejs npm
|
||||
|
||||
WORKDIR /app
|
||||
COPY ./ /app/
|
||||
|
||||
RUN gradle jar --no-daemon
|
||||
|
||||
# Fetch Data
|
||||
FROM bitnami/git:2.43.0-debian-11-r1 as data
|
||||
|
||||
ARG DATA_REPOSITORY=https://gitlab.com/YuukiPS/GC-Resources.git
|
||||
ARG DATA_BRANCH=4.0
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
RUN git clone --branch ${DATA_BRANCH} --depth 1 ${DATA_REPOSITORY}
|
||||
|
||||
# Result Container
|
||||
FROM amazoncorretto:21-alpine
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Copy built assets
|
||||
COPY --from=builder /app/grasscutter-*.jar /app/grasscutter.jar
|
||||
COPY --from=builder /app/keystore.p12 /app/keystore.p12
|
||||
|
||||
# Copy the resources
|
||||
COPY --from=data /app/GC-Resources/Resources /app/resources/
|
||||
|
||||
# Copy startup files
|
||||
COPY ./entrypoint.sh /app/
|
||||
|
||||
CMD [ "sh", "/app/entrypoint.sh" ]
|
||||
|
||||
EXPOSE 80 443 8888 22102
|
||||
@@ -1,73 +1,84 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
EN | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md)
|
||||
[EN](README.md) | [简中](docs/README_zh-CN.md) | [繁中](docs/README_zh-TW.md) | [FR](docs/README_fr-FR.md) | [ES](docs/README_es-ES.md) | [HE](docs/README_HE.md) | [RU](docs/README_ru-RU.md) | [PL](docs/README_pl-PL.md) | [ID](docs/README_id-ID.md) | [KR](docs/README_ko-KR.md) | [FIL/PH](docs/README_fil-PH.md) | [NL](docs/README_NL.md) | [JP](docs/README_ja-JP.md) | [IT](docs/README_it-IT.md) | [VI](docs/README_vi-VN.md)
|
||||
|
||||
**Attention:** We always welcome contributors to the project. Before adding your contribution, please carefully read our [Code of Conduct](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Current features
|
||||
|
||||
* Logging in
|
||||
* Combat
|
||||
* Friends list
|
||||
* Teleportation
|
||||
* Gacha system
|
||||
* Co-op *partially* works
|
||||
* Spawning monsters via console
|
||||
* Inventory features (receiving items/characters, upgrading items/characters, etc)
|
||||
- Logging in
|
||||
- Combat
|
||||
- Friends list
|
||||
- Teleportation
|
||||
- Gacha system
|
||||
- Co-op works(-ish)
|
||||
- Spawning monsters via console
|
||||
- Inventory features (receiving items/characters, upgrading items/characters, etc)
|
||||
|
||||
## Quick setup guide
|
||||
|
||||
**Note:** For support please join our [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
**Note**: For support please join our [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Requirements
|
||||
### Quick Start (automatic)
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
<details>
|
||||
|
||||
**Note:** If you just want to **run it**, then **jre** only is fine.
|
||||
<summary>Windows quick start using Cultivation</summary>
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (recommended 4.0+)
|
||||
- Get [Java 21](https://www.oracle.com/java/technologies/javase/jdk21-archive-downloads.html)
|
||||
- Get [MongoDB Community Server](https://www.mongodb.com/try/download/community)
|
||||
- Get [game version REL5.0](#downloading-50)
|
||||
|
||||
* Proxy daemon: mitmproxy (mitmdump, recommended), Fiddler Classic, etc.
|
||||
- Download the [latest Cultivation version](https://github.com/Grasscutters/Cultivation/releases/latest). Use the `.msi` installer.
|
||||
- After opening Cultivation (as admin), press the download button in the upper right corner.
|
||||
- Click `Download All-in-One`
|
||||
- Click the gear in the upper right corner
|
||||
- Set the game Install path to where your game is located.
|
||||
- Set the Custom Java Path to `C:\Program Files\Java\jdk-21\bin\java.exe`
|
||||
- Leave all other settings on default
|
||||
|
||||
### Running
|
||||
- Click the small button next to launch.
|
||||
- Click the launch button.
|
||||
- Log in with whatever username you want. Password can be anything.
|
||||
|
||||
**Note:** If you updated from an older version, delete `config.json` to regenerate it.
|
||||
</details>
|
||||
|
||||
1. Get `grasscutter.jar`
|
||||
- Download from [actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Build by yourself](#Building)
|
||||
2. Create a `resources` folder in the directory where grasscutter.jar is located and move your `BinOutput` and `ExcelBinOutput` folders there *(Check the [wiki](https://github.com/Grasscutters/Grasscutter/wiki) for more details how to get those.)*
|
||||
3. Run Grasscutter with `java -jar grasscutter.jar`. **Make sure mongodb service is running as well.**
|
||||
### Downloading 5.0
|
||||
|
||||
### Connecting with the client
|
||||
<details>
|
||||
|
||||
½. Create an account using [server console command](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
<summary>Download Link Table</summary>
|
||||
|
||||
1. Redirect traffic: (choose one)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Trust CA certificate:
|
||||
|
||||
**Note:**The CA certificate is usually stored in `%USERPROFILE%\ .mitmproxy`, or you can download it from `http://mitm.it`
|
||||
|
||||
Double click for [install](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) or ...
|
||||
|
||||
- Via command line
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Run Fiddler Classic, turn on `Decrypt https traffic` in setting and change the default port there (Tools -> Options -> Connections) to anything other than `8888`, and load [this script](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [Hosts file](https://github.com/Melledy/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Set network proxy to `127.0.0.1:8080` or the proxy port you specified.
|
||||
**Note:** Scroll down to see patch files from 4.8 to 5.0.
|
||||
|
||||
**you can also use `start.cmd` to start servers and proxy daemons automatically, but you have to set up JAVA_HOME enviroment**
|
||||
| Download link | Package size | Decompressed package size | MD5 checksum |
|
||||
|:------------------------------------------------------------------------------------------------------------------------------------------------------:|:------------:|:-------------------------:|:--------------------------------:|
|
||||
| [GenshinImpact_5.0.0.zip.001](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.001) | 10.0 GB | 20.0 GB | 1ebf5dbcbe43bebcda7a57a8d789092e |
|
||||
| [GenshinImpact_5.0.0.zip.002](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.002) | 10.0 GB | 20.0 GB | 57a67026c45d57c28e5b52e24e84cc04 |
|
||||
| [GenshinImpact_5.0.0.zip.003](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.003) | 10.0 GB | 20.0 GB | 5e66ff28eaf6ba89e49f153c0f077d34 |
|
||||
| [GenshinImpact_5.0.0.zip.004](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.004) | 10.0 GB | 20.0 GB | 39f014a760e27f77abed1989739c74c6 |
|
||||
| [GenshinImpact_5.0.0.zip.005](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.005) | 10.0 GB | 20.0 GB | 15f9405a199afba833f18fce288b9c7f |
|
||||
| [GenshinImpact_5.0.0.zip.006](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.006) | 10.0 GB | 20.0 GB | 881432ceab27987b1297c9eefb39f192 |
|
||||
| [GenshinImpact_5.0.0.zip.007](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/GenshinImpact_5.0.0.zip.007) | 3.78 GB | 7.57 GB | 951f91992b428385294baf9b6c764d49 |
|
||||
| [Audio_Chinese_5.0.0.zip](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/Audio_Chinese_5.0.0.zip) | 14.77 GB | 29.56 GB | 216b3e53f3c5c7e1290891696b2bbc66 |
|
||||
| [Audio_English(US)_5.0.0.zip](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/Audio_English(US)_5.0.0.zip) | 17.23 GB | 34.47 GB | ecd59f31ec48c50f9051fdad39603d67 |
|
||||
| [Audio_Korean_5.0.0.zip](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/Audio_Korean_5.0.0.zip) | 14.51 GB | 29.04 GB | 8bf09bd07413189b69a5a0512df97335 |
|
||||
| [Audio_Japanese_5.0.0.zip](https://autopatchhk.yuanshen.com/client_app/download/pc_zip/20240816185649_LtymMnnIZVQfbLZ2/Audio_Japanese_5.0.0.zip) | 19.37 GB | 38.76 GB | 95efbd23e1bde2eb574f8090cc118109 |
|
||||
|
||||
### 4.8 -> 5.0 Patch FIles
|
||||
|
||||
| Download link | Package size | Decompressed package size | MD5 checksum |
|
||||
|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:------------:|:-------------------------:|:--------------------------------:|
|
||||
| [game_4.8.0_5.0.0_hdiff_wZvKsUhQtnBEutrh.zip](https://autopatchhk.yuanshen.com/client_app/update/hk4e_global/game_4.8.0_5.0.0_hdiff_wZvKsUhQtnBEutrh.zip) | 19.52 GB | 39.86 | ec0cc740e01c374cd53d48219c1a4aff |
|
||||
| [audio_ko-kr_4.8.0_5.0.0_hdiff_gTmBNUAGPpXxrRKC.zip](https://autopatchhk.yuanshen.com/client_app/update/hk4e_global/audio_ko-kr_4.8.0_5.0.0_hdiff_gTmBNUAGPpXxrRKC.zip) | 0.60 GB | 1.31 GB | 64c52d4065a5d5983b37faeb9796a3eb |
|
||||
| [audio_ja-jp_4.8.0_5.0.0_hdiff_LumPhRraNOjGJMnG.zip](https://autopatchhk.yuanshen.com/client_app/update/hk4e_global/audio_ja-jp_4.8.0_5.0.0_hdiff_LumPhRraNOjGJMnG.zip) | 0.71 GB | 1.63 GB | 934899593f7234bec937fca98c0b0bed |
|
||||
| [audio_zh-cn_4.8.0_5.0.0_hdiff_ZZiDHvYQeHGKuFeP.zip](https://autopatchhk.yuanshen.com/client_app/update/hk4e_global/audio_zh-cn_4.8.0_5.0.0_hdiff_ZZiDHvYQeHGKuFeP.zip) | 0.62 GB | 1.35 GB | c1073373d6c7b3680217335dc346de50 |
|
||||
| [audio_en-us_4.8.0_5.0.0_hdiff_vsfAECOkroqoZSqK.zip](https://autopatchhk.yuanshen.com/client_app/update/hk4e_global/audio_en-us_4.8.0_5.0.0_hdiff_vsfAECOkroqoZSqK.zip) | 0.74 GB | 1.58 GB | b5cb77749a0e2fc0e85b6b1ee319a7e9 |
|
||||
|
||||
</details>
|
||||
|
||||
### Building
|
||||
|
||||
@@ -75,34 +86,40 @@ Grasscutter uses Gradle to handle dependencies & building.
|
||||
|
||||
**Requirements:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Java Development Kit 21](https://www.oracle.com/java/technologies/javase/jdk21-archive-downloads.html) or higher
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
##### Clone
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar # Compile
|
||||
```
|
||||
|
||||
##### Linux
|
||||
##### Compile
|
||||
|
||||
Windows:
|
||||
|
||||
```shell
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar
|
||||
```
|
||||
|
||||
Linux (GNU):
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compile
|
||||
./gradlew jar
|
||||
```
|
||||
|
||||
You can find the output jar in the root of the project folder.
|
||||
### Troubleshooting
|
||||
|
||||
### Commands have moved to the [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
For a list of common issues and solutions and to ask for help, please join [our Discord server](https://discord.gg/T5vZU6UyeG) and go to the support channel.
|
||||
|
||||
# Quick Troubleshooting
|
||||
|
||||
* If compiling wasn't successful, please check your JDK installation (JDK 17 and validated JDK's bin PATH variable)
|
||||
* My client doesn't connect, doesn't login, 4206, etc... - Mostly your proxy daemon setup is *the issue*, if using
|
||||
Fiddler make sure it running on another port except 8888
|
||||
* Startup sequence: MongoDB > Grasscutter > Proxy daemon (mitmdump, fiddler, etc.) > Game
|
||||
## Credits
|
||||
|
||||
> [!NOTE]
|
||||
> Protocol definitions are dumped from many parties, but they are not stated here. Thanks for contributing!
|
||||
|
||||
- [KCP Library](https://github.com/OcenWang-GI/AyakaPS-KCP) - `grasskcper` updated with the `byte_check_code`
|
||||
|
||||
-107
@@ -1,107 +0,0 @@
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | FR | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md)
|
||||
|
||||
**Attention:** De nouveaux contributeurs sont toujours les bienvenus. Avant d'ajouter votre contribution, veuillez lire le [code de conduite](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Fonctionnalités actuelles :
|
||||
|
||||
* Connection
|
||||
* Combat
|
||||
* Liste d'amis
|
||||
* Téléportation
|
||||
* Système de gacha
|
||||
* Le multijoueur fonctionne *partiellement*
|
||||
* Apparition de monstres via la console
|
||||
* Inventaire (obtention d'objets/de personnages, amélioration d'objets/personnages, etc)
|
||||
|
||||
## Guide de démarrage rapide
|
||||
|
||||
**Note:** Pour obtenir un support, rejoignez notre serveur [Discord](https://discord.gg/T5vZU6UyeG) (en anglais).
|
||||
|
||||
### Logiciels requis
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**Note:** Si vous voulez juste **l'exécuter**, Alors vous pouvez télécharger seulement le **jre**
|
||||
|
||||
* MongoDB (4.0+ recommandé)
|
||||
|
||||
* Proxy daemon: mitmproxy (mitmdump, recommended), Fiddler Classic, etc.
|
||||
|
||||
### Lancement
|
||||
|
||||
**Note:** Si vous avez mis à jour depuis une ancienne version, supprimez `config.json` pour le regénérer.
|
||||
|
||||
1. Obtenez `grasscutter.jar`
|
||||
- Téléchargez le depuis les [actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Buildez le par vous-même](#Building)
|
||||
2. Créez un dossier `resources` dans le dossier où grasscutter.jar est situé et déplacez vos dossiers `BinOutput` et `ExcelBinOutput` ici *(Vérifiez le [wiki](https://github.com/Grasscutters/Grasscutter/wiki) pour plus de détails sur comment les obtenir.)*
|
||||
3. Exécutez Grasscutter avec `java -jar grasscutter.jar`. **Soyez sûr que le service MongoDB est en cours d'exécution.**
|
||||
|
||||
### Connection avec le client
|
||||
|
||||
½. Créez un compte avec la [console de commande du serveur](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Redirection du traffic: (Choisissez-en un)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Approuvez le certificat CA:
|
||||
|
||||
**Note:**Le certificat CA est généralement stocké sous `%USERPROFILE%\ .mitmproxy`, ou vous pouvez le télécharger depuis `http://mitm.it`
|
||||
|
||||
Double-cliquez pour [installer](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) oo ...
|
||||
|
||||
- Via la ligne de commande
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Exécutez Fiddler Classic, Activez `Decrypt https traffic` dans les paramètres et changez le port par défaut ici (Tools -> Options -> Connections) à autre chose que `8888`, et chargez [ce script](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [Fichier hosts](https://github.com/Melledy/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Définissez le proxy du réseau comme `127.0.0.1:8080` ou le port du proxy que vous avez spécifié.
|
||||
|
||||
**Vous pouvez aussi utiliser `start.cmd` to démarrer les serveurs et le proxy automatiquement, mais vous devez mettre en place la variable d'environnement JAVA_HOME**
|
||||
|
||||
### Building
|
||||
|
||||
Grasscutter utilise Gradle pour gérer les dépendances et la construction.
|
||||
|
||||
**Logiciels requis:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Mettre en place l'environnement
|
||||
.\gradlew jar # Compiler
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compiler
|
||||
```
|
||||
|
||||
Vous trouverez le fichier jar compilé à la racine du dossier du projet.
|
||||
|
||||
### Les commandes ont été déplacé vers le [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)! (en anglais)
|
||||
|
||||
# Dépannage rapide
|
||||
|
||||
* Si la compilation a échoué, veuillez vérifier votre installation de votre JDK (JDK 17 et le bon dossier bin du JDK dans la variable PATH)
|
||||
* Mon client ne se connecte pas au serveur, impossible de se connecter a mon compte, 4206, etc... - La plupart du temps, *le problème* vient de la configuration de votre proxy. Si vous utilisez Fiddler, vérifiez s'il est exécuté sur un port autre que 8888
|
||||
* Séquence de démarrage : MongoDB > Grasscutter > Proxy (mitmdump, fiddler, etc...) > Jeu
|
||||
-108
@@ -1,108 +0,0 @@
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](README.md) | 简中 | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md)
|
||||
|
||||
**请注意:** 欢迎成为本项目的贡献者。在提交 PR 之前, 请仔细阅读[代码规范](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md)。
|
||||
|
||||
## 当前功能
|
||||
|
||||
* 登录
|
||||
* 战斗
|
||||
* 好友列表
|
||||
* 传送系统
|
||||
* 祈愿系统
|
||||
* 从控制台生成魔物
|
||||
* 多人游戏 *部分* 可用
|
||||
* 物品栏相关 (接收物品/角色, 升级角色/武器等)
|
||||
|
||||
## 快速设置指南
|
||||
|
||||
**注意:** 如需帮助请加入 [Discord](https://discord.gg/T5vZU6UyeG)
|
||||
|
||||
### 环境需求
|
||||
|
||||
* Java SE - 17 ([链接](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**注意:** 如果仅想**运行服务端**, 使用 **jre** 即可
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (推荐 4.0+)
|
||||
|
||||
* 代理程序: mitmproxy (推荐 mitmdump), Fiddler Classic 等
|
||||
|
||||
### 运行
|
||||
|
||||
**注意:** 从旧版本升级到新版本, 需要删除 `config.json`
|
||||
|
||||
1. 获取 `grasscutter.jar`
|
||||
- 从 [actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297) 下载
|
||||
- [自行编译](#编译)
|
||||
2. 在 JAR 文件根目录中创建 `resources` 文件夹并复制 `BinOutput` 和 `ExcelBinOutput` *(查看 [wiki](https://github.com/Grasscutters/Grasscutter/wiki) 了解更多)*
|
||||
3. 命令行 `java -jar grasscutter.jar` 运行 Grasscutter。**在此之前请确认 MongoDB 服务运行正常**
|
||||
|
||||
### 客户端连接
|
||||
|
||||
½. 在服务器控制台[创建账户](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting)
|
||||
|
||||
1. 重定向流量: (选择其中一个)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
信任 CA 证书:
|
||||
|
||||
**注意:** mitmproxy 的 CA 证书通常存放在 `%USERPROFILE%\ .mitmproxy`, 或者在 `http://mitm.it` 下载证书
|
||||
|
||||
双击[安装根证书](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate)或者...
|
||||
|
||||
- 使用命令行
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: 运行 Fiddler Classic, 在设置中开启 `解密 https 通信` 并将端口设为除 `8888` 以外的任意端口 (工具 -> 选项 -> 连接) 并加载[此脚本](https://github.lunatic.moe/fiddlerscript)
|
||||
|
||||
- [Hosts 文件](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. 设置代理为 `127.0.0.1:8080` 或你设置的端口
|
||||
|
||||
**也可直接运行 `start.cmd` 一键启动服务端并设置代理, 但必须设置 `JAVA_HOME` 环境变量**
|
||||
|
||||
### 编译
|
||||
|
||||
Grasscutter 使用 Gradle 来处理依赖及编译。
|
||||
|
||||
**依赖:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # 建立开发环境
|
||||
.\gradlew jar # 编译
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # 编译
|
||||
```
|
||||
|
||||
编译后的 JAR 文件存放在根目录
|
||||
|
||||
### 命令列表请到 [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands) 查看
|
||||
|
||||
# 快速排除问题
|
||||
|
||||
* 如果编译失败, 请检查 JDK 安装是否正确 (要求 JDK 17 并确认 JDK 处于环境变量 `PATH` 中)
|
||||
* 客户端无法登录/连接, 4206, 其他问题... - 大部分情况是因为代理设置本身就是*问题*。
|
||||
如果使用 Fiddler 请确认 Fiddler 监听端口不是 `8888`
|
||||
* 启动顺序: MongoDB > Grasscutter > 代理程序 (mitmdump, fiddler 等) > 客户端
|
||||
+132
-75
@@ -1,3 +1,5 @@
|
||||
import org.gradle.plugins.ide.eclipse.model.SourceFolder
|
||||
|
||||
/*
|
||||
* This file was generated by the Gradle 'init' task.
|
||||
*
|
||||
@@ -8,7 +10,7 @@
|
||||
|
||||
buildscript {
|
||||
repositories {
|
||||
maven { url "https://plugins.gradle.org/m2/" }
|
||||
maven { url 'https://plugins.gradle.org/m2/' }
|
||||
}
|
||||
dependencies {
|
||||
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.18'
|
||||
@@ -16,38 +18,46 @@ buildscript {
|
||||
}
|
||||
|
||||
plugins {
|
||||
// Apply the application plugin to add support for building a CLI application
|
||||
id 'application'
|
||||
id 'java' // Apply the java plugin to add support for Java
|
||||
id 'java-library' // Apply the java-library plugin for API and implementation separation.
|
||||
id 'application' // Apply the application plugin to add support for building a CLI application
|
||||
id 'com.google.protobuf' version '0.8.18' // Apply the protobuf auto generator
|
||||
id 'com.diffplug.spotless' version '6.25.0' // Apply the Spotless linter plugin.
|
||||
|
||||
// Apply the java plugin to add support for Java
|
||||
id 'java'
|
||||
id 'eclipse' // Eclipse Support
|
||||
id 'idea' // IntelliJ Support
|
||||
|
||||
// Apply the protobuf auto generator
|
||||
id 'com.google.protobuf' version "0.8.18"
|
||||
id 'maven-publish' // Support for publishing to Maven repositories.
|
||||
id 'signing' // Support for signing build artifacts.
|
||||
|
||||
// Eclipse Support
|
||||
id 'eclipse'
|
||||
|
||||
// IntelliJ Support
|
||||
id 'idea'
|
||||
|
||||
// Maven
|
||||
id 'maven-publish'
|
||||
id 'signing'
|
||||
id 'io.freefair.lombok' version '8.6' // Lombok for delombok'ification
|
||||
}
|
||||
|
||||
compileJava.options.encoding = "UTF-8"
|
||||
compileTestJava.options.encoding = "UTF-8"
|
||||
spotless {
|
||||
java {
|
||||
target fileTree(rootDir) {
|
||||
include '**/*.java'
|
||||
exclude '**/generated/**/*.*'
|
||||
exclude '.idea/**/*.*'
|
||||
}
|
||||
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
importOrder('io.grasscutter', '', 'java', 'javax', '\\#java', '\\#') // Configure import order.
|
||||
googleJavaFormat('1.17.0') // Use Google's Java formatter.
|
||||
formatAnnotations() // Reformat annotations.
|
||||
endWithNewline() // Ensure files end with a newline.
|
||||
indentWithTabs(2); indentWithSpaces(4) // Use 4 spaces for indentation.
|
||||
toggleOffOn() // Toggle off/on.
|
||||
}
|
||||
}
|
||||
|
||||
group = 'xyz.grasscutters'
|
||||
version = '1.2.2-dev'
|
||||
compileJava.options.encoding = 'UTF-8'
|
||||
compileTestJava.options.encoding = 'UTF-8'
|
||||
|
||||
sourceCompatibility = JavaVersion.VERSION_21
|
||||
targetCompatibility = JavaVersion.VERSION_21
|
||||
|
||||
sourceCompatibility = 17
|
||||
targetCompatibility = 17
|
||||
group = 'io.grasscutter'
|
||||
version = '2.0.0-unstable'
|
||||
|
||||
java {
|
||||
withJavadocJar()
|
||||
@@ -59,48 +69,79 @@ repositories {
|
||||
}
|
||||
|
||||
dependencies {
|
||||
// Additional JAR libraries.
|
||||
implementation fileTree(dir: 'lib', include: ['*.jar'])
|
||||
|
||||
implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.36'
|
||||
implementation group: 'ch.qos.logback', name: 'logback-core', version: '1.2.11'
|
||||
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.11'
|
||||
implementation group: 'it.unimi.dsi', name: 'fastutil', version: '8.5.8'
|
||||
|
||||
implementation group: 'org.jline', name: 'jline', version: '3.21.0'
|
||||
// Logging libraries.
|
||||
implementation group: 'org.slf4j', name: 'slf4j-api', version: '2.0.7'
|
||||
implementation group: 'ch.qos.logback', name: 'logback-core', version: '1.4.14'
|
||||
implementation group: 'ch.qos.logback', name: 'logback-classic', version: '1.4.12'
|
||||
|
||||
// Line reading libraries.
|
||||
implementation group: 'org.jline', name: 'jline', version: '3.25.0'
|
||||
implementation group: 'org.jline', name: 'jline-terminal-jna', version: '3.21.0'
|
||||
implementation group: 'net.java.dev.jna', name: 'jna', version: '5.10.0'
|
||||
|
||||
implementation group: 'io.netty', name: 'netty-common', version: '4.1.79.Final'
|
||||
implementation group: 'io.netty', name: 'netty-handler', version: '4.1.79.Final'
|
||||
implementation group: 'io.netty', name: 'netty-transport-native-epoll', version: '4.1.79.Final'
|
||||
implementation group: 'io.netty', name: 'netty-transport-native-kqueue', version: '4.1.79.Final'
|
||||
// Java Netty for networking.
|
||||
implementation group: 'io.netty', name: 'netty-common', version: project.netty_version
|
||||
implementation group: 'io.netty', name: 'netty-handler', version: project.netty_version
|
||||
implementation group: 'io.netty', name: 'netty-transport-native-epoll', version: project.netty_version
|
||||
implementation group: 'io.netty', name: 'netty-transport-native-kqueue', version: project.netty_version
|
||||
|
||||
// Serialization.
|
||||
implementation group: 'com.google.code.gson', name: 'gson', version: '2.9.0'
|
||||
implementation group: 'com.google.protobuf', name: 'protobuf-java', version: '3.18.2'
|
||||
implementation group: 'com.google.protobuf', name: 'protobuf-java', version: '3.19.6'
|
||||
|
||||
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.14.2'
|
||||
implementation platform('com.fasterxml.jackson:jackson-bom:2.14.0')
|
||||
implementation group: 'com.fasterxml.jackson.core', name: 'jackson-databind', version: '2.14.2'
|
||||
|
||||
// Reflections libraries.
|
||||
implementation group: 'org.reflections', name: 'reflections', version: '0.10.2'
|
||||
implementation group: 'com.esotericsoftware', name: 'reflectasm', version: '1.11.9'
|
||||
implementation group: 'com.github.davidmoten', name: 'rtree-multi', version: '0.1'
|
||||
|
||||
// MongoDB object mapper.
|
||||
implementation group: 'dev.morphia.morphia', name: 'morphia-core', version: '2.2.7'
|
||||
|
||||
// Utility libraries.
|
||||
implementation group: 'org.greenrobot', name: 'eventbus-java', version: '3.3.1'
|
||||
//implementation group: 'org.danilopianini', name: 'java-quadtree', version: '0.1.9'
|
||||
// implementation group: 'org.danilopianini', name: 'java-quadtree', version: '0.1.9'
|
||||
|
||||
// Long-term scheduler.
|
||||
implementation group: 'org.quartz-scheduler', name: 'quartz', version: '2.3.2'
|
||||
implementation group: 'org.quartz-scheduler', name: 'quartz-jobs', version: '2.3.2'
|
||||
|
||||
// Lua script engine library.
|
||||
implementation group: 'org.luaj', name: 'luaj-jse', version: '3.0.1'
|
||||
|
||||
implementation group: 'com.esotericsoftware', name : 'reflectasm', version: '1.11.9'
|
||||
implementation group: 'com.github.davidmoten', name : 'rtree-multi', version: '0.1'
|
||||
// Java HTTP server library.
|
||||
implementation group: 'io.javalin', name: 'javalin', version: '5.5.0'
|
||||
// Java WebSocket server & client library.
|
||||
implementation group: 'org.java-websocket', name: 'Java-WebSocket', version: '1.5.2'
|
||||
|
||||
// Google Protocol Buffer definitions.
|
||||
// These are the raw '.proto' files.
|
||||
protobuf files('proto/')
|
||||
|
||||
compileOnly 'org.projectlombok:lombok:1.18.24'
|
||||
annotationProcessor 'org.projectlombok:lombok:1.18.24'
|
||||
testCompileOnly 'org.projectlombok:lombok:1.18.24'
|
||||
testAnnotationProcessor 'org.projectlombok:lombok:1.18.24'
|
||||
// Testing libraries.
|
||||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-api', version: '5.8.2'
|
||||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-params', version: '5.8.2'
|
||||
testImplementation group: 'org.junit.jupiter', name: 'junit-jupiter-engine', version: '5.8.2'
|
||||
|
||||
// HTTP client library for testing.
|
||||
testImplementation group: 'com.squareup.okhttp3', name: 'okhttp', version: '4.10.0'
|
||||
|
||||
// Lombok.
|
||||
compileOnly group: 'org.projectlombok', name: 'lombok', version: project.lombok_version
|
||||
annotationProcessor group: 'org.projectlombok', name: 'lombok', version: project.lombok_version
|
||||
testCompileOnly group: 'org.projectlombok', name: 'lombok', version: project.lombok_version
|
||||
testAnnotationProcessor group: 'org.projectlombok', name: 'lombok', version: project.lombok_version
|
||||
}
|
||||
|
||||
configurations.all {
|
||||
configurations.configureEach {
|
||||
exclude group: 'org.slf4j', module: 'slf4j'
|
||||
}
|
||||
|
||||
@@ -109,19 +150,22 @@ application {
|
||||
getMainClass().set('emu.grasscutter.Grasscutter')
|
||||
}
|
||||
|
||||
|
||||
jar {
|
||||
exclude '*.proto'
|
||||
|
||||
manifest {
|
||||
attributes 'Main-Class': 'emu.grasscutter.Grasscutter'
|
||||
}
|
||||
|
||||
archiveBaseName = 'grasscutter'
|
||||
if (project.hasProperty('jarFilename')) {
|
||||
archiveFileName = "${jarFilename}.${extension}"
|
||||
archiveFileName = "${jarFilename}.${archiveExtension}"
|
||||
}
|
||||
|
||||
from {
|
||||
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
|
||||
configurations.runtimeClasspath.collect {
|
||||
it.isDirectory() ? it : zipTree(it)
|
||||
}
|
||||
}
|
||||
|
||||
duplicatesStrategy = DuplicatesStrategy.INCLUDE
|
||||
@@ -130,7 +174,12 @@ jar {
|
||||
include '*.xml'
|
||||
}
|
||||
|
||||
destinationDirectory = file(".")
|
||||
destinationDirectory = file('.')
|
||||
}
|
||||
|
||||
test {
|
||||
useJUnitPlatform()
|
||||
setMaxHeapSize('4G')
|
||||
}
|
||||
|
||||
publishing {
|
||||
@@ -146,26 +195,22 @@ publishing {
|
||||
fromResolutionResult()
|
||||
}
|
||||
}
|
||||
|
||||
pom {
|
||||
name = 'Grasscutter'
|
||||
description = 'A server software reimplementation for an anime game.'
|
||||
url = 'https://github.com/Grasscutters/Grasscutter'
|
||||
licenses {
|
||||
license {
|
||||
name = 'The Apache License, Version 2.0'
|
||||
url = 'http://www.apache.org/licenses/LICENSE-2.0.txt'
|
||||
name = 'GNU Affero General Public License, Version 3.0'
|
||||
url = 'https://www.gnu.org/licenses/agpl-3.0.txt'
|
||||
}
|
||||
}
|
||||
developers {
|
||||
developer {
|
||||
id = 'meledy'
|
||||
name = 'Meledy'
|
||||
email = 'meledy@xigam.tech' // not a real email kek
|
||||
}
|
||||
developer {
|
||||
id = 'magix'
|
||||
name = 'Magix'
|
||||
email = 'magix@xigam.tech'
|
||||
email = 'meledy@grasscutter.io' // not a real email kek
|
||||
}
|
||||
}
|
||||
scm {
|
||||
@@ -176,18 +221,14 @@ publishing {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
repositories {
|
||||
maven {
|
||||
if(version.endsWith('-dev')) {
|
||||
println ("Publishing to 4benj-maven")
|
||||
url 'https://repo.4benj.com/releases'
|
||||
name '4benj-maven'
|
||||
credentials {
|
||||
username System.getenv('benj_maven_username')
|
||||
password System.getenv('benj_maven_token')
|
||||
if (!version.endsWith('-dev')) {
|
||||
if (publish.state.executing) {
|
||||
println('Publishing artifact to Sonatype repository...')
|
||||
}
|
||||
} else {
|
||||
println ("Publishing to sonatype")
|
||||
|
||||
def releasesRepoUrl = 'https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/'
|
||||
def snapshotsRepoUrl = 'https://s01.oss.sonatype.org/content/repositories/snapshots/'
|
||||
url = version.endsWith('SNAPSHOT') ? snapshotsRepoUrl : releasesRepoUrl
|
||||
@@ -208,7 +249,7 @@ protobuf {
|
||||
// The artifact spec for the Protobuf Compiler
|
||||
artifact = 'com.google.protobuf:protoc:3.18.1'
|
||||
}
|
||||
// generatedFilesBaseDir = "$projectDir/src/main/java/emu/grasscutter/net/proto/"
|
||||
|
||||
generatedFilesBaseDir = "$projectDir/src/generated/"
|
||||
}
|
||||
|
||||
@@ -219,7 +260,7 @@ sourceSets {
|
||||
srcDir 'src/generated'
|
||||
}
|
||||
java {
|
||||
srcDir 'src/java'
|
||||
srcDir 'src/generated/main/java'
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -229,50 +270,66 @@ idea {
|
||||
// proto files and generated Java files are automatically added as
|
||||
// source dirs.
|
||||
// If you have additional sources, add them here:
|
||||
sourceDirs += file("/proto/");
|
||||
sourceDirs += file('/proto/')
|
||||
}
|
||||
}
|
||||
|
||||
eclipse {
|
||||
classpath {
|
||||
file.whenMerged { cp ->
|
||||
cp.entries.add( new org.gradle.plugins.ide.eclipse.model.SourceFolder('src/generated/main/java', null) )
|
||||
file.whenMerged {
|
||||
cp -> cp.entries.add(new SourceFolder('src/generated/main/java', null))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
signing {
|
||||
if(!version.endsWith('-dev')) {
|
||||
if (!version.endsWith('-dev')) {
|
||||
sign publishing.publications.mavenJava
|
||||
}
|
||||
}
|
||||
|
||||
javadoc {
|
||||
options.encoding = 'UTF-8'
|
||||
if(JavaVersion.current().isJava9Compatible()) {
|
||||
if (JavaVersion.current().isJava9Compatible()) {
|
||||
options.addBooleanOption('html5', true)
|
||||
}
|
||||
|
||||
// Add this to avoid warning caused by lack of comments in proto generated java files
|
||||
options.addStringOption('Xdoclint:none', '-quiet')
|
||||
exclude '**/*.md'
|
||||
exclude 'src/generated/**/*.*'
|
||||
}
|
||||
|
||||
task injectGitHash {
|
||||
tasks.register('injectGitHash') {
|
||||
def gitCommitHash = {
|
||||
try {
|
||||
return 'git rev-parse --verify --short HEAD'.execute().text.trim()
|
||||
} catch (ignored) {
|
||||
return "GIT_NOT_FOUND"
|
||||
return 'GIT_NOT_FOUND'
|
||||
}
|
||||
}
|
||||
|
||||
new File(projectDir, "src/main/java/emu/grasscutter/BuildConfig.java").text =
|
||||
"""package emu.grasscutter;
|
||||
new File(projectDir, 'src/main/java/emu/grasscutter/BuildConfig.java').text = """package emu.grasscutter;
|
||||
|
||||
public final class BuildConfig {
|
||||
public static final String VERSION = \"${version}\";
|
||||
public static final String GIT_HASH = \"${gitCommitHash()}\";
|
||||
}"""
|
||||
|
||||
}
|
||||
|
||||
processResources {
|
||||
dependsOn "generateProto"
|
||||
dependsOn 'generateProto'
|
||||
}
|
||||
|
||||
sourcesJar {
|
||||
dependsOn 'generateProto'
|
||||
}
|
||||
|
||||
delombok {
|
||||
dependsOn 'generateProto'
|
||||
}
|
||||
|
||||
// For terminal interacting in IDEA running
|
||||
run {
|
||||
standardInput = System.in
|
||||
}
|
||||
|
||||
@@ -0,0 +1,81 @@
|
||||
package emu.grasscutter.gen;
|
||||
|
||||
import org.gradle.api.DefaultTask;
|
||||
import org.gradle.api.tasks.TaskAction;
|
||||
import org.gradle.api.tasks.options.Option;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.io.*;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.Path;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static java.lang.System.lineSeparator;
|
||||
import static java.nio.file.Files.readAllLines;
|
||||
import static java.nio.file.Files.writeString;
|
||||
|
||||
/**
|
||||
* Task that can be used for generating/updating activity conditions enum. These
|
||||
* activities come from Resources/ExcelBinOutput/NewActivityCondExcelConfigData.json
|
||||
* resource file. Format file with formatter after this job is executed
|
||||
* <br />
|
||||
* Usage example: <i>./gradlew generateActivityConditions --conf-file=/Users/xxx/IdeaProjects/Grasscutter_Resources/Resources/ExcelBinOutput/NewActivityCondExcelConfigData.json</i>
|
||||
*/
|
||||
public class GenerateActivityConditions extends DefaultTask {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(GenerateActivityConditions.class);
|
||||
private static final String ACTIVITY_CONDITIONS_SRC = "/src/main/java/emu/grasscutter/game/activity/condition/ActivityConditions.java";
|
||||
|
||||
private static final String activityClassStart = """
|
||||
package emu.grasscutter.game.activity;
|
||||
|
||||
public enum ActivityConditions {
|
||||
""";
|
||||
@Option(option = "conf-file", description = "Path to NewActivityCondExcelConfigData.json")
|
||||
String confFile;
|
||||
|
||||
@SuppressWarnings("unused") //Used by Gradle
|
||||
public void setConfFile(String confFile) {
|
||||
this.confFile = confFile;
|
||||
}
|
||||
|
||||
@TaskAction
|
||||
void run() {
|
||||
List<String> configFileContent = getFileContent(confFile);
|
||||
|
||||
Set<String> configEnums = configFileContent.stream()
|
||||
.filter(s -> s.contains("\"type\":"))
|
||||
.map(s -> s.split("\"")[3])
|
||||
.map(s -> " " + s)
|
||||
.collect(Collectors.toSet());
|
||||
|
||||
String finalActivityClass =
|
||||
activityClassStart +
|
||||
String.join("," + lineSeparator(), configEnums) + lineSeparator() + "}";
|
||||
|
||||
writeFile(finalActivityClass, Path.of(getProject().getProjectDir() + ACTIVITY_CONDITIONS_SRC));
|
||||
|
||||
log.info("Successfully added {} enums to {}", configEnums.size(), ACTIVITY_CONDITIONS_SRC);
|
||||
}
|
||||
|
||||
private List<String> getFileContent(String path) {
|
||||
try {
|
||||
return readAllLines(Path.of(confFile));
|
||||
} catch (IOException e) {
|
||||
log.error("Cannot read file: {}", path);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
private void writeFile(String content, Path path) {
|
||||
try {
|
||||
writeString(path, content, StandardCharsets.UTF_8);
|
||||
} catch (IOException e) {
|
||||
log.error("Cannot read file: {}", path);
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,10 @@
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
עברית | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [EN](README.md) | [ES](README_es-ES.md) | [RU](README_ru-RU.md)
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**תשומת לב בבקשה:** אנחנו מקבלים עזרה בפיתוח התוכנה. לפני שאתם תורמים לפרויקט בבקשה תקראו את [תנאי השימוש](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## אפשרויות זמינות כרגע
|
||||
@@ -15,7 +16,7 @@
|
||||
* מערכת הווישים להשגת דמויות
|
||||
* קו-אופ (אפשרות לשחק עם חברים) *חלקית* עובדת
|
||||
* זימון אויבים באמצעות פקודות
|
||||
* אפשרויות של מלאי ציוד במשחק (קבלת נשקים/דמויות, שדרוג נשקים/דמויות וכו'
|
||||
* אפשרויות של מלאי ציוד במשחק (קבלת נשקים/דמויות, שדרוג נשקים/דמויות וכו'
|
||||
|
||||
## הוראות הפעלה בסיסיות
|
||||
|
||||
@@ -38,11 +39,11 @@
|
||||
1. להשיג `grasscutter.jar`
|
||||
- להוריד אחד מוכן מתוך [מוכנים](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [לבנות אחד בעצמך](#בנייה)
|
||||
|
||||
|
||||
2. תצרו תיקייה בשם `resources` בתוך התיקייה איפה שהקובץ grasscutter.jar נמצא ותעבירו את התיקיות `BinOutput` ו- `ExcelBinOutput` לשם *(תקראו את [המדריך המלא](https://github.com/Grasscutters/Grasscutter/wiki) בשביל לקבל יותר מידע לגבי אלה.)*
|
||||
|
||||
3. תריצו את השרת בעזרת פקודה `java -jar grasscutter.jar`. **תדאגו שהשירות mongodb פועל באותו הזמן ברקע**
|
||||
|
||||
|
||||
|
||||
### התחברות עם המשחק
|
||||
|
||||
@@ -52,21 +53,21 @@
|
||||
- שימוש בmitmdump: פקודת `mitmdump -s proxy.py -k` בשורת פקודה
|
||||
|
||||
אישור שימוש החוזה שלהם:
|
||||
|
||||
**הערה חשובה:** החוזה בדרך כלל נמצא בתוך התיקייה `%USERPROFILE%\ .mitmproxy`, או שאתם יכולים להוריד את זה מהאתר `http://mitm.it`
|
||||
|
||||
|
||||
**הערה חשובה:** החוזה בדרך כלל נמצא בתוך התיקייה `%USERPROFILE%\ .mitmproxy`, או שאתם יכולים להוריד את זה מהאתר `http://mitm.it`
|
||||
|
||||
תלחצו פעמיים בשביל [הורדה](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) או...
|
||||
|
||||
|
||||
- על ידי שימוש בשורת הפקודה
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
- שימוש בFiddler Classic: תריצו Fiddler Classic, תפעילו את ההגדרה `Decrypt https traffic` בהגדרות ותשנו את הפורט ברירת מחדל לכל מספר שהוא לא `8888`, ותפעילו את [הסקריפט הזה](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
|
||||
|
||||
-עריכת [קובץ הHosts](https://github.com/Melledy/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
|
||||
-עריכת [קובץ הHosts](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. תשנו את שרת בproxy שלכם ל`127.0.0.1:8080`
|
||||
|
||||
**אתם יכולים גם להשתמש בקובץ `start.cmd` בשביל להפעיל את כל השרתים באופן אוטומטי אבל תצטרכו להגדיר JAVA_HOME בסביבות המחדל במערכת באופן ידני**
|
||||
@@ -0,0 +1,126 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Aantekening:** We verwelkomen altijd bijdragers aan het project. Lees onze [Gedragscode](https://github.com/Grasscutters/Grasscutter/blob/development/README_NL.md#bijdragen-aan-het-project) zorgvuldig door voordat u uw bijdrage toevoegt.
|
||||
|
||||
## Huidige functies
|
||||
|
||||
* inloggen
|
||||
* Combat
|
||||
* Vriendenlijst
|
||||
* Teleportatie
|
||||
* Gacha systeem
|
||||
* Co-op werkt (gedeeltelijk)
|
||||
* Monsters spawnen via console
|
||||
* Inventaris functies (ontvangen van items / karakters, upgraden van items / karakters, enz.)
|
||||
|
||||
|
||||
## Snelle installatie gids
|
||||
|
||||
**Note:** Voor ondersteuning kunt u lid worden van onze [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Vereisten
|
||||
|
||||
* [Java SE - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
|
||||
**Note:** Als u het alleen wilt **draaien**, dan is **jre** alleen prima.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (aanbevolen 4.0+)
|
||||
|
||||
* Proxy Daemon: [mitmproxy](https://mitmproxy.org/) (mitmdump, aanbevolen), [Fiddler Classic](https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe), enz.
|
||||
|
||||
### Opstarten
|
||||
|
||||
**Note:** Als u vanaf een oudere versie heeft geupdate, verwijder dan `config.json` om het te regenereren.
|
||||
|
||||
1. Verkrijg `grasscutter.jar`
|
||||
- Download van [actions](https://github.com/Grasscutters/Grasscutter/actions) of [bouw de jar zelf](#Bouwen)
|
||||
2. Maak een `resources` map aan in de directory waar grasscutter.jar staat en verplaats je `BinOutput, ExcelBinOutput, Readables, Scripts, Subtitle, TextMap` mappen daarheen *(Check de [wiki](https://github.com/Grasscutters/Grasscutter/wiki) voor meer details hoe je die krijgt.)*
|
||||
3. Start Grasscutter met `java -jar grasscutter.jar`. **Zorg ervoor dat de mongodb service ook draait.**
|
||||
|
||||
### Verbinden met de client
|
||||
|
||||
½. Maak een account aan met [server console command](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Verkeer omleiden: (kies er een)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Vertrouw CA certificaat:
|
||||
|
||||
**Note:** Het CA certificaat is meestal opgeslagen in `%USERPROFILE%.mitmproxy`, of je kan het downloaden van `http://mitm.it`
|
||||
|
||||
Dubbelklik voor [install](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) of ...
|
||||
|
||||
- Via de commandoregel
|
||||
|
||||
```Shell
|
||||
certutil -addstore root %USERPROFILE%%%.mitmproxymitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Start Fiddler Classic, zet `Decrypt https traffic` aan in setting en verander de standaard poort daar (Tools -> Options -> Connections) in iets anders dan `8888`, en laad [dit script](https://github.com/Grasscutters/Grasscutter/wiki/Resources#fiddler-classic-jscript).
|
||||
|
||||
- [Hosts file](https://github.com/Grasscutters/Grasscutter/wiki/Resources#hosts-file)
|
||||
|
||||
2. Stel de netwerk proxy in op `127.0.0.1:8080` of de proxy poort die u heeft opgegeven.
|
||||
|
||||
**U kunt ook `start.cmd` gebruiken om servers en proxy daemons automatisch te starten, maar dan moet u JAVA_HOME enviroment en `start_config.cmd` instellen.**
|
||||
|
||||
### Bouwen
|
||||
|
||||
Grasscutter gebruikt Gradle om afhankelijkheden en bouwen af te handelen.
|
||||
|
||||
**Vereisten:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```Shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Instellen van omgevingen
|
||||
.gradlew jar # Compileren
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compileer
|
||||
```
|
||||
|
||||
U kunt de output jar vinden in de root van de project map.
|
||||
|
||||
### Commando's zijn verplaatst naar de [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
|
||||
# Quick Troubleshooting
|
||||
|
||||
* Als het compileren niet succesvol was, controleer dan je JDK installatie (JDK 17 en gevalideerde JDK's bin PATH variabele)
|
||||
* Mijn client maakt geen verbinding, logt niet in, 4206, etc... - Meestal is je proxy daemon setup *het probleem*, als je
|
||||
Fiddler gebruik, zorg ervoor dat het op een andere poort draait behalve 8888
|
||||
* Opstart volgorde: MongoDB > Grasscutter > Proxy daemon (mitmdump, fiddler, enz.) > Game
|
||||
|
||||
|
||||
|
||||
|
||||
# Bijdragen aan het project
|
||||
|
||||
Let op: we hebben een gedragscode, volg deze alsjeblieft in al je interacties met het project. Als je nog vragen hebt, maak dan een issue aan of vraag het in de Discord server.
|
||||
|
||||
- Repareer/toevoeg alleen de functionaliteit in kwestie OF pak wijdverspreide witruimte/stijl problemen aan, niet beide.
|
||||
- Pak een enkel probleem aan met zo min mogelijk gewijzigde regels.
|
||||
|
||||
**Maak geen pull request om samen te voegen in stable tenzij het een hotfix is. Gebruik in plaats daarvan de development branch.**
|
||||
|
||||
## Pull Request Proces
|
||||
|
||||
1. Zorg ervoor dat alle installatie- of build-afhankelijkheden verwijderd zijn voor het einde van de laag wanneer u een build doet.
|
||||
2. 2. Werk de README.md en wiki bij met details van wijzigingen aan de interface, inclusief nieuwe omgevingsvariabelen, blootgestelde poorten, nuttige bestandslocaties en containerparameters.
|
||||
3. Schrijf met detail op je pull request beschrijving wat je hebt gecommit, om het makkelijker te maken voor de medewerkers om een changelog te maken.
|
||||
@@ -1,9 +1,9 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [HE](README_HE.md) | ES | [RU](README_ru-RU.md)
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Atención:** Siempre damos la bienvenida a contribuidores del proyecto. Antes de añadir tu contribución, por favor lee cuidadosamente nuestro [Código de conducta](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
@@ -48,26 +48,26 @@
|
||||
|
||||
1. Redirecciona el tráfico: (elegir uno)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
|
||||
Autoriza el certificado CA:
|
||||
|
||||
|
||||
**Nota:**El certificado CA normalmente se encuentra en `%USERPROFILE%\ .mitmproxy`, o puedes descargarlo de `http://mitm.it`
|
||||
|
||||
|
||||
Doble clic para [instalar](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) o ...
|
||||
|
||||
|
||||
- Con línea de comandos
|
||||
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
|
||||
- Fiddler Classic: Ejecuta Fiddler Classic, activa `Decrypt https traffic` en las opciones y cambia el puerto por defecto ahí (Herramientas -> Opciones -> Conexiones) a alguno que no sea `8888`, y carga [este script](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [Archivo Hosts](https://github.com/Melledy/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
|
||||
- [Archivo Hosts](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Establece el proxy de red a `127.0.0.1:8080` o el puerto de proxy que pusiste.
|
||||
|
||||
**también puedes usar `start.cmd` para iniciar el servidor y el servicio de proxy automáticamente, pero tienes que configurar el entorno JAVA_HOME**
|
||||
**También puedes usar `start.cmd` para iniciar el servidor y el servicio de proxy automáticamente, pero tienes que configurar el entorno JAVA_HOME**
|
||||
|
||||
### Construcción
|
||||
|
||||
@@ -106,4 +106,3 @@ Podrás encontrar el jar generado en la carpeta raíz del proyecto.
|
||||
* Mi cliente no conecta, no inicia sesión, 4206, etc... - Probablemente, tu configuración del proxy es *el problema*, si usas
|
||||
Fiddler asegúrate de que está usando un puerto distinto al 8888
|
||||
* Secuencia de inicio: MongoDB > Grasscutter > Servicio de proxy (mitmdump, fiddler, etc.) > Juego
|
||||
|
||||
@@ -0,0 +1,106 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Atensyon:** Ang mga kontributor ay laging welcome sa proyektong ito. Bago mag-bigay ng kontribusyon, basahin muna ng mabuti ang [Code of Conduct](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Ang mga kasalukuyang features
|
||||
|
||||
* Logging in
|
||||
* Combat
|
||||
* Friends list
|
||||
* Teleportation
|
||||
* Gacha system
|
||||
* Co-op *partially* works
|
||||
* Spawning monsters via console
|
||||
* Inventory features (receiving items/characters, upgrading items/characters, etc)
|
||||
|
||||
## Quick setup guide
|
||||
|
||||
**Atensyon:** Para sa mga nangangailangan ng suporta, maaari kang sumali sa aming server [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Ang mga kailangan
|
||||
|
||||
* [Java SE - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) or higher
|
||||
|
||||
**Atensyon:** Kung gusto mo lang **paganahin** ang server, pwede naman ang **jre**.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (recommended 4.0+)
|
||||
|
||||
* Proxy Daemon: [mitmproxy](https://mitmproxy.org/) (mitmdump, recommended), [Fiddler Classic](https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe), etc.
|
||||
|
||||
### Running
|
||||
|
||||
**Atensyon:** Kung nag-update ka galing sa lumang version, paki-delete ang `config.json` para mag-regenerate ulit.
|
||||
|
||||
1. Get `grasscutter.jar`
|
||||
- I-download mo sa [releases](https://github.com/Grasscutters/Grasscutter/releases/latest) o sa [actions](https://github.com/Grasscutters/Grasscutter/actions/workflows/build.yml) o [bumuo ng iyong sariling server](#building).
|
||||
2. Gawa ka ng `resources` folder sa directory kung nasaan ang grasscutter.jar at ilagay ang `BinOutput, ExcelBinOutput, Readables, Scripts, Subtitle, TextMap` folders sa loob ng resources folder *(Tingnan mo ang [wiki](https://github.com/Grasscutters/Grasscutter/wiki) para malaman mo kung saan mo makukuha yan)*
|
||||
3. Paandarin ang Grasscutter gamit ang command na `java -jar grasscutter.jar`. **Siguraduhin mo na ang mongodb service ay naka-open din.**
|
||||
|
||||
### Connecting with the client
|
||||
|
||||
½. Gumawa ng account sa server console gamit ang [command](https://github.com/Grasscutters/Grasscutter/wiki/Commands#:~:text=account%20%3Ccreate|delete%3E%20%3Cusername%3E%20[UID]) na ito.
|
||||
|
||||
1. Redirect traffic: (pumili lang dapat ng isa)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
- Trust CA certificate:
|
||||
|
||||
- Ang CA certificate ay nasa `%USERPROFILE%\.mitmproxy`, i-double click ang `mitmproxy-ca-cert.cer` para ma-[install](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) o...
|
||||
|
||||
- Via command line *(kailangan ng administration privileges)*
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Paadarin ang Fiddler Classic, turn on mo yung `Decrypt https traffic` sa (Tools -> Options -> HTTPS) at baguhin mo ang default port na nakalagay (Tools -> Options -> Connections) sa anumang numero maliban sa `8888`, i-load ang [script](https://github.com/Grasscutters/Grasscutter/wiki/Resources#fiddler-classic-jscript) na ito (copy and paste ang script sa `FiddlerScript` tab) at i-click ang `Save Script` button.
|
||||
|
||||
- [Hosts file](https://github.com/Grasscutters/Grasscutter/wiki/Resources#hosts-file)
|
||||
|
||||
2. Set mo ung proxy sa `127.0.0.1:8080` or dun sa proxy port na iyong inilagay.
|
||||
|
||||
- Para sa mitmproxy: Pagkatapos mong i-setup ang network proxy at sa pag-install ng certificate, tingnan mo sa http://mitm.it/ kung ang traffic ay dumadaan sa mitmproxy.
|
||||
|
||||
**Pwede mo rin gamitin ang `start.cmd` to start the servers and proxy daemons automatically, pero kailagan mong i-setup ang JAVA_HOME environment at i-configure ang `start_config.cmd` file.**
|
||||
|
||||
### Building
|
||||
|
||||
Ang Grasscutter ay gumagamit ng Gradle para sa depedencies at building.
|
||||
|
||||
**Mga kailangan:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) or higher
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar # Compile jar
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compile jar
|
||||
```
|
||||
|
||||
Pag-katapos mong i-compile, check mo yung project directory at makikita mo yung jar na kinompile mo. Usually pag-dev version, ang dapat nakalagay diyan ay `grasscutter-<version>-dev.jar`.
|
||||
|
||||
### Ang mga server commands ay nasa [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands) na!
|
||||
|
||||
# Quick Troubleshooting
|
||||
|
||||
* Kung hindi nag-compile, paki-check ung JDK installation mo (JDK 17 at JDK's bin PATH variable).
|
||||
* Hindi ako maka-connect, ayaw mag-login, 4206, etc... - Mostly ang proxy setup mo ang may kasalanan niyan, kung gamit mo ay Fiddler, paki-sigurado na naka-set ung port sa kahit ano except sa 8888.
|
||||
* Ang pagkakasunud-sunod: MongoDB > Grasscutter > Proxy Daemon (mitmdump, fiddler, etc.) > Game
|
||||
@@ -0,0 +1,74 @@
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Attention:** De nouveaux contributeurs sont toujours les bienvenus. Avant d'ajouter votre contribution, veuillez lire le [code de conduite](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Fonctionnalités actuelles :
|
||||
|
||||
* Connection
|
||||
* Combat
|
||||
* Liste d'amis
|
||||
* Téléportation
|
||||
* Système de gacha
|
||||
* Le multijoueur fonctionne *partiellement*
|
||||
* Apparition de monstres via la console
|
||||
* Inventaire (obtention d'objets/de personnages, amélioration d'objets/personnages, etc)
|
||||
|
||||
## Guide d'installation rapide
|
||||
|
||||
**Note:** Pour obtenir un support, rejoignez notre serveur [Discord](https://discord.gg/T5vZU6UyeG) (en anglais).
|
||||
|
||||
### Démarage rapide (Automatique)
|
||||
|
||||
- Téléchargez Java 17: https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
|
||||
- Téléchargez [MongoDB Community Server](https://www.mongodb.com/try/download/community)
|
||||
- Téléchargez la version du jeu REL3.7 (Le client de jeut peut être obtenu ici si vous ne l'avez pas): https://github.com/MAnggiarMustofa/GI-Download-Library/blob/main/GenshinImpact/Client/3.7.0.md
|
||||
|
||||
- Téléchargez la [dernière version de Cultivation](https://github.com/Grasscutters/Cultivation/releases/latest). Ulilisez l'installateur en `.msi`.
|
||||
- Après avoir ouvert Cultivation (en administrateur), appuyez sur le bouton de téléchargement en haut a droite.
|
||||
- Cliquez sur le bouton `Téléchargez tout-en-un`
|
||||
- Cliquez sur l'engrenage dans le coin en haut a droite.
|
||||
- Définisez l'emplacement d'installation du jeu.
|
||||
- Définisez le chemin Java personnalisé à `C:\Program Files\Java\jdk-17\bin\java.exe`
|
||||
- Laissez tous les autres paramètes par défauts
|
||||
|
||||
- Appuyez sur le bouton a coté de Lancer.
|
||||
- Appuyez sur le bouton Lancer.
|
||||
- Connectez vous avec le nom d'utilisateur que vous voulez. Le mot de passe n'a pas d'importance.
|
||||
|
||||
### Compilation
|
||||
|
||||
Grasscutter utilise Gradle pour la gestion des dépendances et la compilation.
|
||||
|
||||
**Prérequis**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) ou plus récent
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar # Compile
|
||||
```
|
||||
|
||||
##### Linux (GNU)
|
||||
|
||||
```bash
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compile
|
||||
```
|
||||
|
||||
Vous pouvez trouver le jar de sortie dans la racine du dossier du projet.
|
||||
|
||||
### Dépanage
|
||||
|
||||
Pour une liste des problèmes communs et leur solution et pour demander de l'aide, veuillez rejoindre [notre serveur Discord](https://discord.gg/T5vZU6UyeG) (en anglais) et dirigez vous vers le salon de support.
|
||||
@@ -0,0 +1,78 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**ध्यान:** हम हमेशा परियोजना में योगदानकर्ताओं का स्वागत करते हैं।. अपना योगदान जोड़ने से पहले कृपया हमारा ध्यानपूर्वक पढ़ें [आचार संहिता](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## वर्तमान सुविधाएँ
|
||||
|
||||
* लॉग इन करना
|
||||
* युद्ध
|
||||
* मित्रों की सूची
|
||||
* टेलीपोर्टेशन
|
||||
* गाचा प्रणाली
|
||||
* सह-ऑप * आंशिक रूप से * काम करता है
|
||||
* कंसोल के माध्यम से राक्षसों को जन्म देना
|
||||
* इन्वेंट्री सुविधाएँ (आइटम / वर्ण प्राप्त करना, आइटम / वर्णों को अपग्रेड करना, आदि)
|
||||
|
||||
## त्वरित सेटअप गाइड
|
||||
|
||||
**टिप्पणी**: समर्थन के लिए कृपया हमसे जुड़ें [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### त्वरित प्रारंभ (स्वचालित)
|
||||
|
||||
- Get Java 17: https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
|
||||
|
||||
**ध्यान दें:** बस **सर्वर शुरू करने** के लिए, आपको बस **jre** की आवश्यकता है।
|
||||
- Get [MongoDB Community Server](https://www.mongodb.com/try/download/community)
|
||||
|
||||
* प्रॉक्सी: मिटमडंप (अनुशंसित), मिटमप्रॉक्सी, फिडलर क्लासिक, आदि।
|
||||
- गेम संस्करण REL3.7 प्राप्त करें (यदि आपके पास 3.7 क्लाइंट नहीं है तो उसे यहां पाया जा सकता है):: https://github.com/MAnggiarMustofa/GI-Download-Library/blob/main/GenshinImpact/Client/3.7.0.md
|
||||
|
||||
- डाउनलोड करें [latest Cultivation version](https://github.com/Grasscutters/Cultivation/releases/latest). उपयोग `.msi` इंस्टालरr.
|
||||
- कलिवेशन (एडमिन के रूप में) खोलने के बाद, ऊपरी दाएं कोने में डाउनलोड बटन दबाएं।
|
||||
- `डाउनलोड ऑल-इन-वन` पर क्लिक करें
|
||||
- ऊपरी दाएं कोने में गियर पर क्लिक करें
|
||||
- गेम इंस्टॉल पथ को उस स्थान पर सेट करें जहां आपका गेम स्थित है.
|
||||
- कस्टम जावा पथ को इस पर सेट करें `C:\Program Files\Java\jdk-17\bin\java.exe`
|
||||
- अन्य सभी सेटिंग्स को डिफ़ॉल्ट पर छोड़ दें
|
||||
|
||||
- लॉन्च करने के लिए आगे छोटे बटन पर क्लिक करें.
|
||||
- लॉन्च बटन पर क्लिक करें.
|
||||
- आप जो भी उपयोगकर्ता नाम चाहते हैं उसके साथ लॉग इन करें। पासवर्ड कोई मायने नहीं रखता.
|
||||
|
||||
### इमारत
|
||||
|
||||
ग्रासकटर निर्भरता और निर्माण को संभालने के लिए ग्रैडल का उपयोग करता है।
|
||||
|
||||
**आवश्यकताएं:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) or higher
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### विंडोज
|
||||
|
||||
```shell
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar # Compile
|
||||
```
|
||||
|
||||
##### लिनक्स (जीएनयू)
|
||||
|
||||
```bash
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compile
|
||||
```
|
||||
|
||||
आप आउटपुट जार को प्रोजेक्ट फ़ोल्डर के रूट में पा सकते हैं।.
|
||||
|
||||
### समस्या निवारण
|
||||
|
||||
सामान्य मुद्दों और समाधानों की सूची और सहायता मांगने के लिए कृपया शामिल हों [our Discord server](https://discord.gg/T5vZU6UyeG) और सपोर्ट चैनल पर जाएं.
|
||||
@@ -0,0 +1,108 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Perhatian:** Kami selalu menyambut kontributor untuk proyek ini. Sebelum menambahkan kontribusi Anda, harap baca [Kode Etik](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md) kami.
|
||||
|
||||
## Fitur terkini
|
||||
|
||||
* Logging in
|
||||
* Pertempuran
|
||||
* Daftar teman
|
||||
* Teleportasi
|
||||
* Sistem gacha
|
||||
* Co-op *sebagian* berfungsi
|
||||
* Memunculkan monster melalui konsol
|
||||
* Fitur inventaris (menerima item/karakter, meng-upgrade item/karakter, dll)
|
||||
|
||||
## Panduan penyiapan cepat
|
||||
|
||||
**Catatan:** Untuk dukungan, silakan bergabung dengan [Discord](https://discord.gg/T5vZU6UyeG) kami.
|
||||
|
||||
### Requirements
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**Catatan:** Jika Anda hanya ingin **menjalankannya**, maka **jre** saja sudah cukup.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (recommended 4.0+)
|
||||
|
||||
* Daemon proksi: mitmproxy (mitmdump, direkomendasikan), Fiddler Classic, etc.
|
||||
|
||||
### Menjalankan
|
||||
|
||||
**Catatan:** Jika Anda memperbarui dari versi lama, hapus `config.json` untuk membuatnya kembali.
|
||||
|
||||
1. Dapatkan `grasscutter.jar`
|
||||
- Download dari [actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Bangun sendiri](#Membangun)
|
||||
2. Buat folder `resources` di direktori tempat grasscutter.jar berada dan pindahkan folder `BinOutput` dan `ExcelBinOutput` ke sana *(Periksa [wiki](https://github.com/Grasscutters/Grasscutter/wiki) untuk detail lebih lanjut tentang cara mendapatkannya.)*
|
||||
3. Jalankan Grasscutter dengan `java -jar grasscutter.jar`. **Pastikan layanan mongodb juga berjalan.**
|
||||
|
||||
### Connecting to the client
|
||||
|
||||
½. Buat akun dengan menggunakan [server console command](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Pengalihan traffic: (pilih salah satu)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Trust CA certificate:
|
||||
|
||||
**Catatan:** Sertifikat CA biasanya disimpan di `%USERPROFILE%\ .mitmproxy`, atau anda dapat download dari `http://mitm.it`
|
||||
|
||||
klik dua kali untuk [menginstall](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) ataupun juga
|
||||
|
||||
- melalui command line
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Jalankan Fiddler Classic, nyalakan `Decrypt https traffic` dalam setting dan ubah port default di sana (Tools -> Options -> Connections) ke apa pun selain `8888`, dan muat [skrip ini](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [File host](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Atur proxy jaringan ke `127.0.0.1:8080` atau port proxy yang anda tentukan.
|
||||
|
||||
**Anda juga dapat menggunakan `start.cmd` untuk memulai server dan proxy daemon secara otomatis, tetapi Anda harus mengatur JAVA_HOME enviroment**
|
||||
|
||||
### Membangun
|
||||
|
||||
Grasscutter menggunakan Gradle untuk menangani dependensi & pembangunan.
|
||||
|
||||
**Requirements:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Setting up environments
|
||||
.\gradlew jar # Compile
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compile
|
||||
```
|
||||
|
||||
Anda bisa menemukan output jar di root folder proyek.
|
||||
|
||||
### Commands telah dipindahkan ke [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
|
||||
# Quick Troubleshooting
|
||||
|
||||
* Jika kompilasi tidak berhasil, periksa instalasi JDK Anda (JDK 17 dan validasi variabel bin PATH JDK)
|
||||
* Klien saya tidak terhubung, tidak login, 4206, dan lain-lain - Sebagian besar pengaturan daemon proxy Anda adalah *masalahnya*, jika menggunakan
|
||||
Fiddler pastikan berjalan pada port lain kecuali 8888
|
||||
* Urutan startup: MongoDB > Grasscutter > Proxy daemon (mitmdump, fiddler, etc.) > Game
|
||||
@@ -0,0 +1,108 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Attenzione:** Diamo sempre il benvenuto ai contributori del progetto. Prima di contribuire, leggi attentamente il nostro [Codice di condotta](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Funzionalità attuali
|
||||
|
||||
* Login
|
||||
* Combattimento
|
||||
* Lista di amici
|
||||
* Teletrasporto
|
||||
* Sistema Gacha
|
||||
* Cooperativa *parzialmente* funzionale
|
||||
* Evocazione nemici usando la console
|
||||
* Inventario (ricevi e aggiorna oggetti/personaggi, ecc.)
|
||||
|
||||
## Guida rapida all'installazione
|
||||
|
||||
**Nota:** Se hai bisogno di aiuto, unisciti al nostro [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Requisiti
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**Nota:** se vuoi solo **eseguirlo**, **jre** è sufficiente.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (consigliato 4.0+)
|
||||
|
||||
* Servizi proxy: mitmproxy (mitmdump, consigliato), Fiddler Classic, ecc.
|
||||
|
||||
### Esecuzione
|
||||
|
||||
**Nota:** Se hai aggiornato da una versione precedente, elimina `config.json` in modo che venga generato di nuovo.
|
||||
|
||||
1. Ottieni "grasscutter.jar".
|
||||
- Scarica da [azioni](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Compilalo tu stesso](#Compilazione)
|
||||
2. Crea una cartella chiamata `resources` nella directory in cui si trova grasscutter.jar e sposta lì le cartelle `BinOutput` ed `ExcelBinOutput` *(Vedi il [wiki](https://github.com/Grasscutters/Grasscutter/wiki ) per maggiori dettagli su come ottenerli.)*
|
||||
3. Esegui Grasscutter con `java -jar grasscutter.jar`. **Assicurati che il servizio mongodb sia attivo.**
|
||||
|
||||
### Connessione al client
|
||||
|
||||
½. Crea un account usando [il comando corrispondente nella console del server](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Reindirizza il traffico: (scegli uno)
|
||||
- Con mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Autorizza il certificato CA:
|
||||
|
||||
**Nota:**Il certificato CA si trova solitamente in `%USERPROFILE%\ .mitmproxy`, oppure puoi scaricarlo da `http://mitm.it`
|
||||
|
||||
Fai doppio clic su [installa](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) o ...
|
||||
|
||||
- Con riga di comando
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Con Fiddler Classic: esegui Fiddler Classic, abilita `Decrypt https traffic` nelle opzioni e cambia la porta predefinita in (Strumenti -> Opzioni -> Connessioni) in qualcosa di diverso da `8888`, e carica [questo script](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [File host](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Imposta il proxy di rete a `127.0.0.1:8080` o la porta proxy impostata.
|
||||
|
||||
**Puoi anche usare `start.cmd` per avviare automaticamente il server e il servizio proxy, ma devi impostare l'ambiente JAVA_HOME**
|
||||
|
||||
### Compilazione
|
||||
|
||||
Grasscutter usa Gradle per gestire le dipendenze e le build.
|
||||
|
||||
**Requisiti:**
|
||||
|
||||
- [Kit di sviluppo Java SE - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd grasscutter
|
||||
.\gradlew.bat # Impostazioni dell'ambiente
|
||||
.\gradlew jar # Compila
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Compila
|
||||
```
|
||||
|
||||
Puoi trovare il jar generato nella cartella principale del progetto.
|
||||
|
||||
### I comandi sono stati spostati al [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
|
||||
# Soluzioni agli errori comuni
|
||||
|
||||
* Se la compilazione non riesce, controlla l'installazione di JDK (JDK 17 e convalida la variabile JDK bin PATH)
|
||||
* Se il tuo client non si connette, non accede, da errore 4206, ecc... - Probabilmente *il problema* sono le tue impostazioni proxy, se usi
|
||||
Fiddler assicurati di utilizzare una porta diversa da 8888
|
||||
* Sequenza di avvio: MongoDB > Grasscutter > Servizio proxy (mitmdump, fiddler, ecc.) > Gioco
|
||||
@@ -0,0 +1,100 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [HI](README_hn-IN.md)
|
||||
|
||||
|
||||
**Attention:** 私たちはプロジェクトへのコントリビュータをいつでも歓迎します。コントリビュートする前に、私たちの [行動規範](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md)をよくお読みください。
|
||||
|
||||
## 現在実装されている機能
|
||||
|
||||
* ログイン
|
||||
* 戦闘
|
||||
* フレンドリスト
|
||||
* テレポート
|
||||
* 祈願 (ガチャ)
|
||||
* マルチプレイ (一部)
|
||||
* コンソールを通したモンスターのスポーン
|
||||
* インベントリ機能 (アイテム/キャラクターの受け取り、アイテム/キャラクターのアップグレードなど)
|
||||
|
||||
## かんたんセットアップガイド
|
||||
|
||||
**Note:** サポートが必要な場合はGrasscutterの[Discordサーバー](https://discord.gg/T5vZU6UyeG)に参加してください。
|
||||
|
||||
### パパっとスタートアップ
|
||||
|
||||
- [Java (バージョン17以降)](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) を用意する
|
||||
- [MongoDB Community Server](https://www.mongodb.com/try/download/community) を用意する
|
||||
- ゲームバージョンがREL4.0.Xのクライアントを用意する (4.0.Xのクライアントを持っていない場合は右のリンクからダウンロード): [Github](https://github.com/JRSKelvin/GenshinRepository/blob/main/Version%204.0.0.md), [クラウド(123云盘)](https://www.123pan.com/s/HoqUVv-U7SBA.html)
|
||||
- [最新の Cultivation](https://github.com/Grasscutters/Cultivation/releases/latest)をダウンロードする。`.msi`インストーラを使ってください。
|
||||
- 管理者権限を付与して Cultivation を実行した後、右上端にあるダウンロードアイコンのボタンを押す。
|
||||
- `Download All-in-One` をクリックする
|
||||
- 右上端にある歯車アイコンのボタンをクリックする。
|
||||
- `Game Install Path` にゲームファイルのパスを指定する。
|
||||
- `Custom Java Path` に、自分が用意したJavaのパスを指定する。 (例: `C:\Program Files\Java\jdk-17\bin\java.exe`)
|
||||
- その他の設定には手を付けず次の段階に進む。
|
||||
- Launch の隣にある小さいボタンを押す。
|
||||
- Launchボタンを押す
|
||||
- 好きなユーザ名でログインする。ログインに関する設定がデフォルトの場合、パスワードは何を入れてもいい。
|
||||
|
||||
|
||||
### ビルド
|
||||
|
||||
Grasscutterは依存関係とビルドの処理にGradleを使用しています。
|
||||
|
||||
**必要要件:**
|
||||
|
||||
- [Java SE Development Kit 17以降](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
- [NodeJS](https://nodejs.org/en/download) (任意、ハンドブックの生成に必要)
|
||||
|
||||
##### Clone
|
||||
```shell
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
```
|
||||
|
||||
##### Compile
|
||||
|
||||
**Note:** 環境によってはハンドブックの生成が失敗する場合があります。ハンドブックの生成をさせない場合は `gradlew jar` コマンドに `-PskipHandbook=1` を付け加えてください。
|
||||
|
||||
Windows:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # コンパイル環境の構築
|
||||
.\gradlew jar # コンパイル
|
||||
```
|
||||
|
||||
Linux:
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # コンパイル
|
||||
```
|
||||
|
||||
##### 手動によるハンドブックの生成
|
||||
|
||||
Gradleを使用する場合:
|
||||
```shell
|
||||
./gradlew generateHandbook
|
||||
```
|
||||
|
||||
NPMを使用する場合:
|
||||
```shell
|
||||
cd src/handbook
|
||||
npm install
|
||||
npm run build
|
||||
```
|
||||
|
||||
|
||||
生成されたjarファイルはプロジェクトのルートフォルダにあります。
|
||||
|
||||
### トラブルシューティング
|
||||
|
||||
よく散見されるトラブルとそれに対する解決策のまとめリストや、質問し誰かの助けを得たい場合は、Grasscutterの[Discordサーバー](https://discord.gg/T5vZU6UyeG)に参加し、サポートチャンネルを参照してください。
|
||||
@@ -0,0 +1,115 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**주의 :** 우리는 항상 프로젝트에 기여하는 사람들을 환영합니다. 기여를 하기 전, [행동 지침](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md)을 주의 깊게 읽어주세요.
|
||||
|
||||
## 현재 기능들
|
||||
|
||||
* 로그인
|
||||
* 전투
|
||||
* 친구 목록
|
||||
* 워프 (TP)
|
||||
* 기원
|
||||
* 다인 모드 (부분적으로 작동)
|
||||
* 콘솔을 통한 몬스터 스폰
|
||||
* 인벤토리 기능 (캐릭터, 아이템 수령 및 캐릭터, 아이템 업그레이드 등)
|
||||
|
||||
## 설치 가이드
|
||||
|
||||
**각주 :** 도움이 필요할 경우 [Discord](https://discord.gg/T5vZU6UyeG)에 가입하세요.
|
||||
|
||||
### 설치에 필요한 것들
|
||||
|
||||
* Java SE - 17 ([링크](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**각주 :** **실행**만을 원한다면, **jre**만 있어도 괜찮습니다.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (4.0 이상의 버전 추천)
|
||||
|
||||
* 프록시 데몬 : mitmproxy (mitmdump 추천), Fiddler Classic 등.
|
||||
|
||||
### 실행
|
||||
|
||||
**각주 :** 구버전에서 업데이트 했을 경우, `config.json` 파일을 재생성하기 위해 파일을 삭제하세요.
|
||||
|
||||
1. `grasscutter.jar` 얻기
|
||||
- [Actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297) 탭에서 다운로드
|
||||
- [직접 빌드하기](#빌드하기)
|
||||
2. grasscutter.jar 파일이 위치한 폴더에 `resources` 폴더를 생성하고, `BinOutput` 과 `ExcelBinOutput` 폴더를 생성한 폴더 내로 옮기세요. *(이 파일들을 얻는 더 자세한 방법에 대해서는 [위키](https://github.com/Grasscutters/Grasscutter/wiki)를 참조하세요.)*
|
||||
3. Grasscutter를 `java -jar grasscutter.jar` 명령어로 실행합니다. **MongoDB 서비스가 정상적으로 실행되고 있는지 확인하세요.**
|
||||
|
||||
### 클라이언트와의 연결
|
||||
|
||||
½. [서버 콘솔 명령어](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting)를 이용해서 계정을 생성합니다.
|
||||
|
||||
1. 리다이렉트 트래픽 : (1가지 선택)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
신뢰하는 인증 기관 인증서 (CA Cert) :
|
||||
|
||||
**각주 :** CA 인증서는 보통 `%USERPROFILE%\ .mitmproxy` 경로에 저장되며, `http://mitm.it`에서 다운로드 받을 수도 있습니다.
|
||||
|
||||
더블 클릭하여 [설치](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) 또는 ...
|
||||
|
||||
- 명령어를 통해서
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic : Fiddler Classic을 실행한 후, Setting에서 `Decrypt https traffic` 옵션을 켜고, Tools -> Options -> Connections에 있는 기본 포트를 `8888`을 제외한 다른 포트로 지정합니다. 그리고 [이 스크립트](https://github.lunatic.moe/fiddlerscript)를 불러옵니다.
|
||||
|
||||
- [호스트 파일](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. 네트워크 프록시를 `127.0.0.1:8080` 로 설정하거나 지정한 프록시 포트로 설정합니다.
|
||||
|
||||
**또한 `start.cmd`를 실행함으로써, 서버와 프록시 데몬을 자동으로 실행되게 할 수 있습니다. 이를 이용하기 위해서는 JAVA_HOME 환경 변수를 등록해야 합니다.**
|
||||
|
||||
### 빌드하기
|
||||
|
||||
Grasscutter는 종속성 및 컴파일 처리를 위해 Gradle을 이용합니다.
|
||||
|
||||
**빌드하기 위해 필요한 것들 :**
|
||||
|
||||
- [Java SE 개발 키트 - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### 윈도우 (온라인)
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # 개발 환경 설정
|
||||
.\gradlew jar # 컴파일
|
||||
```
|
||||
|
||||
##### 윈도우 (로컬)
|
||||
|
||||
```shell
|
||||
cd <로컬 주소>/Grasscutter
|
||||
.\gradlew.bat # 개발 환경 설정
|
||||
.\gradlew jar # 컴파일
|
||||
```
|
||||
|
||||
##### 리눅스
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # 컴파일
|
||||
```
|
||||
|
||||
프로젝트 폴더의 최상단에서 jar 파일을 찾을 수 있습니다.
|
||||
|
||||
### 명령어들은 [위키](https://github.com/Grasscutters/Grasscutter/wiki/Commands)에서 확인할 수 있습니다.
|
||||
|
||||
# 빠른 문제 해결
|
||||
|
||||
* 만약 컴파일링이 정상적으로 완료되지 않을 경우, JDK 설치를 확인하세요. (JDK 버전 17 및 JDK의 bin 경로 변수 등록을 확인)
|
||||
* 클라이언트가 연결되지 않거나, 로그인이 안 되거나, 4206 오류가 뜨는 등의 경우 - 대부분 프록시 데몬의 설치에 문제가 있을 것입니다. Fiddler를 사용하고 있다면, 8888을 제외한 다른 포트에서 구동되고 있는지 확인하세요.
|
||||
* 구동 순서 : MongoDB > Grasscutter > 프록시 데몬 (mitmdump, fiddler 등) > 게임
|
||||
@@ -0,0 +1,107 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Uwaga:** Zawsze jesteśmy otwarci na wasz wkład w projekt. Przed zaproponowaniem zmian przeczytaj [zasady postępowania (ENG)](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Obecne funkcje
|
||||
|
||||
* Logowanie się
|
||||
* Walka
|
||||
* Lista przyjaciół
|
||||
* Teleportacja
|
||||
* System losowania
|
||||
* *Częściowo* działający co-op
|
||||
* Wzywanie potworów przez konsolę
|
||||
* Działający ekwipunek (otrzymywanie przedmiotów/postaci, ulepszanie przedmiotów/postaci, itp)
|
||||
|
||||
## Poradnik uruchamiania
|
||||
|
||||
**Uwaga:** Dla dodatkowej pomocy dołącz na nasz [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Wymagania
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
**Uwaga:** Jeśli chcesz tylko **uruchomić** serwer, samo **jre** powinno wystarczyć.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (rekomendowane 4.0+)
|
||||
|
||||
* Aplikacja proxy: mitmproxy (mitmdump, rekomendowane), Fiddler Classic, itp.
|
||||
|
||||
### Uruchamianie
|
||||
|
||||
**Uwaga:** Jeśli aktualizujesz ze starszej wersji, usuń `config.json` aby wygenerować go ponownie.
|
||||
|
||||
1. Zdobądź `grasscutter.jar`
|
||||
- Pobierz z [akcji](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Lub zbuduj to samemu](#Budowanie)
|
||||
2. Utwórz folder `resources` w tym samym folderze gdzie znajduje się grasscutter.jar oraz przenieś foldery `BinOutput` i `ExcelBinOutput` do folderu `resources` *(Sprawdź na [wiki](https://github.com/Grasscutters/Grasscutter/wiki) skąd możesz je pozyskać).*
|
||||
3. Uruchom Grasscuttera komendą `java -jar grasscutter.jar`. **Upewnij się, że mongodb service działa w tle.**
|
||||
|
||||
### Łączenie się z klientem
|
||||
|
||||
½. Utwórz konto za pomocą [komend konsoli serwera](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Przekieruj połączenia: (wybierz jedno)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
Certyfikat CA:
|
||||
|
||||
**Uwaga:** CA certyfikat zazwyczaj znajduje się w `%USERPROFILE%\.mitmproxy`, albo możesz pobrać go stąd `http://mitm.it`
|
||||
|
||||
Naciśnij podwójnie, aby [zainstalować](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) lub ...
|
||||
|
||||
- Za pomocą wierszu poleceń (lub PowerShella) wpisz
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Uruchom Fiddler Classic, włącz `Decrypt https traffic` w ustawieniach oraz zmień domyślny port (Tools -> Options -> Connections) na dowolny inny niż `8888`, i wczytaj [ten skrypt](https://github.lunatic.moe/fiddlerscript) (w polu FiddlerScript).
|
||||
|
||||
- [Plik hosts](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Ustaw serwer proxy na `127.0.0.1:8080` albo inny wybrany przez ciebie port.
|
||||
|
||||
**Możesz także użyć `start.cmd` aby uruchomić serwer gry i proxy, ale do tego musisz ustawić środowisko JAVA_HOME**
|
||||
|
||||
### Budowanie
|
||||
|
||||
Grasscutter używa Gradle, aby zajął się wymaganymi pakietami i kompilowaniem.
|
||||
|
||||
**Wymagania:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Konfigurowanie środowiska
|
||||
.\gradlew jar # Kompilowanie
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Kompilowanie
|
||||
```
|
||||
|
||||
Gotowy plik `jar` możesz znaleźć w głównym folderze Grasscuttera.
|
||||
|
||||
### Komendy zostały przeniesione do [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
|
||||
# Rozwiązywanie problemów
|
||||
|
||||
* Jeśli kompilowanie się nie powiodło, sprawdź swoje zainstalowane JDK (JDK 17 oraz wartość ścieżki (PATH) folderu bin należącego do JDK)
|
||||
* Mój klient nie może się połączyć, nie działa logowanie, 4206, itp... - Prawdopodobnie twoje proxy jest *problemem*, jeśli używasz Fiddlera upewnij się, że działa na innym porcie niż 8888
|
||||
* Sekwencja, którą powinieneś uruchamiać: MongoDB > Grasscutter > Proxy daemon (mitmdump, fiddler, etc.) > Game
|
||||
@@ -1,12 +1,11 @@
|
||||
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [HE](README_HE.md) | RU
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Внимание:** Мы всегда рады новому вкладу в проекте. Однако, перед тем, как сделать свой вклад, пожалуйста, прочтите наш [кодекс делового поведения](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
**Внимание:** Мы всегда рады новому вкладу в проект. Однако, перед тем, как сделать свой вклад, пожалуйста, прочтите наш [кодекс делового поведения](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md).
|
||||
|
||||
## Реализованные функции
|
||||
|
||||
@@ -15,15 +14,15 @@
|
||||
* Список друзей
|
||||
* Телепортация
|
||||
* Гача-система
|
||||
* Кооп работает *частично*
|
||||
* Кооп *работает частично*
|
||||
* Спавн монстров через консоль
|
||||
* Функции инвентаря (получение предметов/персонажей, улучшение предметов/персонажей, и т.п.)
|
||||
|
||||
## Краткое руководство по установке
|
||||
|
||||
**Заметка:** Для получения поддержки, присоединитесь к нашему серверу [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
**Заметка:** Если вам требуется помощь, присоединитесь к нашему серверу [Discord](https://discord.gg/T5vZU6UyeG) (На Английском).
|
||||
|
||||
### Требуется
|
||||
### Зависимости
|
||||
|
||||
* Java SE - 17 ([link](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
|
||||
@@ -31,44 +30,44 @@
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (рекомендуются версии 4.0+)
|
||||
|
||||
* Прокси-демон: mitmproxy (mitmdump, рекомендуется), Fiddler Classic и т.п.
|
||||
* Прокси: mitmdump (рекомендуется), mitmproxy, Fiddler Classic и т.п.
|
||||
|
||||
### Запуск
|
||||
|
||||
**Заметка:** При обновлении с более старой версии, удалите файл `config.json` для того, чтобы заново его сгенерировать.
|
||||
**Заметка:** Для обновления с более старой версии, удалите файл `config.json`, чтобы сгенерировать его заново.
|
||||
|
||||
1. Получите файл `grasscutter.jar` одним из следующих образов:
|
||||
1. Получите файл `grasscutter.jar` одним из следующих способов:
|
||||
- Скачайте напрямую со вкладки [Actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297)
|
||||
- [Соберите самостоятельно](#Сборка)
|
||||
2. Создайте папку `resources` в той же директории, что и grasscutter.jar, и переместите туда свои папки `BinOutput` и `ExcelBinOutput` *(Посетите [вики](https://github.com/Grasscutters/Grasscutter/wiki) для получения более подробной информации о том, где их найти.)*
|
||||
3. Запустите Grasscutter с помощью команды `java -jar grasscutter.jar`. **Убедитесь, что в этот момент запущена служба mongodb.**
|
||||
3. Запустите Grasscutter с помощью команды `java -jar grasscutter.jar`. **Убедитесь, что в этот момент запущен сервер mongodb.**
|
||||
|
||||
### Подключение с помощью клиента
|
||||
### Соединение с клиентом
|
||||
|
||||
½. Создайте аккаунт, введя [соответствующую команду в консоли сервера](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting).
|
||||
|
||||
1. Перенаправьте трафик: (выберите один из методов)
|
||||
1. Перенаправьте трафик: (воспользуйтесь одиним из способов)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
|
||||
Доверьтесь сертификату CA:
|
||||
|
||||
**Заметка:**Обычно, сертификат CA хранится в папке `%USERPROFILE%\ .mitmproxy`. Также, вы можете скачать его с `http://mitm.it`
|
||||
|
||||
Два раза нажмите для [установки](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate), либо ...
|
||||
|
||||
- Через командную строку
|
||||
|
||||
|
||||
**Заметка:** Обычно, сертификат CA хранится в папке `%USERPROFILE%\ .mitmproxy`. Также, вы можете скачать его с `http://mitm.it`
|
||||
|
||||
Дважды нажмите для [установки](https://docs.microsoft.com/ru-ru/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate), или же ...
|
||||
|
||||
- С помощью командной строки
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Запустите Fiddler Classic, включите настройку `Decrypt https traffic` в опциях и измените порт по умолчанию (Tools -> Options -> Connections) на что-то не равное `8888`, после чего запустите [этот скрипт](https://github.lunatic.moe/fiddlerscript).
|
||||
|
||||
- [Файл hosts](https://github.com/Melledy/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
|
||||
- Fiddler Classic: Запустите Fiddler Classic, включите настройку `Decrypt https traffic` в опциях и измените порт по умолчанию (Меню -> Tools -> Options -> Connections) на что-то не равное `8888`, после чего запустите [этот скрипт](https://github.lunatic.moe/fiddlerscript) во вкладке FiddlerSrcipt.
|
||||
|
||||
- [Файл hosts](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. Установите прокси сети в `127.0.0.1:8080`, либо в тот порт прокси, который вы задали.
|
||||
|
||||
**Также, вы можете использовать `start.cmd` для автоматического запуска прокси-демонов и серверов, но для этого необходимо задать переменную среды JAVA_HOME**
|
||||
**Также, вы можете использовать `start.cmd` для автоматического запуска прокси и серверов, но для этого необходимо задать переменную среды JAVA_HOME**
|
||||
|
||||
### Сборка
|
||||
|
||||
@@ -103,7 +102,7 @@ chmod +x gradlew
|
||||
|
||||
# Краткое руководство по решению проблем
|
||||
|
||||
* Если не компилируется, то проверьте инсталляцию своего JDK (JDK 17 и валидированная переменная JDK bin PATH)
|
||||
* Клиент не подключается, не входит, выдаёт ошибку 4206 и т.д. - Скорее всего, проблема в том, *как именно* вы настроили прокси-демонов. При использовании
|
||||
* Если скомпилировать не удается, то проверьте установку своего JDK (JDK 17 и валидность переменных JDK, bin, PATH)
|
||||
* Клиент не подключается, не входит, выдаёт ошибку 4206 и т.д. - Скорее всего, проблема в том, *как именно* вы настроили прокси. При использовании
|
||||
Fiddler убедитесь, что он запущен на любом порте, кроме 8888
|
||||
* Порядок запуска: MongoDB > Grasscutter > Прокси-демон (mitmdump, fiddler и т.д.) > Игра
|
||||
* Порядок запуска: MongoDB > Grasscutter > Прокси (mitmdump, fiddler и т.д.) > Игра
|
||||
@@ -0,0 +1,106 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**Chú ý:** Chúng tôi luôn chào đón những người đóng góp cho dự án. Trước khi đóng góp, xin vui lòng đọc kỹ ["các quy tắc" (Code of Conduct)](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md) của chúng tôi .
|
||||
|
||||
## Các tính năng hiện tại
|
||||
|
||||
* Đăng nhập
|
||||
* Chiến đấu, giao tranh
|
||||
* Danh sách bạn bè
|
||||
* Dịch chuyển
|
||||
* Hệ thống cầu nguyện (gacha)
|
||||
* *Một phần* của tính năng chơi chung (co-op)
|
||||
* Gọi ra quái vật từ bảng điều khiển (console)
|
||||
* Vật phẩm/Nhân vật (nhận vật phẩm/nhân vật, nâng cấp vật phẩm/nhân vật)
|
||||
|
||||
## Hướng dẫn cài đặt nhanh
|
||||
|
||||
**Ghi chú:** Để được hỗ trợ, vui lòng tham gia [Discord](https://discord.gg/T5vZU6UyeG).
|
||||
|
||||
### Phần mềm cần thiết
|
||||
|
||||
* [Java SE - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) hoặc cao hơn
|
||||
|
||||
**Ghi chú:** Nếu bạn chỉ muốn **sử dụng**, vậy thì cài đặt **jre** là đủ.
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (khuyến khích sử dụng phiên bản từ 4.0 trở lên)
|
||||
|
||||
* Proxy Daemon: [mitmproxy](https://mitmproxy.org/) (nên sử dụng mitmdump), [Fiddler Classic](https://telerik-fiddler.s3.amazonaws.com/fiddler/FiddlerSetup.exe), v.v.
|
||||
|
||||
### Chạy chương trình (server)
|
||||
|
||||
**Ghi chú:** Nếu bạn đã cập nhật từ phiên bản cũ hơn, hãy xóa `config.json` để tạo lại.
|
||||
|
||||
1. Tải `grasscutter.jar`
|
||||
- Tài về từ [releases (bản phát hành)](https://github.com/Grasscutters/Grasscutter/releases/latest) hoặc [actions (các hoạt động)](https://github.com/Grasscutters/Grasscutter/actions/workflows/build.yml) hoặc [tự tạo của chính bạn](#tự-tạo-server-building).
|
||||
2. Tạo một thư mục `resources` trong cùng thư mục với Grasscutter.jar và chuyển các thư mục `BinOutput, ExcelBinOutput, Readables, Scripts, Subtitle, TextMap` của bạn đến `resources` _(Xem [wiki](https://github.com/Grasscutters/Grasscutter/wiki) để biết cách lấy các thư mục đó)_
|
||||
3. Chạy Grasscutter với câu lệnh `java -jar grasscutter.jar`. **Hãy chắc rằng mongodb của bạn đã được chạy**
|
||||
|
||||
### Kết nối với game (client)
|
||||
|
||||
½. Tạo một tài khoản từ bảng điều khiển máy chủ (server console), sử dụng [câu lệnh (command)](https://github.com/Grasscutters/Grasscutter/wiki/Commands#:~:text=account%20%3Ccreate|delete%3E%20%3Cusername%3E%20[UID]).
|
||||
|
||||
1. Chương trình chuyển hướng lưu lượng truy cập: (chỉ sử dụng 1)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
- Chứng chỉ CA tin cậy:
|
||||
|
||||
- Chứng chỉ CA thường được lưu trữ trong `%USERPROFILE%\.mitmproxy`, click đúp `mitmproxy-ca-cert.cer` để [cài đặt](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate) hoặc...
|
||||
|
||||
- Sử dụng với command line (cmd) *(yêu cầu quyền quản trị viên)*
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: Mở Fiddler Classic, bật tùy chọn `Decrypt HTTPS traffic` trong (Tools -> Options -> HTTPS) và thay đổi cổng (port) mặc định (Tools -> Options -> Connections) khác `8888`, chạy [script này](https://github.com/Grasscutters/Grasscutter/wiki/Resources#fiddler-classic-jscript) (sao chép và dán script vào trong `FiddlerScript`) và bấm `Save Script`.
|
||||
|
||||
- [Hosts file](https://github.com/Grasscutters/Grasscutter/wiki/Resources#hosts-file)
|
||||
|
||||
2. Cài đặt network proxy thành `127.0.0.1:8080` hoặc cổng proxy mà bạn đã chỉ định.
|
||||
|
||||
- Với mitmproxy: Sau khi thiết lập proxy và cài đặt chứng chỉ, hãy kiểm tra http://mitm.it/ để xem liệu lưu lượng có đang thông qua mitmproxy hay không.
|
||||
|
||||
**Bạn cũng có thể sử dụng `start.cmd` để tự động khởi động máy chủ (servers) và proxy daemons, nhưng trước đó bạn phải thiết lập biến môi trường `JAVA_HOME` và cấu hình tệp `start_config.cmd`.**
|
||||
|
||||
### Tự tạo server (Building)
|
||||
|
||||
Grasscutter sử dụng Gradle để xử lý các phần phụ thuộc và xây dựng.
|
||||
|
||||
**Phần mềm cần thiết:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html) hoặc cao hơn
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # Thiết lập môi trường (Setting up environments)
|
||||
.\gradlew jar # Biên dịch (Compile)
|
||||
```
|
||||
|
||||
##### Linux
|
||||
|
||||
```bash
|
||||
git clone https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # Biên dịch (Compile)
|
||||
```
|
||||
|
||||
Bạn có thể tìm thấy tệp jar đã được biên dịch tại thư mục gốc của dự án.
|
||||
|
||||
### Các câu lệnh (commands) đã được chuyển đến [wiki](https://github.com/Grasscutters/Grasscutter/wiki/Commands)!
|
||||
|
||||
# Khắc phục nhanh các sụ cố
|
||||
|
||||
- Nếu quá trình biên dịch (compile) không thành công, hãy kiểm tra cài đặt JDK của bạn (Đảm bảo rằng JDK phải từ phiên bản 17 trở lên và PATH của JDK đã được cài đặt).
|
||||
- Không thể kết nối, không thể đăng nhập, 4206, v.v. - *Vấn đề* thường là do cài đặt proxy (proxy daemon) của bạn. Nếu bạn đang sử dụng Fiddler, hãy đổi cổng (port) mặc định sang bất cứ cổng nào khác 8888.
|
||||
- Thứ tự khởi động: MongoDB > Grasscutter > Proxy Daemon (mitmdump, fiddler, v.v.) > Game
|
||||
@@ -0,0 +1,76 @@
|
||||

|
||||
<div align="center"><img alt="Documentation" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**注意:** 我们始终欢迎项目的贡献者。但在做贡献之前,请仔细阅读我们的[代码规范](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md)。
|
||||
|
||||
## 当前功能
|
||||
|
||||
* 登录
|
||||
* 战斗
|
||||
* 好友
|
||||
* 传送
|
||||
* 祈愿
|
||||
* 多人游戏 *部分* 可用
|
||||
* 从控制台生成魔物
|
||||
* 背包功能(接收或升级物品、角色等)。
|
||||
|
||||
## 快速安装指南
|
||||
|
||||
**注意:** 如需帮助,请加入我们的[Discord](https://discord.gg/T5vZU6UyeG)。
|
||||
|
||||
### 快速开始(全自动)
|
||||
|
||||
- 获取Java 17:https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
|
||||
- 获取[MongoDB社区版](https://www.mongodb.com/try/download/community)
|
||||
- 获取游戏4.0正式版 (如果你没有4.0的客户端,可以在这里找到):
|
||||
[123pan share](https://www.123pan.com/s/HoqUVv-U7SBA.html)
|
||||
[github](https://github.com/JRSKelvin/GenshinRepository/blob/main/Version%204.0.0.md)
|
||||
|
||||
- 下载[最新的Cultivation版本](https://github.com/Grasscutters/Cultivation/releases/latest)(使用以“.msi”为后缀的安装包)。
|
||||
- 以管理员身份打开Cultivation,按右上角的下载按钮。
|
||||
- 点击“下载 Grasscutter 一体化”
|
||||
- 点击右上角的齿轮
|
||||
- 将游戏安装路径设置为你游戏所在的位置。
|
||||
- 将自定义Java路径设置为`C:\Program Files\Java\jdk-17\bin\java.exe`
|
||||
- 保持所有其它设置为默认值
|
||||
|
||||
- 点击“启动”按钮旁边的小按钮。
|
||||
- 点击“启动”按钮。
|
||||
- 随便想一个用户名登录,不需要密码。
|
||||
|
||||
### 构建
|
||||
|
||||
Grasscutter使用Gradle来处理依赖和构建。
|
||||
|
||||
**前置:**
|
||||
|
||||
- [Java SE Development Kits - 17](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html)或更高版本
|
||||
- [Git](https://git-scm.com/downloads)
|
||||
|
||||
##### Windows
|
||||
|
||||
```shell
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
.\gradlew.bat # 设置开发环境
|
||||
.\gradlew jar # 编译
|
||||
```
|
||||
|
||||
##### Linux(GNU)
|
||||
|
||||
```bash
|
||||
git clone --recurse-submodules https://github.com/Grasscutters/Grasscutter.git
|
||||
cd Grasscutter
|
||||
chmod +x gradlew
|
||||
./gradlew jar # 编译
|
||||
```
|
||||
|
||||
你可以在项目的根目录找到输出的jar。
|
||||
|
||||
### 故障排除
|
||||
|
||||
获取常见问题的解决方案或寻求帮助,请加入[我们的Discord服务器](https://discord.gg/T5vZU6UyeG)并进入“support”频道。
|
||||
@@ -1,9 +1,9 @@
|
||||

|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/workflow/status/Grasscutters/Grasscutter/Build?logo=github&style=for-the-badge"></div>
|
||||
<div align="center"><img alt="Documention" src="https://img.shields.io/badge/Wiki-Grasscutter-blue?style=for-the-badge&link=https://github.com/Grasscutters/Grasscutter/wiki&link=https://github.com/Grasscutters/Grasscutter/wiki"> <img alt="GitHub release (latest by date)" src="https://img.shields.io/github/v/release/Grasscutters/Grasscutter?logo=java&style=for-the-badge"> <img alt="GitHub" src="https://img.shields.io/github/license/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub last commit" src="https://img.shields.io/github/last-commit/Grasscutters/Grasscutter?style=for-the-badge"> <img alt="GitHub Workflow Status" src="https://img.shields.io/github/actions/workflow/status/Grasscutters/Grasscutter/build.yml?branch=development&logo=github&style=for-the-badge"></div>
|
||||
|
||||
<div align="center"><a href="https://discord.gg/T5vZU6UyeG"><img alt="Discord - Grasscutter" src="https://img.shields.io/discord/965284035985305680?label=Discord&logo=discord&style=for-the-badge"></a></div>
|
||||
|
||||
[EN](README.md) | [简中](README_zh-CN.md) | 繁中 | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md)
|
||||
[EN](../README.md) | [简中](README_zh-CN.md) | [繁中](README_zh-TW.md) | [FR](README_fr-FR.md) | [ES](README_es-ES.md) | [HE](README_HE.md) | [RU](README_ru-RU.md) | [PL](README_pl-PL.md) | [ID](README_id-ID.md) | [KR](README_ko-KR.md) | [FIL/PH](README_fil-PH.md) | [NL](README_NL.md) | [JP](README_ja-JP.md) | [IT](README_it-IT.md) | [VI](README_vi-VN.md) | [हिंदी](README_hn-IN.md)
|
||||
|
||||
**請注意:** 歡迎成為本專案的貢獻者。在提交 PR 之前, 請仔細閱讀[程式碼規範](https://github.com/Grasscutters/Grasscutter/blob/stable/CONTRIBUTING.md)。
|
||||
|
||||
@@ -22,52 +22,23 @@
|
||||
|
||||
**注意:** 如需幫助請加入 [Discord](https://discord.gg/T5vZU6UyeG)
|
||||
|
||||
### 環境需求
|
||||
### 快速開始(全自動)
|
||||
|
||||
* Java SE - 17 ([連結](https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html))
|
||||
- 下載 Java 17:https://www.oracle.com/java/technologies/javase/jdk17-archive-downloads.html
|
||||
- 下載 [MongoDB 社區伺服器](https://www.mongodb.com/try/download/community)
|
||||
- 下載遊戲版本 REL3.7(如果你沒有的話,可以在[這裡](https://github.com/MAnggiarMustofa/GI-Download-Library/blob/main/GenshinImpact/Client/3.7.0.md)找到 3.7 客戶端)
|
||||
|
||||
**注意:** 如果僅想**執行服務端**, 使用 **jre** 即可
|
||||
- 下載 [最新的 Cultivation 版本](https://github.com/Grasscutters/Cultivation/releases/latest)。使用 `.msi` 安裝程式。
|
||||
- 以管理員身分打開 Cultivation,按右上角的下載按鈕。
|
||||
- 點擊 `Download All-in-One`
|
||||
- 點擊右上角的齒輪
|
||||
- 將遊戲安裝路徑設置為你的遊戲所在的位置。
|
||||
- 將自定義 Java 路徑設置為 `C:\Program Files\Java\jdk-17\bin\java.exe`
|
||||
- 其他設置保持預設
|
||||
|
||||
* [MongoDB](https://www.mongodb.com/try/download/community) (推薦 4.0+)
|
||||
|
||||
* 代理程式: mitmproxy (推薦 mitmdump), Fiddler Classic 等
|
||||
|
||||
### 執行
|
||||
|
||||
**注意:** 從舊版本升級到新版本, 需要刪除 `config.json`
|
||||
|
||||
1. 獲取 `grasscutter.jar`
|
||||
- 從 [actions](https://github.com/Grasscutters/Grasscutter/suites/6895963598/artifacts/267483297) 下載
|
||||
- [自行編譯](#編譯)
|
||||
2. 在 JAR 檔案根目錄中建立 `resources` 資料夾並複製 `BinOutput` 和 `ExcelBinOutput` *(查看 [wiki](https://github.com/Grasscutters/Grasscutter/wiki) 瞭解更多)*
|
||||
3. 命令列 `java -jar grasscutter.jar` 執行 Grasscutter。**在此之前請確認 MongoDB 服務執行正常**
|
||||
|
||||
### 客戶端連線
|
||||
|
||||
½. 在伺服器控制台[建立賬戶](https://github.com/Grasscutters/Grasscutter/wiki/Commands#targeting)
|
||||
|
||||
1. 重定向流量: (選擇其中一個)
|
||||
- mitmdump: `mitmdump -s proxy.py -k`
|
||||
|
||||
信任 CA 證書:
|
||||
|
||||
**注意:** mitmproxy 的 CA 證書通常存放在 `%USERPROFILE%\ .mitmproxy`, 或者在 `http://mitm.it` 下載證書
|
||||
|
||||
雙擊[安裝根證書](https://docs.microsoft.com/en-us/skype-sdk/sdn/articles/installing-the-trusted-root-certificate#installing-a-trusted-root-certificate)或者...
|
||||
|
||||
- 使用命令列
|
||||
|
||||
```shell
|
||||
certutil -addstore root %USERPROFILE%\.mitmproxy\mitmproxy-ca-cert.cer
|
||||
```
|
||||
|
||||
- Fiddler Classic: 執行 Fiddler Classic, 在設定中開啟 `解密 https 通訊` 並將通訊埠設為除 `8888` 以外的任意通訊埠 (工具 -> 選項 -> 連線) 並載入[此指令碼](https://github.lunatic.moe/fiddlerscript)
|
||||
|
||||
- [Hosts 檔案](https://github.com/Grasscutters/Grasscutter/wiki/Running#traffic-route-map)
|
||||
|
||||
2. 設定代理為 `127.0.0.1:8080` 或你設定的通訊埠
|
||||
|
||||
**也可直接執行 `start.cmd` 一鍵啟動服務端並設定代理, 但必須設定 `JAVA_HOME` 環境變數**
|
||||
- 點擊啟動旁邊的小按鈕。
|
||||
- 點擊啟動按鈕。
|
||||
- 用你想要的用戶名登錄,密碼無所謂。
|
||||
|
||||
### 編譯
|
||||
|
||||
@@ -0,0 +1,188 @@
|
||||
# Hide and Seek!
|
||||
Documentation on how the **Hide and Seek** game works.\
|
||||
Externally dubbed: `Windtrace`.
|
||||
|
||||
# Map IDs
|
||||
TODO: Document the map IDs of Windtrace.
|
||||
|
||||
TODO: Investigate `ServerGlobalValueChangeNotify`
|
||||
|
||||
# Asking Players to Play in a Co-Op Game
|
||||
1. The client will send `DraftOwnerStartInviteReq`
|
||||
2. The server will send `DraftOwnerInviteNotify` to all clients.
|
||||
3. The server will send `DraftOwnerStartInviteRsp`
|
||||
|
||||
# Matching in a Co-Op Game
|
||||
1. World owner talks to Gygax and begins a Windtrace game.
|
||||
2. The packet `DraftOwnerInviteNotify` is sent to clients.
|
||||
3. Clients will respond with `DraftGuestReplyInviteReq` (client-side)
|
||||
4. The server will respond with `DraftGuestReplyInviteRsp`
|
||||
5. The server will respond with `DraftInviteResultNotify`
|
||||
|
||||
# Starting Windtrace
|
||||
1. If `DraftInviteResultNotify` is a success, the server will send a series of packets.
|
||||
1. A series of `SceneEntityAppearNotify` packets.
|
||||
2. `NpcTalkStateNotify`
|
||||
3. `PlayerEnterSceneNotify`
|
||||
4. `MultistagePlayInfoNotify`
|
||||
2. The players are then teleported to the Windtrace map in their locations.
|
||||
3. Server will send packets to clients. (this is server boilerplate)
|
||||
4. The server sends another `MultistagePlayInfoNotify` to clients.
|
||||
|
||||
# Changing Avatars - Others
|
||||
1. The server will send a `AvatarEquipChangeNotify` packet to clients.
|
||||
2. The server will send a `SceneTeamUpdateNotify` packet to clients.
|
||||
3. The server will send a `HideAndSeekPlayerSetAvatarNotify` packet to clients.
|
||||
|
||||
# Getting Ready
|
||||
1. The client will send `HideAndSeekSetReadyReq` to the server.
|
||||
2. The server will reply with `HideAndSeekPlayerReadyNotify` to clients.
|
||||
3. The server will send `MultistagePlayInfoNotify` to clients.
|
||||
4. The server will reply with `HideAndSeekSetReadyRsp` to the client.
|
||||
5. If all players are ready, the server will move on to start Windtrace.
|
||||
|
||||
# Starting Windtrace
|
||||
1. When all players are ready, the server will send a series of packets to players.
|
||||
1. `GalleryStartNotify`
|
||||
2. `SceneGalleryInfoNotify`
|
||||
3. `MultistagePlayInfoNotify`
|
||||
4. `MultistagePlayStageEndNotify`
|
||||
5. This will only get sent at the `1.` countdown.
|
||||
|
||||
### Notes:
|
||||
- `GuestReplyInviteRsp` is sent **after** `DraftInviteResultNotify`.
|
||||
|
||||
## `DraftOwnerInviteNotify`
|
||||
- `invite_deadline_time` - This is the time when the invite expires.
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
|
||||
## `DraftOwnerStartInviteReq`
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
|
||||
## `DraftOwnerStartInviteRsp`
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
- `invite_fail_info_list` - A list of players who weren't invited.
|
||||
- `retcode` - The response code.
|
||||
- `wrong_uid` - Always `0`. (undocumented)
|
||||
|
||||
## `DraftGuestReplyInviteReq`
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
- `is_agree` - A boolean value for whether the client accepts the invite.
|
||||
|
||||
## `DraftGuestReplyInviteRsp`
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
- `retcode` - Response code for the request.
|
||||
- `is_agree` - A boolean value for whether the server acknowledges the client's invite acceptation.
|
||||
|
||||
## `DraftInviteResultNotify`
|
||||
- `draft_id` - The value is always `3001` for Windtrace.
|
||||
- `is_all_agree` - A boolean value for whether all clients accepted the invite.
|
||||
|
||||
## `NpcTalkStateNotify`
|
||||
- `is_ban` - This value is always true when entering Windtrace.
|
||||
|
||||
## `PlayerEnterSceneNotify`
|
||||
- `pos` - This is where the player will be teleported to.
|
||||
- This value depends on if the player is a hunter or a runner.
|
||||
- This value is set by the server and must be hardcoded/read from a JSON file.
|
||||
|
||||
## `MultistagePlayStageEndNotify`
|
||||
- `play_index` - Value picked by the server. (use 1)
|
||||
- `group_id` - This value is always `133002121` for Windtrace.
|
||||
|
||||
## `MultistagePlayInfoNotify` - Initial + PostEnterSceneReq
|
||||
- Image Reference: 
|
||||
- `info` - MultistagePlayInfo data.
|
||||
- `group_id` - The value is always `133002121` for Windtrace.
|
||||
- `play_index` - Value picked by the server. (use 1)
|
||||
- `hide_and_seek_info` - Information about Windtrace.
|
||||
- `hider_uid_list` - A list of UIDs (ints) of the hiders.
|
||||
- `hunter_uid` - The UID (int) of the hunter.
|
||||
- `map_id` - The ID of the Windtrace map.
|
||||
- `stage_type` - Windtrace state.
|
||||
- This will be `HIDE_AND_SEEK_STAGE_TYPE_PREPARE`.
|
||||
- `battle_info_map` - Contains a dictionary of UID -> `HideAndSeekPlayerBattleInfo` objects.
|
||||
- `skill_list` - Array of 3 values of skill IDs chosen by the player.
|
||||
- `avatar_id` - The ID of the avatar the player wants to use.
|
||||
- `is_ready` - The player's in-game ready state.
|
||||
- `costume_id` - The costume the player's avatar is wearing.
|
||||
|
||||
## `MultistagePlayInfoNotify` - Picking Avatars
|
||||
- Image Reference: 
|
||||
- **Note:** This packet matches the initial structure and data.
|
||||
- `info.hide_and_seek_info.stage_type` - This will be `HIDE_AND_SEEK_STAGE_TYPE_PICK`.
|
||||
|
||||
## `MultistagePlayInfoNotify` - Starting Windtrace
|
||||
- Image Reference: 
|
||||
- **Note:** This packet matches the initial structure and data.
|
||||
- `info.hide_and_seek_info.stage_type` - This will be `HIDE_AND_SEEK_STAGE_TYPE_HIDE`.
|
||||
|
||||
## `MultistagePlayInfoNotify` - Seeking Time
|
||||
- Image Reference: 
|
||||
- **Note:** This packet matches the initial structure and data.
|
||||
- `info.hide_and_seek_info.stage_type` - This will be `HIDE_AND_SEEK_STAGE_TYPE_SEEK`.
|
||||
|
||||
## `MultistagePlayInfoNotify` - Finish Windtrace
|
||||
- Image Reference: 
|
||||
- **Note:** This packet matches the initial structure and data.
|
||||
- `info.hide_and_seek_info.stage_type` - This will be `HIDE_AND_SEEK_STAGE_TYPE_SETTLE`.
|
||||
|
||||
## `HideAndSeekPlayerSetAvatarNotify`
|
||||
- `avatar_id` - The ID of the new avatar the player wants to use.
|
||||
- `uid` - The UID of the player who changed their avatar.
|
||||
- `costume_id` - The costume the player's avatar is wearing.
|
||||
|
||||
## `HideAndSeekSetReadyRsp`
|
||||
- `retcode` - Response code for the request.
|
||||
|
||||
## `HideAndSeekPlayerReadyNotify`
|
||||
- `uid_list` - A list of UIDs (ints) of the players who are ready.
|
||||
|
||||
## `GalleryStartNotify`
|
||||
- `gallery_id` - TODO: Check if this value is always `7056` for Windtrace.
|
||||
- `start_time` - This value is always `2444` for Windtrace.
|
||||
- This value is `200` when displaying game end statistics.
|
||||
- `owner_uid` - The UID of the player who started the Windtrace game.
|
||||
- `player_count` - The number of players in the Windtrace game.
|
||||
- `end_time` - This value is always the same as `start_time`.
|
||||
|
||||
## `SceneGalleryInfoNotify` - Starting Windtrace
|
||||
- `gallery_info` - SceneGalleryInfo data.
|
||||
- `end_time` - This value is always the same as `start_time`.
|
||||
- `start_time` - This value is always `2444` for Windtrace.
|
||||
- This value is `200` when displaying game end statistics.
|
||||
- `gallery_id` - This value is always the same as `gallery_id` from `GalleryStartNotify`.
|
||||
- `stage` - The current stage of the gallery.
|
||||
- This will be `GALLERY_STAGE_TYPE_START`.
|
||||
- `owner_uid` - The UID of the player who started the Windtrace game.
|
||||
- `hide_and_seek_info` - SceneGalleryHideAndSeekInfo
|
||||
- `visible_uid_list` - List of UIDs (ints) of the players who were left alive.
|
||||
- `caught_uid_list` - List of UIDs (ints) of the players who have been caught.
|
||||
- `player_count` - The amount of players in the Windtrace game.
|
||||
- `pre_start_end_time` - This value is always `0` for Windtrace.
|
||||
|
||||
## `HideAndSeekSettleNotify`
|
||||
- `reason` - The reason for the game ending.
|
||||
- `winner_list` - A list of UIDs (ints) of the players who won the game.
|
||||
- `settle_info_list` - HideAndSeekSettleInfo data.
|
||||
- This is a list of players who participated in the game.
|
||||
|
||||
## `HideAndSeekSettleInfo`
|
||||
- `card_list` - A collection of `ExhibitionDisplayInfo`
|
||||
- If unknown: hardcode the specified values. 
|
||||
- These values are repeated during testing.
|
||||
- `uid` - The UID of the player who participated in the game.
|
||||
- `nickname` - The player's nickname.
|
||||
- `head_image` - This value is always `0`.
|
||||
- `online_id` - This value is always blank.
|
||||
- `profile_picture` - `ProfilePicture` object.
|
||||
- `play_index` - Value picked by the server. (use 1)
|
||||
- `stage_type` - The stage type. (inconclusive; TODO)
|
||||
- `cost_time` - The amount of time the player took to complete the game.
|
||||
- `score_list` - A list of player scores.
|
||||
|
||||
## `ExhibitionDisplayInfo`
|
||||
- `id` - The ID of the reward.
|
||||
- `param` - The amount of the reward given.
|
||||
- `detail_param` - This value is *mostly* 0.
|
||||
- This value **matches** param when the reward is of the amount of time spent playing. (participation reward)
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 7.9 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 30 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 42 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 44 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 47 KiB |
@@ -0,0 +1,214 @@
|
||||
## World Bosses
|
||||
* Oceanid_Boss_1_4
|
||||
* V1_6/Oceanid_Boss_1_6
|
||||
* DrakePrimoRockBoss
|
||||
* V2_3/Boss_Hound
|
||||
|
||||
## Dungeons
|
||||
* V2_1/Boss_Shougun_Beta
|
||||
* V2_1/Boss_LaSignora
|
||||
|
||||
## Activities/Events
|
||||
### Aster (unreconciled stars)
|
||||
* AsterMiddle
|
||||
* AsterBig
|
||||
|
||||
### FleurFair (windblume)
|
||||
* FleurFair_Parachute
|
||||
* FleurFair_BalloonShoot
|
||||
|
||||
### NEW_ACTIVITY_DRAGONSPINE (The Chalk Prince and the Dragon)
|
||||
* IceFlowerBossBattle
|
||||
|
||||
### NEW_ACTIVITY_WINTER_CAMP (Shadows Amidst Snowstorms)
|
||||
* V2_3/WinterCampDevice
|
||||
* V2_3/WinterCampGacha
|
||||
* V2_3/WinterCampMimik
|
||||
* V2_3/WinterCampMimik_Watcher
|
||||
* V2_3/WinterCampMimik_Quest
|
||||
* V2_3/WinterCampParkour
|
||||
* V2_3/WinterCampSnowman
|
||||
|
||||
### NEW_ACTIVITY_TREASURE_MAP
|
||||
* TreasureMapEvent
|
||||
* V2_0/TreasureMapEventV2
|
||||
|
||||
### unordered
|
||||
* Activity_ArenaChallengeSub
|
||||
* Activity_ArenaChallengeMain
|
||||
|
||||
## Scene1
|
||||
* Fishing_EventTest
|
||||
* test_New_LuaCallType
|
||||
* V2_5/TEST_Require
|
||||
|
||||
## Scene 500030
|
||||
* SGV_Test
|
||||
|
||||
## Other/Unordered
|
||||
* Activity_Endora
|
||||
* AttachChildChallenge
|
||||
* BlackBoxPlay/ChargingPort
|
||||
* BlackBoxPlay/DrawOneLine
|
||||
* BlackBoxPlay/DrawOneLinePlus
|
||||
* BlackBoxPlay/EnergyAmplifier
|
||||
* BlackBoxPlay/LightResonanceStone
|
||||
* BlackBoxPlay/LightSquare
|
||||
* BlackBoxPlay/LightSquareV2
|
||||
* BlackBoxPlay/MagneticGear
|
||||
* BlackBoxPlay/TeleportHighway
|
||||
* BubbleGame
|
||||
* BulletGame
|
||||
* DragonSpineBlossomA
|
||||
* DragonSpineBlossomB
|
||||
* FlyChallenge
|
||||
* MonsterQuickDeath
|
||||
* SnowDungeon
|
||||
* TowerDefense_Challenge
|
||||
* TowerDefense_Gear
|
||||
* TowerDefense_Monster
|
||||
* TowerDefense_Monster02
|
||||
* TowerDefense_Trap
|
||||
* WindFlora
|
||||
* WindFlora_Arenashake
|
||||
* WindFlora_Boss_RandomList
|
||||
* WindFlora_Laser
|
||||
* WindFlora_Main
|
||||
* WindFlora_RecordFloorBreakable
|
||||
* WindFlora_RecordFloorMemory
|
||||
* WindFlora_RecordFloorTransparent
|
||||
* WindFlora_ReTrans
|
||||
* V1_5/Challenge_SetEyePoint
|
||||
* V1_5/HideAndSeek_Gallery
|
||||
* V1_5/HideAndSeek_Skill
|
||||
* V1_5/HilichurlLevel
|
||||
* V1_6/TuneStone
|
||||
* V1_6/BoatRace
|
||||
* V1_6/General_Watcher
|
||||
* V1_6/KeleeBombBattle
|
||||
* V1_6/Multi_Badminton
|
||||
* V1_6/Optimization
|
||||
* V1_6/ScoreChallenge
|
||||
* V1_6/TuneStone
|
||||
* V1_6/VehicleBattle
|
||||
* V2_0/BlitzRush_Watcher
|
||||
* V2_0/BlossomGroup
|
||||
* V2_0/DrawOneLine_TreasureMap
|
||||
* V2_0/ElectricCore
|
||||
* V2_0/ElectricCore02
|
||||
* V2_0/ElementFloor
|
||||
* V2_0/ExhibitionRoleElectricBomb
|
||||
* V2_0/ExhibitionRoleElectricPowerSource
|
||||
* V2_0/OreBlossomGroup
|
||||
* V2_0/PhotoTakenSuccessfully
|
||||
* V2_0/RaioCotter
|
||||
* V2_0/SetPerformanceOptimizationWithRegion_V2.0
|
||||
* V2_0/SetPerformanceOptimizationWithRegion_V3.0
|
||||
* V2_0/SetPerformanceOptimizationWithRegion_Event_V2.0
|
||||
* V2_0/TemariChallenge
|
||||
* V2_0/TemariChallengePreQuest
|
||||
* V2_0/ThunderFloor
|
||||
* V2_0/TowerDefense_Challenge_V2.0
|
||||
* V2_0/TowerDefense_Gear_V2.0
|
||||
* V2_0/TowerDefense_Monster_V2.0
|
||||
* V2_0/TowerDefense_MonsterWaveConfig_V2.0
|
||||
* V2_1/Boss_Raijin
|
||||
* V2_1/FightingStage
|
||||
* V2_1/FishingChallenge
|
||||
* V2_1/FishingChallenge_Moonfin
|
||||
* V2_1/ImmortalPot
|
||||
* V2_1/ImmortalPotEx
|
||||
* V2_1/Monster_Tide_Test
|
||||
* V2_1/MoonlitCamp
|
||||
* V2_1/PirateHelm
|
||||
* V2_1/PirateShoji
|
||||
* V2_1/Wakura
|
||||
* V2_1/WoodFloorPlayOrder
|
||||
* V2_1/WoodFloorPlaySame
|
||||
* V2_1/SeaGodStatue
|
||||
* V2_2/Ayesha
|
||||
* V2_2/Circuit
|
||||
* V2_2/DayFinishSuite
|
||||
* V2_2/DecalDecode
|
||||
* V2_2/Dig
|
||||
* V2_2/PillarMove
|
||||
* V2_2/SelfLoopSeeli
|
||||
* V2_2/ShowDecals
|
||||
* V2_2/RogueDungeon_BOSS
|
||||
* V2_2/RogueDungeon_ChestRoom
|
||||
* V2_2/RoqueDungeon_FirstRoom
|
||||
* V2_2/RogueDungeon_Main
|
||||
* V2_2/RogueDungeon_Require
|
||||
* V2_2/TsurumiBirdFather
|
||||
* V2_2/TsurumiStoneSeq
|
||||
* V2_2/TsurumiTorch
|
||||
* V2_3/EnergyDisk
|
||||
* V2_3/EnergyDisk_Dungeon
|
||||
* V2_3/HachiBattle
|
||||
* V2_3/HachiDungeon
|
||||
* V2_3/HachiSneak
|
||||
* V2_3/MistTrialV2
|
||||
* V2_3/MistTrialV2_BuffLog
|
||||
* V2_4/BoxPusher
|
||||
* V2_4/DeepSeaDrakeBoss
|
||||
* V2_4/EnvStateManage
|
||||
* V2_4/EnvState
|
||||
* V2_4/EnvStateControl
|
||||
* V2_4/EnvStateWorktop
|
||||
* V2_4/Firecracker
|
||||
* V2_4/HideAndSeek_Gallery_V2
|
||||
* V2_4/HideAndSeek_Skill_V2"
|
||||
* V2_4/MiniOsial
|
||||
* V2_4/Monster_CombatEnd_Handle
|
||||
* V2_4/PotionStage
|
||||
* V2_4/QunyugeDebris
|
||||
* V2_4/QunyugeDebris_Stop_Balloon
|
||||
* V2_4/SeaLamp_Challenge_Manager
|
||||
* V2_4/SealedAltar
|
||||
* V2_4/WallMaze
|
||||
* V2_5/DarkPressure
|
||||
* V2_5/DarkStair
|
||||
* V2_5/FightingStage_ByNum
|
||||
* V2_5/FightingStage_ByTime
|
||||
* V2_5/GiliGiliI_Boss
|
||||
* V2_5/GiliGiliI_Quest
|
||||
* V2_5/HM_BalloonGallery
|
||||
* V2_5/Huarongdao
|
||||
* V2_5/RecircleChallenge
|
||||
* V2_5/ReviveBoss
|
||||
* V2_5/ReviveCrystalEnergy
|
||||
* V2_5/UGCDungeon_Reforge
|
||||
* V2_5/UGCDungeon
|
||||
* V2_5/Watcher_Energy
|
||||
* V2_5/Watcher_Puzzle
|
||||
* V2_5/Watcher_Tower
|
||||
* V2_6/BW_LightRoadTrack
|
||||
* V2_6/BW_RandomLoadSuite
|
||||
* V2_6/CalculateBulletForward
|
||||
* V2_6/CrystalLink
|
||||
* V2_6/CYJY_Enter_Trans_Player
|
||||
* V2_6/DigPlay
|
||||
* V2_6/DropRockAbyssBulletTrigger
|
||||
* V2_6/HM_WoodenStakeChallenge
|
||||
* V2_6/IrodoriMaster
|
||||
* V2_6/PhotographActivity
|
||||
* V2_6/TowerDefense_Challenge_V3.0
|
||||
* V2_6/TowerDefense_Gear_V3.0
|
||||
* V2_6/TowerDefense_Monster_V3.0
|
||||
* V2_6/TowerDefense_MonsterWaveConfig_V3.0"
|
||||
* V2_6/TowerDefense_SpecialGears_V3.0
|
||||
* V2_7/rogue_rotate_whitebox
|
||||
* V2_7/Activity_GachaSync
|
||||
* V2_7/Activity_LumenArena
|
||||
* V2_7/Activity_LumenProtect
|
||||
* V2_7/Activity_LumenCharge
|
||||
* V2_7/Activity_LumenWipeout
|
||||
* V2_7/BW_NearBossAuthorityChange
|
||||
* V2_7/HM_FindTubby
|
||||
* V2_7/Rogue_Cell
|
||||
* V2_7/rogue_rotate_whitebox
|
||||
* V2_7/Rogue_Terrain_1
|
||||
* V2_7/Rogue_Terrain_2
|
||||
* V2_7/Rogue_Terrain_3
|
||||
* V2_7/YeLan_BoxPusher
|
||||
* TD_Lib
|
||||
@@ -0,0 +1,6 @@
|
||||
# Quest Documentation
|
||||
These are the [Wiki Files](https://github.com/Anime-Game-Servers/Grasscutter-Quests/wiki) from Grasscutter-Quests.\
|
||||
|
||||
## Sections
|
||||
- [**Missing Scripts**](Missing-Scripts.md) - These are Lua scripts which are required for functionality of certain game elements.
|
||||
- [The Outlander Who Caught the Wind (Prologue Act 1)](lines/The-Outlander-Who-Caught-the-Wind-(Prologue-Act-1).md)
|
||||
@@ -0,0 +1,124 @@
|
||||
# The Outlander Who Caught the Wind (Prologue Act 1)
|
||||
To start/enable quests run `/quests enable` or activate questing in the server settings.
|
||||
|
||||
## Reading The Table
|
||||
* ✔️ Natural Progression _possible_; works as intended
|
||||
* ⚠️ Natural Progression _possible_; bugs occur, see note
|
||||
* ❌ Natural Progression _not possible_; see note(s)
|
||||
* ❓ Unknown Behavior
|
||||
* bw = 'big-world scripts' enabled
|
||||
* m = Main Quest
|
||||
|
||||
| [The Outlander Who Caught the Wind (Prologue Act 1)](https://genshin-impact.fandom.com/wiki/The_Outlander_Who_Caught_the_Wind) | Works (bw-on) | Works (bw-off) | Log in/out Works | Problems/Notes |
|
||||
|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|----------------|------------------|------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| **m351 : Wanderer's Trail**<br />[500 CExp, 225 AExp, 975 Mora] | ✔️ | ⚠️ | ✔️ | completion possible without commands |
|
||||
| 35104 : Traveler and Paimon Intro Cutscene | ✔️ | ✔️ | ✔️ |
|
||||
| 35100 : Go to Paimon | ✔️ | ❓ | ✔️ |
|
||||
| 35107 : #QUEST_HIDDEN | ✔️ | ❓ | ✔️ |
|
||||
| 35101 : Follow Paimon | ✔️ | ❓ | ✔️ |
|
||||
| 35106 : Unlock the Teleport Waypoint | ✔️ | ✔️ | ✔️ |
|
||||
| 35105 : Go to the foot of the cliff | ✔️ | ❓ | ✔️ | If not relogging, Paimon will now be with you and move with you. |
|
||||
| 35103 : [N/A] 469284815 #QUEST_HIDDEN | ✔️ | ❓ | ✔️ |
|
||||
| 35102 : Climb to the top of the rock face | ✔️ | ❓ | ✔️ | Quest 35200 was automatically added to the In Progress list. |
|
||||
| | | | | |
|
||||
| **m352 : Bird's Eye View**<br />(Teyvat Archon Quest Prologue: Act 1 - 1)<br />[500 CExp, 225 AExp, 975 Mora] | ✔️ | ❓ | ✔️ | completion possible without commands |
|
||||
| 35200 : Follow the path | ✔️ | ❓ | ✔️ | No new quest marker is automatically added. Opening the quest journal and selecting navigate will added it to the screen in the correct location. |
|
||||
| 35201 : Go to Paimon | ✔️ | ❓ | ✔️ | Paimon will stay with the player. |
|
||||
| 35202 : Talk to Paimon | ✔️ | ❓ | ✔️ |
|
||||
| 35203 : Follow Paimon | ✔️ | ❓ | ✔️ | After logout it resets the user to 35202 |
|
||||
| 35204 : Swim to the island in Starfell Lake | ✔️ | ❓ | ✔️ |
|
||||
| 35205 : Bird's Eye View - Statue of The Seven (I) unlocked | ✔️ | ❓ | ✔️ | TODO check logout |
|
||||
| | | | | |
|
||||
| **m353 : Unexpected Power**<br />(Teyvat Archon Quest Prologue: Act 1 - 2)<br />[20 Primo, 575 CExp, 250 AExp, 1100 Mora, 10 Sweet Madame, 10 Teyvat Fried Egg] | ✔️ | ❓ | ✔️ | completion possible without commands, but slime multiply every time you log out and back in [#20](https://github.com/Hartie95/Grasscutter/issues/20) |
|
||||
| 35301 : Unexpected Power - Talk to Paimon | ✔️ | ❓ | ✔️ |
|
||||
| 35312 : Unexpected Power - Exit area rollback failed | ✔️ | ❓ | ✔️ | Player exits area before triggering 35301, you can call add 35312 which will trigger cutscene, but you will have a UI bug |
|
||||
| 35302 : Unexpected Power - Unleash Your Elemental Skill | ✔️ | ❓ | ✔️ |
|
||||
| 35309 : Unexpected Power - Defeat the slimes | ✔️ | ❓ | ✔️ |
|
||||
| 35303 : Unexpected Power - Hold Elemental Skill | ✔️ | ❓ | ✔️ | holding progressbar is missing |
|
||||
| 35310 : Unexpected Power - Defeat the slimes | ✔️ | ❓ | ✔️ |
|
||||
| 35304 : Unexpected Power - Use Elemental Burst | ✔️ | ❓ | ✔️ |
|
||||
| 35311 : Unexpected Power - Defeat the slimes | ✔️ | ❓ | ✔️ |
|
||||
| | | | | |
|
||||
| **m355 : Forest Rendezvous**<br />(Teyvat Archon Quest Prologue: Act 1 - 3)<br />[575 CExp, 250 AExp, 1100 Mora] | ✔️ | ❓ | ✔️ | natural progression possible |
|
||||
| 35501 : Go to Mondstadt | ✔️ | ❓ | ✔️ | Wait until Dvalin flies over. |
|
||||
| 36100 : #QUEST_HIDDEN | ✔️ | ❓ | ✔️ | Cutscene trigger for dvalin flying over the players head |
|
||||
| 36101 : #QUEST_HIDDEN | ✔️ | ❓ | ✔️ |
|
||||
| 35502 : Advance to the heart of the forest | ✔️ | ❓ | ✔️ |
|
||||
| 35503 : Talk to Paimon | ✔️ | ❓ | ✔️ |
|
||||
| 35504 : Investigate what Paimon has found | ✔️ | ❓ | ✔️ |
|
||||
| 35505 : Talk to Paimon | ✔️ | ❓ | ✔️ |
|
||||
| | | | | |
|
||||
| **m354 : Wind-Riding Knight**<br />(Teyvat Archon Quest Prologue: Act 1 - 4)<br />[625 CExp, 275AExp, 1200 Mora] | ✔️ | ❓ | ✔️ | |
|
||||
| 35401 : Keep heading towards Mondstadt | ✔️ | ❓ | ✔️ |
|
||||
| 35402 : Talk to the perky girl | ✔️ | ❓ | ✔️ | |
|
||||
| 35404 : Use Amber to defeat the airborne slimes | ✔️ | ❓ | ✔️ |
|
||||
| 35405 : #QUEST_HIDDEN | ✔️ | ❓ | ✔️ | wait until the talk is finished |
|
||||
| 35403 : Go to the location designated by Amber | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m360 : Going Upon the Breeze**<br />(Teyvat Archon Quest Prologue: Act 1 - 5)<br />[20 Primo, 972 CExp, 275 AExp, 1800 Mora, 8 EnOre, 1 Recurve Bow] | ✔️ | ❓ | ⚠️ | completion possible without commands, but with some smaller bugs |
|
||||
| 36001 : Defeat the nearby hilichurls | ✔️ | ❓ | ⚠️ | goal location might be wrong after logout. Monsters might multiply after logout |
|
||||
| 36003 : Clear out the nearby hilichurl camp | ✔️ | ❌ | ✔️ | There are more hillichurls then there should be. If bw script are disabled, changing the chest to open will break the script and hinder progress |
|
||||
| 36004 : Talk to Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 36005 : Keep heading towards Mondstadt | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m356 : City of Freedom**<br />(Teyvat Archon Quest Prologue: Act 1 - 6)<br />[850 CExp, 250 AExp, 1625 Mora, 7 EnOre] | ⚠️ | ❓ | ⚠️ | completion possible, but with some smaller bugs |
|
||||
| 35601 : Talk to Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 35602 : [CHS] - (test)跟随安柏#QUEST_HIDDEN | ⚠️ | ❓ | ⚠️ | softlock during showing of tipps possible |
|
||||
| 35603 : Go to the location designated by Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 35604 : Talk to Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 35605 : [CHS] - (test)开始飞行教学#QUEST_HIDDEN | ✔️ | ❓ | ✔️ | |
|
||||
| 35606 : Meet Amber at the fountain plaza | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m357 : Dragon Storm**<br />(Teyvat Archon Quest Prologue: Act 1 - 7)<br />[20 Primo, 1250 CExp, 275 AExp, 2400 Mora, 2 FineEnOre] | ✔️ | ❓ | ✔️ | completion possible with smaller bugs |
|
||||
| 35721 : Dvalin's Assault #QUEST_HIDDEN | ✔️ | ❓ | ✔️ | Watch the cutscene and then wait to be airborne |
|
||||
| 35722 : Fend off Stormterror | ⚠️ | ❓ | ✔️ | Using the movement keys (W,A,S,D) in the Dvalin fight might kick you out of the instance. **INVESTIGATE FURTHER** |
|
||||
| 35725 : [CHS] - (test)地城内cs#QUEST_HIDDEN | ✔️ | ❓ | ✔️ | You will return to the main world |
|
||||
| 35723 : Talk to Amber | ⚠️ | ❓ | ✔️ | Weather is not stormy. Finish conversation with Amber and Kaeya, the go the KoF Headquarters |
|
||||
| 35724 : Go to the Knights of Favonius Headquarters | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m358 : Knights of Favonius**<br />(Teyvat Archon Quest Prologue: Act 1 - 8)<br />[1025 CExp, 225 AExp, 1950 Mora, 43 EnOre] | ✔️ | ❓ | ✔️ | completion possible |
|
||||
| 35800 : #QUEST_HIDDEN | ⚠️ | ❓ | ✔️ | wait two day via time forward to progress |
|
||||
| 35801 : Enter the Knights of Favonius Headquarters | ✔️ | ❓ | ✔️ | |
|
||||
| 35802 : Knights of Favonius - Talk to Jean | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m306 : Winds of the Past**<br />(Teyvat Archon Quest Prologue: Act 1 - 9.1)<br />[20 Primo, 1550 CExp, 275 AExp, 3000 Mora, 3 FineEnOre] | ✔️ | ❓ | ✔️ | completion possible with two commands |
|
||||
| 30600 : Meet Amber at the temple | ✔️ | ❓ | ✔️ | |
|
||||
| 30601 : Talk to Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 30602 : Enter the temple | ✔️ | ❓ | ✔️ | Use /dungeon 1001 to go inside the dungeon |
|
||||
| 30607 : [CHS] - (test)到教学点1#QUEST_HIDDEN | ✔️ | ❓ | ✔️ | |
|
||||
| 30608 : [CHS] - (test)到教学点2#QUEST_HIDDEN (Tutorial on how to aim and fire using Amber) | ✔️ | ❓ | ✔️ | |
|
||||
| 30609 : [CHS] - (test)到教学点3#QUEST_HIDDEN | ✔️ | ❓ | ✔️ | |
|
||||
| 30612 : [CHS] - (test)到垂直风场#QUEST_HIDDEN (Tutorial on how to burn stuff with Pyro) | ✔️ | ❓ | ✔️ | |
|
||||
| 30611 : [CHS] - (test)地城失败#QUEST_HIDDEN (Seems to be in case the dungeon is failed) | ✔️ | ❓ | ✔️ | Walk forward and detroy the Dragon's Breath |
|
||||
| 30603 : Explore the temple's depths | ✔️ | ❓ | ✔️ | |
|
||||
| 30610 : Winds of the Past - Talk to Amber | ✔️ | ❓ | ✔️ | |
|
||||
| 30604 : Winds of the Past - Leave Domain (Will not show on HUD) | ✔️ | ❓ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m307 : Crash Course**<br />(Teyvat Archon Quest Prologue: Act 1 - 9.2)<br />[20 Primo, 1550 CExp, 275 AExp, 3000 Mora, 3 FineEnOre, 1 Traveler's Handy Sword, Kaeya lv1 c0] | ✔️ | ⚠️ | ✔️ | completion possible with smaller bugs |
|
||||
| 30700 : Meet Kaeya at the temple | ✔️ | ❓ | ✔️ | |
|
||||
| 30701 : Talk to Kaeya | ✔️ | ❓ | ✔️ | |
|
||||
| 30702 : Enter the temple | ✔️ | ⚠️ | ✔️ | |
|
||||
| 30710 : Talk to Kaeya | ✔️ | ✔️ | ✔️ | |
|
||||
| 30707 : [CHS] - (test)到教学点1#QUEST_HIDDEN | ✔️ | ✔️ | ✔️ | |
|
||||
| 30708 : [CHS] - (test)到教学点2#QUEST_HIDDEN (Cryo freezing tutorial) | ✔️ | ✔️ | ✔️ | Freezing is not working, dashing though the fire works though |
|
||||
| 30712 : [CHS] - (test)到教学点4#QUEST_HIDDEN (Hydro Amber tutorial) | ✔️ | ✔️ | ✔️ | |
|
||||
| 30711 : [CHS] - (test)地城失败#QUEST_HIDDEN (fail dungeon fallback) | ✔️ | ✔️ | ✔️ | |
|
||||
| 30709 : [CHS] - (test)到教学点3#QUEST_HIDDEN | ✔️ | ✔️ | ✔️ | | 30702 | Spikes are broken and will make the player stuck, afterwards only tp or leaving the dungeon helps.<br /> finish via one of those solutions:<br />Move forward with `/teleport 440 -25 198`<br />Get early Kaeya with `/give 10000015 lv1 c0`<br />Jump over the spikes with other means. |
|
||||
| 30703 : Explore the temple's depths | ✔️ | ✔️ | ✔️ | destroy the Dragons Breath |
|
||||
| 30715 : Talk to Kaeya | ✔️ | ✔️ | ✔️ | |
|
||||
| 30713 : Kaeya cutscene | ✔️ | ✔️ | ✔️ | |
|
||||
| 30704 : Leave Domain | ✔️ | ✔️ | ✔️ | |
|
||||
| | | | | |
|
||||
| **m308 : Sparks Amongst the Pages**<br />(Teyvat Archon Quest Prologue: Act 1 - 9.3)<br />[20 Primo, 1550 CExp, 275 AExp, 3000 Mora, 3 FineEnOre, 1 Otherworldly Story, Lisa lv1 c0] | ✔️ | ⚠️ | ✔️ | completion possible with a few commands |
|
||||
| 30800 : Meet Lisa at the temple | ✔️ | ❓ | ✔️ | |
|
||||
| 30801 : Talk to Lisa | ✔️ | ❓ | ✔️ | |
|
||||
| 30802 : Enter the temple | ✔️ | ❌ | ✔️ | |
|
||||
| 30810 : Talk to Lisa | ✔️ | ✔️ | ✔️ | |
|
||||
| 30807 : [CHS] - (test)到教学点1#QUEST_HIDDEN | ✔️ | ✔️ | ✔️ | |
|
||||
| 30812 : [CHS] - (test)到教学点#QUEST_HIDDEN | ✔️ | ⚠️ | ✔️ | |
|
||||
| 30809 : [CHS] - (test)到教学点3#QUEST_HIDDEN | ✔️ | ✔️ | ✔️ | |
|
||||
| 30808 : [CHS] - (test)到教学点2#QUEST_HIDDEN | ✔️ | ✔️ | ✔️ | | |
|
||||
| 30811 : [CHS] - (test)地城失败#QUEST_HIDDEN (fail dungeon fallback) | ✔️ | ✔️ | ✔️ | |
|
||||
| 30803 : Explore the temple's depths | ✔️ | ✔️ | ✔️ | |
|
||||
| 30814 : Talk to Lisa | ✔️ | ✔️ | ✔️ | |
|
||||
| 30804 : Leave Domain | ✔️ | ✔️ | ✔️ | no autoprogression | |
|
||||
@@ -0,0 +1,17 @@
|
||||
Excels:
|
||||
- WorldAreaConfigData.json
|
||||
- scene3_point.json (BinOutput/Scene/Trans)
|
||||
|
||||
textmaps contain the names of the areas
|
||||
|
||||
if a world area has an 'AreaType' of 'LEVEL_1', it has the following properties:
|
||||
- there is not an 'AreaID2' field
|
||||
- there is an 'elementType' field
|
||||
- this is a PRIMARY region
|
||||
|
||||
if a world area has an 'AreaType' of 'LEVEL_2', it has the following properties:
|
||||
- there is not an 'elementType' field
|
||||
- the 'AreaID1' field is inherited from its parent area
|
||||
- this is a SECONDARY region
|
||||
|
||||
the textmap hash is of the secondary region's name, unless it's a primary region
|
||||
Submodule
+1
Submodule docs/wiki added at 36d465c912
@@ -0,0 +1,3 @@
|
||||
#/bin/sh
|
||||
|
||||
java -jar /app/grasscutter.jar
|
||||
@@ -0,0 +1,6 @@
|
||||
org.gradle.jvmargs=-Xmx8G
|
||||
|
||||
netty_version=4.1.111.Final
|
||||
lombok_version=1.18.34
|
||||
|
||||
# spikehd was here :)
|
||||
Vendored
BIN
Binary file not shown.
+1
-1
@@ -1,5 +1,5 @@
|
||||
distributionBase=GRADLE_USER_HOME
|
||||
distributionPath=wrapper/dists
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
|
||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
|
||||
zipStoreBase=GRADLE_USER_HOME
|
||||
zipStorePath=wrapper/dists
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env sh
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# Copyright 2015 the original author or authors.
|
||||
# Copyright © 2015-2021 the original authors.
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
@@ -17,78 +17,113 @@
|
||||
#
|
||||
|
||||
##############################################################################
|
||||
##
|
||||
## Gradle start up script for UN*X
|
||||
##
|
||||
#
|
||||
# Gradle start up script for POSIX generated by Gradle.
|
||||
#
|
||||
# Important for running:
|
||||
#
|
||||
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
|
||||
# noncompliant, but you have some other compliant shell such as ksh or
|
||||
# bash, then to run this script, type that shell name before the whole
|
||||
# command line, like:
|
||||
#
|
||||
# ksh Gradle
|
||||
#
|
||||
# Busybox and similar reduced shells will NOT work, because this script
|
||||
# requires all of these POSIX shell features:
|
||||
# * functions;
|
||||
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
|
||||
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
|
||||
# * compound commands having a testable exit status, especially «case»;
|
||||
# * various built-in commands including «command», «set», and «ulimit».
|
||||
#
|
||||
# Important for patching:
|
||||
#
|
||||
# (2) This script targets any POSIX shell, so it avoids extensions provided
|
||||
# by Bash, Ksh, etc; in particular arrays are avoided.
|
||||
#
|
||||
# The "traditional" practice of packing multiple parameters into a
|
||||
# space-separated string is a well documented source of bugs and security
|
||||
# problems, so this is (mostly) avoided, by progressively accumulating
|
||||
# options in "$@", and eventually passing that to Java.
|
||||
#
|
||||
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
|
||||
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
|
||||
# see the in-line comments for details.
|
||||
#
|
||||
# There are tweaks for specific operating systems such as AIX, CygWin,
|
||||
# Darwin, MinGW, and NonStop.
|
||||
#
|
||||
# (3) This script is generated from the Groovy template
|
||||
# https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
|
||||
# within the Gradle project.
|
||||
#
|
||||
# You can find Gradle at https://github.com/gradle/gradle/.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
# Attempt to set APP_HOME
|
||||
|
||||
# Resolve links: $0 may be a link
|
||||
PRG="$0"
|
||||
# Need this for relative symlinks.
|
||||
while [ -h "$PRG" ] ; do
|
||||
ls=`ls -ld "$PRG"`
|
||||
link=`expr "$ls" : '.*-> \(.*\)$'`
|
||||
if expr "$link" : '/.*' > /dev/null; then
|
||||
PRG="$link"
|
||||
else
|
||||
PRG=`dirname "$PRG"`"/$link"
|
||||
fi
|
||||
app_path=$0
|
||||
|
||||
# Need this for daisy-chained symlinks.
|
||||
while
|
||||
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
|
||||
[ -h "$app_path" ]
|
||||
do
|
||||
ls=$( ls -ld "$app_path" )
|
||||
link=${ls#*' -> '}
|
||||
case $link in #(
|
||||
/*) app_path=$link ;; #(
|
||||
*) app_path=$APP_HOME$link ;;
|
||||
esac
|
||||
done
|
||||
SAVED="`pwd`"
|
||||
cd "`dirname \"$PRG\"`/" >/dev/null
|
||||
APP_HOME="`pwd -P`"
|
||||
cd "$SAVED" >/dev/null
|
||||
|
||||
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
|
||||
|
||||
APP_NAME="Gradle"
|
||||
APP_BASE_NAME=`basename "$0"`
|
||||
APP_BASE_NAME=${0##*/}
|
||||
|
||||
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
|
||||
|
||||
# Use the maximum available, or set MAX_FD != -1 to use that value.
|
||||
MAX_FD="maximum"
|
||||
MAX_FD=maximum
|
||||
|
||||
warn () {
|
||||
echo "$*"
|
||||
}
|
||||
} >&2
|
||||
|
||||
die () {
|
||||
echo
|
||||
echo "$*"
|
||||
echo
|
||||
exit 1
|
||||
}
|
||||
} >&2
|
||||
|
||||
# OS specific support (must be 'true' or 'false').
|
||||
cygwin=false
|
||||
msys=false
|
||||
darwin=false
|
||||
nonstop=false
|
||||
case "`uname`" in
|
||||
CYGWIN* )
|
||||
cygwin=true
|
||||
;;
|
||||
Darwin* )
|
||||
darwin=true
|
||||
;;
|
||||
MINGW* )
|
||||
msys=true
|
||||
;;
|
||||
NONSTOP* )
|
||||
nonstop=true
|
||||
;;
|
||||
case "$( uname )" in #(
|
||||
CYGWIN* ) cygwin=true ;; #(
|
||||
Darwin* ) darwin=true ;; #(
|
||||
MSYS* | MINGW* ) msys=true ;; #(
|
||||
NONSTOP* ) nonstop=true ;;
|
||||
esac
|
||||
|
||||
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
|
||||
|
||||
|
||||
# Determine the Java command to use to start the JVM.
|
||||
if [ -n "$JAVA_HOME" ] ; then
|
||||
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
|
||||
# IBM's JDK on AIX uses strange locations for the executables
|
||||
JAVACMD="$JAVA_HOME/jre/sh/java"
|
||||
JAVACMD=$JAVA_HOME/jre/sh/java
|
||||
else
|
||||
JAVACMD="$JAVA_HOME/bin/java"
|
||||
JAVACMD=$JAVA_HOME/bin/java
|
||||
fi
|
||||
if [ ! -x "$JAVACMD" ] ; then
|
||||
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
|
||||
@@ -97,7 +132,7 @@ Please set the JAVA_HOME variable in your environment to match the
|
||||
location of your Java installation."
|
||||
fi
|
||||
else
|
||||
JAVACMD="java"
|
||||
JAVACMD=java
|
||||
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
|
||||
Please set the JAVA_HOME variable in your environment to match the
|
||||
@@ -105,84 +140,95 @@ location of your Java installation."
|
||||
fi
|
||||
|
||||
# Increase the maximum file descriptors if we can.
|
||||
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
|
||||
MAX_FD_LIMIT=`ulimit -H -n`
|
||||
if [ $? -eq 0 ] ; then
|
||||
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
|
||||
MAX_FD="$MAX_FD_LIMIT"
|
||||
fi
|
||||
ulimit -n $MAX_FD
|
||||
if [ $? -ne 0 ] ; then
|
||||
warn "Could not set maximum file descriptor limit: $MAX_FD"
|
||||
fi
|
||||
else
|
||||
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
|
||||
fi
|
||||
fi
|
||||
|
||||
# For Darwin, add options to specify how the application appears in the dock
|
||||
if $darwin; then
|
||||
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
|
||||
fi
|
||||
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
|
||||
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
|
||||
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
|
||||
JAVACMD=`cygpath --unix "$JAVACMD"`
|
||||
|
||||
# We build the pattern for arguments to be converted via cygpath
|
||||
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
|
||||
SEP=""
|
||||
for dir in $ROOTDIRSRAW ; do
|
||||
ROOTDIRS="$ROOTDIRS$SEP$dir"
|
||||
SEP="|"
|
||||
done
|
||||
OURCYGPATTERN="(^($ROOTDIRS))"
|
||||
# Add a user-defined pattern to the cygpath arguments
|
||||
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
|
||||
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
|
||||
fi
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
i=0
|
||||
for arg in "$@" ; do
|
||||
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
|
||||
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
|
||||
|
||||
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
|
||||
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
|
||||
else
|
||||
eval `echo args$i`="\"$arg\""
|
||||
fi
|
||||
i=$((i+1))
|
||||
done
|
||||
case $i in
|
||||
(0) set -- ;;
|
||||
(1) set -- "$args0" ;;
|
||||
(2) set -- "$args0" "$args1" ;;
|
||||
(3) set -- "$args0" "$args1" "$args2" ;;
|
||||
(4) set -- "$args0" "$args1" "$args2" "$args3" ;;
|
||||
(5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
|
||||
(6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
|
||||
(7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
|
||||
(8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
|
||||
(9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
|
||||
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
|
||||
case $MAX_FD in #(
|
||||
max*)
|
||||
MAX_FD=$( ulimit -H -n ) ||
|
||||
warn "Could not query maximum file descriptor limit"
|
||||
esac
|
||||
case $MAX_FD in #(
|
||||
'' | soft) :;; #(
|
||||
*)
|
||||
ulimit -n "$MAX_FD" ||
|
||||
warn "Could not set maximum file descriptor limit to $MAX_FD"
|
||||
esac
|
||||
fi
|
||||
|
||||
# Escape application args
|
||||
save () {
|
||||
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
|
||||
echo " "
|
||||
}
|
||||
APP_ARGS=$(save "$@")
|
||||
# Collect all arguments for the java command, stacking in reverse order:
|
||||
# * args from the command line
|
||||
# * the main class name
|
||||
# * -classpath
|
||||
# * -D...appname settings
|
||||
# * --module-path (only if needed)
|
||||
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
|
||||
|
||||
# Collect all arguments for the java command, following the shell quoting and substitution rules
|
||||
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
|
||||
# For Cygwin or MSYS, switch paths to Windows format before running java
|
||||
if "$cygwin" || "$msys" ; then
|
||||
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
|
||||
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
|
||||
|
||||
# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
|
||||
if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
|
||||
cd "$(dirname "$0")"
|
||||
JAVACMD=$( cygpath --unix "$JAVACMD" )
|
||||
|
||||
# Now convert the arguments - kludge to limit ourselves to /bin/sh
|
||||
for arg do
|
||||
if
|
||||
case $arg in #(
|
||||
-*) false ;; # don't mess with options #(
|
||||
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
|
||||
[ -e "$t" ] ;; #(
|
||||
*) false ;;
|
||||
esac
|
||||
then
|
||||
arg=$( cygpath --path --ignore --mixed "$arg" )
|
||||
fi
|
||||
# Roll the args list around exactly as many times as the number of
|
||||
# args, so each arg winds up back in the position where it started, but
|
||||
# possibly modified.
|
||||
#
|
||||
# NB: a `for` loop captures its iteration list before it begins, so
|
||||
# changing the positional parameters here affects neither the number of
|
||||
# iterations, nor the values presented in `arg`.
|
||||
shift # remove old arg
|
||||
set -- "$@" "$arg" # push replacement arg
|
||||
done
|
||||
fi
|
||||
|
||||
# Collect all arguments for the java command;
|
||||
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
|
||||
# shell script including quotes and variable substitutions, so put them in
|
||||
# double quotes to make sure that they get re-expanded; and
|
||||
# * put everything else in single quotes, so that it's not re-expanded.
|
||||
|
||||
set -- \
|
||||
"-Dorg.gradle.appname=$APP_BASE_NAME" \
|
||||
-classpath "$CLASSPATH" \
|
||||
org.gradle.wrapper.GradleWrapperMain \
|
||||
"$@"
|
||||
|
||||
# Use "xargs" to parse quoted args.
|
||||
#
|
||||
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
|
||||
#
|
||||
# In Bash we could simply go:
|
||||
#
|
||||
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
|
||||
# set -- "${ARGS[@]}" "$@"
|
||||
#
|
||||
# but POSIX shell has neither arrays nor command substitution, so instead we
|
||||
# post-process each arg (as a line of input to sed) to backslash-escape any
|
||||
# character that might be a shell metacharacter, then use eval to reverse
|
||||
# that process (while maintaining the separation between arguments), and wrap
|
||||
# the whole thing up as a single "set" statement.
|
||||
#
|
||||
# This will of course break if any of these variables contains a newline or
|
||||
# an unmatched quote.
|
||||
#
|
||||
|
||||
eval "set -- $(
|
||||
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
|
||||
xargs -n1 |
|
||||
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
|
||||
tr '\n' ' '
|
||||
)" '"$@"'
|
||||
|
||||
exec "$JAVACMD" "$@"
|
||||
|
||||
Vendored
+8
-19
@@ -29,15 +29,18 @@ if "%DIRNAME%" == "" set DIRNAME=.
|
||||
set APP_BASE_NAME=%~n0
|
||||
set APP_HOME=%DIRNAME%
|
||||
|
||||
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
|
||||
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
|
||||
|
||||
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
|
||||
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
|
||||
set DEFAULT_JVM_OPTS="-Xmx4G" "-Xms64m"
|
||||
|
||||
@rem Find java.exe
|
||||
if defined JAVA_HOME goto findJavaFromJavaHome
|
||||
|
||||
set JAVA_EXE=java.exe
|
||||
%JAVA_EXE% -version >NUL 2>&1
|
||||
if "%ERRORLEVEL%" == "0" goto init
|
||||
if "%ERRORLEVEL%" == "0" goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
|
||||
@@ -51,7 +54,7 @@ goto fail
|
||||
set JAVA_HOME=%JAVA_HOME:"=%
|
||||
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
|
||||
|
||||
if exist "%JAVA_EXE%" goto init
|
||||
if exist "%JAVA_EXE%" goto execute
|
||||
|
||||
echo.
|
||||
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
|
||||
@@ -61,28 +64,14 @@ echo location of your Java installation.
|
||||
|
||||
goto fail
|
||||
|
||||
:init
|
||||
@rem Get command-line arguments, handling Windows variants
|
||||
|
||||
if not "%OS%" == "Windows_NT" goto win9xME_args
|
||||
|
||||
:win9xME_args
|
||||
@rem Slurp the command line arguments.
|
||||
set CMD_LINE_ARGS=
|
||||
set _SKIP=2
|
||||
|
||||
:win9xME_args_slurp
|
||||
if "x%~1" == "x" goto execute
|
||||
|
||||
set CMD_LINE_ARGS=%*
|
||||
|
||||
:execute
|
||||
@rem Setup the command line
|
||||
|
||||
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
|
||||
|
||||
|
||||
@rem Execute Gradle
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
|
||||
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
|
||||
|
||||
:end
|
||||
@rem End local scope for the variables with windows NT shell
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
+66
-61
@@ -1,63 +1,68 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"title": "JSON schema for a Grasscutter Plugin",
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"definitions": {
|
||||
"plugin-name": {
|
||||
"type": "string",
|
||||
"pattern": "^[A-Za-z\\d_.-]+$"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"description",
|
||||
"mainClass"
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"description": "The unique name of plugin.",
|
||||
"$ref": "#/definitions/plugin-name"
|
||||
},
|
||||
"mainClass": {
|
||||
"description": "The plugin's initial class file.",
|
||||
"type": "string",
|
||||
"pattern": "^(?!org\\.bukkit\\.)([a-zA-Z_$][a-zA-Z\\d_$]*\\.)*[a-zA-Z_$][a-zA-Z\\d_$]*$"
|
||||
},
|
||||
"version": {
|
||||
"description": "A plugin revision identifier.",
|
||||
"type": [
|
||||
"string",
|
||||
"number"
|
||||
]
|
||||
},
|
||||
"description": {
|
||||
"description": "Human readable plugin summary.",
|
||||
"type": "string"
|
||||
},
|
||||
"author": {
|
||||
"description": "The plugin author.",
|
||||
"type": "string"
|
||||
},
|
||||
"authors": {
|
||||
"description": "The plugin contributors.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"website": {
|
||||
"title": "Website",
|
||||
"description": "The URL to the plugin's site",
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
},
|
||||
"loadAfter": {
|
||||
"description": "Plugins to load before this plugin.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
"$schema": "http://json-schema.org/draft-07/schema#",
|
||||
"title": "JSON schema for a Grasscutter Plugin",
|
||||
"type": "object",
|
||||
"additionalProperties": true,
|
||||
"definitions": {
|
||||
"plugin-name": {
|
||||
"type": "string",
|
||||
"pattern": "^[A-Za-z\\d_.-]+$"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"description",
|
||||
"mainClass",
|
||||
"api"
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"description": "The unique name of plugin.",
|
||||
"$ref": "#/definitions/plugin-name"
|
||||
},
|
||||
"mainClass": {
|
||||
"description": "The plugin's initial class file.",
|
||||
"type": "string",
|
||||
"pattern": "^(?!org\\.bukkit\\.)([a-zA-Z_$][a-zA-Z\\d_$]*\\.)*[a-zA-Z_$][a-zA-Z\\d_$]*$"
|
||||
},
|
||||
"version": {
|
||||
"description": "A plugin revision identifier.",
|
||||
"type": [
|
||||
"string",
|
||||
"number"
|
||||
]
|
||||
},
|
||||
"api": {
|
||||
"description": "The API revision the plugin is using.",
|
||||
"type": "number"
|
||||
},
|
||||
"description": {
|
||||
"description": "Human readable plugin summary.",
|
||||
"type": "string"
|
||||
},
|
||||
"author": {
|
||||
"description": "The plugin author.",
|
||||
"type": "string"
|
||||
},
|
||||
"authors": {
|
||||
"description": "The plugin contributors.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"website": {
|
||||
"title": "Website",
|
||||
"description": "The URL to the plugin's site",
|
||||
"type": "string",
|
||||
"format": "uri"
|
||||
},
|
||||
"loadAfter": {
|
||||
"description": "Plugins to load before this plugin.",
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,7 +4,7 @@ import subprocess
|
||||
|
||||
UPSTREAM = 'https://github.com/Grasscutters/Grasscutter.git'
|
||||
RATCHET = 'LintRatchet'
|
||||
RATCHET_FALLBACK = '8e3deb9'
|
||||
RATCHET_FALLBACK = 'c517b8a2c95473811eb07e12e73c4a69e59fbbdc'
|
||||
|
||||
|
||||
re_leading_whitespace = re.compile(r'^[ \t]+', re.MULTILINE) # Replace with \1.replace('\t', ' ')
|
||||
@@ -53,7 +53,7 @@ def format_file(filename: str) -> bool:
|
||||
|
||||
|
||||
def main():
|
||||
filelist = [f for f in get_changed_filelist() if f.endswith('.java')]
|
||||
filelist = [f for f in get_changed_filelist() if f.endswith('.java') and not f.startswith('src/generated')]
|
||||
replaced = 0
|
||||
not_found = 0
|
||||
if not filelist:
|
||||
@@ -0,0 +1,4 @@
|
||||
@echo off
|
||||
|
||||
call ..\gradlew clean
|
||||
pause
|
||||
@@ -0,0 +1,4 @@
|
||||
@echo off
|
||||
|
||||
call ..\gradlew jar
|
||||
pause
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Grasscutter install script for linux
|
||||
# Grasscutter install script for GNU/Linux
|
||||
# Made by TurtleIdiot
|
||||
|
||||
# Stops the installer if any command has a non-zero exit status
|
||||
@@ -0,0 +1,220 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Grasscutter install script for GNU/Linux - Simpler version
|
||||
# This installer doesn't ask you to install dependencies, you have to install them manually
|
||||
# Made by TurtleIdiot and modified by syktyvkar (and then again modified by Blue)
|
||||
|
||||
# Stops the installer if any command has a non-zero exit status
|
||||
set -e
|
||||
|
||||
# Checks for root
|
||||
if [ $EUID != 0 ]; then
|
||||
echo "Please run the installer as root (sudo)!"
|
||||
exit
|
||||
fi
|
||||
|
||||
is_command() {
|
||||
# Checks if given command is available
|
||||
local check_command="$1"
|
||||
command -v "${check_command}" > /dev/null 2>&1
|
||||
}
|
||||
|
||||
# IP validation
|
||||
valid_ip() {
|
||||
local ip=$1
|
||||
local stat=1
|
||||
|
||||
if [[ $ip =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
|
||||
OIFS=$IFS
|
||||
IFS="."
|
||||
ip=($ip)
|
||||
IFS=$OIFS
|
||||
[[ ${ip[0]} -le 255 && ${ip[1]} -le 255 \
|
||||
&& ${ip[2]} -le 255 && ${ip[3]} -le 255 ]]
|
||||
stat=$?
|
||||
fi
|
||||
return $stat
|
||||
}
|
||||
echo "#################################"
|
||||
echo ""
|
||||
echo "This script will take for granted that you have all dependencies installed (mongodb, openjdk-17-jre/jre17-openjdk, wget, openssl, unzip, git, curl, base-devel), in fact, this script is recommended to update your current server installation, and it should run from the same folder as grasscutter.jar"
|
||||
echo "#################################"
|
||||
echo ""
|
||||
echo "If you are using version > 2.8 of the client, make sure to use the patched metadata if you don't use Cultivation."
|
||||
echo "Search for METADATA here: https://discord.gg/grasscutter."
|
||||
echo ""
|
||||
echo "#################################"
|
||||
echo "You can find plugins here: https://discord.com/channels/965284035985305680/970830969919664218"
|
||||
echo ""
|
||||
echo "Grasscutter will be installed to script's running directory"
|
||||
echo "Do you wish to proceed and install Grasscutter?"
|
||||
select yn in "Yes" "No" ; do
|
||||
case $yn in
|
||||
Yes ) break;;
|
||||
No )
|
||||
echo "Aborting..."
|
||||
exit;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -d "./resources" ]
|
||||
then
|
||||
echo "It's recommended to remove resources folder"
|
||||
echo "Remove resources folder?"
|
||||
select yn in "Yes" "No" ; do
|
||||
case $yn in
|
||||
Yes )
|
||||
rm -rf resources
|
||||
break;;
|
||||
No )
|
||||
echo "Aborting..."
|
||||
exit;;
|
||||
esac
|
||||
done
|
||||
echo "You may need to remove data folder and config.json to apply some updates"
|
||||
echo "#################################"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
# Allows choice between stable and dev branch
|
||||
echo "Please select the branch you wish to install"
|
||||
echo -e "!!NOTE!!: stable is the recommended branch.\nDo *NOT* use development unless you have a reason to and know what you're doing"
|
||||
select branch in "stable" "development" ; do
|
||||
case $branch in
|
||||
stable )
|
||||
break;;
|
||||
development )
|
||||
break;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo -e "Using $branch branch for installing server \n"
|
||||
|
||||
# Prompt IP address for config.json and for generating new keystore.p12 file
|
||||
echo "Please enter the IP address that will be used to connect to the server"
|
||||
echo "This can be a local or a public IP address"
|
||||
echo "This IP address will be used to generate SSL certificates, so it is important it is correct!"
|
||||
|
||||
while : ; do
|
||||
read -p "Enter server IP: " SERVER_IP
|
||||
if valid_ip $SERVER_IP; then
|
||||
break;
|
||||
else
|
||||
echo "Invalid IP address. Try again."
|
||||
fi
|
||||
done
|
||||
|
||||
echo "Beginning Grasscutter installation..."
|
||||
|
||||
|
||||
# Download resources
|
||||
echo "Downloading Grasscutter BinOutputs..."
|
||||
git clone --single-branch https://github.com/Koko-boya/Grasscutter_Resources.git Grasscutter-bins
|
||||
mv ./Grasscutter-bins/Resources ./resources
|
||||
rm -rf Grasscutter-bins # takes ~350M of drive space after moving BinOutputs... :sob:
|
||||
|
||||
# Download and build jar
|
||||
echo "Downloading Grasscutter source code..."
|
||||
git clone --single-branch -b $branch https://github.com/Grasscutters/Grasscutter.git Grasscutter-src #change this to download a fork
|
||||
|
||||
echo "Building grasscutter.jar..."
|
||||
cd Grasscutter-src
|
||||
chmod +x ./gradlew #just in case
|
||||
./gradlew --no-daemon jar
|
||||
mv $(find -name "grasscutter*.jar" -type f) ../grasscutter.jar
|
||||
echo "Building grasscutter.jar done!"
|
||||
cd ..
|
||||
|
||||
# Generate handbook/config
|
||||
echo "Grasscutter will be started to generate data files"
|
||||
java -jar grasscutter.jar -version
|
||||
|
||||
# Replaces "127.0.0.1" with given IP
|
||||
echo "Replacing IP address in server config..."
|
||||
sed -i "s/127.0.0.1/$SERVER_IP/g" config.json
|
||||
# Generates new keystore.p12 with the server's IP address
|
||||
# This is done to prevent a "Connection Timed Out" error from appearing
|
||||
# after clicking to enter the door in the main menu/title screen
|
||||
# This issue only exists when connecting to a server *other* than localhost
|
||||
# since the default keystore.p12 has only been made for localhost
|
||||
|
||||
mkdir certs
|
||||
cd certs
|
||||
echo "Generating CA key and certificate pair..."
|
||||
openssl req -x509 -nodes -days 25202 -newkey rsa:2048 -subj "/C=GB/ST=Essex/L=London/O=Grasscutters/OU=Grasscutters/CN=$SERVER_IP" -keyout CAkey.key -out CAcert.crt
|
||||
|
||||
echo "Generating SSL key and certificate pair..."
|
||||
openssl genpkey -out ssl.key -algorithm rsa
|
||||
|
||||
# Creates a conf file in order to generate a csr
|
||||
cat > csr.conf <<EOF
|
||||
[ req ]
|
||||
default_bits = 2048
|
||||
prompt = no
|
||||
default_md = sha256
|
||||
req_extensions = req_ext
|
||||
distinguished_name = dn
|
||||
|
||||
[ dn ]
|
||||
C = GB
|
||||
ST = Essex
|
||||
L = London
|
||||
O = Grasscutters
|
||||
OU = Grasscutters
|
||||
CN = $SERVER_IP
|
||||
|
||||
[ req_ext ]
|
||||
subjectAltName = @alt_names
|
||||
|
||||
[ alt_names ]
|
||||
IP.1 = $SERVER_IP
|
||||
EOF
|
||||
|
||||
# Creates csr using key and conf
|
||||
openssl req -new -key ssl.key -out ssl.csr -config csr.conf
|
||||
|
||||
# Creates conf to finalise creation of certificate
|
||||
cat > cert.conf <<EOF
|
||||
|
||||
authorityKeyIdentifier=keyid,issuer
|
||||
basicConstraints=CA:FALSE
|
||||
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, keyAgreement, dataEncipherment
|
||||
subjectAltName = @alt_names
|
||||
|
||||
[alt_names]
|
||||
IP.1 = $SERVER_IP
|
||||
|
||||
EOF
|
||||
|
||||
# Creates SSL cert
|
||||
openssl x509 -req -in ssl.csr -CA CAcert.crt -CAkey CAkey.key -CAcreateserial -out ssl.crt -days 25202 -sha256 -extfile cert.conf
|
||||
|
||||
echo "Generating keystore.p12 from key and certificate..."
|
||||
openssl pkcs12 -export -out keystore.p12 -inkey ssl.key -in ssl.crt -certfile CAcert.crt -passout pass:123456
|
||||
|
||||
cd ../
|
||||
mv ./certs/keystore.p12 ./keystore.p12
|
||||
echo "Done!"
|
||||
|
||||
# Running scripts as sudo makes all Grasscutter files to be owned by root
|
||||
# which may cause problems editing .jsons...
|
||||
if [ $SUDO_USER ]; then
|
||||
echo "Changing Grasscutter files owner to current user..."
|
||||
chown -R $SUDO_USER:$SUDO_USER ./*
|
||||
fi
|
||||
|
||||
echo "Removing unnecessary files..."
|
||||
rm -rf ./certs ./Grasscutter-src
|
||||
|
||||
echo "All done!"
|
||||
echo "-=-=-=-=-=--- !! IMPORTANT !! ---=-=-=-=-=-"
|
||||
echo "Please make sure that ports 80, 443, 8888 and 22102 are OPEN (both tcp and udp)"
|
||||
echo "In order to run the server, run the following command:"
|
||||
echo " sudo java -jar grasscutter.jar"
|
||||
echo "The GM Handbook of all supported languages will be generated automatically when you start the server for the first time."
|
||||
echo "You must run it using sudo as port 443 is a privileged port"
|
||||
echo "To play, use the IP you provided earlier ($SERVER_IP) via GrassClipper or Fiddler"
|
||||
echo ""
|
||||
|
||||
exit
|
||||
@@ -23,13 +23,14 @@ def ppprint(data):
|
||||
class JsonHelpers:
|
||||
@staticmethod
|
||||
def load(filename: str) -> dict:
|
||||
with open(filename, 'r') as file:
|
||||
with open(filename, 'r', encoding='utf-8') as file:
|
||||
return json.load(file)
|
||||
|
||||
@staticmethod
|
||||
def save(filename: str, data: dict) -> None:
|
||||
with open(filename, 'w', encoding='utf-8', newline='\n') as file:
|
||||
json.dump(data, file, ensure_ascii=False, indent=INDENT)
|
||||
file.write('\n') # json.dump doesn't terminate last line
|
||||
|
||||
@staticmethod
|
||||
def flatten(data: dict, prefix='') -> dict:
|
||||
@@ -90,6 +91,7 @@ class JsonHelpers:
|
||||
class LanguageManager:
|
||||
TRANSLATION_KEY = re.compile(r'[Tt]ranslate.*"(\w+\.[\w\.]+)"')
|
||||
POTENTIAL_KEY = re.compile(r'"(\w+\.[\w\.]+)"')
|
||||
COMMAND_LABEL = re.compile(r'@Command\s*\([\W\w]*?label\s*=\s*"(\w+)"', re.MULTILINE) # [\W\w] is a cheeky way to match everything including \n
|
||||
|
||||
def __init__(self):
|
||||
self.load_jsons()
|
||||
@@ -116,12 +118,14 @@ class LanguageManager:
|
||||
for file in files:
|
||||
if file.rpartition('.')[-1] in SOURCE_EXTENSIONS:
|
||||
filename = os.path.join(root, file)
|
||||
with open(filename, 'r') as f:
|
||||
with open(filename, 'r', encoding='utf-8') as f:
|
||||
data = f.read() # Loads in entire file at once
|
||||
for k in self.TRANSLATION_KEY.findall(data):
|
||||
used.add(k)
|
||||
for k in self.POTENTIAL_KEY.findall(data):
|
||||
potential.add(k)
|
||||
for label in self.COMMAND_LABEL.findall(data):
|
||||
used.add(f'commands.{label}.description')
|
||||
return used | (potential & expected_keys)
|
||||
|
||||
def _lint_report_language(self, lang: str, keys: set, flattened: dict, primary_language_flattened: dict) -> None:
|
||||
+155
-155
@@ -1,155 +1,155 @@
|
||||
##
|
||||
#
|
||||
# Copyright (C) 2002-2022 MlgmXyysd All Rights Reserved.
|
||||
#
|
||||
##
|
||||
|
||||
##
|
||||
#
|
||||
# Animation Company script for mitmproxy
|
||||
#
|
||||
# https://github.com/MlgmXyysd/
|
||||
#
|
||||
# *Original fiddler script from https://github.lunatic.moe/fiddlerscript
|
||||
#
|
||||
# Environment requirement:
|
||||
# - mitmdump from mitmproxy
|
||||
#
|
||||
# @author MlgmXyysd
|
||||
# @version 1.1
|
||||
#
|
||||
##
|
||||
|
||||
import collections
|
||||
import random
|
||||
from mitmproxy import http, connection, ctx, tls
|
||||
from abc import ABC, abstractmethod
|
||||
from enum import Enum
|
||||
from mitmproxy.utils import human
|
||||
from proxy_config import USE_SSL
|
||||
from proxy_config import REMOTE_HOST
|
||||
from proxy_config import REMOTE_PORT
|
||||
|
||||
class MlgmXyysd_Animation_Company_Proxy:
|
||||
|
||||
LIST_DOMAINS = [
|
||||
"api-os-takumi.mihoyo.com",
|
||||
"hk4e-api-os-static.mihoyo.com",
|
||||
"hk4e-sdk-os.mihoyo.com",
|
||||
"dispatchosglobal.yuanshen.com",
|
||||
"osusadispatch.yuanshen.com",
|
||||
"account.mihoyo.com",
|
||||
"log-upload-os.mihoyo.com",
|
||||
"dispatchcntest.yuanshen.com",
|
||||
"devlog-upload.mihoyo.com",
|
||||
"webstatic.mihoyo.com",
|
||||
"log-upload.mihoyo.com",
|
||||
"hk4e-sdk.mihoyo.com",
|
||||
"api-beta-sdk.mihoyo.com",
|
||||
"api-beta-sdk-os.mihoyo.com",
|
||||
"cnbeta01dispatch.yuanshen.com",
|
||||
"dispatchcnglobal.yuanshen.com",
|
||||
"cnbeta02dispatch.yuanshen.com",
|
||||
"sdk-os-static.mihoyo.com",
|
||||
"webstatic-sea.mihoyo.com",
|
||||
"webstatic-sea.hoyoverse.com",
|
||||
"hk4e-sdk-os-static.hoyoverse.com",
|
||||
"sdk-os-static.hoyoverse.com",
|
||||
"api-account-os.hoyoverse.com",
|
||||
"hk4e-sdk-os.hoyoverse.com",
|
||||
"overseauspider.yuanshen.com",
|
||||
"gameapi-account.mihoyo.com",
|
||||
"minor-api.mihoyo.com",
|
||||
"public-data-api.mihoyo.com",
|
||||
"uspider.yuanshen.com",
|
||||
"sdk-static.mihoyo.com",
|
||||
"abtest-api-data-sg.hoyoverse.com",
|
||||
"log-upload-os.hoyoverse.com"
|
||||
]
|
||||
|
||||
def request(self, flow: http.HTTPFlow) -> None:
|
||||
if flow.request.host in self.LIST_DOMAINS:
|
||||
if USE_SSL:
|
||||
flow.request.scheme = "https"
|
||||
else:
|
||||
flow.request.scheme = "http"
|
||||
flow.request.host = REMOTE_HOST
|
||||
flow.request.port = REMOTE_PORT
|
||||
|
||||
class InterceptionResult(Enum):
|
||||
SUCCESS = 1
|
||||
FAILURE = 2
|
||||
SKIPPED = 3
|
||||
|
||||
|
||||
class TlsStrategy(ABC):
|
||||
def __init__(self):
|
||||
self.history = collections.defaultdict(lambda: collections.deque(maxlen=200))
|
||||
|
||||
@abstractmethod
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
raise NotImplementedError()
|
||||
|
||||
def record_success(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.SUCCESS)
|
||||
|
||||
def record_failure(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.FAILURE)
|
||||
|
||||
def record_skipped(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.SKIPPED)
|
||||
|
||||
|
||||
class ConservativeStrategy(TlsStrategy):
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
return InterceptionResult.FAILURE not in self.history[server_address]
|
||||
|
||||
|
||||
class ProbabilisticStrategy(TlsStrategy):
|
||||
def __init__(self, p: float):
|
||||
self.p = p
|
||||
super().__init__()
|
||||
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
return random.uniform(0, 1) < self.p
|
||||
|
||||
|
||||
class MaybeTls:
|
||||
strategy: TlsStrategy
|
||||
|
||||
def load(self, l):
|
||||
l.add_option(
|
||||
"tls_strategy", int, 0,
|
||||
"TLS passthrough strategy. If set to 0, connections will be passed through after the first unsuccessful "
|
||||
"handshake. If set to 0 < p <= 100, connections with be passed through with probability p.",
|
||||
)
|
||||
|
||||
def configure(self, updated):
|
||||
if "tls_strategy" not in updated:
|
||||
return
|
||||
if ctx.options.tls_strategy > 0:
|
||||
self.strategy = ProbabilisticStrategy(ctx.options.tls_strategy / 100)
|
||||
else:
|
||||
self.strategy = ConservativeStrategy()
|
||||
|
||||
def tls_clienthello(self, data: tls.ClientHelloData):
|
||||
server_address = data.context.server.peername
|
||||
if not self.strategy.should_intercept(server_address):
|
||||
ctx.log(f"TLS passthrough: {human.format_address(server_address)}.")
|
||||
data.ignore_connection = True
|
||||
self.strategy.record_skipped(server_address)
|
||||
|
||||
def tls_established_client(self, data: tls.TlsData):
|
||||
server_address = data.context.server.peername
|
||||
ctx.log(f"TLS handshake successful: {human.format_address(server_address)}")
|
||||
self.strategy.record_success(server_address)
|
||||
|
||||
def tls_failed_client(self, data: tls.TlsData):
|
||||
server_address = data.context.server.peername
|
||||
ctx.log(f"TLS handshake failed: {human.format_address(server_address)}")
|
||||
self.strategy.record_failure(server_address)
|
||||
|
||||
addons = [
|
||||
MlgmXyysd_Animation_Company_Proxy(),
|
||||
MaybeTls()
|
||||
]
|
||||
##
|
||||
#
|
||||
# Copyright (C) 2002-2022 MlgmXyysd All Rights Reserved.
|
||||
#
|
||||
##
|
||||
|
||||
##
|
||||
#
|
||||
# Animation Company script for mitmproxy
|
||||
#
|
||||
# https://github.com/MlgmXyysd/
|
||||
#
|
||||
# *Original fiddler script from https://github.lunatic.moe/fiddlerscript
|
||||
#
|
||||
# Environment requirement:
|
||||
# - mitmdump from mitmproxy
|
||||
#
|
||||
# @author MlgmXyysd
|
||||
# @version 1.1
|
||||
#
|
||||
##
|
||||
|
||||
import collections
|
||||
import random
|
||||
from mitmproxy import http, connection, ctx, tls
|
||||
from abc import ABC, abstractmethod
|
||||
from enum import Enum
|
||||
from mitmproxy.utils import human
|
||||
from proxy_config import USE_SSL
|
||||
from proxy_config import REMOTE_HOST
|
||||
from proxy_config import REMOTE_PORT
|
||||
|
||||
class MlgmXyysd_Animation_Company_Proxy:
|
||||
|
||||
LIST_DOMAINS = [
|
||||
"api-os-takumi.mihoyo.com",
|
||||
"hk4e-api-os-static.mihoyo.com",
|
||||
"hk4e-sdk-os.mihoyo.com",
|
||||
"dispatchosglobal.yuanshen.com",
|
||||
"osusadispatch.yuanshen.com",
|
||||
"account.mihoyo.com",
|
||||
"log-upload-os.mihoyo.com",
|
||||
"dispatchcntest.yuanshen.com",
|
||||
"devlog-upload.mihoyo.com",
|
||||
"webstatic.mihoyo.com",
|
||||
"log-upload.mihoyo.com",
|
||||
"hk4e-sdk.mihoyo.com",
|
||||
"api-beta-sdk.mihoyo.com",
|
||||
"api-beta-sdk-os.mihoyo.com",
|
||||
"cnbeta01dispatch.yuanshen.com",
|
||||
"dispatchcnglobal.yuanshen.com",
|
||||
"cnbeta02dispatch.yuanshen.com",
|
||||
"sdk-os-static.mihoyo.com",
|
||||
"webstatic-sea.mihoyo.com",
|
||||
"webstatic-sea.hoyoverse.com",
|
||||
"hk4e-sdk-os-static.hoyoverse.com",
|
||||
"sdk-os-static.hoyoverse.com",
|
||||
"api-account-os.hoyoverse.com",
|
||||
"hk4e-sdk-os.hoyoverse.com",
|
||||
"overseauspider.yuanshen.com",
|
||||
"gameapi-account.mihoyo.com",
|
||||
"minor-api.mihoyo.com",
|
||||
"public-data-api.mihoyo.com",
|
||||
"uspider.yuanshen.com",
|
||||
"sdk-static.mihoyo.com",
|
||||
"abtest-api-data-sg.hoyoverse.com",
|
||||
"log-upload-os.hoyoverse.com"
|
||||
]
|
||||
|
||||
def request(self, flow: http.HTTPFlow) -> None:
|
||||
if flow.request.pretty_host in self.LIST_DOMAINS:
|
||||
if USE_SSL:
|
||||
flow.request.scheme = "https"
|
||||
else:
|
||||
flow.request.scheme = "http"
|
||||
flow.request.host = REMOTE_HOST
|
||||
flow.request.port = REMOTE_PORT
|
||||
|
||||
class InterceptionResult(Enum):
|
||||
SUCCESS = 1
|
||||
FAILURE = 2
|
||||
SKIPPED = 3
|
||||
|
||||
|
||||
class TlsStrategy(ABC):
|
||||
def __init__(self):
|
||||
self.history = collections.defaultdict(lambda: collections.deque(maxlen=200))
|
||||
|
||||
@abstractmethod
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
raise NotImplementedError()
|
||||
|
||||
def record_success(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.SUCCESS)
|
||||
|
||||
def record_failure(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.FAILURE)
|
||||
|
||||
def record_skipped(self, server_address):
|
||||
self.history[server_address].append(InterceptionResult.SKIPPED)
|
||||
|
||||
|
||||
class ConservativeStrategy(TlsStrategy):
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
return InterceptionResult.FAILURE not in self.history[server_address]
|
||||
|
||||
|
||||
class ProbabilisticStrategy(TlsStrategy):
|
||||
def __init__(self, p: float):
|
||||
self.p = p
|
||||
super().__init__()
|
||||
|
||||
def should_intercept(self, server_address: connection.Address) -> bool:
|
||||
return random.uniform(0, 1) < self.p
|
||||
|
||||
|
||||
class MaybeTls:
|
||||
strategy: TlsStrategy
|
||||
|
||||
def load(self, l):
|
||||
l.add_option(
|
||||
"tls_strategy", int, 0,
|
||||
"TLS passthrough strategy. If set to 0, connections will be passed through after the first unsuccessful "
|
||||
"handshake. If set to 0 < p <= 100, connections with be passed through with probability p.",
|
||||
)
|
||||
|
||||
def configure(self, updated):
|
||||
if "tls_strategy" not in updated:
|
||||
return
|
||||
if ctx.options.tls_strategy > 0:
|
||||
self.strategy = ProbabilisticStrategy(ctx.options.tls_strategy / 100)
|
||||
else:
|
||||
self.strategy = ConservativeStrategy()
|
||||
|
||||
def tls_clienthello(self, data: tls.ClientHelloData):
|
||||
server_address = data.context.server.peername
|
||||
if not self.strategy.should_intercept(server_address):
|
||||
ctx.log(f"TLS passthrough: {human.format_address(server_address)}.")
|
||||
data.ignore_connection = True
|
||||
self.strategy.record_skipped(server_address)
|
||||
|
||||
def tls_established_client(self, data: tls.TlsData):
|
||||
server_address = data.context.server.peername
|
||||
ctx.log(f"TLS handshake successful: {human.format_address(server_address)}")
|
||||
self.strategy.record_success(server_address)
|
||||
|
||||
def tls_failed_client(self, data: tls.TlsData):
|
||||
server_address = data.context.server.peername
|
||||
ctx.log(f"TLS handshake failed: {human.format_address(server_address)}")
|
||||
self.strategy.record_failure(server_address)
|
||||
|
||||
addons = [
|
||||
MlgmXyysd_Animation_Company_Proxy(),
|
||||
MaybeTls()
|
||||
]
|
||||
@@ -1,17 +1,17 @@
|
||||
import os
|
||||
|
||||
# This can also be replaced with another IP address.
|
||||
USE_SSL = True
|
||||
REMOTE_HOST = "localhost"
|
||||
REMOTE_PORT = 443
|
||||
|
||||
if os.getenv('MITM_REMOTE_HOST') != None:
|
||||
REMOTE_HOST = os.getenv('MITM_REMOTE_HOST')
|
||||
if os.getenv('MITM_REMOTE_PORT') != None:
|
||||
REMOTE_PORT = int(os.getenv('MITM_REMOTE_PORT'))
|
||||
if os.getenv('MITM_USE_SSL') != None:
|
||||
USE_SSL = bool(os.getenv('MITM_USE_SSL'))
|
||||
|
||||
print('MITM Remote Host: ' + REMOTE_HOST)
|
||||
print('MITM Remote Port: ' + str(REMOTE_PORT))
|
||||
print('MITM Use SSL ' + str(USE_SSL))
|
||||
import os
|
||||
|
||||
# This can also be replaced with another IP address.
|
||||
USE_SSL = True
|
||||
REMOTE_HOST = "localhost"
|
||||
REMOTE_PORT = 443
|
||||
|
||||
if os.getenv('MITM_REMOTE_HOST') != None:
|
||||
REMOTE_HOST = os.getenv('MITM_REMOTE_HOST')
|
||||
if os.getenv('MITM_REMOTE_PORT') != None:
|
||||
REMOTE_PORT = int(os.getenv('MITM_REMOTE_PORT'))
|
||||
if os.getenv('MITM_USE_SSL') != None:
|
||||
USE_SSL = bool(os.getenv('MITM_USE_SSL'))
|
||||
|
||||
print('MITM Remote Host: ' + REMOTE_HOST)
|
||||
print('MITM Remote Port: ' + str(REMOTE_PORT))
|
||||
print('MITM Use SSL ' + str(USE_SSL))
|
||||
@@ -0,0 +1,333 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public final class Ability {
|
||||
private Ability() {}
|
||||
public static void registerAllExtensions(
|
||||
com.google.protobuf.ExtensionRegistryLite registry) {
|
||||
}
|
||||
|
||||
public static void registerAllExtensions(
|
||||
com.google.protobuf.ExtensionRegistry registry) {
|
||||
registerAllExtensions(
|
||||
(com.google.protobuf.ExtensionRegistryLite) registry);
|
||||
}
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityInvocationsNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityInvocationsNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityInvokeEntryHead_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityInvokeEntryHead_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityInvokeEntry_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityInvokeEntry_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityChangeNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityChangeNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_ClientAbilityChangeNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_ClientAbilityChangeNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_EntityAbilityInvokeEntry_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_EntityAbilityInvokeEntry_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityInvocationFixedNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityInvocationFixedNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_ClientAbilityInitFinishNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_ClientAbilityInitFinishNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AbilityInvocationFailNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AbilityInvocationFailNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_ServerGlobalValueChangeNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_ServerGlobalValueChangeNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_ClientAbilitiesInitFinishCombineNotify_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\rability.proto\032\013fight.proto\032\014define.pro" +
|
||||
"to\"D\n\030AbilityInvocationsNotify\022(\n\013JJBLBL" +
|
||||
"MDPHC\030\t \003(\0132\023.AbilityInvokeEntry\"\325\001\n\026Abi" +
|
||||
"lityInvokeEntryHead\022\021\n\ttarget_id\030\r \001(\r\022 " +
|
||||
"\n\030modifier_config_local_id\030\005 \001(\005\022\027\n\017serv" +
|
||||
"er_buff_uid\030\002 \001(\r\022\036\n\026is_serverbuff_modif" +
|
||||
"ier\030\004 \001(\010\022\035\n\025instanced_modifier_id\030\003 \001(\r" +
|
||||
"\022\034\n\024instanced_ability_id\030\010 \001(\r\022\020\n\010local_" +
|
||||
"id\030\001 \001(\005\"\222\002\n\022AbilityInvokeEntry\022\024\n\014abili" +
|
||||
"ty_data\030\017 \001(\014\022%\n\004head\030\004 \001(\0132\027.AbilityInv" +
|
||||
"okeEntryHead\022\026\n\016is_ignore_auth\030\006 \001(\010\022\021\n\t" +
|
||||
"entity_id\030\013 \001(\r\022\"\n\014forward_type\030\t \001(\0162\014." +
|
||||
"ForwardType\022\023\n\013JPHBOKDMDAH\030\r \001(\r\022\027\n\017tota" +
|
||||
"l_tick_time\030\n \001(\001\022-\n\rargument_type\030\007 \001(\016" +
|
||||
"2\026.AbilityInvokeArgument\022\023\n\013HNOGKEHFLHE\030" +
|
||||
"\010 \001(\r\"]\n\023AbilityChangeNotify\0223\n\025ability_" +
|
||||
"control_block\030\t \001(\0132\024.AbilityControlBloc" +
|
||||
"k\022\021\n\tentity_id\030\014 \001(\r\"n\n\031ClientAbilityCha" +
|
||||
"ngeNotify\022(\n\013JJBLBLMDPHC\030\017 \003(\0132\023.Ability" +
|
||||
"InvokeEntry\022\024\n\014is_init_hash\030\014 \001(\010\022\021\n\tent" +
|
||||
"ity_id\030\n \001(\r\"W\n\030EntityAbilityInvokeEntry" +
|
||||
"\022(\n\013JJBLBLMDPHC\030\n \003(\0132\023.AbilityInvokeEnt" +
|
||||
"ry\022\021\n\tentity_id\030\013 \001(\r\"\232\002\n\034AbilityInvocat" +
|
||||
"ionFixedNotify\022(\n\013CNLHMFMMMOL\030\017 \001(\0132\023.Ab" +
|
||||
"ilityInvokeEntry\022(\n\013KJADOHHDHNJ\030\001 \001(\0132\023." +
|
||||
"AbilityInvokeEntry\022(\n\013FADGNFKGNOG\030\013 \001(\0132" +
|
||||
"\023.AbilityInvokeEntry\022(\n\013PEJIJNIJGOO\030\014 \001(" +
|
||||
"\0132\023.AbilityInvokeEntry\022(\n\013HBIDFELECFF\030\016 " +
|
||||
"\001(\0132\023.AbilityInvokeEntry\022(\n\013IMELONLCKII\030" +
|
||||
"\010 \001(\0132\023.AbilityInvokeEntry\"\\\n\035ClientAbil" +
|
||||
"ityInitFinishNotify\022(\n\013JJBLBLMDPHC\030\017 \003(\013" +
|
||||
"2\023.AbilityInvokeEntry\022\021\n\tentity_id\030\004 \001(\r" +
|
||||
"\"e\n\033AbilityInvocationFailNotify\022\016\n\006reaso" +
|
||||
"n\030\016 \001(\t\022#\n\006invoke\030\006 \001(\0132\023.AbilityInvokeE" +
|
||||
"ntry\022\021\n\tentity_id\030\t \001(\r\"S\n\035ServerGlobalV" +
|
||||
"alueChangeNotify\022\r\n\005value\030\r \001(\002\022\020\n\010key_h" +
|
||||
"ash\030\t \001(\r\022\021\n\tentity_id\030\001 \001(\r\"_\n&ClientAb" +
|
||||
"ilitiesInitFinishCombineNotify\0225\n\022entity" +
|
||||
"_invoke_list\030\006 \003(\0132\031.EntityAbilityInvoke" +
|
||||
"Entry*\326)\n\025AbilityInvokeArgument\022&\n\"Abili" +
|
||||
"tyInvokeArgument_ABILITY_NONE\020\000\0226\n2Abili" +
|
||||
"tyInvokeArgument_ABILITY_META_MODIFIER_C" +
|
||||
"HANGE\020\001\022F\nBAbilityInvokeArgument_ABILITY" +
|
||||
"_META_COMMAND_MODIFIER_CHANGE_REQUEST\020\002\022" +
|
||||
"=\n9AbilityInvokeArgument_ABILITY_META_SP" +
|
||||
"ECIAL_FLOAT_ARGUMENT\020\003\0225\n1AbilityInvokeA" +
|
||||
"rgument_ABILITY_META_OVERRIDE_PARAM\020\004\022;\n" +
|
||||
"7AbilityInvokeArgument_ABILITY_META_CLEA" +
|
||||
"R_OVERRIDE_PARAM\020\005\0229\n5AbilityInvokeArgum" +
|
||||
"ent_ABILITY_META_REINIT_OVERRIDEMAP\020\006\0229\n" +
|
||||
"5AbilityInvokeArgument_ABILITY_META_GLOB" +
|
||||
"AL_FLOAT_VALUE\020\007\022?\n;AbilityInvokeArgumen" +
|
||||
"t_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE\020" +
|
||||
"\010\022?\n;AbilityInvokeArgument_ABILITY_META_" +
|
||||
"ABILITY_ELEMENT_STRENGTH\020\t\022E\nAAbilityInv" +
|
||||
"okeArgument_ABILITY_META_ADD_OR_GET_ABIL" +
|
||||
"ITY_AND_TRIGGER\020\n\0228\n4AbilityInvokeArgume" +
|
||||
"nt_ABILITY_META_SET_KILLED_SETATE\020\013\022:\n6A" +
|
||||
"bilityInvokeArgument_ABILITY_META_SET_AB" +
|
||||
"ILITY_TRIGGER\020\014\0226\n2AbilityInvokeArgument" +
|
||||
"_ABILITY_META_ADD_NEW_ABILITY\020\r\0225\n1Abili" +
|
||||
"tyInvokeArgument_ABILITY_META_REMOVE_ABI" +
|
||||
"LITY\020\016\022@\n<AbilityInvokeArgument_ABILITY_" +
|
||||
"META_SET_MODIFIER_APPLY_ENTITY\020\017\022A\n=Abil" +
|
||||
"ityInvokeArgument_ABILITY_META_MODIFIER_" +
|
||||
"DURABILITY_CHANGE\020\020\022>\n:AbilityInvokeArgu" +
|
||||
"ment_ABILITY_META_ELEMENT_REACTION_VISUA" +
|
||||
"L\020\021\0229\n5AbilityInvokeArgument_ABILITY_MET" +
|
||||
"A_SET_POSE_PARAMETER\020\022\022B\n>AbilityInvokeA" +
|
||||
"rgument_ABILITY_META_UPDATE_BASE_REACTIO" +
|
||||
"N_DAMAGE\020\023\022?\n;AbilityInvokeArgument_ABIL" +
|
||||
"ITY_META_TRIGGER_ELEMENT_REACTION\020\024\022.\n*A" +
|
||||
"bilityInvokeArgument_ABILITY_META_LOSE_H" +
|
||||
"P\020\025\0229\n5AbilityInvokeArgument_ABILITY_MET" +
|
||||
"A_DURABILITY_IS_ZERO\020\026\022=\n9AbilityInvokeA" +
|
||||
"rgument_ABILITY_META_TRIGGER_ARKHE_REACT" +
|
||||
"ION\020\027\0227\n3AbilityInvokeArgument_ABILITY_M" +
|
||||
"ETA_CHANGE_NYX_VALUE\020\030\0228\n4AbilityInvokeA" +
|
||||
"rgument_ABILITY_ACTION_TRIGGER_ABILITY\0202" +
|
||||
"\0229\n5AbilityInvokeArgument_ABILITY_ACTION" +
|
||||
"_SET_CRASH_DAMAGE\0203\022/\n+AbilityInvokeArgu" +
|
||||
"ment_ABILITY_ACTION_EFFECT\0204\022/\n+AbilityI" +
|
||||
"nvokeArgument_ABILITY_ACTION_SUMMON\0205\022.\n" +
|
||||
"*AbilityInvokeArgument_ABILITY_ACTION_BL" +
|
||||
"INK\0206\0226\n2AbilityInvokeArgument_ABILITY_A" +
|
||||
"CTION_CREATE_GADGET\0207\022=\n9AbilityInvokeAr" +
|
||||
"gument_ABILITY_ACTION_APPLY_LEVEL_MODIFI" +
|
||||
"ER\0208\022;\n7AbilityInvokeArgument_ABILITY_AC" +
|
||||
"TION_GENERATE_ELEM_BALL\0209\022F\nBAbilityInvo" +
|
||||
"keArgument_ABILITY_ACTION_SET_RANDOM_OVE" +
|
||||
"RRIDE_MAP_VALUE\020:\022;\n7AbilityInvokeArgume" +
|
||||
"nt_ABILITY_ACTION_SERVER_MONSTER_LOG\020;\0224" +
|
||||
"\n0AbilityInvokeArgument_ABILITY_ACTION_C" +
|
||||
"REATE_TILE\020<\0225\n1AbilityInvokeArgument_AB" +
|
||||
"ILITY_ACTION_DESTROY_TILE\020=\0229\n5AbilityIn" +
|
||||
"vokeArgument_ABILITY_ACTION_FIRE_AFTER_I" +
|
||||
"MAGE\020>\0227\n3AbilityInvokeArgument_ABILITY_" +
|
||||
"ACTION_DEDUCT_STAMINA\020?\0223\n/AbilityInvoke" +
|
||||
"Argument_ABILITY_ACTION_HIT_EFFECT\020@\022@\n<" +
|
||||
"AbilityInvokeArgument_ABILITY_ACTION_SET" +
|
||||
"_BULLET_TRACK_TARGET\020A\0228\n4AbilityInvokeA" +
|
||||
"rgument_ABILITY_ACTION_FIREWORK_EFFECT\020B" +
|
||||
"\022=\n9AbilityInvokeArgument_ABILITY_ACTION" +
|
||||
"_LEVEL_BANK_ADD_STUFF\020C\022A\n=AbilityInvoke" +
|
||||
"Argument_ABILITY_ACTION_GET_MATERIAL_PAR" +
|
||||
"AM_FLOAT\020D\022B\n>AbilityInvokeArgument_ABIL" +
|
||||
"ITY_ACTION_GET_MATERIAL_PARAM_VECTOR\020E\022H" +
|
||||
"\nDAbilityInvokeArgument_ABILITY_ACTION_S" +
|
||||
"PECTACLE_BUILD_RECREATE_GADGET\020F\022>\n:Abil" +
|
||||
"ityInvokeArgument_ABILITY_MIXIN_AVATAR_S" +
|
||||
"TEER_BY_CAMERA\020d\0226\n2AbilityInvokeArgumen" +
|
||||
"t_ABILITY_MIXIN_MONSTER_DEFEND\020e\0221\n-Abil" +
|
||||
"ityInvokeArgument_ABILITY_MIXIN_WIND_ZON" +
|
||||
"E\020f\0224\n0AbilityInvokeArgument_ABILITY_MIX" +
|
||||
"IN_COST_STAMINA\020g\0224\n0AbilityInvokeArgume" +
|
||||
"nt_ABILITY_MIXIN_ELITE_SHIELD\020h\0226\n2Abili" +
|
||||
"tyInvokeArgument_ABILITY_MIXIN_ELEMENT_S" +
|
||||
"HIELD\020i\0225\n1AbilityInvokeArgument_ABILITY" +
|
||||
"_MIXIN_GLOBAL_SHIELD\020j\0222\n.AbilityInvokeA" +
|
||||
"rgument_ABILITY_MIXIN_SHIELD_BAR\020k\0229\n5Ab" +
|
||||
"ilityInvokeArgument_ABILITY_MIXIN_WIND_S" +
|
||||
"EED_SPAWNER\020l\022E\nAAbilityInvokeArgument_A" +
|
||||
"BILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTI" +
|
||||
"ON\020m\022A\n=AbilityInvokeArgument_ABILITY_MI" +
|
||||
"XIN_FIELD_ENTITY_COUNT_CHANGE\020n\0227\n3Abili" +
|
||||
"tyInvokeArgument_ABILITY_MIXIN_SCENE_PRO" +
|
||||
"P_SYNC\020o\0229\n5AbilityInvokeArgument_ABILIT" +
|
||||
"Y_MIXIN_WIDGET_MP_SUPPORT\020p\022[\nWAbilityIn" +
|
||||
"vokeArgument_ABILITY_MIXIN_DO_ACTION_BY_" +
|
||||
"SELF_MODIFIER_ELEMENT_DURABILITY_RATIO\020q" +
|
||||
"\022:\n6AbilityInvokeArgument_ABILITY_MIXIN_" +
|
||||
"FIREWORKS_LAUNCHER\020r\022B\n>AbilityInvokeArg" +
|
||||
"ument_ABILITY_MIXIN_ATTACK_RESULT_CREATE" +
|
||||
"_COUNT\020s\0228\n4AbilityInvokeArgument_ABILIT" +
|
||||
"Y_MIXIN_UGC_TIME_CONTROL\020t\0225\n1AbilityInv" +
|
||||
"okeArgument_ABILITY_MIXIN_AVATAR_COMBAT\020" +
|
||||
"u\022F\nBAbilityInvokeArgument_ABILITY_MIXIN" +
|
||||
"_DEATH_ZONE_REGIONAL_PLAY_MIXIN\020v\0223\n/Abi" +
|
||||
"lityInvokeArgument_ABILITY_MIXIN_UI_INTE" +
|
||||
"RACT\020w\0229\n5AbilityInvokeArgument_ABILITY_" +
|
||||
"MIXIN_SHOOT_FROM_CAMERA\020x\022<\n8AbilityInvo" +
|
||||
"keArgument_ABILITY_MIXIN_ERASE_BRICK_ACT" +
|
||||
"IVITY\020y\0220\n,AbilityInvokeArgument_ABILITY" +
|
||||
"_MIXIN_BREAKOUT\020z\0223\n/AbilityInvokeArgume" +
|
||||
"nt_ABILITY_MIXIN_DAMAGE_LOAN\020{\0224\n0Abilit" +
|
||||
"yInvokeArgument_ABILITY_MIXIN_BROADCAST_" +
|
||||
"GV\020|\0222\n.AbilityInvokeArgument_ABILITY_MI" +
|
||||
"XIN_RECEIVE_GV\020}\022=\n9AbilityInvokeArgumen" +
|
||||
"t_ABILITY_MIXIN_RAYCAST_SELECT_TARGET\020~\022" +
|
||||
"=\n9AbilityInvokeArgument_ABILITY_MIXIN_E" +
|
||||
"NERGY_CRYSTAL_TARGET\020\177\022?\n:AbilityInvokeA" +
|
||||
"rgument_ABILITY_MIXIN_ROTATION_FOLLOW_CA" +
|
||||
"MERA\020\200\001\0226\n1AbilityInvokeArgument_ABILITY" +
|
||||
"_MIXIN_BUOYANT_FORCE\020\201\001\022;\n6AbilityInvoke" +
|
||||
"Argument_ABILITY_MIXIN_FILMFEST_BALL_GAM" +
|
||||
"E\020\202\001\022:\n5AbilityInvokeArgument_ABILITY_MI" +
|
||||
"XIN_CHECK_SCAN_ENTITY\020\203\001\022:\n5AbilityInvok" +
|
||||
"eArgument_ABILITY_MIXIN_TIME_TRACK_PLAYE" +
|
||||
"R\020\205\001\0224\n/AbilityInvokeArgument_ABILITY_MI" +
|
||||
"XIN_PART_FOLLOW\020\206\001\022:\n5AbilityInvokeArgum" +
|
||||
"ent_ABILITY_MIXIN_CHANGE_PHLOGISTON\020\207\001\022Q" +
|
||||
"\nLAbilityInvokeArgument_ABILITY_MIXIN_HU" +
|
||||
"MAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL\020\210" +
|
||||
"\001\022=\n8AbilityInvokeArgument_ABILITY_MIXIN" +
|
||||
"_FREQUENCY_SHIELD_BAR\020\211\001\022;\n6AbilityInvok" +
|
||||
"eArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARG" +
|
||||
"ET\020\212\001\022H\nCAbilityInvokeArgument_ABILITY_M" +
|
||||
"IXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE\020\213\001\022" +
|
||||
"5\n0AbilityInvokeArgument_ABILITY_MIXIN_B" +
|
||||
"RICK_MATRIX\020\214\001\022@\n;AbilityInvokeArgument_" +
|
||||
"ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA\020\215\001" +
|
||||
"\022<\n7AbilityInvokeArgument_ABILITY_MIXIN_" +
|
||||
"AVATAR_SPECIAL_MOVE\020\217\001B$\n io.grasscutter" +
|
||||
".net.proto.abilityP\001b\006proto3"
|
||||
};
|
||||
descriptor = com.google.protobuf.Descriptors.FileDescriptor
|
||||
.internalBuildGeneratedFileFrom(descriptorData,
|
||||
new com.google.protobuf.Descriptors.FileDescriptor[] {
|
||||
io.grasscutter.net.proto.fight.Fight.getDescriptor(),
|
||||
io.grasscutter.net.proto.define.Define.getDescriptor(),
|
||||
});
|
||||
internal_static_AbilityInvocationsNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(0);
|
||||
internal_static_AbilityInvocationsNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityInvocationsNotify_descriptor,
|
||||
new java.lang.String[] { "JJBLBLMDPHC", });
|
||||
internal_static_AbilityInvokeEntryHead_descriptor =
|
||||
getDescriptor().getMessageTypes().get(1);
|
||||
internal_static_AbilityInvokeEntryHead_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityInvokeEntryHead_descriptor,
|
||||
new java.lang.String[] { "TargetId", "ModifierConfigLocalId", "ServerBuffUid", "IsServerbuffModifier", "InstancedModifierId", "InstancedAbilityId", "LocalId", });
|
||||
internal_static_AbilityInvokeEntry_descriptor =
|
||||
getDescriptor().getMessageTypes().get(2);
|
||||
internal_static_AbilityInvokeEntry_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityInvokeEntry_descriptor,
|
||||
new java.lang.String[] { "AbilityData", "Head", "IsIgnoreAuth", "EntityId", "ForwardType", "JPHBOKDMDAH", "TotalTickTime", "ArgumentType", "HNOGKEHFLHE", });
|
||||
internal_static_AbilityChangeNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(3);
|
||||
internal_static_AbilityChangeNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityChangeNotify_descriptor,
|
||||
new java.lang.String[] { "AbilityControlBlock", "EntityId", });
|
||||
internal_static_ClientAbilityChangeNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(4);
|
||||
internal_static_ClientAbilityChangeNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_ClientAbilityChangeNotify_descriptor,
|
||||
new java.lang.String[] { "JJBLBLMDPHC", "IsInitHash", "EntityId", });
|
||||
internal_static_EntityAbilityInvokeEntry_descriptor =
|
||||
getDescriptor().getMessageTypes().get(5);
|
||||
internal_static_EntityAbilityInvokeEntry_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_EntityAbilityInvokeEntry_descriptor,
|
||||
new java.lang.String[] { "JJBLBLMDPHC", "EntityId", });
|
||||
internal_static_AbilityInvocationFixedNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(6);
|
||||
internal_static_AbilityInvocationFixedNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityInvocationFixedNotify_descriptor,
|
||||
new java.lang.String[] { "CNLHMFMMMOL", "KJADOHHDHNJ", "FADGNFKGNOG", "PEJIJNIJGOO", "HBIDFELECFF", "IMELONLCKII", });
|
||||
internal_static_ClientAbilityInitFinishNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(7);
|
||||
internal_static_ClientAbilityInitFinishNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_ClientAbilityInitFinishNotify_descriptor,
|
||||
new java.lang.String[] { "JJBLBLMDPHC", "EntityId", });
|
||||
internal_static_AbilityInvocationFailNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(8);
|
||||
internal_static_AbilityInvocationFailNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AbilityInvocationFailNotify_descriptor,
|
||||
new java.lang.String[] { "Reason", "Invoke", "EntityId", });
|
||||
internal_static_ServerGlobalValueChangeNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(9);
|
||||
internal_static_ServerGlobalValueChangeNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_ServerGlobalValueChangeNotify_descriptor,
|
||||
new java.lang.String[] { "Value", "KeyHash", "EntityId", });
|
||||
internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(10);
|
||||
internal_static_ClientAbilitiesInitFinishCombineNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor,
|
||||
new java.lang.String[] { "EntityInvokeList", });
|
||||
io.grasscutter.net.proto.fight.Fight.getDescriptor();
|
||||
io.grasscutter.net.proto.define.Define.getDescriptor();
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(outer_class_scope)
|
||||
}
|
||||
@@ -0,0 +1,679 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 5798
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityChangeNotify}
|
||||
*/
|
||||
public final class AbilityChangeNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AbilityChangeNotify)
|
||||
AbilityChangeNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AbilityChangeNotify.newBuilder() to construct.
|
||||
private AbilityChangeNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AbilityChangeNotify() {
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AbilityChangeNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AbilityChangeNotify(
|
||||
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 74: {
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock.Builder subBuilder = null;
|
||||
if (abilityControlBlock_ != null) {
|
||||
subBuilder = abilityControlBlock_.toBuilder();
|
||||
}
|
||||
abilityControlBlock_ = input.readMessage(io.grasscutter.net.proto.define.AbilityControlBlock.parser(), extensionRegistry);
|
||||
if (subBuilder != null) {
|
||||
subBuilder.mergeFrom(abilityControlBlock_);
|
||||
abilityControlBlock_ = subBuilder.buildPartial();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 96: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
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 io.grasscutter.net.proto.ability.Ability.internal_static_AbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify.class, io.grasscutter.net.proto.ability.AbilityChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int ABILITY_CONTROL_BLOCK_FIELD_NUMBER = 9;
|
||||
private io.grasscutter.net.proto.define.AbilityControlBlock abilityControlBlock_;
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return Whether the abilityControlBlock field is set.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean hasAbilityControlBlock() {
|
||||
return abilityControlBlock_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return The abilityControlBlock.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.define.AbilityControlBlock getAbilityControlBlock() {
|
||||
return abilityControlBlock_ == null ? io.grasscutter.net.proto.define.AbilityControlBlock.getDefaultInstance() : abilityControlBlock_;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder getAbilityControlBlockOrBuilder() {
|
||||
return getAbilityControlBlock();
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 12;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 12;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 (abilityControlBlock_ != null) {
|
||||
output.writeMessage(9, getAbilityControlBlock());
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
output.writeUInt32(12, entityId_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (abilityControlBlock_ != null) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(9, getAbilityControlBlock());
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(12, entityId_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.AbilityChangeNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify other = (io.grasscutter.net.proto.ability.AbilityChangeNotify) obj;
|
||||
|
||||
if (hasAbilityControlBlock() != other.hasAbilityControlBlock()) return false;
|
||||
if (hasAbilityControlBlock()) {
|
||||
if (!getAbilityControlBlock()
|
||||
.equals(other.getAbilityControlBlock())) return false;
|
||||
}
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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();
|
||||
if (hasAbilityControlBlock()) {
|
||||
hash = (37 * hash) + ABILITY_CONTROL_BLOCK_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getAbilityControlBlock().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify 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 io.grasscutter.net.proto.ability.AbilityChangeNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify 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 io.grasscutter.net.proto.ability.AbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify 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(io.grasscutter.net.proto.ability.AbilityChangeNotify 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>
|
||||
* CmdId: 5798
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityChangeNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AbilityChangeNotify)
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify.class, io.grasscutter.net.proto.ability.AbilityChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.AbilityChangeNotify.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();
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
abilityControlBlock_ = null;
|
||||
} else {
|
||||
abilityControlBlock_ = null;
|
||||
abilityControlBlockBuilder_ = null;
|
||||
}
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityChangeNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.AbilityChangeNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityChangeNotify build() {
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityChangeNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify result = new io.grasscutter.net.proto.ability.AbilityChangeNotify(this);
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
result.abilityControlBlock_ = abilityControlBlock_;
|
||||
} else {
|
||||
result.abilityControlBlock_ = abilityControlBlockBuilder_.build();
|
||||
}
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.AbilityChangeNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.AbilityChangeNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.AbilityChangeNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.AbilityChangeNotify.getDefaultInstance()) return this;
|
||||
if (other.hasAbilityControlBlock()) {
|
||||
mergeAbilityControlBlock(other.getAbilityControlBlock());
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.AbilityChangeNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.AbilityChangeNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private io.grasscutter.net.proto.define.AbilityControlBlock abilityControlBlock_;
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock, io.grasscutter.net.proto.define.AbilityControlBlock.Builder, io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder> abilityControlBlockBuilder_;
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return Whether the abilityControlBlock field is set.
|
||||
*/
|
||||
public boolean hasAbilityControlBlock() {
|
||||
return abilityControlBlockBuilder_ != null || abilityControlBlock_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return The abilityControlBlock.
|
||||
*/
|
||||
public io.grasscutter.net.proto.define.AbilityControlBlock getAbilityControlBlock() {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
return abilityControlBlock_ == null ? io.grasscutter.net.proto.define.AbilityControlBlock.getDefaultInstance() : abilityControlBlock_;
|
||||
} else {
|
||||
return abilityControlBlockBuilder_.getMessage();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public Builder setAbilityControlBlock(io.grasscutter.net.proto.define.AbilityControlBlock value) {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
abilityControlBlock_ = value;
|
||||
onChanged();
|
||||
} else {
|
||||
abilityControlBlockBuilder_.setMessage(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public Builder setAbilityControlBlock(
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock.Builder builderForValue) {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
abilityControlBlock_ = builderForValue.build();
|
||||
onChanged();
|
||||
} else {
|
||||
abilityControlBlockBuilder_.setMessage(builderForValue.build());
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public Builder mergeAbilityControlBlock(io.grasscutter.net.proto.define.AbilityControlBlock value) {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
if (abilityControlBlock_ != null) {
|
||||
abilityControlBlock_ =
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock.newBuilder(abilityControlBlock_).mergeFrom(value).buildPartial();
|
||||
} else {
|
||||
abilityControlBlock_ = value;
|
||||
}
|
||||
onChanged();
|
||||
} else {
|
||||
abilityControlBlockBuilder_.mergeFrom(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public Builder clearAbilityControlBlock() {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
abilityControlBlock_ = null;
|
||||
onChanged();
|
||||
} else {
|
||||
abilityControlBlock_ = null;
|
||||
abilityControlBlockBuilder_ = null;
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.define.AbilityControlBlock.Builder getAbilityControlBlockBuilder() {
|
||||
|
||||
onChanged();
|
||||
return getAbilityControlBlockFieldBuilder().getBuilder();
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder getAbilityControlBlockOrBuilder() {
|
||||
if (abilityControlBlockBuilder_ != null) {
|
||||
return abilityControlBlockBuilder_.getMessageOrBuilder();
|
||||
} else {
|
||||
return abilityControlBlock_ == null ?
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock.getDefaultInstance() : abilityControlBlock_;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock, io.grasscutter.net.proto.define.AbilityControlBlock.Builder, io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder>
|
||||
getAbilityControlBlockFieldBuilder() {
|
||||
if (abilityControlBlockBuilder_ == null) {
|
||||
abilityControlBlockBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock, io.grasscutter.net.proto.define.AbilityControlBlock.Builder, io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder>(
|
||||
getAbilityControlBlock(),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
abilityControlBlock_ = null;
|
||||
}
|
||||
return abilityControlBlockBuilder_;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 12;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 12;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 12;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:AbilityChangeNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AbilityChangeNotify)
|
||||
private static final io.grasscutter.net.proto.ability.AbilityChangeNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.AbilityChangeNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityChangeNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AbilityChangeNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AbilityChangeNotify>() {
|
||||
@java.lang.Override
|
||||
public AbilityChangeNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AbilityChangeNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AbilityChangeNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AbilityChangeNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityChangeNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityChangeNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityChangeNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return Whether the abilityControlBlock field is set.
|
||||
*/
|
||||
boolean hasAbilityControlBlock();
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
* @return The abilityControlBlock.
|
||||
*/
|
||||
io.grasscutter.net.proto.define.AbilityControlBlock getAbilityControlBlock();
|
||||
/**
|
||||
* <code>.AbilityControlBlock ability_control_block = 9;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.define.AbilityControlBlockOrBuilder getAbilityControlBlockOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 12;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
+817
@@ -0,0 +1,817 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 23877
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityInvocationFailNotify}
|
||||
*/
|
||||
public final class AbilityInvocationFailNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AbilityInvocationFailNotify)
|
||||
AbilityInvocationFailNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AbilityInvocationFailNotify.newBuilder() to construct.
|
||||
private AbilityInvocationFailNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AbilityInvocationFailNotify() {
|
||||
reason_ = "";
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AbilityInvocationFailNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AbilityInvocationFailNotify(
|
||||
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 50: {
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder subBuilder = null;
|
||||
if (invoke_ != null) {
|
||||
subBuilder = invoke_.toBuilder();
|
||||
}
|
||||
invoke_ = input.readMessage(io.grasscutter.net.proto.ability.AbilityInvokeEntry.parser(), extensionRegistry);
|
||||
if (subBuilder != null) {
|
||||
subBuilder.mergeFrom(invoke_);
|
||||
invoke_ = subBuilder.buildPartial();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 72: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 114: {
|
||||
java.lang.String s = input.readStringRequireUtf8();
|
||||
|
||||
reason_ = s;
|
||||
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 io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationFailNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationFailNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.class, io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int REASON_FIELD_NUMBER = 14;
|
||||
private volatile java.lang.Object reason_;
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The reason.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.lang.String getReason() {
|
||||
java.lang.Object ref = reason_;
|
||||
if (ref instanceof java.lang.String) {
|
||||
return (java.lang.String) ref;
|
||||
} else {
|
||||
com.google.protobuf.ByteString bs =
|
||||
(com.google.protobuf.ByteString) ref;
|
||||
java.lang.String s = bs.toStringUtf8();
|
||||
reason_ = s;
|
||||
return s;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The bytes for reason.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.ByteString
|
||||
getReasonBytes() {
|
||||
java.lang.Object ref = reason_;
|
||||
if (ref instanceof java.lang.String) {
|
||||
com.google.protobuf.ByteString b =
|
||||
com.google.protobuf.ByteString.copyFromUtf8(
|
||||
(java.lang.String) ref);
|
||||
reason_ = b;
|
||||
return b;
|
||||
} else {
|
||||
return (com.google.protobuf.ByteString) ref;
|
||||
}
|
||||
}
|
||||
|
||||
public static final int INVOKE_FIELD_NUMBER = 6;
|
||||
private io.grasscutter.net.proto.ability.AbilityInvokeEntry invoke_;
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return Whether the invoke field is set.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean hasInvoke() {
|
||||
return invoke_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return The invoke.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getInvoke() {
|
||||
return invoke_ == null ? io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance() : invoke_;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getInvokeOrBuilder() {
|
||||
return getInvoke();
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 9;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 9;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 (invoke_ != null) {
|
||||
output.writeMessage(6, getInvoke());
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
output.writeUInt32(9, entityId_);
|
||||
}
|
||||
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(reason_)) {
|
||||
com.google.protobuf.GeneratedMessageV3.writeString(output, 14, reason_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (invoke_ != null) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(6, getInvoke());
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(9, entityId_);
|
||||
}
|
||||
if (!com.google.protobuf.GeneratedMessageV3.isStringEmpty(reason_)) {
|
||||
size += com.google.protobuf.GeneratedMessageV3.computeStringSize(14, reason_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvocationFailNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify other = (io.grasscutter.net.proto.ability.AbilityInvocationFailNotify) obj;
|
||||
|
||||
if (!getReason()
|
||||
.equals(other.getReason())) return false;
|
||||
if (hasInvoke() != other.hasInvoke()) return false;
|
||||
if (hasInvoke()) {
|
||||
if (!getInvoke()
|
||||
.equals(other.getInvoke())) return false;
|
||||
}
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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) + REASON_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getReason().hashCode();
|
||||
if (hasInvoke()) {
|
||||
hash = (37 * hash) + INVOKE_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getInvoke().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify 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 io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify 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 io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify 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(io.grasscutter.net.proto.ability.AbilityInvocationFailNotify 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>
|
||||
* CmdId: 23877
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityInvocationFailNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AbilityInvocationFailNotify)
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationFailNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationFailNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.class, io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.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();
|
||||
reason_ = "";
|
||||
|
||||
if (invokeBuilder_ == null) {
|
||||
invoke_ = null;
|
||||
} else {
|
||||
invoke_ = null;
|
||||
invokeBuilder_ = null;
|
||||
}
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationFailNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationFailNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationFailNotify build() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationFailNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify result = new io.grasscutter.net.proto.ability.AbilityInvocationFailNotify(this);
|
||||
result.reason_ = reason_;
|
||||
if (invokeBuilder_ == null) {
|
||||
result.invoke_ = invoke_;
|
||||
} else {
|
||||
result.invoke_ = invokeBuilder_.build();
|
||||
}
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvocationFailNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.AbilityInvocationFailNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.AbilityInvocationFailNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.AbilityInvocationFailNotify.getDefaultInstance()) return this;
|
||||
if (!other.getReason().isEmpty()) {
|
||||
reason_ = other.reason_;
|
||||
onChanged();
|
||||
}
|
||||
if (other.hasInvoke()) {
|
||||
mergeInvoke(other.getInvoke());
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationFailNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.AbilityInvocationFailNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private java.lang.Object reason_ = "";
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The reason.
|
||||
*/
|
||||
public java.lang.String getReason() {
|
||||
java.lang.Object ref = reason_;
|
||||
if (!(ref instanceof java.lang.String)) {
|
||||
com.google.protobuf.ByteString bs =
|
||||
(com.google.protobuf.ByteString) ref;
|
||||
java.lang.String s = bs.toStringUtf8();
|
||||
reason_ = s;
|
||||
return s;
|
||||
} else {
|
||||
return (java.lang.String) ref;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The bytes for reason.
|
||||
*/
|
||||
public com.google.protobuf.ByteString
|
||||
getReasonBytes() {
|
||||
java.lang.Object ref = reason_;
|
||||
if (ref instanceof String) {
|
||||
com.google.protobuf.ByteString b =
|
||||
com.google.protobuf.ByteString.copyFromUtf8(
|
||||
(java.lang.String) ref);
|
||||
reason_ = b;
|
||||
return b;
|
||||
} else {
|
||||
return (com.google.protobuf.ByteString) ref;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @param value The reason to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setReason(
|
||||
java.lang.String value) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
|
||||
reason_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearReason() {
|
||||
|
||||
reason_ = getDefaultInstance().getReason();
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @param value The bytes for reason to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setReasonBytes(
|
||||
com.google.protobuf.ByteString value) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
checkByteStringIsUtf8(value);
|
||||
|
||||
reason_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private io.grasscutter.net.proto.ability.AbilityInvokeEntry invoke_;
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder> invokeBuilder_;
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return Whether the invoke field is set.
|
||||
*/
|
||||
public boolean hasInvoke() {
|
||||
return invokeBuilder_ != null || invoke_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return The invoke.
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getInvoke() {
|
||||
if (invokeBuilder_ == null) {
|
||||
return invoke_ == null ? io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance() : invoke_;
|
||||
} else {
|
||||
return invokeBuilder_.getMessage();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public Builder setInvoke(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (invokeBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
invoke_ = value;
|
||||
onChanged();
|
||||
} else {
|
||||
invokeBuilder_.setMessage(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public Builder setInvoke(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (invokeBuilder_ == null) {
|
||||
invoke_ = builderForValue.build();
|
||||
onChanged();
|
||||
} else {
|
||||
invokeBuilder_.setMessage(builderForValue.build());
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public Builder mergeInvoke(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (invokeBuilder_ == null) {
|
||||
if (invoke_ != null) {
|
||||
invoke_ =
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.newBuilder(invoke_).mergeFrom(value).buildPartial();
|
||||
} else {
|
||||
invoke_ = value;
|
||||
}
|
||||
onChanged();
|
||||
} else {
|
||||
invokeBuilder_.mergeFrom(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public Builder clearInvoke() {
|
||||
if (invokeBuilder_ == null) {
|
||||
invoke_ = null;
|
||||
onChanged();
|
||||
} else {
|
||||
invoke_ = null;
|
||||
invokeBuilder_ = null;
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder getInvokeBuilder() {
|
||||
|
||||
onChanged();
|
||||
return getInvokeFieldBuilder().getBuilder();
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getInvokeOrBuilder() {
|
||||
if (invokeBuilder_ != null) {
|
||||
return invokeBuilder_.getMessageOrBuilder();
|
||||
} else {
|
||||
return invoke_ == null ?
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance() : invoke_;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getInvokeFieldBuilder() {
|
||||
if (invokeBuilder_ == null) {
|
||||
invokeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>(
|
||||
getInvoke(),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
invoke_ = null;
|
||||
}
|
||||
return invokeBuilder_;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 9;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 9;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 9;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:AbilityInvocationFailNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AbilityInvocationFailNotify)
|
||||
private static final io.grasscutter.net.proto.ability.AbilityInvocationFailNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.AbilityInvocationFailNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationFailNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AbilityInvocationFailNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AbilityInvocationFailNotify>() {
|
||||
@java.lang.Override
|
||||
public AbilityInvocationFailNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AbilityInvocationFailNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AbilityInvocationFailNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AbilityInvocationFailNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationFailNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+42
@@ -0,0 +1,42 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityInvocationFailNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityInvocationFailNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The reason.
|
||||
*/
|
||||
java.lang.String getReason();
|
||||
/**
|
||||
* <code>string reason = 14;</code>
|
||||
* @return The bytes for reason.
|
||||
*/
|
||||
com.google.protobuf.ByteString
|
||||
getReasonBytes();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return Whether the invoke field is set.
|
||||
*/
|
||||
boolean hasInvoke();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
* @return The invoke.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getInvoke();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry invoke = 6;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getInvokeOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 9;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
+1555
File diff suppressed because it is too large
Load Diff
+99
@@ -0,0 +1,99 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityInvocationFixedNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityInvocationFixedNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry CNLHMFMMMOL = 15;</code>
|
||||
* @return Whether the cNLHMFMMMOL field is set.
|
||||
*/
|
||||
boolean hasCNLHMFMMMOL();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry CNLHMFMMMOL = 15;</code>
|
||||
* @return The cNLHMFMMMOL.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getCNLHMFMMMOL();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry CNLHMFMMMOL = 15;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getCNLHMFMMMOLOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry KJADOHHDHNJ = 1;</code>
|
||||
* @return Whether the kJADOHHDHNJ field is set.
|
||||
*/
|
||||
boolean hasKJADOHHDHNJ();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry KJADOHHDHNJ = 1;</code>
|
||||
* @return The kJADOHHDHNJ.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getKJADOHHDHNJ();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry KJADOHHDHNJ = 1;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getKJADOHHDHNJOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry FADGNFKGNOG = 11;</code>
|
||||
* @return Whether the fADGNFKGNOG field is set.
|
||||
*/
|
||||
boolean hasFADGNFKGNOG();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry FADGNFKGNOG = 11;</code>
|
||||
* @return The fADGNFKGNOG.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getFADGNFKGNOG();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry FADGNFKGNOG = 11;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getFADGNFKGNOGOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry PEJIJNIJGOO = 12;</code>
|
||||
* @return Whether the pEJIJNIJGOO field is set.
|
||||
*/
|
||||
boolean hasPEJIJNIJGOO();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry PEJIJNIJGOO = 12;</code>
|
||||
* @return The pEJIJNIJGOO.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getPEJIJNIJGOO();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry PEJIJNIJGOO = 12;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getPEJIJNIJGOOOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry HBIDFELECFF = 14;</code>
|
||||
* @return Whether the hBIDFELECFF field is set.
|
||||
*/
|
||||
boolean hasHBIDFELECFF();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry HBIDFELECFF = 14;</code>
|
||||
* @return The hBIDFELECFF.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getHBIDFELECFF();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry HBIDFELECFF = 14;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getHBIDFELECFFOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry IMELONLCKII = 8;</code>
|
||||
* @return Whether the iMELONLCKII field is set.
|
||||
*/
|
||||
boolean hasIMELONLCKII();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry IMELONLCKII = 8;</code>
|
||||
* @return The iMELONLCKII.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getIMELONLCKII();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntry IMELONLCKII = 8;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getIMELONLCKIIOrBuilder();
|
||||
}
|
||||
+778
@@ -0,0 +1,778 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 7193
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityInvocationsNotify}
|
||||
*/
|
||||
public final class AbilityInvocationsNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AbilityInvocationsNotify)
|
||||
AbilityInvocationsNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AbilityInvocationsNotify.newBuilder() to construct.
|
||||
private AbilityInvocationsNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AbilityInvocationsNotify() {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AbilityInvocationsNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AbilityInvocationsNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 74: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
jJBLBLMDPHC_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.ability.AbilityInvokeEntry.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationsNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationsNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify.class, io.grasscutter.net.proto.ability.AbilityInvocationsNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int JJBLBLMDPHC_FIELD_NUMBER = 9;
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_;
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
return jJBLBLMDPHC_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
|
||||
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 {
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
output.writeMessage(9, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(9, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvocationsNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify other = (io.grasscutter.net.proto.ability.AbilityInvocationsNotify) obj;
|
||||
|
||||
if (!getJJBLBLMDPHCList()
|
||||
.equals(other.getJJBLBLMDPHCList())) 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();
|
||||
if (getJJBLBLMDPHCCount() > 0) {
|
||||
hash = (37 * hash) + JJBLBLMDPHC_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getJJBLBLMDPHCList().hashCode();
|
||||
}
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify 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 io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify 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 io.grasscutter.net.proto.ability.AbilityInvocationsNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify 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(io.grasscutter.net.proto.ability.AbilityInvocationsNotify 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>
|
||||
* CmdId: 7193
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AbilityInvocationsNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AbilityInvocationsNotify)
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationsNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationsNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify.class, io.grasscutter.net.proto.ability.AbilityInvocationsNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.AbilityInvocationsNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getJJBLBLMDPHCFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvocationsNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationsNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.AbilityInvocationsNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationsNotify build() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationsNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify result = new io.grasscutter.net.proto.ability.AbilityInvocationsNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHC_;
|
||||
} else {
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHCBuilder_.build();
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvocationsNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.AbilityInvocationsNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.AbilityInvocationsNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.AbilityInvocationsNotify.getDefaultInstance()) return this;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHC_.isEmpty()) {
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.addAll(other.jJBLBLMDPHC_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHCBuilder_.isEmpty()) {
|
||||
jJBLBLMDPHCBuilder_.dispose();
|
||||
jJBLBLMDPHCBuilder_ = null;
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
jJBLBLMDPHCBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getJJBLBLMDPHCFieldBuilder() : null;
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(other.jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.AbilityInvocationsNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.AbilityInvocationsNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureJJBLBLMDPHCIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>(jJBLBLMDPHC_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder> jJBLBLMDPHCBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.size();
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder addAllJJBLBLMDPHC(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntry> values) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, jJBLBLMDPHC_);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder clearJJBLBLMDPHC() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public Builder removeJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder getJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index); } else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
if (jJBLBLMDPHCBuilder_ != null) {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder() {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder>
|
||||
getJJBLBLMDPHCBuilderList() {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCFieldBuilder() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHCBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>(
|
||||
jJBLBLMDPHC_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
jJBLBLMDPHC_ = null;
|
||||
}
|
||||
return jJBLBLMDPHCBuilder_;
|
||||
}
|
||||
@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:AbilityInvocationsNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AbilityInvocationsNotify)
|
||||
private static final io.grasscutter.net.proto.ability.AbilityInvocationsNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.AbilityInvocationsNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvocationsNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AbilityInvocationsNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AbilityInvocationsNotify>() {
|
||||
@java.lang.Override
|
||||
public AbilityInvocationsNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AbilityInvocationsNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AbilityInvocationsNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AbilityInvocationsNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvocationsNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityInvocationsNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityInvocationsNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry>
|
||||
getJJBLBLMDPHCList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index);
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
int getJJBLBLMDPHCCount();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 9;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index);
|
||||
}
|
||||
@@ -0,0 +1,887 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* Protobuf enum {@code AbilityInvokeArgument}
|
||||
*/
|
||||
public enum AbilityInvokeArgument
|
||||
implements com.google.protobuf.ProtocolMessageEnum {
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_NONE = 0;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_NONE(0),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_MODIFIER_CHANGE = 1;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_MODIFIER_CHANGE(1),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_COMMAND_MODIFIER_CHANGE_REQUEST = 2;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_COMMAND_MODIFIER_CHANGE_REQUEST(2),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SPECIAL_FLOAT_ARGUMENT = 3;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_SPECIAL_FLOAT_ARGUMENT(3),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_OVERRIDE_PARAM = 4;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_OVERRIDE_PARAM(4),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CLEAR_OVERRIDE_PARAM = 5;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_CLEAR_OVERRIDE_PARAM(5),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_REINIT_OVERRIDEMAP = 6;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_REINIT_OVERRIDEMAP(6),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_GLOBAL_FLOAT_VALUE = 7;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_GLOBAL_FLOAT_VALUE(7),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE = 8;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE(8),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ABILITY_ELEMENT_STRENGTH = 9;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_ABILITY_ELEMENT_STRENGTH(9),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ADD_OR_GET_ABILITY_AND_TRIGGER = 10;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_ADD_OR_GET_ABILITY_AND_TRIGGER(10),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_KILLED_SETATE = 11;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_SET_KILLED_SETATE(11),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_ABILITY_TRIGGER = 12;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_SET_ABILITY_TRIGGER(12),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ADD_NEW_ABILITY = 13;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_ADD_NEW_ABILITY(13),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_REMOVE_ABILITY = 14;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_REMOVE_ABILITY(14),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_MODIFIER_APPLY_ENTITY = 15;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_SET_MODIFIER_APPLY_ENTITY(15),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_MODIFIER_DURABILITY_CHANGE = 16;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_MODIFIER_DURABILITY_CHANGE(16),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ELEMENT_REACTION_VISUAL = 17;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_ELEMENT_REACTION_VISUAL(17),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_POSE_PARAMETER = 18;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_SET_POSE_PARAMETER(18),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_UPDATE_BASE_REACTION_DAMAGE = 19;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_UPDATE_BASE_REACTION_DAMAGE(19),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_TRIGGER_ELEMENT_REACTION = 20;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_TRIGGER_ELEMENT_REACTION(20),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_LOSE_HP = 21;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_LOSE_HP(21),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_DURABILITY_IS_ZERO = 22;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_DURABILITY_IS_ZERO(22),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_TRIGGER_ARKHE_REACTION = 23;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_TRIGGER_ARKHE_REACTION(23),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CHANGE_NYX_VALUE = 24;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_META_CHANGE_NYX_VALUE(24),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_TRIGGER_ABILITY = 50;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_TRIGGER_ABILITY(50),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_CRASH_DAMAGE = 51;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SET_CRASH_DAMAGE(51),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_EFFECT = 52;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_EFFECT(52),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SUMMON = 53;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SUMMON(53),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_BLINK = 54;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_BLINK(54),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_CREATE_GADGET = 55;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_CREATE_GADGET(55),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_APPLY_LEVEL_MODIFIER = 56;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_APPLY_LEVEL_MODIFIER(56),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GENERATE_ELEM_BALL = 57;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_GENERATE_ELEM_BALL(57),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_RANDOM_OVERRIDE_MAP_VALUE = 58;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SET_RANDOM_OVERRIDE_MAP_VALUE(58),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SERVER_MONSTER_LOG = 59;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SERVER_MONSTER_LOG(59),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_CREATE_TILE = 60;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_CREATE_TILE(60),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_DESTROY_TILE = 61;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_DESTROY_TILE(61),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_FIRE_AFTER_IMAGE = 62;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_FIRE_AFTER_IMAGE(62),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_DEDUCT_STAMINA = 63;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_DEDUCT_STAMINA(63),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_HIT_EFFECT = 64;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_HIT_EFFECT(64),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_BULLET_TRACK_TARGET = 65;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SET_BULLET_TRACK_TARGET(65),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_FIREWORK_EFFECT = 66;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_FIREWORK_EFFECT(66),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_LEVEL_BANK_ADD_STUFF = 67;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_LEVEL_BANK_ADD_STUFF(67),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_FLOAT = 68;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_FLOAT(68),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_VECTOR = 69;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_VECTOR(69),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SPECTACLE_BUILD_RECREATE_GADGET = 70;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_ACTION_SPECTACLE_BUILD_RECREATE_GADGET(70),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_STEER_BY_CAMERA = 100;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_STEER_BY_CAMERA(100),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_MONSTER_DEFEND = 101;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_MONSTER_DEFEND(101),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIND_ZONE = 102;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_WIND_ZONE(102),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_COST_STAMINA = 103;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_COST_STAMINA(103),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ELITE_SHIELD = 104;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ELITE_SHIELD(104),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ELEMENT_SHIELD = 105;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ELEMENT_SHIELD(105),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_GLOBAL_SHIELD = 106;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_GLOBAL_SHIELD(106),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHIELD_BAR = 107;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_SHIELD_BAR(107),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIND_SEED_SPAWNER = 108;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_WIND_SEED_SPAWNER(108),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTION = 109;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTION(109),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FIELD_ENTITY_COUNT_CHANGE = 110;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_FIELD_ENTITY_COUNT_CHANGE(110),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SCENE_PROP_SYNC = 111;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_SCENE_PROP_SYNC(111),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIDGET_MP_SUPPORT = 112;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_WIDGET_MP_SUPPORT(112),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_SELF_MODIFIER_ELEMENT_DURABILITY_RATIO = 113;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_SELF_MODIFIER_ELEMENT_DURABILITY_RATIO(113),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FIREWORKS_LAUNCHER = 114;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_FIREWORKS_LAUNCHER(114),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ATTACK_RESULT_CREATE_COUNT = 115;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ATTACK_RESULT_CREATE_COUNT(115),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_UGC_TIME_CONTROL = 116;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_UGC_TIME_CONTROL(116),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_COMBAT = 117;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_COMBAT(117),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DEATH_ZONE_REGIONAL_PLAY_MIXIN = 118;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_DEATH_ZONE_REGIONAL_PLAY_MIXIN(118),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_UI_INTERACT = 119;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_UI_INTERACT(119),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHOOT_FROM_CAMERA = 120;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_SHOOT_FROM_CAMERA(120),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ERASE_BRICK_ACTIVITY = 121;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ERASE_BRICK_ACTIVITY(121),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BREAKOUT = 122;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_BREAKOUT(122),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DAMAGE_LOAN = 123;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_DAMAGE_LOAN(123),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BROADCAST_GV = 124;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_BROADCAST_GV(124),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_RECEIVE_GV = 125;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_RECEIVE_GV(125),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_RAYCAST_SELECT_TARGET = 126;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_RAYCAST_SELECT_TARGET(126),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ENERGY_CRYSTAL_TARGET = 127;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ENERGY_CRYSTAL_TARGET(127),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ROTATION_FOLLOW_CAMERA = 128;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ROTATION_FOLLOW_CAMERA(128),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BUOYANT_FORCE = 129;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_BUOYANT_FORCE(129),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FILMFEST_BALL_GAME = 130;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_FILMFEST_BALL_GAME(130),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_CHECK_SCAN_ENTITY = 131;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_CHECK_SCAN_ENTITY(131),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_TIME_TRACK_PLAYER = 133;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_TIME_TRACK_PLAYER(133),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_PART_FOLLOW = 134;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_PART_FOLLOW(134),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_CHANGE_PHLOGISTON = 135;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_CHANGE_PHLOGISTON(135),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_HUMAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL = 136;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_HUMAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL(136),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FREQUENCY_SHIELD_BAR = 137;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_FREQUENCY_SHIELD_BAR(137),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARGET = 138;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARGET(138),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE = 139;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE(139),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BRICK_MATRIX = 140;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_BRICK_MATRIX(140),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA = 141;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA(141),
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_SPECIAL_MOVE = 143;</code>
|
||||
*/
|
||||
AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_SPECIAL_MOVE(143),
|
||||
UNRECOGNIZED(-1),
|
||||
;
|
||||
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_NONE = 0;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_NONE_VALUE = 0;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_MODIFIER_CHANGE = 1;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_MODIFIER_CHANGE_VALUE = 1;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_COMMAND_MODIFIER_CHANGE_REQUEST = 2;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_COMMAND_MODIFIER_CHANGE_REQUEST_VALUE = 2;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SPECIAL_FLOAT_ARGUMENT = 3;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_SPECIAL_FLOAT_ARGUMENT_VALUE = 3;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_OVERRIDE_PARAM = 4;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_OVERRIDE_PARAM_VALUE = 4;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CLEAR_OVERRIDE_PARAM = 5;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_CLEAR_OVERRIDE_PARAM_VALUE = 5;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_REINIT_OVERRIDEMAP = 6;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_REINIT_OVERRIDEMAP_VALUE = 6;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_GLOBAL_FLOAT_VALUE = 7;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_GLOBAL_FLOAT_VALUE_VALUE = 7;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE = 8;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE_VALUE = 8;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ABILITY_ELEMENT_STRENGTH = 9;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_ABILITY_ELEMENT_STRENGTH_VALUE = 9;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ADD_OR_GET_ABILITY_AND_TRIGGER = 10;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_ADD_OR_GET_ABILITY_AND_TRIGGER_VALUE = 10;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_KILLED_SETATE = 11;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_SET_KILLED_SETATE_VALUE = 11;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_ABILITY_TRIGGER = 12;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_SET_ABILITY_TRIGGER_VALUE = 12;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ADD_NEW_ABILITY = 13;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_ADD_NEW_ABILITY_VALUE = 13;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_REMOVE_ABILITY = 14;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_REMOVE_ABILITY_VALUE = 14;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_MODIFIER_APPLY_ENTITY = 15;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_SET_MODIFIER_APPLY_ENTITY_VALUE = 15;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_MODIFIER_DURABILITY_CHANGE = 16;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_MODIFIER_DURABILITY_CHANGE_VALUE = 16;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_ELEMENT_REACTION_VISUAL = 17;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_ELEMENT_REACTION_VISUAL_VALUE = 17;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_SET_POSE_PARAMETER = 18;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_SET_POSE_PARAMETER_VALUE = 18;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_UPDATE_BASE_REACTION_DAMAGE = 19;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_UPDATE_BASE_REACTION_DAMAGE_VALUE = 19;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_TRIGGER_ELEMENT_REACTION = 20;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_TRIGGER_ELEMENT_REACTION_VALUE = 20;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_LOSE_HP = 21;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_LOSE_HP_VALUE = 21;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_DURABILITY_IS_ZERO = 22;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_DURABILITY_IS_ZERO_VALUE = 22;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_TRIGGER_ARKHE_REACTION = 23;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_TRIGGER_ARKHE_REACTION_VALUE = 23;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_META_CHANGE_NYX_VALUE = 24;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_META_CHANGE_NYX_VALUE_VALUE = 24;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_TRIGGER_ABILITY = 50;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_TRIGGER_ABILITY_VALUE = 50;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_CRASH_DAMAGE = 51;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SET_CRASH_DAMAGE_VALUE = 51;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_EFFECT = 52;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_EFFECT_VALUE = 52;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SUMMON = 53;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SUMMON_VALUE = 53;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_BLINK = 54;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_BLINK_VALUE = 54;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_CREATE_GADGET = 55;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_CREATE_GADGET_VALUE = 55;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_APPLY_LEVEL_MODIFIER = 56;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_APPLY_LEVEL_MODIFIER_VALUE = 56;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GENERATE_ELEM_BALL = 57;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_GENERATE_ELEM_BALL_VALUE = 57;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_RANDOM_OVERRIDE_MAP_VALUE = 58;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SET_RANDOM_OVERRIDE_MAP_VALUE_VALUE = 58;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SERVER_MONSTER_LOG = 59;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SERVER_MONSTER_LOG_VALUE = 59;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_CREATE_TILE = 60;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_CREATE_TILE_VALUE = 60;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_DESTROY_TILE = 61;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_DESTROY_TILE_VALUE = 61;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_FIRE_AFTER_IMAGE = 62;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_FIRE_AFTER_IMAGE_VALUE = 62;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_DEDUCT_STAMINA = 63;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_DEDUCT_STAMINA_VALUE = 63;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_HIT_EFFECT = 64;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_HIT_EFFECT_VALUE = 64;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SET_BULLET_TRACK_TARGET = 65;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SET_BULLET_TRACK_TARGET_VALUE = 65;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_FIREWORK_EFFECT = 66;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_FIREWORK_EFFECT_VALUE = 66;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_LEVEL_BANK_ADD_STUFF = 67;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_LEVEL_BANK_ADD_STUFF_VALUE = 67;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_FLOAT = 68;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_FLOAT_VALUE = 68;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_VECTOR = 69;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_VECTOR_VALUE = 69;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_ACTION_SPECTACLE_BUILD_RECREATE_GADGET = 70;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_ACTION_SPECTACLE_BUILD_RECREATE_GADGET_VALUE = 70;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_STEER_BY_CAMERA = 100;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_STEER_BY_CAMERA_VALUE = 100;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_MONSTER_DEFEND = 101;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_MONSTER_DEFEND_VALUE = 101;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIND_ZONE = 102;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_WIND_ZONE_VALUE = 102;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_COST_STAMINA = 103;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_COST_STAMINA_VALUE = 103;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ELITE_SHIELD = 104;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ELITE_SHIELD_VALUE = 104;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ELEMENT_SHIELD = 105;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ELEMENT_SHIELD_VALUE = 105;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_GLOBAL_SHIELD = 106;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_GLOBAL_SHIELD_VALUE = 106;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHIELD_BAR = 107;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_SHIELD_BAR_VALUE = 107;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIND_SEED_SPAWNER = 108;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_WIND_SEED_SPAWNER_VALUE = 108;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTION = 109;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTION_VALUE = 109;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FIELD_ENTITY_COUNT_CHANGE = 110;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_FIELD_ENTITY_COUNT_CHANGE_VALUE = 110;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SCENE_PROP_SYNC = 111;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_SCENE_PROP_SYNC_VALUE = 111;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_WIDGET_MP_SUPPORT = 112;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_WIDGET_MP_SUPPORT_VALUE = 112;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_SELF_MODIFIER_ELEMENT_DURABILITY_RATIO = 113;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_SELF_MODIFIER_ELEMENT_DURABILITY_RATIO_VALUE = 113;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FIREWORKS_LAUNCHER = 114;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_FIREWORKS_LAUNCHER_VALUE = 114;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ATTACK_RESULT_CREATE_COUNT = 115;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ATTACK_RESULT_CREATE_COUNT_VALUE = 115;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_UGC_TIME_CONTROL = 116;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_UGC_TIME_CONTROL_VALUE = 116;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_COMBAT = 117;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_COMBAT_VALUE = 117;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DEATH_ZONE_REGIONAL_PLAY_MIXIN = 118;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_DEATH_ZONE_REGIONAL_PLAY_MIXIN_VALUE = 118;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_UI_INTERACT = 119;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_UI_INTERACT_VALUE = 119;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHOOT_FROM_CAMERA = 120;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_SHOOT_FROM_CAMERA_VALUE = 120;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ERASE_BRICK_ACTIVITY = 121;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ERASE_BRICK_ACTIVITY_VALUE = 121;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BREAKOUT = 122;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_BREAKOUT_VALUE = 122;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_DAMAGE_LOAN = 123;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_DAMAGE_LOAN_VALUE = 123;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BROADCAST_GV = 124;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_BROADCAST_GV_VALUE = 124;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_RECEIVE_GV = 125;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_RECEIVE_GV_VALUE = 125;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_RAYCAST_SELECT_TARGET = 126;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_RAYCAST_SELECT_TARGET_VALUE = 126;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ENERGY_CRYSTAL_TARGET = 127;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ENERGY_CRYSTAL_TARGET_VALUE = 127;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ROTATION_FOLLOW_CAMERA = 128;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ROTATION_FOLLOW_CAMERA_VALUE = 128;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BUOYANT_FORCE = 129;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_BUOYANT_FORCE_VALUE = 129;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FILMFEST_BALL_GAME = 130;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_FILMFEST_BALL_GAME_VALUE = 130;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_CHECK_SCAN_ENTITY = 131;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_CHECK_SCAN_ENTITY_VALUE = 131;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_TIME_TRACK_PLAYER = 133;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_TIME_TRACK_PLAYER_VALUE = 133;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_PART_FOLLOW = 134;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_PART_FOLLOW_VALUE = 134;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_CHANGE_PHLOGISTON = 135;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_CHANGE_PHLOGISTON_VALUE = 135;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_HUMAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL = 136;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_HUMAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL_VALUE = 136;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_FREQUENCY_SHIELD_BAR = 137;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_FREQUENCY_SHIELD_BAR_VALUE = 137;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARGET = 138;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARGET_VALUE = 138;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE = 139;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE_VALUE = 139;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_BRICK_MATRIX = 140;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_BRICK_MATRIX_VALUE = 140;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA = 141;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA_VALUE = 141;
|
||||
/**
|
||||
* <code>AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_SPECIAL_MOVE = 143;</code>
|
||||
*/
|
||||
public static final int AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_SPECIAL_MOVE_VALUE = 143;
|
||||
|
||||
|
||||
public final int getNumber() {
|
||||
if (this == UNRECOGNIZED) {
|
||||
throw new java.lang.IllegalArgumentException(
|
||||
"Can't get the number of an unknown enum value.");
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param value The numeric wire value of the corresponding enum entry.
|
||||
* @return The enum associated with the given numeric wire value.
|
||||
* @deprecated Use {@link #forNumber(int)} instead.
|
||||
*/
|
||||
@java.lang.Deprecated
|
||||
public static AbilityInvokeArgument valueOf(int value) {
|
||||
return forNumber(value);
|
||||
}
|
||||
|
||||
/**
|
||||
* @param value The numeric wire value of the corresponding enum entry.
|
||||
* @return The enum associated with the given numeric wire value.
|
||||
*/
|
||||
public static AbilityInvokeArgument forNumber(int value) {
|
||||
switch (value) {
|
||||
case 0: return AbilityInvokeArgument_ABILITY_NONE;
|
||||
case 1: return AbilityInvokeArgument_ABILITY_META_MODIFIER_CHANGE;
|
||||
case 2: return AbilityInvokeArgument_ABILITY_META_COMMAND_MODIFIER_CHANGE_REQUEST;
|
||||
case 3: return AbilityInvokeArgument_ABILITY_META_SPECIAL_FLOAT_ARGUMENT;
|
||||
case 4: return AbilityInvokeArgument_ABILITY_META_OVERRIDE_PARAM;
|
||||
case 5: return AbilityInvokeArgument_ABILITY_META_CLEAR_OVERRIDE_PARAM;
|
||||
case 6: return AbilityInvokeArgument_ABILITY_META_REINIT_OVERRIDEMAP;
|
||||
case 7: return AbilityInvokeArgument_ABILITY_META_GLOBAL_FLOAT_VALUE;
|
||||
case 8: return AbilityInvokeArgument_ABILITY_META_CLEAR_GLOBAL_FLOAT_VALUE;
|
||||
case 9: return AbilityInvokeArgument_ABILITY_META_ABILITY_ELEMENT_STRENGTH;
|
||||
case 10: return AbilityInvokeArgument_ABILITY_META_ADD_OR_GET_ABILITY_AND_TRIGGER;
|
||||
case 11: return AbilityInvokeArgument_ABILITY_META_SET_KILLED_SETATE;
|
||||
case 12: return AbilityInvokeArgument_ABILITY_META_SET_ABILITY_TRIGGER;
|
||||
case 13: return AbilityInvokeArgument_ABILITY_META_ADD_NEW_ABILITY;
|
||||
case 14: return AbilityInvokeArgument_ABILITY_META_REMOVE_ABILITY;
|
||||
case 15: return AbilityInvokeArgument_ABILITY_META_SET_MODIFIER_APPLY_ENTITY;
|
||||
case 16: return AbilityInvokeArgument_ABILITY_META_MODIFIER_DURABILITY_CHANGE;
|
||||
case 17: return AbilityInvokeArgument_ABILITY_META_ELEMENT_REACTION_VISUAL;
|
||||
case 18: return AbilityInvokeArgument_ABILITY_META_SET_POSE_PARAMETER;
|
||||
case 19: return AbilityInvokeArgument_ABILITY_META_UPDATE_BASE_REACTION_DAMAGE;
|
||||
case 20: return AbilityInvokeArgument_ABILITY_META_TRIGGER_ELEMENT_REACTION;
|
||||
case 21: return AbilityInvokeArgument_ABILITY_META_LOSE_HP;
|
||||
case 22: return AbilityInvokeArgument_ABILITY_META_DURABILITY_IS_ZERO;
|
||||
case 23: return AbilityInvokeArgument_ABILITY_META_TRIGGER_ARKHE_REACTION;
|
||||
case 24: return AbilityInvokeArgument_ABILITY_META_CHANGE_NYX_VALUE;
|
||||
case 50: return AbilityInvokeArgument_ABILITY_ACTION_TRIGGER_ABILITY;
|
||||
case 51: return AbilityInvokeArgument_ABILITY_ACTION_SET_CRASH_DAMAGE;
|
||||
case 52: return AbilityInvokeArgument_ABILITY_ACTION_EFFECT;
|
||||
case 53: return AbilityInvokeArgument_ABILITY_ACTION_SUMMON;
|
||||
case 54: return AbilityInvokeArgument_ABILITY_ACTION_BLINK;
|
||||
case 55: return AbilityInvokeArgument_ABILITY_ACTION_CREATE_GADGET;
|
||||
case 56: return AbilityInvokeArgument_ABILITY_ACTION_APPLY_LEVEL_MODIFIER;
|
||||
case 57: return AbilityInvokeArgument_ABILITY_ACTION_GENERATE_ELEM_BALL;
|
||||
case 58: return AbilityInvokeArgument_ABILITY_ACTION_SET_RANDOM_OVERRIDE_MAP_VALUE;
|
||||
case 59: return AbilityInvokeArgument_ABILITY_ACTION_SERVER_MONSTER_LOG;
|
||||
case 60: return AbilityInvokeArgument_ABILITY_ACTION_CREATE_TILE;
|
||||
case 61: return AbilityInvokeArgument_ABILITY_ACTION_DESTROY_TILE;
|
||||
case 62: return AbilityInvokeArgument_ABILITY_ACTION_FIRE_AFTER_IMAGE;
|
||||
case 63: return AbilityInvokeArgument_ABILITY_ACTION_DEDUCT_STAMINA;
|
||||
case 64: return AbilityInvokeArgument_ABILITY_ACTION_HIT_EFFECT;
|
||||
case 65: return AbilityInvokeArgument_ABILITY_ACTION_SET_BULLET_TRACK_TARGET;
|
||||
case 66: return AbilityInvokeArgument_ABILITY_ACTION_FIREWORK_EFFECT;
|
||||
case 67: return AbilityInvokeArgument_ABILITY_ACTION_LEVEL_BANK_ADD_STUFF;
|
||||
case 68: return AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_FLOAT;
|
||||
case 69: return AbilityInvokeArgument_ABILITY_ACTION_GET_MATERIAL_PARAM_VECTOR;
|
||||
case 70: return AbilityInvokeArgument_ABILITY_ACTION_SPECTACLE_BUILD_RECREATE_GADGET;
|
||||
case 100: return AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_STEER_BY_CAMERA;
|
||||
case 101: return AbilityInvokeArgument_ABILITY_MIXIN_MONSTER_DEFEND;
|
||||
case 102: return AbilityInvokeArgument_ABILITY_MIXIN_WIND_ZONE;
|
||||
case 103: return AbilityInvokeArgument_ABILITY_MIXIN_COST_STAMINA;
|
||||
case 104: return AbilityInvokeArgument_ABILITY_MIXIN_ELITE_SHIELD;
|
||||
case 105: return AbilityInvokeArgument_ABILITY_MIXIN_ELEMENT_SHIELD;
|
||||
case 106: return AbilityInvokeArgument_ABILITY_MIXIN_GLOBAL_SHIELD;
|
||||
case 107: return AbilityInvokeArgument_ABILITY_MIXIN_SHIELD_BAR;
|
||||
case 108: return AbilityInvokeArgument_ABILITY_MIXIN_WIND_SEED_SPAWNER;
|
||||
case 109: return AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_ELEMENT_REACTION;
|
||||
case 110: return AbilityInvokeArgument_ABILITY_MIXIN_FIELD_ENTITY_COUNT_CHANGE;
|
||||
case 111: return AbilityInvokeArgument_ABILITY_MIXIN_SCENE_PROP_SYNC;
|
||||
case 112: return AbilityInvokeArgument_ABILITY_MIXIN_WIDGET_MP_SUPPORT;
|
||||
case 113: return AbilityInvokeArgument_ABILITY_MIXIN_DO_ACTION_BY_SELF_MODIFIER_ELEMENT_DURABILITY_RATIO;
|
||||
case 114: return AbilityInvokeArgument_ABILITY_MIXIN_FIREWORKS_LAUNCHER;
|
||||
case 115: return AbilityInvokeArgument_ABILITY_MIXIN_ATTACK_RESULT_CREATE_COUNT;
|
||||
case 116: return AbilityInvokeArgument_ABILITY_MIXIN_UGC_TIME_CONTROL;
|
||||
case 117: return AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_COMBAT;
|
||||
case 118: return AbilityInvokeArgument_ABILITY_MIXIN_DEATH_ZONE_REGIONAL_PLAY_MIXIN;
|
||||
case 119: return AbilityInvokeArgument_ABILITY_MIXIN_UI_INTERACT;
|
||||
case 120: return AbilityInvokeArgument_ABILITY_MIXIN_SHOOT_FROM_CAMERA;
|
||||
case 121: return AbilityInvokeArgument_ABILITY_MIXIN_ERASE_BRICK_ACTIVITY;
|
||||
case 122: return AbilityInvokeArgument_ABILITY_MIXIN_BREAKOUT;
|
||||
case 123: return AbilityInvokeArgument_ABILITY_MIXIN_DAMAGE_LOAN;
|
||||
case 124: return AbilityInvokeArgument_ABILITY_MIXIN_BROADCAST_GV;
|
||||
case 125: return AbilityInvokeArgument_ABILITY_MIXIN_RECEIVE_GV;
|
||||
case 126: return AbilityInvokeArgument_ABILITY_MIXIN_RAYCAST_SELECT_TARGET;
|
||||
case 127: return AbilityInvokeArgument_ABILITY_MIXIN_ENERGY_CRYSTAL_TARGET;
|
||||
case 128: return AbilityInvokeArgument_ABILITY_MIXIN_ROTATION_FOLLOW_CAMERA;
|
||||
case 129: return AbilityInvokeArgument_ABILITY_MIXIN_BUOYANT_FORCE;
|
||||
case 130: return AbilityInvokeArgument_ABILITY_MIXIN_FILMFEST_BALL_GAME;
|
||||
case 131: return AbilityInvokeArgument_ABILITY_MIXIN_CHECK_SCAN_ENTITY;
|
||||
case 133: return AbilityInvokeArgument_ABILITY_MIXIN_TIME_TRACK_PLAYER;
|
||||
case 134: return AbilityInvokeArgument_ABILITY_MIXIN_PART_FOLLOW;
|
||||
case 135: return AbilityInvokeArgument_ABILITY_MIXIN_CHANGE_PHLOGISTON;
|
||||
case 136: return AbilityInvokeArgument_ABILITY_MIXIN_HUMAN_DRAGON_COLLAB_PICK_PHLOGISTON_BALL;
|
||||
case 137: return AbilityInvokeArgument_ABILITY_MIXIN_FREQUENCY_SHIELD_BAR;
|
||||
case 138: return AbilityInvokeArgument_ABILITY_MIXIN_SHAMAN_VIEW_TARGET;
|
||||
case 139: return AbilityInvokeArgument_ABILITY_MIXIN_ATTACH_MODIFIER_TO_GLOBAL_VALUE;
|
||||
case 140: return AbilityInvokeArgument_ABILITY_MIXIN_BRICK_MATRIX;
|
||||
case 141: return AbilityInvokeArgument_ABILITY_MIXIN_VEHICLE_STEER_BY_CAMERA;
|
||||
case 143: return AbilityInvokeArgument_ABILITY_MIXIN_AVATAR_SPECIAL_MOVE;
|
||||
default: return null;
|
||||
}
|
||||
}
|
||||
|
||||
public static com.google.protobuf.Internal.EnumLiteMap<AbilityInvokeArgument>
|
||||
internalGetValueMap() {
|
||||
return internalValueMap;
|
||||
}
|
||||
private static final com.google.protobuf.Internal.EnumLiteMap<
|
||||
AbilityInvokeArgument> internalValueMap =
|
||||
new com.google.protobuf.Internal.EnumLiteMap<AbilityInvokeArgument>() {
|
||||
public AbilityInvokeArgument findValueByNumber(int number) {
|
||||
return AbilityInvokeArgument.forNumber(number);
|
||||
}
|
||||
};
|
||||
|
||||
public final com.google.protobuf.Descriptors.EnumValueDescriptor
|
||||
getValueDescriptor() {
|
||||
if (this == UNRECOGNIZED) {
|
||||
throw new java.lang.IllegalStateException(
|
||||
"Can't get the descriptor of an unrecognized enum value.");
|
||||
}
|
||||
return getDescriptor().getValues().get(ordinal());
|
||||
}
|
||||
public final com.google.protobuf.Descriptors.EnumDescriptor
|
||||
getDescriptorForType() {
|
||||
return getDescriptor();
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.EnumDescriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.getDescriptor().getEnumTypes().get(0);
|
||||
}
|
||||
|
||||
private static final AbilityInvokeArgument[] VALUES = values();
|
||||
|
||||
public static AbilityInvokeArgument valueOf(
|
||||
com.google.protobuf.Descriptors.EnumValueDescriptor desc) {
|
||||
if (desc.getType() != getDescriptor()) {
|
||||
throw new java.lang.IllegalArgumentException(
|
||||
"EnumValueDescriptor is not for this type.");
|
||||
}
|
||||
if (desc.getIndex() == -1) {
|
||||
return UNRECOGNIZED;
|
||||
}
|
||||
return VALUES[desc.getIndex()];
|
||||
}
|
||||
|
||||
private final int value;
|
||||
|
||||
private AbilityInvokeArgument(int value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(enum_scope:AbilityInvokeArgument)
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,868 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* Protobuf type {@code AbilityInvokeEntryHead}
|
||||
*/
|
||||
public final class AbilityInvokeEntryHead extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AbilityInvokeEntryHead)
|
||||
AbilityInvokeEntryHeadOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AbilityInvokeEntryHead.newBuilder() to construct.
|
||||
private AbilityInvokeEntryHead(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AbilityInvokeEntryHead() {
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AbilityInvokeEntryHead();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AbilityInvokeEntryHead(
|
||||
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 8: {
|
||||
|
||||
localId_ = input.readInt32();
|
||||
break;
|
||||
}
|
||||
case 16: {
|
||||
|
||||
serverBuffUid_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 24: {
|
||||
|
||||
instancedModifierId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 32: {
|
||||
|
||||
isServerbuffModifier_ = input.readBool();
|
||||
break;
|
||||
}
|
||||
case 40: {
|
||||
|
||||
modifierConfigLocalId_ = input.readInt32();
|
||||
break;
|
||||
}
|
||||
case 64: {
|
||||
|
||||
instancedAbilityId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 104: {
|
||||
|
||||
targetId_ = input.readUInt32();
|
||||
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 io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvokeEntryHead_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvokeEntryHead_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.class, io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.Builder.class);
|
||||
}
|
||||
|
||||
public static final int TARGET_ID_FIELD_NUMBER = 13;
|
||||
private int targetId_;
|
||||
/**
|
||||
* <code>uint32 target_id = 13;</code>
|
||||
* @return The targetId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getTargetId() {
|
||||
return targetId_;
|
||||
}
|
||||
|
||||
public static final int MODIFIER_CONFIG_LOCAL_ID_FIELD_NUMBER = 5;
|
||||
private int modifierConfigLocalId_;
|
||||
/**
|
||||
* <code>int32 modifier_config_local_id = 5;</code>
|
||||
* @return The modifierConfigLocalId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getModifierConfigLocalId() {
|
||||
return modifierConfigLocalId_;
|
||||
}
|
||||
|
||||
public static final int SERVER_BUFF_UID_FIELD_NUMBER = 2;
|
||||
private int serverBuffUid_;
|
||||
/**
|
||||
* <code>uint32 server_buff_uid = 2;</code>
|
||||
* @return The serverBuffUid.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getServerBuffUid() {
|
||||
return serverBuffUid_;
|
||||
}
|
||||
|
||||
public static final int IS_SERVERBUFF_MODIFIER_FIELD_NUMBER = 4;
|
||||
private boolean isServerbuffModifier_;
|
||||
/**
|
||||
* <code>bool is_serverbuff_modifier = 4;</code>
|
||||
* @return The isServerbuffModifier.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsServerbuffModifier() {
|
||||
return isServerbuffModifier_;
|
||||
}
|
||||
|
||||
public static final int INSTANCED_MODIFIER_ID_FIELD_NUMBER = 3;
|
||||
private int instancedModifierId_;
|
||||
/**
|
||||
* <code>uint32 instanced_modifier_id = 3;</code>
|
||||
* @return The instancedModifierId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getInstancedModifierId() {
|
||||
return instancedModifierId_;
|
||||
}
|
||||
|
||||
public static final int INSTANCED_ABILITY_ID_FIELD_NUMBER = 8;
|
||||
private int instancedAbilityId_;
|
||||
/**
|
||||
* <code>uint32 instanced_ability_id = 8;</code>
|
||||
* @return The instancedAbilityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getInstancedAbilityId() {
|
||||
return instancedAbilityId_;
|
||||
}
|
||||
|
||||
public static final int LOCAL_ID_FIELD_NUMBER = 1;
|
||||
private int localId_;
|
||||
/**
|
||||
* <code>int32 local_id = 1;</code>
|
||||
* @return The localId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getLocalId() {
|
||||
return localId_;
|
||||
}
|
||||
|
||||
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 (localId_ != 0) {
|
||||
output.writeInt32(1, localId_);
|
||||
}
|
||||
if (serverBuffUid_ != 0) {
|
||||
output.writeUInt32(2, serverBuffUid_);
|
||||
}
|
||||
if (instancedModifierId_ != 0) {
|
||||
output.writeUInt32(3, instancedModifierId_);
|
||||
}
|
||||
if (isServerbuffModifier_ != false) {
|
||||
output.writeBool(4, isServerbuffModifier_);
|
||||
}
|
||||
if (modifierConfigLocalId_ != 0) {
|
||||
output.writeInt32(5, modifierConfigLocalId_);
|
||||
}
|
||||
if (instancedAbilityId_ != 0) {
|
||||
output.writeUInt32(8, instancedAbilityId_);
|
||||
}
|
||||
if (targetId_ != 0) {
|
||||
output.writeUInt32(13, targetId_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (localId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeInt32Size(1, localId_);
|
||||
}
|
||||
if (serverBuffUid_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(2, serverBuffUid_);
|
||||
}
|
||||
if (instancedModifierId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(3, instancedModifierId_);
|
||||
}
|
||||
if (isServerbuffModifier_ != false) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeBoolSize(4, isServerbuffModifier_);
|
||||
}
|
||||
if (modifierConfigLocalId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeInt32Size(5, modifierConfigLocalId_);
|
||||
}
|
||||
if (instancedAbilityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(8, instancedAbilityId_);
|
||||
}
|
||||
if (targetId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(13, targetId_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvokeEntryHead)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead other = (io.grasscutter.net.proto.ability.AbilityInvokeEntryHead) obj;
|
||||
|
||||
if (getTargetId()
|
||||
!= other.getTargetId()) return false;
|
||||
if (getModifierConfigLocalId()
|
||||
!= other.getModifierConfigLocalId()) return false;
|
||||
if (getServerBuffUid()
|
||||
!= other.getServerBuffUid()) return false;
|
||||
if (getIsServerbuffModifier()
|
||||
!= other.getIsServerbuffModifier()) return false;
|
||||
if (getInstancedModifierId()
|
||||
!= other.getInstancedModifierId()) return false;
|
||||
if (getInstancedAbilityId()
|
||||
!= other.getInstancedAbilityId()) return false;
|
||||
if (getLocalId()
|
||||
!= other.getLocalId()) 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) + TARGET_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getTargetId();
|
||||
hash = (37 * hash) + MODIFIER_CONFIG_LOCAL_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getModifierConfigLocalId();
|
||||
hash = (37 * hash) + SERVER_BUFF_UID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getServerBuffUid();
|
||||
hash = (37 * hash) + IS_SERVERBUFF_MODIFIER_FIELD_NUMBER;
|
||||
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
|
||||
getIsServerbuffModifier());
|
||||
hash = (37 * hash) + INSTANCED_MODIFIER_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getInstancedModifierId();
|
||||
hash = (37 * hash) + INSTANCED_ABILITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getInstancedAbilityId();
|
||||
hash = (37 * hash) + LOCAL_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getLocalId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead 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 io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead 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 io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead 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(io.grasscutter.net.proto.ability.AbilityInvokeEntryHead 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;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code AbilityInvokeEntryHead}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AbilityInvokeEntryHead)
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHeadOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvokeEntryHead_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvokeEntryHead_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.class, io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.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();
|
||||
targetId_ = 0;
|
||||
|
||||
modifierConfigLocalId_ = 0;
|
||||
|
||||
serverBuffUid_ = 0;
|
||||
|
||||
isServerbuffModifier_ = false;
|
||||
|
||||
instancedModifierId_ = 0;
|
||||
|
||||
instancedAbilityId_ = 0;
|
||||
|
||||
localId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_AbilityInvokeEntryHead_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryHead getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryHead build() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryHead buildPartial() {
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead result = new io.grasscutter.net.proto.ability.AbilityInvokeEntryHead(this);
|
||||
result.targetId_ = targetId_;
|
||||
result.modifierConfigLocalId_ = modifierConfigLocalId_;
|
||||
result.serverBuffUid_ = serverBuffUid_;
|
||||
result.isServerbuffModifier_ = isServerbuffModifier_;
|
||||
result.instancedModifierId_ = instancedModifierId_;
|
||||
result.instancedAbilityId_ = instancedAbilityId_;
|
||||
result.localId_ = localId_;
|
||||
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 io.grasscutter.net.proto.ability.AbilityInvokeEntryHead) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.AbilityInvokeEntryHead)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.AbilityInvokeEntryHead other) {
|
||||
if (other == io.grasscutter.net.proto.ability.AbilityInvokeEntryHead.getDefaultInstance()) return this;
|
||||
if (other.getTargetId() != 0) {
|
||||
setTargetId(other.getTargetId());
|
||||
}
|
||||
if (other.getModifierConfigLocalId() != 0) {
|
||||
setModifierConfigLocalId(other.getModifierConfigLocalId());
|
||||
}
|
||||
if (other.getServerBuffUid() != 0) {
|
||||
setServerBuffUid(other.getServerBuffUid());
|
||||
}
|
||||
if (other.getIsServerbuffModifier() != false) {
|
||||
setIsServerbuffModifier(other.getIsServerbuffModifier());
|
||||
}
|
||||
if (other.getInstancedModifierId() != 0) {
|
||||
setInstancedModifierId(other.getInstancedModifierId());
|
||||
}
|
||||
if (other.getInstancedAbilityId() != 0) {
|
||||
setInstancedAbilityId(other.getInstancedAbilityId());
|
||||
}
|
||||
if (other.getLocalId() != 0) {
|
||||
setLocalId(other.getLocalId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.AbilityInvokeEntryHead) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private int targetId_ ;
|
||||
/**
|
||||
* <code>uint32 target_id = 13;</code>
|
||||
* @return The targetId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getTargetId() {
|
||||
return targetId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 target_id = 13;</code>
|
||||
* @param value The targetId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setTargetId(int value) {
|
||||
|
||||
targetId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 target_id = 13;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearTargetId() {
|
||||
|
||||
targetId_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int modifierConfigLocalId_ ;
|
||||
/**
|
||||
* <code>int32 modifier_config_local_id = 5;</code>
|
||||
* @return The modifierConfigLocalId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getModifierConfigLocalId() {
|
||||
return modifierConfigLocalId_;
|
||||
}
|
||||
/**
|
||||
* <code>int32 modifier_config_local_id = 5;</code>
|
||||
* @param value The modifierConfigLocalId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setModifierConfigLocalId(int value) {
|
||||
|
||||
modifierConfigLocalId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>int32 modifier_config_local_id = 5;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearModifierConfigLocalId() {
|
||||
|
||||
modifierConfigLocalId_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int serverBuffUid_ ;
|
||||
/**
|
||||
* <code>uint32 server_buff_uid = 2;</code>
|
||||
* @return The serverBuffUid.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getServerBuffUid() {
|
||||
return serverBuffUid_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 server_buff_uid = 2;</code>
|
||||
* @param value The serverBuffUid to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setServerBuffUid(int value) {
|
||||
|
||||
serverBuffUid_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 server_buff_uid = 2;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearServerBuffUid() {
|
||||
|
||||
serverBuffUid_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private boolean isServerbuffModifier_ ;
|
||||
/**
|
||||
* <code>bool is_serverbuff_modifier = 4;</code>
|
||||
* @return The isServerbuffModifier.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsServerbuffModifier() {
|
||||
return isServerbuffModifier_;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_serverbuff_modifier = 4;</code>
|
||||
* @param value The isServerbuffModifier to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setIsServerbuffModifier(boolean value) {
|
||||
|
||||
isServerbuffModifier_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_serverbuff_modifier = 4;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearIsServerbuffModifier() {
|
||||
|
||||
isServerbuffModifier_ = false;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int instancedModifierId_ ;
|
||||
/**
|
||||
* <code>uint32 instanced_modifier_id = 3;</code>
|
||||
* @return The instancedModifierId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getInstancedModifierId() {
|
||||
return instancedModifierId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 instanced_modifier_id = 3;</code>
|
||||
* @param value The instancedModifierId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setInstancedModifierId(int value) {
|
||||
|
||||
instancedModifierId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 instanced_modifier_id = 3;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearInstancedModifierId() {
|
||||
|
||||
instancedModifierId_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int instancedAbilityId_ ;
|
||||
/**
|
||||
* <code>uint32 instanced_ability_id = 8;</code>
|
||||
* @return The instancedAbilityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getInstancedAbilityId() {
|
||||
return instancedAbilityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 instanced_ability_id = 8;</code>
|
||||
* @param value The instancedAbilityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setInstancedAbilityId(int value) {
|
||||
|
||||
instancedAbilityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 instanced_ability_id = 8;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearInstancedAbilityId() {
|
||||
|
||||
instancedAbilityId_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int localId_ ;
|
||||
/**
|
||||
* <code>int32 local_id = 1;</code>
|
||||
* @return The localId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getLocalId() {
|
||||
return localId_;
|
||||
}
|
||||
/**
|
||||
* <code>int32 local_id = 1;</code>
|
||||
* @param value The localId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setLocalId(int value) {
|
||||
|
||||
localId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>int32 local_id = 1;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearLocalId() {
|
||||
|
||||
localId_ = 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:AbilityInvokeEntryHead)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AbilityInvokeEntryHead)
|
||||
private static final io.grasscutter.net.proto.ability.AbilityInvokeEntryHead DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.AbilityInvokeEntryHead();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.AbilityInvokeEntryHead getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AbilityInvokeEntryHead>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AbilityInvokeEntryHead>() {
|
||||
@java.lang.Override
|
||||
public AbilityInvokeEntryHead parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AbilityInvokeEntryHead(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AbilityInvokeEntryHead> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AbilityInvokeEntryHead> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryHead getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+51
@@ -0,0 +1,51 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityInvokeEntryHeadOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityInvokeEntryHead)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>uint32 target_id = 13;</code>
|
||||
* @return The targetId.
|
||||
*/
|
||||
int getTargetId();
|
||||
|
||||
/**
|
||||
* <code>int32 modifier_config_local_id = 5;</code>
|
||||
* @return The modifierConfigLocalId.
|
||||
*/
|
||||
int getModifierConfigLocalId();
|
||||
|
||||
/**
|
||||
* <code>uint32 server_buff_uid = 2;</code>
|
||||
* @return The serverBuffUid.
|
||||
*/
|
||||
int getServerBuffUid();
|
||||
|
||||
/**
|
||||
* <code>bool is_serverbuff_modifier = 4;</code>
|
||||
* @return The isServerbuffModifier.
|
||||
*/
|
||||
boolean getIsServerbuffModifier();
|
||||
|
||||
/**
|
||||
* <code>uint32 instanced_modifier_id = 3;</code>
|
||||
* @return The instancedModifierId.
|
||||
*/
|
||||
int getInstancedModifierId();
|
||||
|
||||
/**
|
||||
* <code>uint32 instanced_ability_id = 8;</code>
|
||||
* @return The instancedAbilityId.
|
||||
*/
|
||||
int getInstancedAbilityId();
|
||||
|
||||
/**
|
||||
* <code>int32 local_id = 1;</code>
|
||||
* @return The localId.
|
||||
*/
|
||||
int getLocalId();
|
||||
}
|
||||
+82
@@ -0,0 +1,82 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface AbilityInvokeEntryOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AbilityInvokeEntry)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>bytes ability_data = 15;</code>
|
||||
* @return The abilityData.
|
||||
*/
|
||||
com.google.protobuf.ByteString getAbilityData();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeEntryHead head = 4;</code>
|
||||
* @return Whether the head field is set.
|
||||
*/
|
||||
boolean hasHead();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntryHead head = 4;</code>
|
||||
* @return The head.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHead getHead();
|
||||
/**
|
||||
* <code>.AbilityInvokeEntryHead head = 4;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryHeadOrBuilder getHeadOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>bool is_ignore_auth = 6;</code>
|
||||
* @return The isIgnoreAuth.
|
||||
*/
|
||||
boolean getIsIgnoreAuth();
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
|
||||
/**
|
||||
* <code>.ForwardType forward_type = 9;</code>
|
||||
* @return The enum numeric value on the wire for forwardType.
|
||||
*/
|
||||
int getForwardTypeValue();
|
||||
/**
|
||||
* <code>.ForwardType forward_type = 9;</code>
|
||||
* @return The forwardType.
|
||||
*/
|
||||
io.grasscutter.net.proto.fight.ForwardType getForwardType();
|
||||
|
||||
/**
|
||||
* <code>uint32 JPHBOKDMDAH = 13;</code>
|
||||
* @return The jPHBOKDMDAH.
|
||||
*/
|
||||
int getJPHBOKDMDAH();
|
||||
|
||||
/**
|
||||
* <code>double total_tick_time = 10;</code>
|
||||
* @return The totalTickTime.
|
||||
*/
|
||||
double getTotalTickTime();
|
||||
|
||||
/**
|
||||
* <code>.AbilityInvokeArgument argument_type = 7;</code>
|
||||
* @return The enum numeric value on the wire for argumentType.
|
||||
*/
|
||||
int getArgumentTypeValue();
|
||||
/**
|
||||
* <code>.AbilityInvokeArgument argument_type = 7;</code>
|
||||
* @return The argumentType.
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeArgument getArgumentType();
|
||||
|
||||
/**
|
||||
* <code>uint32 HNOGKEHFLHE = 8;</code>
|
||||
* @return The hNOGKEHFLHE.
|
||||
*/
|
||||
int getHNOGKEHFLHE();
|
||||
}
|
||||
+778
@@ -0,0 +1,778 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 27198
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilitiesInitFinishCombineNotify}
|
||||
*/
|
||||
public final class ClientAbilitiesInitFinishCombineNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ClientAbilitiesInitFinishCombineNotify)
|
||||
ClientAbilitiesInitFinishCombineNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ClientAbilitiesInitFinishCombineNotify.newBuilder() to construct.
|
||||
private ClientAbilitiesInitFinishCombineNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ClientAbilitiesInitFinishCombineNotify() {
|
||||
entityInvokeList_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ClientAbilitiesInitFinishCombineNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ClientAbilitiesInitFinishCombineNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 50: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
entityInvokeList_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
entityInvokeList_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
entityInvokeList_ = java.util.Collections.unmodifiableList(entityInvokeList_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilitiesInitFinishCombineNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.class, io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int ENTITY_INVOKE_LIST_FIELD_NUMBER = 6;
|
||||
private java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry> entityInvokeList_;
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry> getEntityInvokeListList() {
|
||||
return entityInvokeList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder>
|
||||
getEntityInvokeListOrBuilderList() {
|
||||
return entityInvokeList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityInvokeListCount() {
|
||||
return entityInvokeList_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getEntityInvokeList(int index) {
|
||||
return entityInvokeList_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder getEntityInvokeListOrBuilder(
|
||||
int index) {
|
||||
return entityInvokeList_.get(index);
|
||||
}
|
||||
|
||||
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 {
|
||||
for (int i = 0; i < entityInvokeList_.size(); i++) {
|
||||
output.writeMessage(6, entityInvokeList_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
for (int i = 0; i < entityInvokeList_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(6, entityInvokeList_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify other = (io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify) obj;
|
||||
|
||||
if (!getEntityInvokeListList()
|
||||
.equals(other.getEntityInvokeListList())) 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();
|
||||
if (getEntityInvokeListCount() > 0) {
|
||||
hash = (37 * hash) + ENTITY_INVOKE_LIST_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityInvokeListList().hashCode();
|
||||
}
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify 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 io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify 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 io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify 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(io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify 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>
|
||||
* CmdId: 27198
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilitiesInitFinishCombineNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ClientAbilitiesInitFinishCombineNotify)
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilitiesInitFinishCombineNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.class, io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getEntityInvokeListFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
entityInvokeList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
entityInvokeListBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilitiesInitFinishCombineNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify build() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify result = new io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
entityInvokeList_ = java.util.Collections.unmodifiableList(entityInvokeList_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.entityInvokeList_ = entityInvokeList_;
|
||||
} else {
|
||||
result.entityInvokeList_ = entityInvokeListBuilder_.build();
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify.getDefaultInstance()) return this;
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
if (!other.entityInvokeList_.isEmpty()) {
|
||||
if (entityInvokeList_.isEmpty()) {
|
||||
entityInvokeList_ = other.entityInvokeList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.addAll(other.entityInvokeList_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.entityInvokeList_.isEmpty()) {
|
||||
if (entityInvokeListBuilder_.isEmpty()) {
|
||||
entityInvokeListBuilder_.dispose();
|
||||
entityInvokeListBuilder_ = null;
|
||||
entityInvokeList_ = other.entityInvokeList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
entityInvokeListBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getEntityInvokeListFieldBuilder() : null;
|
||||
} else {
|
||||
entityInvokeListBuilder_.addAllMessages(other.entityInvokeList_);
|
||||
}
|
||||
}
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry> entityInvokeList_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureEntityInvokeListIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
entityInvokeList_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry>(entityInvokeList_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder> entityInvokeListBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry> getEntityInvokeListList() {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(entityInvokeList_);
|
||||
} else {
|
||||
return entityInvokeListBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public int getEntityInvokeListCount() {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
return entityInvokeList_.size();
|
||||
} else {
|
||||
return entityInvokeListBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getEntityInvokeList(int index) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
return entityInvokeList_.get(index);
|
||||
} else {
|
||||
return entityInvokeListBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder setEntityInvokeList(
|
||||
int index, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry value) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder setEntityInvokeList(
|
||||
int index, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder builderForValue) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder addEntityInvokeList(io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry value) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder addEntityInvokeList(
|
||||
int index, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry value) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder addEntityInvokeList(
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder builderForValue) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder addEntityInvokeList(
|
||||
int index, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder builderForValue) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder addAllEntityInvokeList(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry> values) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, entityInvokeList_);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder clearEntityInvokeList() {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
entityInvokeList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public Builder removeEntityInvokeList(int index) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
ensureEntityInvokeListIsMutable();
|
||||
entityInvokeList_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
entityInvokeListBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder getEntityInvokeListBuilder(
|
||||
int index) {
|
||||
return getEntityInvokeListFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder getEntityInvokeListOrBuilder(
|
||||
int index) {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
return entityInvokeList_.get(index); } else {
|
||||
return entityInvokeListBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder>
|
||||
getEntityInvokeListOrBuilderList() {
|
||||
if (entityInvokeListBuilder_ != null) {
|
||||
return entityInvokeListBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(entityInvokeList_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder addEntityInvokeListBuilder() {
|
||||
return getEntityInvokeListFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder addEntityInvokeListBuilder(
|
||||
int index) {
|
||||
return getEntityInvokeListFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder>
|
||||
getEntityInvokeListBuilderList() {
|
||||
return getEntityInvokeListFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder>
|
||||
getEntityInvokeListFieldBuilder() {
|
||||
if (entityInvokeListBuilder_ == null) {
|
||||
entityInvokeListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder>(
|
||||
entityInvokeList_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
entityInvokeList_ = null;
|
||||
}
|
||||
return entityInvokeListBuilder_;
|
||||
}
|
||||
@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:ClientAbilitiesInitFinishCombineNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ClientAbilitiesInitFinishCombineNotify)
|
||||
private static final io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ClientAbilitiesInitFinishCombineNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ClientAbilitiesInitFinishCombineNotify>() {
|
||||
@java.lang.Override
|
||||
public ClientAbilitiesInitFinishCombineNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ClientAbilitiesInitFinishCombineNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ClientAbilitiesInitFinishCombineNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ClientAbilitiesInitFinishCombineNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilitiesInitFinishCombineNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface ClientAbilitiesInitFinishCombineNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ClientAbilitiesInitFinishCombineNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry>
|
||||
getEntityInvokeListList();
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getEntityInvokeList(int index);
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
int getEntityInvokeListCount();
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder>
|
||||
getEntityInvokeListOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .EntityAbilityInvokeEntry entity_invoke_list = 6;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder getEntityInvokeListOrBuilder(
|
||||
int index);
|
||||
}
|
||||
+907
@@ -0,0 +1,907 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 8119
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilityChangeNotify}
|
||||
*/
|
||||
public final class ClientAbilityChangeNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ClientAbilityChangeNotify)
|
||||
ClientAbilityChangeNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ClientAbilityChangeNotify.newBuilder() to construct.
|
||||
private ClientAbilityChangeNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ClientAbilityChangeNotify() {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ClientAbilityChangeNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ClientAbilityChangeNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 80: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 96: {
|
||||
|
||||
isInitHash_ = input.readBool();
|
||||
break;
|
||||
}
|
||||
case 122: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
jJBLBLMDPHC_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.ability.AbilityInvokeEntry.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.class, io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int JJBLBLMDPHC_FIELD_NUMBER = 15;
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_;
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
return jJBLBLMDPHC_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
|
||||
public static final int IS_INIT_HASH_FIELD_NUMBER = 12;
|
||||
private boolean isInitHash_;
|
||||
/**
|
||||
* <code>bool is_init_hash = 12;</code>
|
||||
* @return The isInitHash.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsInitHash() {
|
||||
return isInitHash_;
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 10;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 10;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 (entityId_ != 0) {
|
||||
output.writeUInt32(10, entityId_);
|
||||
}
|
||||
if (isInitHash_ != false) {
|
||||
output.writeBool(12, isInitHash_);
|
||||
}
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
output.writeMessage(15, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(10, entityId_);
|
||||
}
|
||||
if (isInitHash_ != false) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeBoolSize(12, isInitHash_);
|
||||
}
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(15, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilityChangeNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify other = (io.grasscutter.net.proto.ability.ClientAbilityChangeNotify) obj;
|
||||
|
||||
if (!getJJBLBLMDPHCList()
|
||||
.equals(other.getJJBLBLMDPHCList())) return false;
|
||||
if (getIsInitHash()
|
||||
!= other.getIsInitHash()) return false;
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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();
|
||||
if (getJJBLBLMDPHCCount() > 0) {
|
||||
hash = (37 * hash) + JJBLBLMDPHC_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getJJBLBLMDPHCList().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + IS_INIT_HASH_FIELD_NUMBER;
|
||||
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
|
||||
getIsInitHash());
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify 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 io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify 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 io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify 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(io.grasscutter.net.proto.ability.ClientAbilityChangeNotify 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>
|
||||
* CmdId: 8119
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilityChangeNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ClientAbilityChangeNotify)
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.class, io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getJJBLBLMDPHCFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
isInitHash_ = false;
|
||||
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityChangeNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityChangeNotify build() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityChangeNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify result = new io.grasscutter.net.proto.ability.ClientAbilityChangeNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHC_;
|
||||
} else {
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHCBuilder_.build();
|
||||
}
|
||||
result.isInitHash_ = isInitHash_;
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilityChangeNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.ClientAbilityChangeNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.ClientAbilityChangeNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.ClientAbilityChangeNotify.getDefaultInstance()) return this;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHC_.isEmpty()) {
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.addAll(other.jJBLBLMDPHC_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHCBuilder_.isEmpty()) {
|
||||
jJBLBLMDPHCBuilder_.dispose();
|
||||
jJBLBLMDPHCBuilder_ = null;
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
jJBLBLMDPHCBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getJJBLBLMDPHCFieldBuilder() : null;
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(other.jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (other.getIsInitHash() != false) {
|
||||
setIsInitHash(other.getIsInitHash());
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityChangeNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.ClientAbilityChangeNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureJJBLBLMDPHCIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>(jJBLBLMDPHC_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder> jJBLBLMDPHCBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.size();
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addAllJJBLBLMDPHC(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntry> values) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, jJBLBLMDPHC_);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder clearJJBLBLMDPHC() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder removeJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder getJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index); } else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
if (jJBLBLMDPHCBuilder_ != null) {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder() {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder>
|
||||
getJJBLBLMDPHCBuilderList() {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCFieldBuilder() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHCBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>(
|
||||
jJBLBLMDPHC_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
jJBLBLMDPHC_ = null;
|
||||
}
|
||||
return jJBLBLMDPHCBuilder_;
|
||||
}
|
||||
|
||||
private boolean isInitHash_ ;
|
||||
/**
|
||||
* <code>bool is_init_hash = 12;</code>
|
||||
* @return The isInitHash.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsInitHash() {
|
||||
return isInitHash_;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_init_hash = 12;</code>
|
||||
* @param value The isInitHash to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setIsInitHash(boolean value) {
|
||||
|
||||
isInitHash_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_init_hash = 12;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearIsInitHash() {
|
||||
|
||||
isInitHash_ = false;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 10;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 10;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 10;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:ClientAbilityChangeNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ClientAbilityChangeNotify)
|
||||
private static final io.grasscutter.net.proto.ability.ClientAbilityChangeNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.ClientAbilityChangeNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityChangeNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ClientAbilityChangeNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ClientAbilityChangeNotify>() {
|
||||
@java.lang.Override
|
||||
public ClientAbilityChangeNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ClientAbilityChangeNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ClientAbilityChangeNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ClientAbilityChangeNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityChangeNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+45
@@ -0,0 +1,45 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface ClientAbilityChangeNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ClientAbilityChangeNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry>
|
||||
getJJBLBLMDPHCList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index);
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
int getJJBLBLMDPHCCount();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>bool is_init_hash = 12;</code>
|
||||
* @return The isInitHash.
|
||||
*/
|
||||
boolean getIsInitHash();
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 10;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
+842
@@ -0,0 +1,842 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 22991
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilityInitFinishNotify}
|
||||
*/
|
||||
public final class ClientAbilityInitFinishNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ClientAbilityInitFinishNotify)
|
||||
ClientAbilityInitFinishNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ClientAbilityInitFinishNotify.newBuilder() to construct.
|
||||
private ClientAbilityInitFinishNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ClientAbilityInitFinishNotify() {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ClientAbilityInitFinishNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ClientAbilityInitFinishNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 32: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 122: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
jJBLBLMDPHC_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.ability.AbilityInvokeEntry.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityInitFinishNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityInitFinishNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.class, io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int JJBLBLMDPHC_FIELD_NUMBER = 15;
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_;
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
return jJBLBLMDPHC_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 4;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 4;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 (entityId_ != 0) {
|
||||
output.writeUInt32(4, entityId_);
|
||||
}
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
output.writeMessage(15, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(4, entityId_);
|
||||
}
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(15, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify other = (io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify) obj;
|
||||
|
||||
if (!getJJBLBLMDPHCList()
|
||||
.equals(other.getJJBLBLMDPHCList())) return false;
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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();
|
||||
if (getJJBLBLMDPHCCount() > 0) {
|
||||
hash = (37 * hash) + JJBLBLMDPHC_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getJJBLBLMDPHCList().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify 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 io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify 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 io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify 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(io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify 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>
|
||||
* CmdId: 22991
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ClientAbilityInitFinishNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ClientAbilityInitFinishNotify)
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityInitFinishNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityInitFinishNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.class, io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getJJBLBLMDPHCFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ClientAbilityInitFinishNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify build() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify result = new io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHC_;
|
||||
} else {
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHCBuilder_.build();
|
||||
}
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify.getDefaultInstance()) return this;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHC_.isEmpty()) {
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.addAll(other.jJBLBLMDPHC_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHCBuilder_.isEmpty()) {
|
||||
jJBLBLMDPHCBuilder_.dispose();
|
||||
jJBLBLMDPHCBuilder_ = null;
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
jJBLBLMDPHCBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getJJBLBLMDPHCFieldBuilder() : null;
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(other.jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureJJBLBLMDPHCIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>(jJBLBLMDPHC_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder> jJBLBLMDPHCBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.size();
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder addAllJJBLBLMDPHC(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntry> values) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, jJBLBLMDPHC_);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder clearJJBLBLMDPHC() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public Builder removeJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder getJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index); } else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
if (jJBLBLMDPHCBuilder_ != null) {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder() {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder>
|
||||
getJJBLBLMDPHCBuilderList() {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCFieldBuilder() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHCBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>(
|
||||
jJBLBLMDPHC_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
jJBLBLMDPHC_ = null;
|
||||
}
|
||||
return jJBLBLMDPHCBuilder_;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 4;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 4;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 4;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:ClientAbilityInitFinishNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ClientAbilityInitFinishNotify)
|
||||
private static final io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ClientAbilityInitFinishNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ClientAbilityInitFinishNotify>() {
|
||||
@java.lang.Override
|
||||
public ClientAbilityInitFinishNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ClientAbilityInitFinishNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ClientAbilityInitFinishNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ClientAbilityInitFinishNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ClientAbilityInitFinishNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface ClientAbilityInitFinishNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ClientAbilityInitFinishNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry>
|
||||
getJJBLBLMDPHCList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index);
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
int getJJBLBLMDPHCCount();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 15;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 4;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
+834
@@ -0,0 +1,834 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* Protobuf type {@code EntityAbilityInvokeEntry}
|
||||
*/
|
||||
public final class EntityAbilityInvokeEntry extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:EntityAbilityInvokeEntry)
|
||||
EntityAbilityInvokeEntryOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use EntityAbilityInvokeEntry.newBuilder() to construct.
|
||||
private EntityAbilityInvokeEntry(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private EntityAbilityInvokeEntry() {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new EntityAbilityInvokeEntry();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private EntityAbilityInvokeEntry(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 82: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
jJBLBLMDPHC_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.ability.AbilityInvokeEntry.parser(), extensionRegistry));
|
||||
break;
|
||||
}
|
||||
case 88: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_EntityAbilityInvokeEntry_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_EntityAbilityInvokeEntry_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.class, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder.class);
|
||||
}
|
||||
|
||||
public static final int JJBLBLMDPHC_FIELD_NUMBER = 10;
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_;
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
return jJBLBLMDPHC_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
return jJBLBLMDPHC_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 11;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 {
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
output.writeMessage(10, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
output.writeUInt32(11, entityId_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
for (int i = 0; i < jJBLBLMDPHC_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(10, jJBLBLMDPHC_.get(i));
|
||||
}
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(11, entityId_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry other = (io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry) obj;
|
||||
|
||||
if (!getJJBLBLMDPHCList()
|
||||
.equals(other.getJJBLBLMDPHCList())) return false;
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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();
|
||||
if (getJJBLBLMDPHCCount() > 0) {
|
||||
hash = (37 * hash) + JJBLBLMDPHC_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getJJBLBLMDPHCList().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry 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 io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry 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 io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry 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(io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry 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;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code EntityAbilityInvokeEntry}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:EntityAbilityInvokeEntry)
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntryOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_EntityAbilityInvokeEntry_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_EntityAbilityInvokeEntry_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.class, io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getJJBLBLMDPHCFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_EntityAbilityInvokeEntry_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry build() {
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry buildPartial() {
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry result = new io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHC_;
|
||||
} else {
|
||||
result.jJBLBLMDPHC_ = jJBLBLMDPHCBuilder_.build();
|
||||
}
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry other) {
|
||||
if (other == io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry.getDefaultInstance()) return this;
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHC_.isEmpty()) {
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.addAll(other.jJBLBLMDPHC_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.jJBLBLMDPHC_.isEmpty()) {
|
||||
if (jJBLBLMDPHCBuilder_.isEmpty()) {
|
||||
jJBLBLMDPHCBuilder_.dispose();
|
||||
jJBLBLMDPHCBuilder_ = null;
|
||||
jJBLBLMDPHC_ = other.jJBLBLMDPHC_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
jJBLBLMDPHCBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getJJBLBLMDPHCFieldBuilder() : null;
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(other.jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> jJBLBLMDPHC_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureJJBLBLMDPHCIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
jJBLBLMDPHC_ = new java.util.ArrayList<io.grasscutter.net.proto.ability.AbilityInvokeEntry>(jJBLBLMDPHC_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder> jJBLBLMDPHCBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry> getJJBLBLMDPHCList() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public int getJJBLBLMDPHCCount() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.size();
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index);
|
||||
} else {
|
||||
return jJBLBLMDPHCBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder setJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry value) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder addJJBLBLMDPHC(
|
||||
int index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder builderForValue) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder addAllJJBLBLMDPHC(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntry> values) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, jJBLBLMDPHC_);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder clearJJBLBLMDPHC() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHC_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public Builder removeJJBLBLMDPHC(int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
ensureJJBLBLMDPHCIsMutable();
|
||||
jJBLBLMDPHC_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
jJBLBLMDPHCBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder getJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index) {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
return jJBLBLMDPHC_.get(index); } else {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList() {
|
||||
if (jJBLBLMDPHCBuilder_ != null) {
|
||||
return jJBLBLMDPHCBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(jJBLBLMDPHC_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder() {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder addJJBLBLMDPHCBuilder(
|
||||
int index) {
|
||||
return getJJBLBLMDPHCFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.ability.AbilityInvokeEntry.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder>
|
||||
getJJBLBLMDPHCBuilderList() {
|
||||
return getJJBLBLMDPHCFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCFieldBuilder() {
|
||||
if (jJBLBLMDPHCBuilder_ == null) {
|
||||
jJBLBLMDPHCBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry, io.grasscutter.net.proto.ability.AbilityInvokeEntry.Builder, io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>(
|
||||
jJBLBLMDPHC_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
jJBLBLMDPHC_ = null;
|
||||
}
|
||||
return jJBLBLMDPHCBuilder_;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:EntityAbilityInvokeEntry)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:EntityAbilityInvokeEntry)
|
||||
private static final io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<EntityAbilityInvokeEntry>
|
||||
PARSER = new com.google.protobuf.AbstractParser<EntityAbilityInvokeEntry>() {
|
||||
@java.lang.Override
|
||||
public EntityAbilityInvokeEntry parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new EntityAbilityInvokeEntry(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<EntityAbilityInvokeEntry> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<EntityAbilityInvokeEntry> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.EntityAbilityInvokeEntry getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+39
@@ -0,0 +1,39 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface EntityAbilityInvokeEntryOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:EntityAbilityInvokeEntry)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.ability.AbilityInvokeEntry>
|
||||
getJJBLBLMDPHCList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntry getJJBLBLMDPHC(int index);
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
int getJJBLBLMDPHCCount();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder>
|
||||
getJJBLBLMDPHCOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .AbilityInvokeEntry JJBLBLMDPHC = 10;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.ability.AbilityInvokeEntryOrBuilder getJJBLBLMDPHCOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 11;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
+621
@@ -0,0 +1,621 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 29440
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ServerGlobalValueChangeNotify}
|
||||
*/
|
||||
public final class ServerGlobalValueChangeNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ServerGlobalValueChangeNotify)
|
||||
ServerGlobalValueChangeNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ServerGlobalValueChangeNotify.newBuilder() to construct.
|
||||
private ServerGlobalValueChangeNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ServerGlobalValueChangeNotify() {
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ServerGlobalValueChangeNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ServerGlobalValueChangeNotify(
|
||||
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 8: {
|
||||
|
||||
entityId_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 72: {
|
||||
|
||||
keyHash_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 109: {
|
||||
|
||||
value_ = input.readFloat();
|
||||
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 io.grasscutter.net.proto.ability.Ability.internal_static_ServerGlobalValueChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ServerGlobalValueChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.class, io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int VALUE_FIELD_NUMBER = 13;
|
||||
private float value_;
|
||||
/**
|
||||
* <code>float value = 13;</code>
|
||||
* @return The value.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public float getValue() {
|
||||
return value_;
|
||||
}
|
||||
|
||||
public static final int KEY_HASH_FIELD_NUMBER = 9;
|
||||
private int keyHash_;
|
||||
/**
|
||||
* <code>uint32 key_hash = 9;</code>
|
||||
* @return The keyHash.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getKeyHash() {
|
||||
return keyHash_;
|
||||
}
|
||||
|
||||
public static final int ENTITY_ID_FIELD_NUMBER = 1;
|
||||
private int entityId_;
|
||||
/**
|
||||
* <code>uint32 entity_id = 1;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
|
||||
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 (entityId_ != 0) {
|
||||
output.writeUInt32(1, entityId_);
|
||||
}
|
||||
if (keyHash_ != 0) {
|
||||
output.writeUInt32(9, keyHash_);
|
||||
}
|
||||
if (value_ != 0F) {
|
||||
output.writeFloat(13, value_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (entityId_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(1, entityId_);
|
||||
}
|
||||
if (keyHash_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(9, keyHash_);
|
||||
}
|
||||
if (value_ != 0F) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeFloatSize(13, value_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify other = (io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify) obj;
|
||||
|
||||
if (java.lang.Float.floatToIntBits(getValue())
|
||||
!= java.lang.Float.floatToIntBits(
|
||||
other.getValue())) return false;
|
||||
if (getKeyHash()
|
||||
!= other.getKeyHash()) return false;
|
||||
if (getEntityId()
|
||||
!= other.getEntityId()) 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) + VALUE_FIELD_NUMBER;
|
||||
hash = (53 * hash) + java.lang.Float.floatToIntBits(
|
||||
getValue());
|
||||
hash = (37 * hash) + KEY_HASH_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getKeyHash();
|
||||
hash = (37 * hash) + ENTITY_ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getEntityId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify 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 io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify 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 io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify 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(io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify 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>
|
||||
* CmdId: 29440
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code ServerGlobalValueChangeNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ServerGlobalValueChangeNotify)
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ServerGlobalValueChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ServerGlobalValueChangeNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.class, io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.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();
|
||||
value_ = 0F;
|
||||
|
||||
keyHash_ = 0;
|
||||
|
||||
entityId_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.ability.Ability.internal_static_ServerGlobalValueChangeNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify build() {
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify buildPartial() {
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify result = new io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify(this);
|
||||
result.value_ = value_;
|
||||
result.keyHash_ = keyHash_;
|
||||
result.entityId_ = entityId_;
|
||||
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 io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify other) {
|
||||
if (other == io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify.getDefaultInstance()) return this;
|
||||
if (other.getValue() != 0F) {
|
||||
setValue(other.getValue());
|
||||
}
|
||||
if (other.getKeyHash() != 0) {
|
||||
setKeyHash(other.getKeyHash());
|
||||
}
|
||||
if (other.getEntityId() != 0) {
|
||||
setEntityId(other.getEntityId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private float value_ ;
|
||||
/**
|
||||
* <code>float value = 13;</code>
|
||||
* @return The value.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public float getValue() {
|
||||
return value_;
|
||||
}
|
||||
/**
|
||||
* <code>float value = 13;</code>
|
||||
* @param value The value to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setValue(float value) {
|
||||
|
||||
value_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>float value = 13;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearValue() {
|
||||
|
||||
value_ = 0F;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int keyHash_ ;
|
||||
/**
|
||||
* <code>uint32 key_hash = 9;</code>
|
||||
* @return The keyHash.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getKeyHash() {
|
||||
return keyHash_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 key_hash = 9;</code>
|
||||
* @param value The keyHash to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setKeyHash(int value) {
|
||||
|
||||
keyHash_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 key_hash = 9;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearKeyHash() {
|
||||
|
||||
keyHash_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int entityId_ ;
|
||||
/**
|
||||
* <code>uint32 entity_id = 1;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getEntityId() {
|
||||
return entityId_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 1;</code>
|
||||
* @param value The entityId to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setEntityId(int value) {
|
||||
|
||||
entityId_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 entity_id = 1;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearEntityId() {
|
||||
|
||||
entityId_ = 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:ServerGlobalValueChangeNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ServerGlobalValueChangeNotify)
|
||||
private static final io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ServerGlobalValueChangeNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ServerGlobalValueChangeNotify>() {
|
||||
@java.lang.Override
|
||||
public ServerGlobalValueChangeNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ServerGlobalValueChangeNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ServerGlobalValueChangeNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ServerGlobalValueChangeNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.ability.ServerGlobalValueChangeNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: ability.proto
|
||||
|
||||
package io.grasscutter.net.proto.ability;
|
||||
|
||||
public interface ServerGlobalValueChangeNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ServerGlobalValueChangeNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>float value = 13;</code>
|
||||
* @return The value.
|
||||
*/
|
||||
float getValue();
|
||||
|
||||
/**
|
||||
* <code>uint32 key_hash = 9;</code>
|
||||
* @return The keyHash.
|
||||
*/
|
||||
int getKeyHash();
|
||||
|
||||
/**
|
||||
* <code>uint32 entity_id = 1;</code>
|
||||
* @return The entityId.
|
||||
*/
|
||||
int getEntityId();
|
||||
}
|
||||
@@ -0,0 +1,771 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
/**
|
||||
* Protobuf type {@code Achievement}
|
||||
*/
|
||||
public final class Achievement extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:Achievement)
|
||||
AchievementOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use Achievement.newBuilder() to construct.
|
||||
private Achievement(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private Achievement() {
|
||||
status_ = 0;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new Achievement();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private Achievement(
|
||||
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 48: {
|
||||
int rawValue = input.readEnum();
|
||||
|
||||
status_ = rawValue;
|
||||
break;
|
||||
}
|
||||
case 56: {
|
||||
|
||||
finishTimestamp_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 64: {
|
||||
|
||||
curProgress_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 96: {
|
||||
|
||||
totalProgress_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 104: {
|
||||
|
||||
id_ = input.readUInt32();
|
||||
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 io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_Achievement_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_Achievement_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.Achievement.class, io.grasscutter.net.proto.achievement.Achievement.Builder.class);
|
||||
}
|
||||
|
||||
public static final int FINISH_TIMESTAMP_FIELD_NUMBER = 7;
|
||||
private int finishTimestamp_;
|
||||
/**
|
||||
* <code>uint32 finish_timestamp = 7;</code>
|
||||
* @return The finishTimestamp.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getFinishTimestamp() {
|
||||
return finishTimestamp_;
|
||||
}
|
||||
|
||||
public static final int STATUS_FIELD_NUMBER = 6;
|
||||
private int status_;
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The enum numeric value on the wire for status.
|
||||
*/
|
||||
@java.lang.Override public int getStatusValue() {
|
||||
return status_;
|
||||
}
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The status.
|
||||
*/
|
||||
@java.lang.Override public io.grasscutter.net.proto.coop.Status getStatus() {
|
||||
@SuppressWarnings("deprecation")
|
||||
io.grasscutter.net.proto.coop.Status result = io.grasscutter.net.proto.coop.Status.valueOf(status_);
|
||||
return result == null ? io.grasscutter.net.proto.coop.Status.UNRECOGNIZED : result;
|
||||
}
|
||||
|
||||
public static final int TOTAL_PROGRESS_FIELD_NUMBER = 12;
|
||||
private int totalProgress_;
|
||||
/**
|
||||
* <code>uint32 total_progress = 12;</code>
|
||||
* @return The totalProgress.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getTotalProgress() {
|
||||
return totalProgress_;
|
||||
}
|
||||
|
||||
public static final int CUR_PROGRESS_FIELD_NUMBER = 8;
|
||||
private int curProgress_;
|
||||
/**
|
||||
* <code>uint32 cur_progress = 8;</code>
|
||||
* @return The curProgress.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getCurProgress() {
|
||||
return curProgress_;
|
||||
}
|
||||
|
||||
public static final int ID_FIELD_NUMBER = 13;
|
||||
private int id_;
|
||||
/**
|
||||
* <code>uint32 id = 13;</code>
|
||||
* @return The id.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getId() {
|
||||
return id_;
|
||||
}
|
||||
|
||||
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 (status_ != io.grasscutter.net.proto.coop.Status.Status_INVALID.getNumber()) {
|
||||
output.writeEnum(6, status_);
|
||||
}
|
||||
if (finishTimestamp_ != 0) {
|
||||
output.writeUInt32(7, finishTimestamp_);
|
||||
}
|
||||
if (curProgress_ != 0) {
|
||||
output.writeUInt32(8, curProgress_);
|
||||
}
|
||||
if (totalProgress_ != 0) {
|
||||
output.writeUInt32(12, totalProgress_);
|
||||
}
|
||||
if (id_ != 0) {
|
||||
output.writeUInt32(13, id_);
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (status_ != io.grasscutter.net.proto.coop.Status.Status_INVALID.getNumber()) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeEnumSize(6, status_);
|
||||
}
|
||||
if (finishTimestamp_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(7, finishTimestamp_);
|
||||
}
|
||||
if (curProgress_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(8, curProgress_);
|
||||
}
|
||||
if (totalProgress_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(12, totalProgress_);
|
||||
}
|
||||
if (id_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(13, id_);
|
||||
}
|
||||
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 io.grasscutter.net.proto.achievement.Achievement)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.achievement.Achievement other = (io.grasscutter.net.proto.achievement.Achievement) obj;
|
||||
|
||||
if (getFinishTimestamp()
|
||||
!= other.getFinishTimestamp()) return false;
|
||||
if (status_ != other.status_) return false;
|
||||
if (getTotalProgress()
|
||||
!= other.getTotalProgress()) return false;
|
||||
if (getCurProgress()
|
||||
!= other.getCurProgress()) return false;
|
||||
if (getId()
|
||||
!= other.getId()) 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) + FINISH_TIMESTAMP_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getFinishTimestamp();
|
||||
hash = (37 * hash) + STATUS_FIELD_NUMBER;
|
||||
hash = (53 * hash) + status_;
|
||||
hash = (37 * hash) + TOTAL_PROGRESS_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getTotalProgress();
|
||||
hash = (37 * hash) + CUR_PROGRESS_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getCurProgress();
|
||||
hash = (37 * hash) + ID_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getId();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement 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 io.grasscutter.net.proto.achievement.Achievement parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement 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 io.grasscutter.net.proto.achievement.Achievement parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.Achievement 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(io.grasscutter.net.proto.achievement.Achievement 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;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code Achievement}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:Achievement)
|
||||
io.grasscutter.net.proto.achievement.AchievementOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_Achievement_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_Achievement_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.Achievement.class, io.grasscutter.net.proto.achievement.Achievement.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.achievement.Achievement.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();
|
||||
finishTimestamp_ = 0;
|
||||
|
||||
status_ = 0;
|
||||
|
||||
totalProgress_ = 0;
|
||||
|
||||
curProgress_ = 0;
|
||||
|
||||
id_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_Achievement_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement build() {
|
||||
io.grasscutter.net.proto.achievement.Achievement result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement buildPartial() {
|
||||
io.grasscutter.net.proto.achievement.Achievement result = new io.grasscutter.net.proto.achievement.Achievement(this);
|
||||
result.finishTimestamp_ = finishTimestamp_;
|
||||
result.status_ = status_;
|
||||
result.totalProgress_ = totalProgress_;
|
||||
result.curProgress_ = curProgress_;
|
||||
result.id_ = id_;
|
||||
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 io.grasscutter.net.proto.achievement.Achievement) {
|
||||
return mergeFrom((io.grasscutter.net.proto.achievement.Achievement)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.achievement.Achievement other) {
|
||||
if (other == io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance()) return this;
|
||||
if (other.getFinishTimestamp() != 0) {
|
||||
setFinishTimestamp(other.getFinishTimestamp());
|
||||
}
|
||||
if (other.status_ != 0) {
|
||||
setStatusValue(other.getStatusValue());
|
||||
}
|
||||
if (other.getTotalProgress() != 0) {
|
||||
setTotalProgress(other.getTotalProgress());
|
||||
}
|
||||
if (other.getCurProgress() != 0) {
|
||||
setCurProgress(other.getCurProgress());
|
||||
}
|
||||
if (other.getId() != 0) {
|
||||
setId(other.getId());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.achievement.Achievement parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.achievement.Achievement) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private int finishTimestamp_ ;
|
||||
/**
|
||||
* <code>uint32 finish_timestamp = 7;</code>
|
||||
* @return The finishTimestamp.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getFinishTimestamp() {
|
||||
return finishTimestamp_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 finish_timestamp = 7;</code>
|
||||
* @param value The finishTimestamp to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setFinishTimestamp(int value) {
|
||||
|
||||
finishTimestamp_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 finish_timestamp = 7;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearFinishTimestamp() {
|
||||
|
||||
finishTimestamp_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int status_ = 0;
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The enum numeric value on the wire for status.
|
||||
*/
|
||||
@java.lang.Override public int getStatusValue() {
|
||||
return status_;
|
||||
}
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @param value The enum numeric value on the wire for status to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setStatusValue(int value) {
|
||||
|
||||
status_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The status.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.coop.Status getStatus() {
|
||||
@SuppressWarnings("deprecation")
|
||||
io.grasscutter.net.proto.coop.Status result = io.grasscutter.net.proto.coop.Status.valueOf(status_);
|
||||
return result == null ? io.grasscutter.net.proto.coop.Status.UNRECOGNIZED : result;
|
||||
}
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @param value The status to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setStatus(io.grasscutter.net.proto.coop.Status value) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
|
||||
status_ = value.getNumber();
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearStatus() {
|
||||
|
||||
status_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int totalProgress_ ;
|
||||
/**
|
||||
* <code>uint32 total_progress = 12;</code>
|
||||
* @return The totalProgress.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getTotalProgress() {
|
||||
return totalProgress_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 total_progress = 12;</code>
|
||||
* @param value The totalProgress to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setTotalProgress(int value) {
|
||||
|
||||
totalProgress_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 total_progress = 12;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearTotalProgress() {
|
||||
|
||||
totalProgress_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int curProgress_ ;
|
||||
/**
|
||||
* <code>uint32 cur_progress = 8;</code>
|
||||
* @return The curProgress.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getCurProgress() {
|
||||
return curProgress_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 cur_progress = 8;</code>
|
||||
* @param value The curProgress to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setCurProgress(int value) {
|
||||
|
||||
curProgress_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 cur_progress = 8;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearCurProgress() {
|
||||
|
||||
curProgress_ = 0;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int id_ ;
|
||||
/**
|
||||
* <code>uint32 id = 13;</code>
|
||||
* @return The id.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getId() {
|
||||
return id_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 id = 13;</code>
|
||||
* @param value The id to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setId(int value) {
|
||||
|
||||
id_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 id = 13;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearId() {
|
||||
|
||||
id_ = 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:Achievement)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:Achievement)
|
||||
private static final io.grasscutter.net.proto.achievement.Achievement DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.achievement.Achievement();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.Achievement getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<Achievement>
|
||||
PARSER = new com.google.protobuf.AbstractParser<Achievement>() {
|
||||
@java.lang.Override
|
||||
public Achievement parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new Achievement(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<Achievement> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<Achievement> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+955
@@ -0,0 +1,955 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 1007
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AchievementAllDataNotify}
|
||||
*/
|
||||
public final class AchievementAllDataNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AchievementAllDataNotify)
|
||||
AchievementAllDataNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AchievementAllDataNotify.newBuilder() to construct.
|
||||
private AchievementAllDataNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AchievementAllDataNotify() {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
rewardTakenGoalIdList_ = emptyIntList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AchievementAllDataNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AchievementAllDataNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 56: {
|
||||
if (!((mutable_bitField0_ & 0x00000002) != 0)) {
|
||||
rewardTakenGoalIdList_ = newIntList();
|
||||
mutable_bitField0_ |= 0x00000002;
|
||||
}
|
||||
rewardTakenGoalIdList_.addInt(input.readUInt32());
|
||||
break;
|
||||
}
|
||||
case 58: {
|
||||
int length = input.readRawVarint32();
|
||||
int limit = input.pushLimit(length);
|
||||
if (!((mutable_bitField0_ & 0x00000002) != 0) && input.getBytesUntilLimit() > 0) {
|
||||
rewardTakenGoalIdList_ = newIntList();
|
||||
mutable_bitField0_ |= 0x00000002;
|
||||
}
|
||||
while (input.getBytesUntilLimit() > 0) {
|
||||
rewardTakenGoalIdList_.addInt(input.readUInt32());
|
||||
}
|
||||
input.popLimit(limit);
|
||||
break;
|
||||
}
|
||||
case 74: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = new java.util.ArrayList<io.grasscutter.net.proto.achievement.Achievement>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
achievementList_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.achievement.Achievement.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000002) != 0)) {
|
||||
rewardTakenGoalIdList_.makeImmutable(); // C
|
||||
}
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = java.util.Collections.unmodifiableList(achievementList_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementAllDataNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementAllDataNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify.class, io.grasscutter.net.proto.achievement.AchievementAllDataNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int ACHIEVEMENT_LIST_FIELD_NUMBER = 9;
|
||||
private java.util.List<io.grasscutter.net.proto.achievement.Achievement> achievementList_;
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement> getAchievementListList() {
|
||||
return achievementList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList() {
|
||||
return achievementList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getAchievementListCount() {
|
||||
return achievementList_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index) {
|
||||
return achievementList_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index) {
|
||||
return achievementList_.get(index);
|
||||
}
|
||||
|
||||
public static final int REWARD_TAKEN_GOAL_ID_LIST_FIELD_NUMBER = 7;
|
||||
private com.google.protobuf.Internal.IntList rewardTakenGoalIdList_;
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return A list containing the rewardTakenGoalIdList.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<java.lang.Integer>
|
||||
getRewardTakenGoalIdListList() {
|
||||
return rewardTakenGoalIdList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return The count of rewardTakenGoalIdList.
|
||||
*/
|
||||
public int getRewardTakenGoalIdListCount() {
|
||||
return rewardTakenGoalIdList_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param index The index of the element to return.
|
||||
* @return The rewardTakenGoalIdList at the given index.
|
||||
*/
|
||||
public int getRewardTakenGoalIdList(int index) {
|
||||
return rewardTakenGoalIdList_.getInt(index);
|
||||
}
|
||||
private int rewardTakenGoalIdListMemoizedSerializedSize = -1;
|
||||
|
||||
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 {
|
||||
getSerializedSize();
|
||||
if (getRewardTakenGoalIdListList().size() > 0) {
|
||||
output.writeUInt32NoTag(58);
|
||||
output.writeUInt32NoTag(rewardTakenGoalIdListMemoizedSerializedSize);
|
||||
}
|
||||
for (int i = 0; i < rewardTakenGoalIdList_.size(); i++) {
|
||||
output.writeUInt32NoTag(rewardTakenGoalIdList_.getInt(i));
|
||||
}
|
||||
for (int i = 0; i < achievementList_.size(); i++) {
|
||||
output.writeMessage(9, achievementList_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
{
|
||||
int dataSize = 0;
|
||||
for (int i = 0; i < rewardTakenGoalIdList_.size(); i++) {
|
||||
dataSize += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32SizeNoTag(rewardTakenGoalIdList_.getInt(i));
|
||||
}
|
||||
size += dataSize;
|
||||
if (!getRewardTakenGoalIdListList().isEmpty()) {
|
||||
size += 1;
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeInt32SizeNoTag(dataSize);
|
||||
}
|
||||
rewardTakenGoalIdListMemoizedSerializedSize = dataSize;
|
||||
}
|
||||
for (int i = 0; i < achievementList_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(9, achievementList_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.achievement.AchievementAllDataNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify other = (io.grasscutter.net.proto.achievement.AchievementAllDataNotify) obj;
|
||||
|
||||
if (!getAchievementListList()
|
||||
.equals(other.getAchievementListList())) return false;
|
||||
if (!getRewardTakenGoalIdListList()
|
||||
.equals(other.getRewardTakenGoalIdListList())) 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();
|
||||
if (getAchievementListCount() > 0) {
|
||||
hash = (37 * hash) + ACHIEVEMENT_LIST_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getAchievementListList().hashCode();
|
||||
}
|
||||
if (getRewardTakenGoalIdListCount() > 0) {
|
||||
hash = (37 * hash) + REWARD_TAKEN_GOAL_ID_LIST_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getRewardTakenGoalIdListList().hashCode();
|
||||
}
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify 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 io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify 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 io.grasscutter.net.proto.achievement.AchievementAllDataNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify 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(io.grasscutter.net.proto.achievement.AchievementAllDataNotify 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>
|
||||
* CmdId: 1007
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AchievementAllDataNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AchievementAllDataNotify)
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementAllDataNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementAllDataNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify.class, io.grasscutter.net.proto.achievement.AchievementAllDataNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.achievement.AchievementAllDataNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getAchievementListFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
achievementListBuilder_.clear();
|
||||
}
|
||||
rewardTakenGoalIdList_ = emptyIntList();
|
||||
bitField0_ = (bitField0_ & ~0x00000002);
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementAllDataNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementAllDataNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementAllDataNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementAllDataNotify build() {
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementAllDataNotify buildPartial() {
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify result = new io.grasscutter.net.proto.achievement.AchievementAllDataNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = java.util.Collections.unmodifiableList(achievementList_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.achievementList_ = achievementList_;
|
||||
} else {
|
||||
result.achievementList_ = achievementListBuilder_.build();
|
||||
}
|
||||
if (((bitField0_ & 0x00000002) != 0)) {
|
||||
rewardTakenGoalIdList_.makeImmutable();
|
||||
bitField0_ = (bitField0_ & ~0x00000002);
|
||||
}
|
||||
result.rewardTakenGoalIdList_ = rewardTakenGoalIdList_;
|
||||
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 io.grasscutter.net.proto.achievement.AchievementAllDataNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.achievement.AchievementAllDataNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.achievement.AchievementAllDataNotify other) {
|
||||
if (other == io.grasscutter.net.proto.achievement.AchievementAllDataNotify.getDefaultInstance()) return this;
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (!other.achievementList_.isEmpty()) {
|
||||
if (achievementList_.isEmpty()) {
|
||||
achievementList_ = other.achievementList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.addAll(other.achievementList_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.achievementList_.isEmpty()) {
|
||||
if (achievementListBuilder_.isEmpty()) {
|
||||
achievementListBuilder_.dispose();
|
||||
achievementListBuilder_ = null;
|
||||
achievementList_ = other.achievementList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
achievementListBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getAchievementListFieldBuilder() : null;
|
||||
} else {
|
||||
achievementListBuilder_.addAllMessages(other.achievementList_);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!other.rewardTakenGoalIdList_.isEmpty()) {
|
||||
if (rewardTakenGoalIdList_.isEmpty()) {
|
||||
rewardTakenGoalIdList_ = other.rewardTakenGoalIdList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000002);
|
||||
} else {
|
||||
ensureRewardTakenGoalIdListIsMutable();
|
||||
rewardTakenGoalIdList_.addAll(other.rewardTakenGoalIdList_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.achievement.AchievementAllDataNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.achievement.AchievementAllDataNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.achievement.Achievement> achievementList_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureAchievementListIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = new java.util.ArrayList<io.grasscutter.net.proto.achievement.Achievement>(achievementList_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder> achievementListBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement> getAchievementListList() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(achievementList_);
|
||||
} else {
|
||||
return achievementListBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public int getAchievementListCount() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.size();
|
||||
} else {
|
||||
return achievementListBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.get(index);
|
||||
} else {
|
||||
return achievementListBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder setAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder setAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder addAchievementList(io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder addAllAchievementList(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.achievement.Achievement> values) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, achievementList_);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder clearAchievementList() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public Builder removeAchievementList(int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder getAchievementListBuilder(
|
||||
int index) {
|
||||
return getAchievementListFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.get(index); } else {
|
||||
return achievementListBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList() {
|
||||
if (achievementListBuilder_ != null) {
|
||||
return achievementListBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(achievementList_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder addAchievementListBuilder() {
|
||||
return getAchievementListFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder addAchievementListBuilder(
|
||||
int index) {
|
||||
return getAchievementListFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement.Builder>
|
||||
getAchievementListBuilderList() {
|
||||
return getAchievementListFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListFieldBuilder() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder>(
|
||||
achievementList_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
achievementList_ = null;
|
||||
}
|
||||
return achievementListBuilder_;
|
||||
}
|
||||
|
||||
private com.google.protobuf.Internal.IntList rewardTakenGoalIdList_ = emptyIntList();
|
||||
private void ensureRewardTakenGoalIdListIsMutable() {
|
||||
if (!((bitField0_ & 0x00000002) != 0)) {
|
||||
rewardTakenGoalIdList_ = mutableCopy(rewardTakenGoalIdList_);
|
||||
bitField0_ |= 0x00000002;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return A list containing the rewardTakenGoalIdList.
|
||||
*/
|
||||
public java.util.List<java.lang.Integer>
|
||||
getRewardTakenGoalIdListList() {
|
||||
return ((bitField0_ & 0x00000002) != 0) ?
|
||||
java.util.Collections.unmodifiableList(rewardTakenGoalIdList_) : rewardTakenGoalIdList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return The count of rewardTakenGoalIdList.
|
||||
*/
|
||||
public int getRewardTakenGoalIdListCount() {
|
||||
return rewardTakenGoalIdList_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param index The index of the element to return.
|
||||
* @return The rewardTakenGoalIdList at the given index.
|
||||
*/
|
||||
public int getRewardTakenGoalIdList(int index) {
|
||||
return rewardTakenGoalIdList_.getInt(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param index The index to set the value at.
|
||||
* @param value The rewardTakenGoalIdList to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setRewardTakenGoalIdList(
|
||||
int index, int value) {
|
||||
ensureRewardTakenGoalIdListIsMutable();
|
||||
rewardTakenGoalIdList_.setInt(index, value);
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param value The rewardTakenGoalIdList to add.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder addRewardTakenGoalIdList(int value) {
|
||||
ensureRewardTakenGoalIdListIsMutable();
|
||||
rewardTakenGoalIdList_.addInt(value);
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param values The rewardTakenGoalIdList to add.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder addAllRewardTakenGoalIdList(
|
||||
java.lang.Iterable<? extends java.lang.Integer> values) {
|
||||
ensureRewardTakenGoalIdListIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, rewardTakenGoalIdList_);
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearRewardTakenGoalIdList() {
|
||||
rewardTakenGoalIdList_ = emptyIntList();
|
||||
bitField0_ = (bitField0_ & ~0x00000002);
|
||||
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:AchievementAllDataNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AchievementAllDataNotify)
|
||||
private static final io.grasscutter.net.proto.achievement.AchievementAllDataNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.achievement.AchievementAllDataNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.AchievementAllDataNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AchievementAllDataNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AchievementAllDataNotify>() {
|
||||
@java.lang.Override
|
||||
public AchievementAllDataNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AchievementAllDataNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AchievementAllDataNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AchievementAllDataNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementAllDataNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+50
@@ -0,0 +1,50 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
public interface AchievementAllDataNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AchievementAllDataNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.achievement.Achievement>
|
||||
getAchievementListList();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index);
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
int getAchievementListCount();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 9;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return A list containing the rewardTakenGoalIdList.
|
||||
*/
|
||||
java.util.List<java.lang.Integer> getRewardTakenGoalIdListList();
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @return The count of rewardTakenGoalIdList.
|
||||
*/
|
||||
int getRewardTakenGoalIdListCount();
|
||||
/**
|
||||
* <code>repeated uint32 reward_taken_goal_id_list = 7;</code>
|
||||
* @param index The index of the element to return.
|
||||
* @return The rewardTakenGoalIdList at the given index.
|
||||
*/
|
||||
int getRewardTakenGoalIdList(int index);
|
||||
}
|
||||
+44
@@ -0,0 +1,44 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
public interface AchievementOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:Achievement)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>uint32 finish_timestamp = 7;</code>
|
||||
* @return The finishTimestamp.
|
||||
*/
|
||||
int getFinishTimestamp();
|
||||
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The enum numeric value on the wire for status.
|
||||
*/
|
||||
int getStatusValue();
|
||||
/**
|
||||
* <code>.Status status = 6;</code>
|
||||
* @return The status.
|
||||
*/
|
||||
io.grasscutter.net.proto.coop.Status getStatus();
|
||||
|
||||
/**
|
||||
* <code>uint32 total_progress = 12;</code>
|
||||
* @return The totalProgress.
|
||||
*/
|
||||
int getTotalProgress();
|
||||
|
||||
/**
|
||||
* <code>uint32 cur_progress = 8;</code>
|
||||
* @return The curProgress.
|
||||
*/
|
||||
int getCurProgress();
|
||||
|
||||
/**
|
||||
* <code>uint32 id = 13;</code>
|
||||
* @return The id.
|
||||
*/
|
||||
int getId();
|
||||
}
|
||||
+79
@@ -0,0 +1,79 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
public final class AchievementOuterClass {
|
||||
private AchievementOuterClass() {}
|
||||
public static void registerAllExtensions(
|
||||
com.google.protobuf.ExtensionRegistryLite registry) {
|
||||
}
|
||||
|
||||
public static void registerAllExtensions(
|
||||
com.google.protobuf.ExtensionRegistry registry) {
|
||||
registerAllExtensions(
|
||||
(com.google.protobuf.ExtensionRegistryLite) registry);
|
||||
}
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AchievementAllDataNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AchievementAllDataNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_AchievementUpdateNotify_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_AchievementUpdateNotify_fieldAccessorTable;
|
||||
static final com.google.protobuf.Descriptors.Descriptor
|
||||
internal_static_Achievement_descriptor;
|
||||
static final
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internal_static_Achievement_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\021achievement.proto\032\ncoop.proto\"e\n\030Achie" +
|
||||
"vementAllDataNotify\022&\n\020achievement_list\030" +
|
||||
"\t \003(\0132\014.Achievement\022!\n\031reward_taken_goal" +
|
||||
"_id_list\030\007 \003(\r\"A\n\027AchievementUpdateNotif" +
|
||||
"y\022&\n\020achievement_list\030\001 \003(\0132\014.Achievemen" +
|
||||
"t\"z\n\013Achievement\022\030\n\020finish_timestamp\030\007 \001" +
|
||||
"(\r\022\027\n\006status\030\006 \001(\0162\007.Status\022\026\n\016total_pro" +
|
||||
"gress\030\014 \001(\r\022\024\n\014cur_progress\030\010 \001(\r\022\n\n\002id\030" +
|
||||
"\r \001(\rB(\n$io.grasscutter.net.proto.achiev" +
|
||||
"ementP\001b\006proto3"
|
||||
};
|
||||
descriptor = com.google.protobuf.Descriptors.FileDescriptor
|
||||
.internalBuildGeneratedFileFrom(descriptorData,
|
||||
new com.google.protobuf.Descriptors.FileDescriptor[] {
|
||||
io.grasscutter.net.proto.coop.Coop.getDescriptor(),
|
||||
});
|
||||
internal_static_AchievementAllDataNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(0);
|
||||
internal_static_AchievementAllDataNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AchievementAllDataNotify_descriptor,
|
||||
new java.lang.String[] { "AchievementList", "RewardTakenGoalIdList", });
|
||||
internal_static_AchievementUpdateNotify_descriptor =
|
||||
getDescriptor().getMessageTypes().get(1);
|
||||
internal_static_AchievementUpdateNotify_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_AchievementUpdateNotify_descriptor,
|
||||
new java.lang.String[] { "AchievementList", });
|
||||
internal_static_Achievement_descriptor =
|
||||
getDescriptor().getMessageTypes().get(2);
|
||||
internal_static_Achievement_fieldAccessorTable = new
|
||||
com.google.protobuf.GeneratedMessageV3.FieldAccessorTable(
|
||||
internal_static_Achievement_descriptor,
|
||||
new java.lang.String[] { "FinishTimestamp", "Status", "TotalProgress", "CurProgress", "Id", });
|
||||
io.grasscutter.net.proto.coop.Coop.getDescriptor();
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(outer_class_scope)
|
||||
}
|
||||
+778
@@ -0,0 +1,778 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
* CmdId: 25279
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AchievementUpdateNotify}
|
||||
*/
|
||||
public final class AchievementUpdateNotify extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:AchievementUpdateNotify)
|
||||
AchievementUpdateNotifyOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use AchievementUpdateNotify.newBuilder() to construct.
|
||||
private AchievementUpdateNotify(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private AchievementUpdateNotify() {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new AchievementUpdateNotify();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private AchievementUpdateNotify(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 10: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = new java.util.ArrayList<io.grasscutter.net.proto.achievement.Achievement>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
achievementList_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.achievement.Achievement.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = java.util.Collections.unmodifiableList(achievementList_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementUpdateNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementUpdateNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify.class, io.grasscutter.net.proto.achievement.AchievementUpdateNotify.Builder.class);
|
||||
}
|
||||
|
||||
public static final int ACHIEVEMENT_LIST_FIELD_NUMBER = 1;
|
||||
private java.util.List<io.grasscutter.net.proto.achievement.Achievement> achievementList_;
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement> getAchievementListList() {
|
||||
return achievementList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList() {
|
||||
return achievementList_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getAchievementListCount() {
|
||||
return achievementList_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index) {
|
||||
return achievementList_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index) {
|
||||
return achievementList_.get(index);
|
||||
}
|
||||
|
||||
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 {
|
||||
for (int i = 0; i < achievementList_.size(); i++) {
|
||||
output.writeMessage(1, achievementList_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
for (int i = 0; i < achievementList_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(1, achievementList_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.achievement.AchievementUpdateNotify)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify other = (io.grasscutter.net.proto.achievement.AchievementUpdateNotify) obj;
|
||||
|
||||
if (!getAchievementListList()
|
||||
.equals(other.getAchievementListList())) 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();
|
||||
if (getAchievementListCount() > 0) {
|
||||
hash = (37 * hash) + ACHIEVEMENT_LIST_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getAchievementListList().hashCode();
|
||||
}
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify 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 io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify 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 io.grasscutter.net.proto.achievement.AchievementUpdateNotify parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify 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(io.grasscutter.net.proto.achievement.AchievementUpdateNotify 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>
|
||||
* CmdId: 25279
|
||||
* </pre>
|
||||
*
|
||||
* Protobuf type {@code AchievementUpdateNotify}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:AchievementUpdateNotify)
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotifyOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementUpdateNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementUpdateNotify_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify.class, io.grasscutter.net.proto.achievement.AchievementUpdateNotify.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.achievement.AchievementUpdateNotify.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getAchievementListFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
achievementListBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementOuterClass.internal_static_AchievementUpdateNotify_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementUpdateNotify getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.achievement.AchievementUpdateNotify.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementUpdateNotify build() {
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementUpdateNotify buildPartial() {
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify result = new io.grasscutter.net.proto.achievement.AchievementUpdateNotify(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = java.util.Collections.unmodifiableList(achievementList_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.achievementList_ = achievementList_;
|
||||
} else {
|
||||
result.achievementList_ = achievementListBuilder_.build();
|
||||
}
|
||||
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 io.grasscutter.net.proto.achievement.AchievementUpdateNotify) {
|
||||
return mergeFrom((io.grasscutter.net.proto.achievement.AchievementUpdateNotify)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.achievement.AchievementUpdateNotify other) {
|
||||
if (other == io.grasscutter.net.proto.achievement.AchievementUpdateNotify.getDefaultInstance()) return this;
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (!other.achievementList_.isEmpty()) {
|
||||
if (achievementList_.isEmpty()) {
|
||||
achievementList_ = other.achievementList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.addAll(other.achievementList_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.achievementList_.isEmpty()) {
|
||||
if (achievementListBuilder_.isEmpty()) {
|
||||
achievementListBuilder_.dispose();
|
||||
achievementListBuilder_ = null;
|
||||
achievementList_ = other.achievementList_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
achievementListBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getAchievementListFieldBuilder() : null;
|
||||
} else {
|
||||
achievementListBuilder_.addAllMessages(other.achievementList_);
|
||||
}
|
||||
}
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.achievement.AchievementUpdateNotify parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.achievement.AchievementUpdateNotify) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.achievement.Achievement> achievementList_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureAchievementListIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
achievementList_ = new java.util.ArrayList<io.grasscutter.net.proto.achievement.Achievement>(achievementList_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder> achievementListBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement> getAchievementListList() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(achievementList_);
|
||||
} else {
|
||||
return achievementListBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public int getAchievementListCount() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.size();
|
||||
} else {
|
||||
return achievementListBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.get(index);
|
||||
} else {
|
||||
return achievementListBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder setAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder setAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder addAchievementList(io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement value) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder addAchievementList(
|
||||
int index, io.grasscutter.net.proto.achievement.Achievement.Builder builderForValue) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder addAllAchievementList(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.achievement.Achievement> values) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, achievementList_);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder clearAchievementList() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementList_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public Builder removeAchievementList(int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
ensureAchievementListIsMutable();
|
||||
achievementList_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
achievementListBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder getAchievementListBuilder(
|
||||
int index) {
|
||||
return getAchievementListFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index) {
|
||||
if (achievementListBuilder_ == null) {
|
||||
return achievementList_.get(index); } else {
|
||||
return achievementListBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList() {
|
||||
if (achievementListBuilder_ != null) {
|
||||
return achievementListBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(achievementList_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder addAchievementListBuilder() {
|
||||
return getAchievementListFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.achievement.Achievement.Builder addAchievementListBuilder(
|
||||
int index) {
|
||||
return getAchievementListFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.achievement.Achievement.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.achievement.Achievement.Builder>
|
||||
getAchievementListBuilderList() {
|
||||
return getAchievementListFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListFieldBuilder() {
|
||||
if (achievementListBuilder_ == null) {
|
||||
achievementListBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.achievement.Achievement, io.grasscutter.net.proto.achievement.Achievement.Builder, io.grasscutter.net.proto.achievement.AchievementOrBuilder>(
|
||||
achievementList_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
achievementList_ = null;
|
||||
}
|
||||
return achievementListBuilder_;
|
||||
}
|
||||
@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:AchievementUpdateNotify)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:AchievementUpdateNotify)
|
||||
private static final io.grasscutter.net.proto.achievement.AchievementUpdateNotify DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.achievement.AchievementUpdateNotify();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.achievement.AchievementUpdateNotify getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<AchievementUpdateNotify>
|
||||
PARSER = new com.google.protobuf.AbstractParser<AchievementUpdateNotify>() {
|
||||
@java.lang.Override
|
||||
public AchievementUpdateNotify parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new AchievementUpdateNotify(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<AchievementUpdateNotify> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<AchievementUpdateNotify> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.achievement.AchievementUpdateNotify getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: achievement.proto
|
||||
|
||||
package io.grasscutter.net.proto.achievement;
|
||||
|
||||
public interface AchievementUpdateNotifyOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:AchievementUpdateNotify)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.achievement.Achievement>
|
||||
getAchievementListList();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.achievement.Achievement getAchievementList(int index);
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
int getAchievementListCount();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.achievement.AchievementOrBuilder>
|
||||
getAchievementListOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .Achievement achievement_list = 1;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.achievement.AchievementOrBuilder getAchievementListOrBuilder(
|
||||
int index);
|
||||
}
|
||||
@@ -0,0 +1,899 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: activity.proto
|
||||
|
||||
package io.grasscutter.net.proto.activity;
|
||||
|
||||
/**
|
||||
* Protobuf type {@code ABGKEDBGBLN}
|
||||
*/
|
||||
public final class ABGKEDBGBLN extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ABGKEDBGBLN)
|
||||
ABGKEDBGBLNOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ABGKEDBGBLN.newBuilder() to construct.
|
||||
private ABGKEDBGBLN(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ABGKEDBGBLN() {
|
||||
jLNAKOLCDGN_ = java.util.Collections.emptyList();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ABGKEDBGBLN();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ABGKEDBGBLN(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
this();
|
||||
if (extensionRegistry == null) {
|
||||
throw new java.lang.NullPointerException();
|
||||
}
|
||||
int mutable_bitField0_ = 0;
|
||||
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 8: {
|
||||
|
||||
lBEINAHAHKA_ = input.readUInt32();
|
||||
break;
|
||||
}
|
||||
case 24: {
|
||||
|
||||
isOpen_ = input.readBool();
|
||||
break;
|
||||
}
|
||||
case 90: {
|
||||
if (!((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jLNAKOLCDGN_ = new java.util.ArrayList<io.grasscutter.net.proto.activity.GFNEAFEFCCL>();
|
||||
mutable_bitField0_ |= 0x00000001;
|
||||
}
|
||||
jLNAKOLCDGN_.add(
|
||||
input.readMessage(io.grasscutter.net.proto.activity.GFNEAFEFCCL.parser(), extensionRegistry));
|
||||
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 {
|
||||
if (((mutable_bitField0_ & 0x00000001) != 0)) {
|
||||
jLNAKOLCDGN_ = java.util.Collections.unmodifiableList(jLNAKOLCDGN_);
|
||||
}
|
||||
this.unknownFields = unknownFields.build();
|
||||
makeExtensionsImmutable();
|
||||
}
|
||||
}
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABGKEDBGBLN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABGKEDBGBLN_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN.class, io.grasscutter.net.proto.activity.ABGKEDBGBLN.Builder.class);
|
||||
}
|
||||
|
||||
public static final int JLNAKOLCDGN_FIELD_NUMBER = 11;
|
||||
private java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL> jLNAKOLCDGN_;
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL> getJLNAKOLCDGNList() {
|
||||
return jLNAKOLCDGN_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public java.util.List<? extends io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder>
|
||||
getJLNAKOLCDGNOrBuilderList() {
|
||||
return jLNAKOLCDGN_;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getJLNAKOLCDGNCount() {
|
||||
return jLNAKOLCDGN_.size();
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCL getJLNAKOLCDGN(int index) {
|
||||
return jLNAKOLCDGN_.get(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder getJLNAKOLCDGNOrBuilder(
|
||||
int index) {
|
||||
return jLNAKOLCDGN_.get(index);
|
||||
}
|
||||
|
||||
public static final int IS_OPEN_FIELD_NUMBER = 3;
|
||||
private boolean isOpen_;
|
||||
/**
|
||||
* <code>bool is_open = 3;</code>
|
||||
* @return The isOpen.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsOpen() {
|
||||
return isOpen_;
|
||||
}
|
||||
|
||||
public static final int LBEINAHAHKA_FIELD_NUMBER = 1;
|
||||
private int lBEINAHAHKA_;
|
||||
/**
|
||||
* <code>uint32 LBEINAHAHKA = 1;</code>
|
||||
* @return The lBEINAHAHKA.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getLBEINAHAHKA() {
|
||||
return lBEINAHAHKA_;
|
||||
}
|
||||
|
||||
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 (lBEINAHAHKA_ != 0) {
|
||||
output.writeUInt32(1, lBEINAHAHKA_);
|
||||
}
|
||||
if (isOpen_ != false) {
|
||||
output.writeBool(3, isOpen_);
|
||||
}
|
||||
for (int i = 0; i < jLNAKOLCDGN_.size(); i++) {
|
||||
output.writeMessage(11, jLNAKOLCDGN_.get(i));
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (lBEINAHAHKA_ != 0) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeUInt32Size(1, lBEINAHAHKA_);
|
||||
}
|
||||
if (isOpen_ != false) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeBoolSize(3, isOpen_);
|
||||
}
|
||||
for (int i = 0; i < jLNAKOLCDGN_.size(); i++) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(11, jLNAKOLCDGN_.get(i));
|
||||
}
|
||||
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 io.grasscutter.net.proto.activity.ABGKEDBGBLN)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN other = (io.grasscutter.net.proto.activity.ABGKEDBGBLN) obj;
|
||||
|
||||
if (!getJLNAKOLCDGNList()
|
||||
.equals(other.getJLNAKOLCDGNList())) return false;
|
||||
if (getIsOpen()
|
||||
!= other.getIsOpen()) return false;
|
||||
if (getLBEINAHAHKA()
|
||||
!= other.getLBEINAHAHKA()) 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();
|
||||
if (getJLNAKOLCDGNCount() > 0) {
|
||||
hash = (37 * hash) + JLNAKOLCDGN_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getJLNAKOLCDGNList().hashCode();
|
||||
}
|
||||
hash = (37 * hash) + IS_OPEN_FIELD_NUMBER;
|
||||
hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(
|
||||
getIsOpen());
|
||||
hash = (37 * hash) + LBEINAHAHKA_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getLBEINAHAHKA();
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN 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 io.grasscutter.net.proto.activity.ABGKEDBGBLN parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN 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 io.grasscutter.net.proto.activity.ABGKEDBGBLN parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN 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(io.grasscutter.net.proto.activity.ABGKEDBGBLN 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;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code ABGKEDBGBLN}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ABGKEDBGBLN)
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLNOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABGKEDBGBLN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABGKEDBGBLN_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN.class, io.grasscutter.net.proto.activity.ABGKEDBGBLN.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.activity.ABGKEDBGBLN.newBuilder()
|
||||
private Builder() {
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
|
||||
private Builder(
|
||||
com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
|
||||
super(parent);
|
||||
maybeForceBuilderInitialization();
|
||||
}
|
||||
private void maybeForceBuilderInitialization() {
|
||||
if (com.google.protobuf.GeneratedMessageV3
|
||||
.alwaysUseFieldBuilders) {
|
||||
getJLNAKOLCDGNFieldBuilder();
|
||||
}
|
||||
}
|
||||
@java.lang.Override
|
||||
public Builder clear() {
|
||||
super.clear();
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
jLNAKOLCDGN_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.clear();
|
||||
}
|
||||
isOpen_ = false;
|
||||
|
||||
lBEINAHAHKA_ = 0;
|
||||
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABGKEDBGBLN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABGKEDBGBLN getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.activity.ABGKEDBGBLN.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABGKEDBGBLN build() {
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABGKEDBGBLN buildPartial() {
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN result = new io.grasscutter.net.proto.activity.ABGKEDBGBLN(this);
|
||||
int from_bitField0_ = bitField0_;
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
if (((bitField0_ & 0x00000001) != 0)) {
|
||||
jLNAKOLCDGN_ = java.util.Collections.unmodifiableList(jLNAKOLCDGN_);
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
}
|
||||
result.jLNAKOLCDGN_ = jLNAKOLCDGN_;
|
||||
} else {
|
||||
result.jLNAKOLCDGN_ = jLNAKOLCDGNBuilder_.build();
|
||||
}
|
||||
result.isOpen_ = isOpen_;
|
||||
result.lBEINAHAHKA_ = lBEINAHAHKA_;
|
||||
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 io.grasscutter.net.proto.activity.ABGKEDBGBLN) {
|
||||
return mergeFrom((io.grasscutter.net.proto.activity.ABGKEDBGBLN)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.activity.ABGKEDBGBLN other) {
|
||||
if (other == io.grasscutter.net.proto.activity.ABGKEDBGBLN.getDefaultInstance()) return this;
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
if (!other.jLNAKOLCDGN_.isEmpty()) {
|
||||
if (jLNAKOLCDGN_.isEmpty()) {
|
||||
jLNAKOLCDGN_ = other.jLNAKOLCDGN_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
} else {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.addAll(other.jLNAKOLCDGN_);
|
||||
}
|
||||
onChanged();
|
||||
}
|
||||
} else {
|
||||
if (!other.jLNAKOLCDGN_.isEmpty()) {
|
||||
if (jLNAKOLCDGNBuilder_.isEmpty()) {
|
||||
jLNAKOLCDGNBuilder_.dispose();
|
||||
jLNAKOLCDGNBuilder_ = null;
|
||||
jLNAKOLCDGN_ = other.jLNAKOLCDGN_;
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
jLNAKOLCDGNBuilder_ =
|
||||
com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders ?
|
||||
getJLNAKOLCDGNFieldBuilder() : null;
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addAllMessages(other.jLNAKOLCDGN_);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (other.getIsOpen() != false) {
|
||||
setIsOpen(other.getIsOpen());
|
||||
}
|
||||
if (other.getLBEINAHAHKA() != 0) {
|
||||
setLBEINAHAHKA(other.getLBEINAHAHKA());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.activity.ABGKEDBGBLN parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.activity.ABGKEDBGBLN) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
private int bitField0_;
|
||||
|
||||
private java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL> jLNAKOLCDGN_ =
|
||||
java.util.Collections.emptyList();
|
||||
private void ensureJLNAKOLCDGNIsMutable() {
|
||||
if (!((bitField0_ & 0x00000001) != 0)) {
|
||||
jLNAKOLCDGN_ = new java.util.ArrayList<io.grasscutter.net.proto.activity.GFNEAFEFCCL>(jLNAKOLCDGN_);
|
||||
bitField0_ |= 0x00000001;
|
||||
}
|
||||
}
|
||||
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL, io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder, io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder> jLNAKOLCDGNBuilder_;
|
||||
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL> getJLNAKOLCDGNList() {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
return java.util.Collections.unmodifiableList(jLNAKOLCDGN_);
|
||||
} else {
|
||||
return jLNAKOLCDGNBuilder_.getMessageList();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public int getJLNAKOLCDGNCount() {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
return jLNAKOLCDGN_.size();
|
||||
} else {
|
||||
return jLNAKOLCDGNBuilder_.getCount();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCL getJLNAKOLCDGN(int index) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
return jLNAKOLCDGN_.get(index);
|
||||
} else {
|
||||
return jLNAKOLCDGNBuilder_.getMessage(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder setJLNAKOLCDGN(
|
||||
int index, io.grasscutter.net.proto.activity.GFNEAFEFCCL value) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.set(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.setMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder setJLNAKOLCDGN(
|
||||
int index, io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder builderForValue) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.set(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.setMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder addJLNAKOLCDGN(io.grasscutter.net.proto.activity.GFNEAFEFCCL value) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.add(value);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addMessage(value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder addJLNAKOLCDGN(
|
||||
int index, io.grasscutter.net.proto.activity.GFNEAFEFCCL value) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.add(index, value);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addMessage(index, value);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder addJLNAKOLCDGN(
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder builderForValue) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.add(builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addMessage(builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder addJLNAKOLCDGN(
|
||||
int index, io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder builderForValue) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.add(index, builderForValue.build());
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addMessage(index, builderForValue.build());
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder addAllJLNAKOLCDGN(
|
||||
java.lang.Iterable<? extends io.grasscutter.net.proto.activity.GFNEAFEFCCL> values) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
com.google.protobuf.AbstractMessageLite.Builder.addAll(
|
||||
values, jLNAKOLCDGN_);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.addAllMessages(values);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder clearJLNAKOLCDGN() {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
jLNAKOLCDGN_ = java.util.Collections.emptyList();
|
||||
bitField0_ = (bitField0_ & ~0x00000001);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.clear();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public Builder removeJLNAKOLCDGN(int index) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
ensureJLNAKOLCDGNIsMutable();
|
||||
jLNAKOLCDGN_.remove(index);
|
||||
onChanged();
|
||||
} else {
|
||||
jLNAKOLCDGNBuilder_.remove(index);
|
||||
}
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder getJLNAKOLCDGNBuilder(
|
||||
int index) {
|
||||
return getJLNAKOLCDGNFieldBuilder().getBuilder(index);
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder getJLNAKOLCDGNOrBuilder(
|
||||
int index) {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
return jLNAKOLCDGN_.get(index); } else {
|
||||
return jLNAKOLCDGNBuilder_.getMessageOrBuilder(index);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public java.util.List<? extends io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder>
|
||||
getJLNAKOLCDGNOrBuilderList() {
|
||||
if (jLNAKOLCDGNBuilder_ != null) {
|
||||
return jLNAKOLCDGNBuilder_.getMessageOrBuilderList();
|
||||
} else {
|
||||
return java.util.Collections.unmodifiableList(jLNAKOLCDGN_);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder addJLNAKOLCDGNBuilder() {
|
||||
return getJLNAKOLCDGNFieldBuilder().addBuilder(
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder addJLNAKOLCDGNBuilder(
|
||||
int index) {
|
||||
return getJLNAKOLCDGNFieldBuilder().addBuilder(
|
||||
index, io.grasscutter.net.proto.activity.GFNEAFEFCCL.getDefaultInstance());
|
||||
}
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
public java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder>
|
||||
getJLNAKOLCDGNBuilderList() {
|
||||
return getJLNAKOLCDGNFieldBuilder().getBuilderList();
|
||||
}
|
||||
private com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL, io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder, io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder>
|
||||
getJLNAKOLCDGNFieldBuilder() {
|
||||
if (jLNAKOLCDGNBuilder_ == null) {
|
||||
jLNAKOLCDGNBuilder_ = new com.google.protobuf.RepeatedFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL, io.grasscutter.net.proto.activity.GFNEAFEFCCL.Builder, io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder>(
|
||||
jLNAKOLCDGN_,
|
||||
((bitField0_ & 0x00000001) != 0),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
jLNAKOLCDGN_ = null;
|
||||
}
|
||||
return jLNAKOLCDGNBuilder_;
|
||||
}
|
||||
|
||||
private boolean isOpen_ ;
|
||||
/**
|
||||
* <code>bool is_open = 3;</code>
|
||||
* @return The isOpen.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean getIsOpen() {
|
||||
return isOpen_;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_open = 3;</code>
|
||||
* @param value The isOpen to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setIsOpen(boolean value) {
|
||||
|
||||
isOpen_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>bool is_open = 3;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearIsOpen() {
|
||||
|
||||
isOpen_ = false;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
|
||||
private int lBEINAHAHKA_ ;
|
||||
/**
|
||||
* <code>uint32 LBEINAHAHKA = 1;</code>
|
||||
* @return The lBEINAHAHKA.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public int getLBEINAHAHKA() {
|
||||
return lBEINAHAHKA_;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 LBEINAHAHKA = 1;</code>
|
||||
* @param value The lBEINAHAHKA to set.
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder setLBEINAHAHKA(int value) {
|
||||
|
||||
lBEINAHAHKA_ = value;
|
||||
onChanged();
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>uint32 LBEINAHAHKA = 1;</code>
|
||||
* @return This builder for chaining.
|
||||
*/
|
||||
public Builder clearLBEINAHAHKA() {
|
||||
|
||||
lBEINAHAHKA_ = 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:ABGKEDBGBLN)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ABGKEDBGBLN)
|
||||
private static final io.grasscutter.net.proto.activity.ABGKEDBGBLN DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.activity.ABGKEDBGBLN();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.activity.ABGKEDBGBLN getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ABGKEDBGBLN>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ABGKEDBGBLN>() {
|
||||
@java.lang.Override
|
||||
public ABGKEDBGBLN parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ABGKEDBGBLN(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ABGKEDBGBLN> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ABGKEDBGBLN> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABGKEDBGBLN getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: activity.proto
|
||||
|
||||
package io.grasscutter.net.proto.activity;
|
||||
|
||||
public interface ABGKEDBGBLNOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ABGKEDBGBLN)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.activity.GFNEAFEFCCL>
|
||||
getJLNAKOLCDGNList();
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCL getJLNAKOLCDGN(int index);
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
int getJLNAKOLCDGNCount();
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder>
|
||||
getJLNAKOLCDGNOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .GFNEAFEFCCL JLNAKOLCDGN = 11;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.GFNEAFEFCCLOrBuilder getJLNAKOLCDGNOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>bool is_open = 3;</code>
|
||||
* @return The isOpen.
|
||||
*/
|
||||
boolean getIsOpen();
|
||||
|
||||
/**
|
||||
* <code>uint32 LBEINAHAHKA = 1;</code>
|
||||
* @return The lBEINAHAHKA.
|
||||
*/
|
||||
int getLBEINAHAHKA();
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,160 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: activity.proto
|
||||
|
||||
package io.grasscutter.net.proto.activity;
|
||||
|
||||
public interface ABHOCFILGJLOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ABHOCFILGJL)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>map<uint64, uint32> IPFOIMLFPIK = 13;</code>
|
||||
*/
|
||||
int getIPFOIMLFPIKCount();
|
||||
/**
|
||||
* <code>map<uint64, uint32> IPFOIMLFPIK = 13;</code>
|
||||
*/
|
||||
boolean containsIPFOIMLFPIK(
|
||||
long key);
|
||||
/**
|
||||
* Use {@link #getIPFOIMLFPIKMap()} instead.
|
||||
*/
|
||||
@java.lang.Deprecated
|
||||
java.util.Map<java.lang.Long, java.lang.Integer>
|
||||
getIPFOIMLFPIK();
|
||||
/**
|
||||
* <code>map<uint64, uint32> IPFOIMLFPIK = 13;</code>
|
||||
*/
|
||||
java.util.Map<java.lang.Long, java.lang.Integer>
|
||||
getIPFOIMLFPIKMap();
|
||||
/**
|
||||
* <code>map<uint64, uint32> IPFOIMLFPIK = 13;</code>
|
||||
*/
|
||||
|
||||
int getIPFOIMLFPIKOrDefault(
|
||||
long key,
|
||||
int defaultValue);
|
||||
/**
|
||||
* <code>map<uint64, uint32> IPFOIMLFPIK = 13;</code>
|
||||
*/
|
||||
|
||||
int getIPFOIMLFPIKOrThrow(
|
||||
long key);
|
||||
|
||||
/**
|
||||
* <code>map<uint64, uint32> CDJJOHNDCHN = 10;</code>
|
||||
*/
|
||||
int getCDJJOHNDCHNCount();
|
||||
/**
|
||||
* <code>map<uint64, uint32> CDJJOHNDCHN = 10;</code>
|
||||
*/
|
||||
boolean containsCDJJOHNDCHN(
|
||||
long key);
|
||||
/**
|
||||
* Use {@link #getCDJJOHNDCHNMap()} instead.
|
||||
*/
|
||||
@java.lang.Deprecated
|
||||
java.util.Map<java.lang.Long, java.lang.Integer>
|
||||
getCDJJOHNDCHN();
|
||||
/**
|
||||
* <code>map<uint64, uint32> CDJJOHNDCHN = 10;</code>
|
||||
*/
|
||||
java.util.Map<java.lang.Long, java.lang.Integer>
|
||||
getCDJJOHNDCHNMap();
|
||||
/**
|
||||
* <code>map<uint64, uint32> CDJJOHNDCHN = 10;</code>
|
||||
*/
|
||||
|
||||
int getCDJJOHNDCHNOrDefault(
|
||||
long key,
|
||||
int defaultValue);
|
||||
/**
|
||||
* <code>map<uint64, uint32> CDJJOHNDCHN = 10;</code>
|
||||
*/
|
||||
|
||||
int getCDJJOHNDCHNOrThrow(
|
||||
long key);
|
||||
|
||||
/**
|
||||
* <code>repeated uint32 ECCKEBKEIOG = 11;</code>
|
||||
* @return A list containing the eCCKEBKEIOG.
|
||||
*/
|
||||
java.util.List<java.lang.Integer> getECCKEBKEIOGList();
|
||||
/**
|
||||
* <code>repeated uint32 ECCKEBKEIOG = 11;</code>
|
||||
* @return The count of eCCKEBKEIOG.
|
||||
*/
|
||||
int getECCKEBKEIOGCount();
|
||||
/**
|
||||
* <code>repeated uint32 ECCKEBKEIOG = 11;</code>
|
||||
* @param index The index of the element to return.
|
||||
* @return The eCCKEBKEIOG at the given index.
|
||||
*/
|
||||
int getECCKEBKEIOG(int index);
|
||||
|
||||
/**
|
||||
* <code>repeated .EMEAJKNIEFA MGMGOLJINMN = 2;</code>
|
||||
*/
|
||||
java.util.List<io.grasscutter.net.proto.activity.EMEAJKNIEFA>
|
||||
getMGMGOLJINMNList();
|
||||
/**
|
||||
* <code>repeated .EMEAJKNIEFA MGMGOLJINMN = 2;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.EMEAJKNIEFA getMGMGOLJINMN(int index);
|
||||
/**
|
||||
* <code>repeated .EMEAJKNIEFA MGMGOLJINMN = 2;</code>
|
||||
*/
|
||||
int getMGMGOLJINMNCount();
|
||||
/**
|
||||
* <code>repeated .EMEAJKNIEFA MGMGOLJINMN = 2;</code>
|
||||
*/
|
||||
java.util.List<? extends io.grasscutter.net.proto.activity.EMEAJKNIEFAOrBuilder>
|
||||
getMGMGOLJINMNOrBuilderList();
|
||||
/**
|
||||
* <code>repeated .EMEAJKNIEFA MGMGOLJINMN = 2;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.EMEAJKNIEFAOrBuilder getMGMGOLJINMNOrBuilder(
|
||||
int index);
|
||||
|
||||
/**
|
||||
* <code>uint64 NGHBFMBJGCL = 8;</code>
|
||||
* @return The nGHBFMBJGCL.
|
||||
*/
|
||||
long getNGHBFMBJGCL();
|
||||
|
||||
/**
|
||||
* <code>uint32 KKLADHFCBFJ = 15;</code>
|
||||
* @return The kKLADHFCBFJ.
|
||||
*/
|
||||
int getKKLADHFCBFJ();
|
||||
|
||||
/**
|
||||
* <code>uint32 AIPKCNHFDFN = 5;</code>
|
||||
* @return The aIPKCNHFDFN.
|
||||
*/
|
||||
int getAIPKCNHFDFN();
|
||||
|
||||
/**
|
||||
* <code>uint32 BEGLAPFGFAF = 6;</code>
|
||||
* @return The bEGLAPFGFAF.
|
||||
*/
|
||||
int getBEGLAPFGFAF();
|
||||
|
||||
/**
|
||||
* <code>uint64 PNNMIHFHFNK = 9;</code>
|
||||
* @return The pNNMIHFHFNK.
|
||||
*/
|
||||
long getPNNMIHFHFNK();
|
||||
|
||||
/**
|
||||
* <code>uint32 NMGAMKNNOJD = 7;</code>
|
||||
* @return The nMGAMKNNOJD.
|
||||
*/
|
||||
int getNMGAMKNNOJD();
|
||||
|
||||
/**
|
||||
* <code>uint32 GPCDKNKNMNL = 1;</code>
|
||||
* @return The gPCDKNKNMNL.
|
||||
*/
|
||||
int getGPCDKNKNMNL();
|
||||
}
|
||||
@@ -0,0 +1,983 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: activity.proto
|
||||
|
||||
package io.grasscutter.net.proto.activity;
|
||||
|
||||
/**
|
||||
* Protobuf type {@code ABLLEIKOKBN}
|
||||
*/
|
||||
public final class ABLLEIKOKBN extends
|
||||
com.google.protobuf.GeneratedMessageV3 implements
|
||||
// @@protoc_insertion_point(message_implements:ABLLEIKOKBN)
|
||||
ABLLEIKOKBNOrBuilder {
|
||||
private static final long serialVersionUID = 0L;
|
||||
// Use ABLLEIKOKBN.newBuilder() to construct.
|
||||
private ABLLEIKOKBN(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
|
||||
super(builder);
|
||||
}
|
||||
private ABLLEIKOKBN() {
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
@SuppressWarnings({"unused"})
|
||||
protected java.lang.Object newInstance(
|
||||
UnusedPrivateParameter unused) {
|
||||
return new ABLLEIKOKBN();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public final com.google.protobuf.UnknownFieldSet
|
||||
getUnknownFields() {
|
||||
return this.unknownFields;
|
||||
}
|
||||
private ABLLEIKOKBN(
|
||||
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 26: {
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder subBuilder = null;
|
||||
if (dLHGOHEKHJH_ != null) {
|
||||
subBuilder = dLHGOHEKHJH_.toBuilder();
|
||||
}
|
||||
dLHGOHEKHJH_ = input.readMessage(io.grasscutter.net.proto.activity.NFILMAGDNGJ.parser(), extensionRegistry);
|
||||
if (subBuilder != null) {
|
||||
subBuilder.mergeFrom(dLHGOHEKHJH_);
|
||||
dLHGOHEKHJH_ = subBuilder.buildPartial();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 50: {
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN.Builder subBuilder = null;
|
||||
if (kGKEDKPMDPL_ != null) {
|
||||
subBuilder = kGKEDKPMDPL_.toBuilder();
|
||||
}
|
||||
kGKEDKPMDPL_ = input.readMessage(io.grasscutter.net.proto.activity.HDPFODICAAN.parser(), extensionRegistry);
|
||||
if (subBuilder != null) {
|
||||
subBuilder.mergeFrom(kGKEDKPMDPL_);
|
||||
kGKEDKPMDPL_ = subBuilder.buildPartial();
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 82: {
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL.Builder subBuilder = null;
|
||||
if (aDOFOOABKFO_ != null) {
|
||||
subBuilder = aDOFOOABKFO_.toBuilder();
|
||||
}
|
||||
aDOFOOABKFO_ = input.readMessage(io.grasscutter.net.proto.activity.CLINDENDFKL.parser(), extensionRegistry);
|
||||
if (subBuilder != null) {
|
||||
subBuilder.mergeFrom(aDOFOOABKFO_);
|
||||
aDOFOOABKFO_ = subBuilder.buildPartial();
|
||||
}
|
||||
|
||||
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 io.grasscutter.net.proto.activity.Activity.internal_static_ABLLEIKOKBN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABLLEIKOKBN_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN.class, io.grasscutter.net.proto.activity.ABLLEIKOKBN.Builder.class);
|
||||
}
|
||||
|
||||
public static final int KGKEDKPMDPL_FIELD_NUMBER = 6;
|
||||
private io.grasscutter.net.proto.activity.HDPFODICAAN kGKEDKPMDPL_;
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return Whether the kGKEDKPMDPL field is set.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean hasKGKEDKPMDPL() {
|
||||
return kGKEDKPMDPL_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return The kGKEDKPMDPL.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.HDPFODICAAN getKGKEDKPMDPL() {
|
||||
return kGKEDKPMDPL_ == null ? io.grasscutter.net.proto.activity.HDPFODICAAN.getDefaultInstance() : kGKEDKPMDPL_;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder getKGKEDKPMDPLOrBuilder() {
|
||||
return getKGKEDKPMDPL();
|
||||
}
|
||||
|
||||
public static final int ADOFOOABKFO_FIELD_NUMBER = 10;
|
||||
private io.grasscutter.net.proto.activity.CLINDENDFKL aDOFOOABKFO_;
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return Whether the aDOFOOABKFO field is set.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean hasADOFOOABKFO() {
|
||||
return aDOFOOABKFO_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return The aDOFOOABKFO.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.CLINDENDFKL getADOFOOABKFO() {
|
||||
return aDOFOOABKFO_ == null ? io.grasscutter.net.proto.activity.CLINDENDFKL.getDefaultInstance() : aDOFOOABKFO_;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder getADOFOOABKFOOrBuilder() {
|
||||
return getADOFOOABKFO();
|
||||
}
|
||||
|
||||
public static final int DLHGOHEKHJH_FIELD_NUMBER = 3;
|
||||
private io.grasscutter.net.proto.activity.NFILMAGDNGJ dLHGOHEKHJH_;
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return Whether the dLHGOHEKHJH field is set.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public boolean hasDLHGOHEKHJH() {
|
||||
return dLHGOHEKHJH_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return The dLHGOHEKHJH.
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.NFILMAGDNGJ getDLHGOHEKHJH() {
|
||||
return dLHGOHEKHJH_ == null ? io.grasscutter.net.proto.activity.NFILMAGDNGJ.getDefaultInstance() : dLHGOHEKHJH_;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder getDLHGOHEKHJHOrBuilder() {
|
||||
return getDLHGOHEKHJH();
|
||||
}
|
||||
|
||||
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 (dLHGOHEKHJH_ != null) {
|
||||
output.writeMessage(3, getDLHGOHEKHJH());
|
||||
}
|
||||
if (kGKEDKPMDPL_ != null) {
|
||||
output.writeMessage(6, getKGKEDKPMDPL());
|
||||
}
|
||||
if (aDOFOOABKFO_ != null) {
|
||||
output.writeMessage(10, getADOFOOABKFO());
|
||||
}
|
||||
unknownFields.writeTo(output);
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public int getSerializedSize() {
|
||||
int size = memoizedSize;
|
||||
if (size != -1) return size;
|
||||
|
||||
size = 0;
|
||||
if (dLHGOHEKHJH_ != null) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(3, getDLHGOHEKHJH());
|
||||
}
|
||||
if (kGKEDKPMDPL_ != null) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(6, getKGKEDKPMDPL());
|
||||
}
|
||||
if (aDOFOOABKFO_ != null) {
|
||||
size += com.google.protobuf.CodedOutputStream
|
||||
.computeMessageSize(10, getADOFOOABKFO());
|
||||
}
|
||||
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 io.grasscutter.net.proto.activity.ABLLEIKOKBN)) {
|
||||
return super.equals(obj);
|
||||
}
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN other = (io.grasscutter.net.proto.activity.ABLLEIKOKBN) obj;
|
||||
|
||||
if (hasKGKEDKPMDPL() != other.hasKGKEDKPMDPL()) return false;
|
||||
if (hasKGKEDKPMDPL()) {
|
||||
if (!getKGKEDKPMDPL()
|
||||
.equals(other.getKGKEDKPMDPL())) return false;
|
||||
}
|
||||
if (hasADOFOOABKFO() != other.hasADOFOOABKFO()) return false;
|
||||
if (hasADOFOOABKFO()) {
|
||||
if (!getADOFOOABKFO()
|
||||
.equals(other.getADOFOOABKFO())) return false;
|
||||
}
|
||||
if (hasDLHGOHEKHJH() != other.hasDLHGOHEKHJH()) return false;
|
||||
if (hasDLHGOHEKHJH()) {
|
||||
if (!getDLHGOHEKHJH()
|
||||
.equals(other.getDLHGOHEKHJH())) 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();
|
||||
if (hasKGKEDKPMDPL()) {
|
||||
hash = (37 * hash) + KGKEDKPMDPL_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getKGKEDKPMDPL().hashCode();
|
||||
}
|
||||
if (hasADOFOOABKFO()) {
|
||||
hash = (37 * hash) + ADOFOOABKFO_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getADOFOOABKFO().hashCode();
|
||||
}
|
||||
if (hasDLHGOHEKHJH()) {
|
||||
hash = (37 * hash) + DLHGOHEKHJH_FIELD_NUMBER;
|
||||
hash = (53 * hash) + getDLHGOHEKHJH().hashCode();
|
||||
}
|
||||
hash = (29 * hash) + unknownFields.hashCode();
|
||||
memoizedHashCode = hash;
|
||||
return hash;
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
java.nio.ByteBuffer data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
java.nio.ByteBuffer data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
com.google.protobuf.ByteString data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
com.google.protobuf.ByteString data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(byte[] data)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
byte[] data,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return PARSER.parseFrom(data, extensionRegistry);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN 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 io.grasscutter.net.proto.activity.ABLLEIKOKBN parseDelimitedFrom(java.io.InputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseDelimitedWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN 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 io.grasscutter.net.proto.activity.ABLLEIKOKBN parseFrom(
|
||||
com.google.protobuf.CodedInputStream input)
|
||||
throws java.io.IOException {
|
||||
return com.google.protobuf.GeneratedMessageV3
|
||||
.parseWithIOException(PARSER, input);
|
||||
}
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN 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(io.grasscutter.net.proto.activity.ABLLEIKOKBN 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;
|
||||
}
|
||||
/**
|
||||
* Protobuf type {@code ABLLEIKOKBN}
|
||||
*/
|
||||
public static final class Builder extends
|
||||
com.google.protobuf.GeneratedMessageV3.Builder<Builder> implements
|
||||
// @@protoc_insertion_point(builder_implements:ABLLEIKOKBN)
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBNOrBuilder {
|
||||
public static final com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptor() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABLLEIKOKBN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
|
||||
internalGetFieldAccessorTable() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABLLEIKOKBN_fieldAccessorTable
|
||||
.ensureFieldAccessorsInitialized(
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN.class, io.grasscutter.net.proto.activity.ABLLEIKOKBN.Builder.class);
|
||||
}
|
||||
|
||||
// Construct using io.grasscutter.net.proto.activity.ABLLEIKOKBN.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();
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
kGKEDKPMDPL_ = null;
|
||||
} else {
|
||||
kGKEDKPMDPL_ = null;
|
||||
kGKEDKPMDPLBuilder_ = null;
|
||||
}
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
aDOFOOABKFO_ = null;
|
||||
} else {
|
||||
aDOFOOABKFO_ = null;
|
||||
aDOFOOABKFOBuilder_ = null;
|
||||
}
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
dLHGOHEKHJH_ = null;
|
||||
} else {
|
||||
dLHGOHEKHJH_ = null;
|
||||
dLHGOHEKHJHBuilder_ = null;
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Descriptors.Descriptor
|
||||
getDescriptorForType() {
|
||||
return io.grasscutter.net.proto.activity.Activity.internal_static_ABLLEIKOKBN_descriptor;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABLLEIKOKBN getDefaultInstanceForType() {
|
||||
return io.grasscutter.net.proto.activity.ABLLEIKOKBN.getDefaultInstance();
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABLLEIKOKBN build() {
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN result = buildPartial();
|
||||
if (!result.isInitialized()) {
|
||||
throw newUninitializedMessageException(result);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABLLEIKOKBN buildPartial() {
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN result = new io.grasscutter.net.proto.activity.ABLLEIKOKBN(this);
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
result.kGKEDKPMDPL_ = kGKEDKPMDPL_;
|
||||
} else {
|
||||
result.kGKEDKPMDPL_ = kGKEDKPMDPLBuilder_.build();
|
||||
}
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
result.aDOFOOABKFO_ = aDOFOOABKFO_;
|
||||
} else {
|
||||
result.aDOFOOABKFO_ = aDOFOOABKFOBuilder_.build();
|
||||
}
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
result.dLHGOHEKHJH_ = dLHGOHEKHJH_;
|
||||
} else {
|
||||
result.dLHGOHEKHJH_ = dLHGOHEKHJHBuilder_.build();
|
||||
}
|
||||
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 io.grasscutter.net.proto.activity.ABLLEIKOKBN) {
|
||||
return mergeFrom((io.grasscutter.net.proto.activity.ABLLEIKOKBN)other);
|
||||
} else {
|
||||
super.mergeFrom(other);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
||||
public Builder mergeFrom(io.grasscutter.net.proto.activity.ABLLEIKOKBN other) {
|
||||
if (other == io.grasscutter.net.proto.activity.ABLLEIKOKBN.getDefaultInstance()) return this;
|
||||
if (other.hasKGKEDKPMDPL()) {
|
||||
mergeKGKEDKPMDPL(other.getKGKEDKPMDPL());
|
||||
}
|
||||
if (other.hasADOFOOABKFO()) {
|
||||
mergeADOFOOABKFO(other.getADOFOOABKFO());
|
||||
}
|
||||
if (other.hasDLHGOHEKHJH()) {
|
||||
mergeDLHGOHEKHJH(other.getDLHGOHEKHJH());
|
||||
}
|
||||
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 {
|
||||
io.grasscutter.net.proto.activity.ABLLEIKOKBN parsedMessage = null;
|
||||
try {
|
||||
parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry);
|
||||
} catch (com.google.protobuf.InvalidProtocolBufferException e) {
|
||||
parsedMessage = (io.grasscutter.net.proto.activity.ABLLEIKOKBN) e.getUnfinishedMessage();
|
||||
throw e.unwrapIOException();
|
||||
} finally {
|
||||
if (parsedMessage != null) {
|
||||
mergeFrom(parsedMessage);
|
||||
}
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
private io.grasscutter.net.proto.activity.HDPFODICAAN kGKEDKPMDPL_;
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN, io.grasscutter.net.proto.activity.HDPFODICAAN.Builder, io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder> kGKEDKPMDPLBuilder_;
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return Whether the kGKEDKPMDPL field is set.
|
||||
*/
|
||||
public boolean hasKGKEDKPMDPL() {
|
||||
return kGKEDKPMDPLBuilder_ != null || kGKEDKPMDPL_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return The kGKEDKPMDPL.
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.HDPFODICAAN getKGKEDKPMDPL() {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
return kGKEDKPMDPL_ == null ? io.grasscutter.net.proto.activity.HDPFODICAAN.getDefaultInstance() : kGKEDKPMDPL_;
|
||||
} else {
|
||||
return kGKEDKPMDPLBuilder_.getMessage();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public Builder setKGKEDKPMDPL(io.grasscutter.net.proto.activity.HDPFODICAAN value) {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
kGKEDKPMDPL_ = value;
|
||||
onChanged();
|
||||
} else {
|
||||
kGKEDKPMDPLBuilder_.setMessage(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public Builder setKGKEDKPMDPL(
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN.Builder builderForValue) {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
kGKEDKPMDPL_ = builderForValue.build();
|
||||
onChanged();
|
||||
} else {
|
||||
kGKEDKPMDPLBuilder_.setMessage(builderForValue.build());
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public Builder mergeKGKEDKPMDPL(io.grasscutter.net.proto.activity.HDPFODICAAN value) {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
if (kGKEDKPMDPL_ != null) {
|
||||
kGKEDKPMDPL_ =
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN.newBuilder(kGKEDKPMDPL_).mergeFrom(value).buildPartial();
|
||||
} else {
|
||||
kGKEDKPMDPL_ = value;
|
||||
}
|
||||
onChanged();
|
||||
} else {
|
||||
kGKEDKPMDPLBuilder_.mergeFrom(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public Builder clearKGKEDKPMDPL() {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
kGKEDKPMDPL_ = null;
|
||||
onChanged();
|
||||
} else {
|
||||
kGKEDKPMDPL_ = null;
|
||||
kGKEDKPMDPLBuilder_ = null;
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.HDPFODICAAN.Builder getKGKEDKPMDPLBuilder() {
|
||||
|
||||
onChanged();
|
||||
return getKGKEDKPMDPLFieldBuilder().getBuilder();
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder getKGKEDKPMDPLOrBuilder() {
|
||||
if (kGKEDKPMDPLBuilder_ != null) {
|
||||
return kGKEDKPMDPLBuilder_.getMessageOrBuilder();
|
||||
} else {
|
||||
return kGKEDKPMDPL_ == null ?
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN.getDefaultInstance() : kGKEDKPMDPL_;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN, io.grasscutter.net.proto.activity.HDPFODICAAN.Builder, io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder>
|
||||
getKGKEDKPMDPLFieldBuilder() {
|
||||
if (kGKEDKPMDPLBuilder_ == null) {
|
||||
kGKEDKPMDPLBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN, io.grasscutter.net.proto.activity.HDPFODICAAN.Builder, io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder>(
|
||||
getKGKEDKPMDPL(),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
kGKEDKPMDPL_ = null;
|
||||
}
|
||||
return kGKEDKPMDPLBuilder_;
|
||||
}
|
||||
|
||||
private io.grasscutter.net.proto.activity.CLINDENDFKL aDOFOOABKFO_;
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL, io.grasscutter.net.proto.activity.CLINDENDFKL.Builder, io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder> aDOFOOABKFOBuilder_;
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return Whether the aDOFOOABKFO field is set.
|
||||
*/
|
||||
public boolean hasADOFOOABKFO() {
|
||||
return aDOFOOABKFOBuilder_ != null || aDOFOOABKFO_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return The aDOFOOABKFO.
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.CLINDENDFKL getADOFOOABKFO() {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
return aDOFOOABKFO_ == null ? io.grasscutter.net.proto.activity.CLINDENDFKL.getDefaultInstance() : aDOFOOABKFO_;
|
||||
} else {
|
||||
return aDOFOOABKFOBuilder_.getMessage();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public Builder setADOFOOABKFO(io.grasscutter.net.proto.activity.CLINDENDFKL value) {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
aDOFOOABKFO_ = value;
|
||||
onChanged();
|
||||
} else {
|
||||
aDOFOOABKFOBuilder_.setMessage(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public Builder setADOFOOABKFO(
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL.Builder builderForValue) {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
aDOFOOABKFO_ = builderForValue.build();
|
||||
onChanged();
|
||||
} else {
|
||||
aDOFOOABKFOBuilder_.setMessage(builderForValue.build());
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public Builder mergeADOFOOABKFO(io.grasscutter.net.proto.activity.CLINDENDFKL value) {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
if (aDOFOOABKFO_ != null) {
|
||||
aDOFOOABKFO_ =
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL.newBuilder(aDOFOOABKFO_).mergeFrom(value).buildPartial();
|
||||
} else {
|
||||
aDOFOOABKFO_ = value;
|
||||
}
|
||||
onChanged();
|
||||
} else {
|
||||
aDOFOOABKFOBuilder_.mergeFrom(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public Builder clearADOFOOABKFO() {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
aDOFOOABKFO_ = null;
|
||||
onChanged();
|
||||
} else {
|
||||
aDOFOOABKFO_ = null;
|
||||
aDOFOOABKFOBuilder_ = null;
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.CLINDENDFKL.Builder getADOFOOABKFOBuilder() {
|
||||
|
||||
onChanged();
|
||||
return getADOFOOABKFOFieldBuilder().getBuilder();
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder getADOFOOABKFOOrBuilder() {
|
||||
if (aDOFOOABKFOBuilder_ != null) {
|
||||
return aDOFOOABKFOBuilder_.getMessageOrBuilder();
|
||||
} else {
|
||||
return aDOFOOABKFO_ == null ?
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL.getDefaultInstance() : aDOFOOABKFO_;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL, io.grasscutter.net.proto.activity.CLINDENDFKL.Builder, io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder>
|
||||
getADOFOOABKFOFieldBuilder() {
|
||||
if (aDOFOOABKFOBuilder_ == null) {
|
||||
aDOFOOABKFOBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL, io.grasscutter.net.proto.activity.CLINDENDFKL.Builder, io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder>(
|
||||
getADOFOOABKFO(),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
aDOFOOABKFO_ = null;
|
||||
}
|
||||
return aDOFOOABKFOBuilder_;
|
||||
}
|
||||
|
||||
private io.grasscutter.net.proto.activity.NFILMAGDNGJ dLHGOHEKHJH_;
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ, io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder, io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder> dLHGOHEKHJHBuilder_;
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return Whether the dLHGOHEKHJH field is set.
|
||||
*/
|
||||
public boolean hasDLHGOHEKHJH() {
|
||||
return dLHGOHEKHJHBuilder_ != null || dLHGOHEKHJH_ != null;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return The dLHGOHEKHJH.
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.NFILMAGDNGJ getDLHGOHEKHJH() {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
return dLHGOHEKHJH_ == null ? io.grasscutter.net.proto.activity.NFILMAGDNGJ.getDefaultInstance() : dLHGOHEKHJH_;
|
||||
} else {
|
||||
return dLHGOHEKHJHBuilder_.getMessage();
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public Builder setDLHGOHEKHJH(io.grasscutter.net.proto.activity.NFILMAGDNGJ value) {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
if (value == null) {
|
||||
throw new NullPointerException();
|
||||
}
|
||||
dLHGOHEKHJH_ = value;
|
||||
onChanged();
|
||||
} else {
|
||||
dLHGOHEKHJHBuilder_.setMessage(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public Builder setDLHGOHEKHJH(
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder builderForValue) {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
dLHGOHEKHJH_ = builderForValue.build();
|
||||
onChanged();
|
||||
} else {
|
||||
dLHGOHEKHJHBuilder_.setMessage(builderForValue.build());
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public Builder mergeDLHGOHEKHJH(io.grasscutter.net.proto.activity.NFILMAGDNGJ value) {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
if (dLHGOHEKHJH_ != null) {
|
||||
dLHGOHEKHJH_ =
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ.newBuilder(dLHGOHEKHJH_).mergeFrom(value).buildPartial();
|
||||
} else {
|
||||
dLHGOHEKHJH_ = value;
|
||||
}
|
||||
onChanged();
|
||||
} else {
|
||||
dLHGOHEKHJHBuilder_.mergeFrom(value);
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public Builder clearDLHGOHEKHJH() {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
dLHGOHEKHJH_ = null;
|
||||
onChanged();
|
||||
} else {
|
||||
dLHGOHEKHJH_ = null;
|
||||
dLHGOHEKHJHBuilder_ = null;
|
||||
}
|
||||
|
||||
return this;
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder getDLHGOHEKHJHBuilder() {
|
||||
|
||||
onChanged();
|
||||
return getDLHGOHEKHJHFieldBuilder().getBuilder();
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
public io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder getDLHGOHEKHJHOrBuilder() {
|
||||
if (dLHGOHEKHJHBuilder_ != null) {
|
||||
return dLHGOHEKHJHBuilder_.getMessageOrBuilder();
|
||||
} else {
|
||||
return dLHGOHEKHJH_ == null ?
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ.getDefaultInstance() : dLHGOHEKHJH_;
|
||||
}
|
||||
}
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
private com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ, io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder, io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder>
|
||||
getDLHGOHEKHJHFieldBuilder() {
|
||||
if (dLHGOHEKHJHBuilder_ == null) {
|
||||
dLHGOHEKHJHBuilder_ = new com.google.protobuf.SingleFieldBuilderV3<
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ, io.grasscutter.net.proto.activity.NFILMAGDNGJ.Builder, io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder>(
|
||||
getDLHGOHEKHJH(),
|
||||
getParentForChildren(),
|
||||
isClean());
|
||||
dLHGOHEKHJH_ = null;
|
||||
}
|
||||
return dLHGOHEKHJHBuilder_;
|
||||
}
|
||||
@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:ABLLEIKOKBN)
|
||||
}
|
||||
|
||||
// @@protoc_insertion_point(class_scope:ABLLEIKOKBN)
|
||||
private static final io.grasscutter.net.proto.activity.ABLLEIKOKBN DEFAULT_INSTANCE;
|
||||
static {
|
||||
DEFAULT_INSTANCE = new io.grasscutter.net.proto.activity.ABLLEIKOKBN();
|
||||
}
|
||||
|
||||
public static io.grasscutter.net.proto.activity.ABLLEIKOKBN getDefaultInstance() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
private static final com.google.protobuf.Parser<ABLLEIKOKBN>
|
||||
PARSER = new com.google.protobuf.AbstractParser<ABLLEIKOKBN>() {
|
||||
@java.lang.Override
|
||||
public ABLLEIKOKBN parsePartialFrom(
|
||||
com.google.protobuf.CodedInputStream input,
|
||||
com.google.protobuf.ExtensionRegistryLite extensionRegistry)
|
||||
throws com.google.protobuf.InvalidProtocolBufferException {
|
||||
return new ABLLEIKOKBN(input, extensionRegistry);
|
||||
}
|
||||
};
|
||||
|
||||
public static com.google.protobuf.Parser<ABLLEIKOKBN> parser() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public com.google.protobuf.Parser<ABLLEIKOKBN> getParserForType() {
|
||||
return PARSER;
|
||||
}
|
||||
|
||||
@java.lang.Override
|
||||
public io.grasscutter.net.proto.activity.ABLLEIKOKBN getDefaultInstanceForType() {
|
||||
return DEFAULT_INSTANCE;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,54 @@
|
||||
// Generated by the protocol buffer compiler. DO NOT EDIT!
|
||||
// source: activity.proto
|
||||
|
||||
package io.grasscutter.net.proto.activity;
|
||||
|
||||
public interface ABLLEIKOKBNOrBuilder extends
|
||||
// @@protoc_insertion_point(interface_extends:ABLLEIKOKBN)
|
||||
com.google.protobuf.MessageOrBuilder {
|
||||
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return Whether the kGKEDKPMDPL field is set.
|
||||
*/
|
||||
boolean hasKGKEDKPMDPL();
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
* @return The kGKEDKPMDPL.
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.HDPFODICAAN getKGKEDKPMDPL();
|
||||
/**
|
||||
* <code>.HDPFODICAAN KGKEDKPMDPL = 6;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.HDPFODICAANOrBuilder getKGKEDKPMDPLOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return Whether the aDOFOOABKFO field is set.
|
||||
*/
|
||||
boolean hasADOFOOABKFO();
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
* @return The aDOFOOABKFO.
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKL getADOFOOABKFO();
|
||||
/**
|
||||
* <code>.CLINDENDFKL ADOFOOABKFO = 10;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.CLINDENDFKLOrBuilder getADOFOOABKFOOrBuilder();
|
||||
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return Whether the dLHGOHEKHJH field is set.
|
||||
*/
|
||||
boolean hasDLHGOHEKHJH();
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
* @return The dLHGOHEKHJH.
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJ getDLHGOHEKHJH();
|
||||
/**
|
||||
* <code>.NFILMAGDNGJ DLHGOHEKHJH = 3;</code>
|
||||
*/
|
||||
io.grasscutter.net.proto.activity.NFILMAGDNGJOrBuilder getDLHGOHEKHJHOrBuilder();
|
||||
}
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user