Compare commits
230 Commits
alpha/v6.7
...
alpha/v6.9
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
54e9bc97b9 | ||
|
|
112b242020 | ||
|
|
792214af34 | ||
|
|
5295f63a27 | ||
|
|
728f9ca077 | ||
|
|
22f3175b42 | ||
|
|
4bc96d57da | ||
|
|
1d60c2363b | ||
|
|
be568fbc1e | ||
|
|
505c8e9d10 | ||
|
|
26972c2769 | ||
|
|
3c88f16dde | ||
|
|
70235d7fd5 | ||
|
|
b38e1b46ba | ||
|
|
4083e21521 | ||
|
|
1d909ea38a | ||
|
|
e5365c1447 | ||
|
|
4e35863be0 | ||
|
|
9d5ab6d7c5 | ||
|
|
469c1e670c | ||
|
|
c4c15ef103 | ||
|
|
3c20e21182 | ||
|
|
9a2d43ca7e | ||
|
|
f831d19c57 | ||
|
|
d345466992 | ||
|
|
4dc9a4ed27 | ||
|
|
736bab5427 | ||
|
|
a8ceb64f16 | ||
|
|
3d4a3eb578 | ||
|
|
38494fa461 | ||
|
|
e3570d17e8 | ||
|
|
4c9c1d12ce | ||
|
|
a0588e7da6 | ||
|
|
0404959bd1 | ||
|
|
a387d5f8a4 | ||
|
|
d913335886 | ||
|
|
08f71fcfc0 | ||
|
|
cac4c27bbc | ||
|
|
3ef75d587c | ||
|
|
4a14245283 | ||
|
|
b3122fbd94 | ||
|
|
5445962a7b | ||
|
|
20d257f6f4 | ||
|
|
7cc6cbf5ce | ||
|
|
8f425bebf1 | ||
|
|
aaa0818c45 | ||
|
|
2cb0be8630 | ||
|
|
4ff7c5f01d | ||
|
|
0a5b8e66a7 | ||
|
|
e644e10d80 | ||
|
|
c75eeb93bc | ||
|
|
ef0e4958bf | ||
|
|
cfa3fedb0c | ||
|
|
3b909f3959 | ||
|
|
6d18eaa47c | ||
|
|
0518c61e87 | ||
|
|
925ff331a1 | ||
|
|
65a5566c9e | ||
|
|
a4e2b12e06 | ||
|
|
a7548d7612 | ||
|
|
a5d95e5fbe | ||
|
|
e83e49f61b | ||
|
|
bdffc8cd1a | ||
|
|
9227357ea7 | ||
|
|
540c8acbf5 | ||
|
|
1c05ff9bc8 | ||
|
|
6c6117ddb2 | ||
|
|
013c899d34 | ||
|
|
0df451b7d9 | ||
|
|
0fab39caff | ||
|
|
73f8ebb8f1 | ||
|
|
a99294ef90 | ||
|
|
e884491a93 | ||
|
|
df0e271611 | ||
|
|
edd564088b | ||
|
|
2182951ed0 | ||
|
|
cc0163edd9 | ||
|
|
a6523b01d5 | ||
|
|
a8245441a3 | ||
|
|
a34da437d0 | ||
|
|
094ff47873 | ||
|
|
ffd98e800e | ||
|
|
d504e074ce | ||
|
|
c7d1fe686d | ||
|
|
cf30d71067 | ||
|
|
2216175e5c | ||
|
|
a91286f41d | ||
|
|
2061050857 | ||
|
|
a20351fcf1 | ||
|
|
84152a88f3 | ||
|
|
9adf423aa4 | ||
|
|
426c964e59 | ||
|
|
b1659e0a70 | ||
|
|
ef614156d0 | ||
|
|
d56ecf73b9 | ||
|
|
b4429c4b6f | ||
|
|
719d04f53d | ||
|
|
5f2d547998 | ||
|
|
e9d8f6a844 | ||
|
|
4215a05371 | ||
|
|
dd7ec5cd20 | ||
|
|
a62258f74e | ||
|
|
de4476b545 | ||
|
|
e6b3223e29 | ||
|
|
be77d7b1bc | ||
|
|
34d1f8413a | ||
|
|
04a793e6ce | ||
|
|
5619aefa10 | ||
|
|
d2ee76d2f6 | ||
|
|
8f1b7fd087 | ||
|
|
ea22cbab4a | ||
|
|
f733530b67 | ||
|
|
33885b1294 | ||
|
|
893793efff | ||
|
|
8161976869 | ||
|
|
60cbc68e59 | ||
|
|
b65b37fba8 | ||
|
|
7d3f8bfa2d | ||
|
|
4a77baba13 | ||
|
|
b9fca6f03d | ||
|
|
1b1bc15aca | ||
|
|
54f07fc3ad | ||
|
|
ce9fc40ef5 | ||
|
|
fa5929a5f5 | ||
|
|
adcf581ab3 | ||
|
|
7567ca7950 | ||
|
|
83ce081ac5 | ||
|
|
d6cdfc6c77 | ||
|
|
b0f46de1e6 | ||
|
|
a1064f7c21 | ||
|
|
ac3b986d7a | ||
|
|
f08793369e | ||
|
|
8da0b89e6e | ||
|
|
0913148a69 | ||
|
|
5eb161a390 | ||
|
|
0c4bcf6aae | ||
|
|
f90cc11100 | ||
|
|
f1be7f5711 | ||
|
|
e6fad34468 | ||
|
|
4a3780528a | ||
|
|
c45b476a30 | ||
|
|
3214aa96e7 | ||
|
|
9c1ac90446 | ||
|
|
a1fb539856 | ||
|
|
31fdcf191f | ||
|
|
f888adb99a | ||
|
|
2976930308 | ||
|
|
4fb1570f91 | ||
|
|
beedbd37cc | ||
|
|
3d29fcb8ed | ||
|
|
3e5691fe1b | ||
|
|
3a050d301a | ||
|
|
5788be68d3 | ||
|
|
0487ff3288 | ||
|
|
478de0cccb | ||
|
|
b7598d8f66 | ||
|
|
4ce5e9bf97 | ||
|
|
e68a07feff | ||
|
|
9b7624da39 | ||
|
|
7df2736fbc | ||
|
|
92192d969b | ||
|
|
3645360869 | ||
|
|
f607149e4c | ||
|
|
a3fd3055c0 | ||
|
|
d9991239b7 | ||
|
|
af783dd558 | ||
|
|
df92aa2716 | ||
|
|
0336b45de8 | ||
|
|
7bd54ce7e9 | ||
|
|
b355c6cbc5 | ||
|
|
42473f1ede | ||
|
|
b3f9ecc259 | ||
|
|
e0564099b2 | ||
|
|
5b6dfc3d50 | ||
|
|
d8df4e753e | ||
|
|
8b287f36c7 | ||
|
|
39960ed8ef | ||
|
|
1e0d04fe48 | ||
|
|
1a689cbf0b | ||
|
|
110db7ab85 | ||
|
|
d88d4ad484 | ||
|
|
8e4e4c16ee | ||
|
|
d9c793cfd3 | ||
|
|
733ce5bd81 | ||
|
|
50000b988a | ||
|
|
98dd6f7ba1 | ||
|
|
9fd6602f11 | ||
|
|
4e45915f37 | ||
|
|
98f9fcfe4f | ||
|
|
857d5d5f37 | ||
|
|
4d08a2cdbd | ||
|
|
52157f505c | ||
|
|
84b7ed59d9 | ||
|
|
9ce2794841 | ||
|
|
a627c68485 | ||
|
|
2a5cdf24e7 | ||
|
|
0772aa9168 | ||
|
|
3180374a19 | ||
|
|
a1b6f0e9bb | ||
|
|
a852ab31b0 | ||
|
|
757cfbf99a | ||
|
|
7ed7d8af92 | ||
|
|
b8f279abfa | ||
|
|
4443367709 | ||
|
|
32805735ed | ||
|
|
b8a052fc88 | ||
|
|
db35bf16c8 | ||
|
|
5cb72d7d64 | ||
|
|
5b75f1caed | ||
|
|
98070cb7f7 | ||
|
|
9bfa2dab87 | ||
|
|
1d54789dd5 | ||
|
|
01a26f207d | ||
|
|
e8d5982b60 | ||
|
|
f2dcefda54 | ||
|
|
0266db8144 | ||
|
|
d44cd057a4 | ||
|
|
c825f823de | ||
|
|
8c51447c86 | ||
|
|
25481d16ca | ||
|
|
578ffc266e | ||
|
|
4173760050 | ||
|
|
a98df31323 | ||
|
|
eac28656e4 | ||
|
|
bc0d5c8707 | ||
|
|
f479192400 | ||
|
|
4d58dd5f97 | ||
|
|
9c96a11ba1 | ||
|
|
7e93a0dacd | ||
|
|
2746e7a645 |
11
.clangd
@@ -1,5 +1,14 @@
|
||||
If:
|
||||
PathMatch: unit_test/.*\.(c|cc|cpp|cxx|h|hh|hpp)$
|
||||
CompileFlags:
|
||||
CompilationDatabase: build/unit_test
|
||||
Add: [-Wunused-variables]
|
||||
---
|
||||
If:
|
||||
PathExclude: unit_test/.*\.(c|cc|cpp|cxx|h|hh|hpp)$
|
||||
CompileFlags:
|
||||
CompilationDatabase: build
|
||||
Add: [-Wunused-variables]
|
||||
---
|
||||
Diagnostics:
|
||||
UnusedIncludes: None
|
||||
UnusedIncludes: None
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/cn-bug-report.yaml
vendored
@@ -45,8 +45,6 @@ body:
|
||||
**若待上传压缩包大于 25MB,请转而上传该压缩包同日期文件夹中的若干小压缩包**
|
||||
**若为 MAA 闪退问题,如果 %LOCALAPPDATA%\CrashDumps 中存在 MAA.exe.dmp 文件,请一并上传**
|
||||
若正在使用 macOS,请点击屏幕左上角的“文件”,点击“打开日志文件夹”
|
||||
placeholder: |
|
||||
请确认上传文件前已关闭 MAA
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/cn-ld-report.yaml
vendored
@@ -49,8 +49,6 @@ body:
|
||||
**请在 MAA -> 设置 -> 问题反馈中找到生成日志压缩包按钮,点击并上传压缩包**
|
||||
|
||||
**请直接将完整的文件拖拽进来,而非自己裁切或复制的片段;若文件体积过大可压缩后再上传**
|
||||
placeholder: |
|
||||
请确认上传文件前已关闭 MAA
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/cn-mumu-report.yaml
vendored
@@ -49,8 +49,6 @@ body:
|
||||
**请在 MAA -> 设置 -> 问题反馈中找到生成日志压缩包按钮,点击并上传压缩包**
|
||||
|
||||
**请直接将完整的文件拖拽进来,而非自己裁切或复制的片段;若文件体积过大可压缩后再上传**
|
||||
placeholder: |
|
||||
请确认上传文件前已关闭 MAA
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/en-bug-report.yaml
vendored
@@ -47,8 +47,6 @@ body:
|
||||
**If the archive to upload is larger than 25MB, please upload smaller archives from the same date folder instead.**
|
||||
**If the issue is related to MAA crashing, please upload the MAA.exe.dmp file found in %LOCALAPPDATA%\CrashDumps if it exists**
|
||||
If you are using macOS, please click the "File" option in the top-left corner of the screen, then click "Open Log Folder".
|
||||
placeholder: |
|
||||
Please confirm that MAA is not running before uploading files.
|
||||
validations:
|
||||
required: true
|
||||
- type: textarea
|
||||
|
||||
68
.github/scripts/sync-optional-submodules.sh
vendored
Normal file
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
mode="init"
|
||||
depth=""
|
||||
declare -a paths=()
|
||||
|
||||
while (($# > 0)); do
|
||||
case "$1" in
|
||||
--init)
|
||||
mode="init"
|
||||
shift
|
||||
;;
|
||||
--remote)
|
||||
mode="remote"
|
||||
shift
|
||||
;;
|
||||
--depth)
|
||||
depth="$2"
|
||||
shift 2
|
||||
;;
|
||||
--)
|
||||
shift
|
||||
paths+=("$@")
|
||||
break
|
||||
;;
|
||||
*)
|
||||
paths+=("$1")
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if ((${#paths[@]} == 0)); then
|
||||
echo "Usage: $0 [--init|--remote] [--depth N] path [path ...]" >&2
|
||||
exit 64
|
||||
fi
|
||||
|
||||
is_submodule_path() {
|
||||
local path="$1"
|
||||
|
||||
git config -f .gitmodules --get-regexp '^submodule\..*\.path$' 2>/dev/null \
|
||||
| awk '{ print $2 }' \
|
||||
| grep -Fxq "$path"
|
||||
}
|
||||
|
||||
for path in "${paths[@]}"; do
|
||||
if ! is_submodule_path "$path"; then
|
||||
echo "Skipping $path: not configured as a submodule in .gitmodules."
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ "$mode" == "remote" ]]; then
|
||||
echo "Updating submodule: $path"
|
||||
git submodule update --remote "$path"
|
||||
continue
|
||||
fi
|
||||
|
||||
if [[ -n "$depth" ]]; then
|
||||
echo "Initializing submodule: $path (depth=$depth)"
|
||||
git submodule update --init --depth "$depth" "$path"
|
||||
continue
|
||||
fi
|
||||
|
||||
echo "Initializing submodule: $path"
|
||||
git submodule update --init "$path"
|
||||
done
|
||||
189
.github/workflows/ci-avalonia.yml
vendored
Normal file
@@ -0,0 +1,189 @@
|
||||
name: Build MAAUnified (Avalonia + MaaCore Runtime)
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
pull_request:
|
||||
paths:
|
||||
- "src/MAAUnified"
|
||||
- "src/MAAUnified/**"
|
||||
- "src/MaaCore/**"
|
||||
- "src/MaaUtils/**"
|
||||
- "include/**"
|
||||
- "resource/**"
|
||||
- "tools/maadeps-download.py"
|
||||
- "CMakeLists.txt"
|
||||
- "CMakePresets.json"
|
||||
push:
|
||||
branches:
|
||||
- dev
|
||||
paths:
|
||||
- "src/MAAUnified"
|
||||
- "src/MAAUnified/**"
|
||||
- "src/MaaCore/**"
|
||||
- "src/MaaUtils/**"
|
||||
- "include/**"
|
||||
- "resource/**"
|
||||
- "tools/maadeps-download.py"
|
||||
- "CMakeLists.txt"
|
||||
- "CMakePresets.json"
|
||||
|
||||
jobs:
|
||||
meta:
|
||||
name: Resolve version tag
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
tag: ${{ steps.out.outputs.tag }}
|
||||
steps:
|
||||
- id: out
|
||||
run: |
|
||||
if [[ "${GITHUB_REF}" == refs/tags/* ]]; then
|
||||
echo "tag=${GITHUB_REF_NAME}" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "tag=preview-${GITHUB_SHA::7}" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
build:
|
||||
name: Build ${{ matrix.name }}
|
||||
needs: meta
|
||||
runs-on: ${{ matrix.os }}
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- name: windows-x64
|
||||
os: windows-latest
|
||||
rid: win-x64
|
||||
self_contained: true
|
||||
cmake_preset: windows-publish-x64
|
||||
maadeps_triplet: x64-windows
|
||||
- name: linux-x64
|
||||
os: ubuntu-latest
|
||||
rid: linux-x64
|
||||
self_contained: true
|
||||
cmake_preset: linux-publish-x64
|
||||
maadeps_triplet: x64-linux
|
||||
- name: macos-x64
|
||||
os: macos-latest
|
||||
rid: osx-x64
|
||||
self_contained: true
|
||||
cmake_preset: macos-publish-x64
|
||||
maadeps_triplet: x64-osx
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v6
|
||||
|
||||
- name: Fetch required submodules
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MAAUnified src/MaaUtils
|
||||
|
||||
- name: Setup .NET
|
||||
uses: actions/setup-dotnet@v5
|
||||
with:
|
||||
dotnet-version: "10.0.x"
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: "3.x"
|
||||
|
||||
- name: Restore app
|
||||
run: dotnet restore src/MAAUnified/App/MAAUnified.App.csproj
|
||||
|
||||
- name: Restore tests
|
||||
if: matrix.name != 'macos-x64'
|
||||
run: dotnet restore src/MAAUnified/Tests/MAAUnified.Tests.csproj
|
||||
|
||||
- name: Run Linux baseline consistency gate
|
||||
if: matrix.name == 'linux-x64'
|
||||
run: >
|
||||
dotnet test src/MAAUnified/Tests/MAAUnified.Tests.csproj -c Release --no-restore --disable-build-servers -m:1
|
||||
--results-directory TestResults/${{ matrix.name }}
|
||||
--logger "trx;LogFileName=baseline-consistency.trx"
|
||||
--filter "FullyQualifiedName~BaselineContractTests|FullyQualifiedName~BaselineCoverageTests|FullyQualifiedName~BaselineRenderSyncTests|FullyQualifiedName~ParityMatrixSyncTests"
|
||||
|
||||
- name: Run Linux full MAAUnified test gate
|
||||
if: matrix.name == 'linux-x64'
|
||||
run: >
|
||||
dotnet test src/MAAUnified/Tests/MAAUnified.Tests.csproj -c Release --no-restore --disable-build-servers -m:1
|
||||
--results-directory TestResults/${{ matrix.name }}
|
||||
--logger "trx;LogFileName=full-maaunified-tests.trx"
|
||||
|
||||
- name: Run Windows platform capability contract gate
|
||||
if: matrix.name == 'windows-x64'
|
||||
run: >
|
||||
dotnet test src/MAAUnified/Tests/MAAUnified.Tests.csproj -c Release --no-restore --disable-build-servers -m:1
|
||||
--results-directory TestResults/${{ matrix.name }}
|
||||
--logger "trx;LogFileName=platform-capability-contract.trx"
|
||||
--filter "FullyQualifiedName~PlatformCapabilityContractTests"
|
||||
|
||||
- name: Run Windows native capability smoke gate
|
||||
if: matrix.name == 'windows-x64'
|
||||
run: >
|
||||
dotnet test src/MAAUnified/Tests/MAAUnified.Tests.csproj -c Release --no-restore --disable-build-servers -m:1
|
||||
--results-directory TestResults/${{ matrix.name }}
|
||||
--logger "trx;LogFileName=platform-windows-native-smoke.trx"
|
||||
--filter "FullyQualifiedName~PlatformWindowsNativeSmokeTests"
|
||||
|
||||
- name: Upload test result artifacts on failure
|
||||
if: failure() && matrix.name != 'macos-x64'
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: MAAUnified-TestResults-${{ matrix.name }}
|
||||
path: TestResults/${{ matrix.name }}/*.trx
|
||||
if-no-files-found: ignore
|
||||
|
||||
- name: Bootstrap MaaDeps
|
||||
run: python tools/maadeps-download.py ${{ matrix.maadeps_triplet }}
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Build MaaCore runtime
|
||||
run: |
|
||||
cmake --preset ${{ matrix.cmake_preset }} -DINSTALL_PYTHON=OFF -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
|
||||
cmake --build --preset ${{ matrix.cmake_preset }}
|
||||
cmake --install build --config RelWithDebInfo
|
||||
|
||||
- name: Publish MAAUnified app
|
||||
run: dotnet publish src/MAAUnified/App/MAAUnified.App.csproj -c Release -r ${{ matrix.rid }} --self-contained ${{ matrix.self_contained }} -o publish
|
||||
|
||||
- name: Merge MaaCore runtime (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
shell: pwsh
|
||||
run: |
|
||||
Copy-Item install\* publish\ -Recurse -Force
|
||||
if (!(Test-Path "publish\MaaCore.dll")) { throw "MaaCore.dll not found in publish output." }
|
||||
if (!(Test-Path "publish\resource")) { throw "resource directory not found in publish output." }
|
||||
|
||||
- name: Merge MaaCore runtime (Unix)
|
||||
if: runner.os != 'Windows'
|
||||
shell: bash
|
||||
run: |
|
||||
cp -a install/. publish/
|
||||
if [[ "$RUNNER_OS" == "Linux" ]]; then
|
||||
test -f publish/libMaaCore.so
|
||||
else
|
||||
test -f publish/libMaaCore.dylib
|
||||
fi
|
||||
test -d publish/resource
|
||||
|
||||
- name: Package (Windows)
|
||||
if: runner.os == 'Windows'
|
||||
shell: pwsh
|
||||
run: |
|
||||
New-Item -ItemType Directory -Path release -Force | Out-Null
|
||||
$name = "MAAUnified-${{ needs.meta.outputs.tag }}-${{ matrix.name }}"
|
||||
Compress-Archive -Path publish\* -DestinationPath "release\$name.zip"
|
||||
|
||||
- name: Package (Unix)
|
||||
if: runner.os != 'Windows'
|
||||
shell: bash
|
||||
run: |
|
||||
mkdir -p release
|
||||
name="MAAUnified-${{ needs.meta.outputs.tag }}-${{ matrix.name }}"
|
||||
tar -czf "release/${name}.tar.gz" -C publish .
|
||||
|
||||
- name: Upload artifact
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
name: MAAUnified-${{ matrix.name }}
|
||||
path: release/*
|
||||
61
.github/workflows/ci.yml
vendored
@@ -110,9 +110,8 @@ jobs:
|
||||
show-progress: false
|
||||
|
||||
- name: Fetch submodules
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
git submodule update --init --depth 1 3rdparty/EmulatorExtras
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils 3rdparty/EmulatorExtras
|
||||
|
||||
- name: Cache MaaDeps
|
||||
id: cache-maadeps
|
||||
@@ -134,22 +133,27 @@ jobs:
|
||||
run: |
|
||||
cmake -B build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} -DMAA_HASH_VERSION='${{ needs.meta.outputs.tag }}'
|
||||
cmake --build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} --parallel $env:NUMBER_OF_PROCESSORS
|
||||
cmake --build build --target MAA.Updater --config RelWithDebInfo --parallel $env:NUMBER_OF_PROCESSORS
|
||||
cmake --install build --config RelWithDebInfo
|
||||
|
||||
- name: Download MaaFramework
|
||||
if: matrix.arch == 'x64'
|
||||
uses: robinraju/release-downloader@v1
|
||||
with:
|
||||
repository: MaaXYZ/MaaFramework
|
||||
tag: v5.9.2
|
||||
fileName: "*win-x86_64*.zip"
|
||||
fileName: ${{ matrix.arch == 'arm64' && '*win-aarch64*.zip' || '*win-x86_64*.zip' }}
|
||||
extract: true
|
||||
out-file-path: MaaFramework-temp
|
||||
|
||||
- name: Copy MaaWin32ControlUnit
|
||||
if: matrix.arch == 'x64'
|
||||
- name: Copy ControlUnits
|
||||
run: |
|
||||
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
|
||||
cp MaaFramework-temp/bin/*AdbControlUnit* install/
|
||||
|
||||
- name: Generate global.json
|
||||
shell: bash
|
||||
run: |
|
||||
echo '{"sdk":{"version":"10.0.203","rollForward":"disable"}}' > global.json
|
||||
|
||||
- name: Setup .NET SDK
|
||||
uses: actions/setup-dotnet@v5
|
||||
@@ -212,6 +216,7 @@ jobs:
|
||||
rm -rf install/*.pdb
|
||||
rm -rf install/msvc-debug
|
||||
rm -rf install/*.h
|
||||
rm -rf install/*.bak
|
||||
|
||||
cp tools/DependencySetup_依赖库安装.bat install
|
||||
|
||||
@@ -241,10 +246,8 @@ jobs:
|
||||
show-progress: false
|
||||
|
||||
- name: Fetch submodules
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
git submodule update --init --depth 1 3rdparty/EmulatorExtras
|
||||
git submodule update --init --depth 1 src/maa-cli
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils 3rdparty/EmulatorExtras src/maa-cli
|
||||
|
||||
- name: Cache MaaDeps
|
||||
id: cache-maadeps
|
||||
@@ -269,6 +272,19 @@ jobs:
|
||||
env:
|
||||
CLICOLOR_FORCE: 1
|
||||
|
||||
- name: Download MaaFramework
|
||||
uses: robinraju/release-downloader@v1
|
||||
with:
|
||||
repository: MaaXYZ/MaaFramework
|
||||
latest: true
|
||||
fileName: '*linux-${{ matrix.arch }}*.zip'
|
||||
extract: true
|
||||
out-file-path: MaaFramework-temp
|
||||
|
||||
- name: Copy ControlUnits
|
||||
run: |
|
||||
cp MaaFramework-temp/bin/*AdbControlUnit* install/
|
||||
|
||||
- name: Setup cross compile toolchains for CLI
|
||||
uses: ./src/maa-cli/.github/actions/setup
|
||||
with:
|
||||
@@ -348,8 +364,8 @@ jobs:
|
||||
show-progress: false
|
||||
|
||||
- name: Fetch submodules
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils
|
||||
|
||||
# ninja 1.13.1 is already installed and up-to-date.
|
||||
# - name: Install dependencies
|
||||
@@ -376,6 +392,19 @@ jobs:
|
||||
cmake --build --preset ${{ matrix.arch == 'x86_64' && 'macos-publish-x64' || 'macos-publish-arm64' }} --parallel $(sysctl -n hw.logicalcpu)
|
||||
cmake --install build --config RelWithDebInfo
|
||||
|
||||
- name: Download MaaFramework
|
||||
uses: robinraju/release-downloader@v1
|
||||
with:
|
||||
repository: MaaXYZ/MaaFramework
|
||||
latest: true
|
||||
fileName: ${{ matrix.arch == 'x86_64' && '*macos-x86_64*.zip' || '*macos-aarch64*.zip' }}
|
||||
extract: true
|
||||
out-file-path: MaaFramework-temp
|
||||
|
||||
- name: Copy ControlUnits
|
||||
run: |
|
||||
cp MaaFramework-temp/bin/*AdbControlUnit* install/
|
||||
|
||||
- name: Upload MAA to GitHub
|
||||
uses: actions/upload-artifact@v7
|
||||
with:
|
||||
@@ -416,14 +445,14 @@ jobs:
|
||||
|
||||
- name: Install Developer ID certificate
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
uses: apple-actions/import-codesign-certs@v6
|
||||
uses: apple-actions/import-codesign-certs@v7
|
||||
with:
|
||||
p12-file-base64: ${{ secrets.HGUANDL_SIGN_CERT_P12 }}
|
||||
p12-password: ${{ secrets.HGUANDL_SIGN_CERT_PASSWD }}
|
||||
|
||||
- name: Download provisioning profiles
|
||||
if: startsWith(github.ref, 'refs/tags/v')
|
||||
uses: apple-actions/download-provisioning-profiles@v5
|
||||
uses: apple-actions/download-provisioning-profiles@v6
|
||||
with:
|
||||
bundle-id: "com.hguandl.MeoAsstMac"
|
||||
issuer-id: ${{ secrets.HGUANDL_APPSTORE_ISSUER }}
|
||||
@@ -562,7 +591,7 @@ jobs:
|
||||
find . -type f | while read f; do mv -fvt . $f; done
|
||||
|
||||
- name: Publish release to GitHub
|
||||
uses: softprops/action-gh-release@v2.6.1
|
||||
uses: softprops/action-gh-release@v3.0.0
|
||||
with:
|
||||
body_path: CHANGELOG.md
|
||||
files: |
|
||||
|
||||
8
.github/workflows/issue-checkbox-checker.yml
vendored
@@ -14,7 +14,7 @@ jobs:
|
||||
steps:
|
||||
- name: Check for duplicate issues in last hour
|
||||
id: duplicate-check
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
const oneHourAgo = new Date(Date.now() - 60 * 60 * 1000);
|
||||
@@ -66,7 +66,7 @@ jobs:
|
||||
|
||||
- name: Check for issue checkboxes
|
||||
id: unread-checkbox-check
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
// 找不到###就算了
|
||||
@@ -89,7 +89,7 @@ jobs:
|
||||
|
||||
- name: Close low-quality issue
|
||||
if: steps.unread-checkbox-check.outputs.result == 'true'
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
await github.rest.issues.update({
|
||||
@@ -116,7 +116,7 @@ jobs:
|
||||
|
||||
- name: Fold checkboxes
|
||||
if: steps.unread-checkbox-check.outputs.result == 'false'
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
const originalBody = context.payload.issue.body;
|
||||
|
||||
4
.github/workflows/pr-checker.yml
vendored
@@ -11,7 +11,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Clean up previous comment
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
const { data: comments } = await github.rest.issues.listComments({
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
});
|
||||
}
|
||||
- name: Check commits
|
||||
uses: actions/github-script@v8
|
||||
uses: actions/github-script@v9
|
||||
with:
|
||||
script: |
|
||||
const { data: commits } = await github.rest.pulls.listCommits({
|
||||
|
||||
11
.github/workflows/release-nightly-ota.yml
vendored
@@ -52,9 +52,8 @@ jobs:
|
||||
git fetch --depth=250 --tags
|
||||
|
||||
- name: Fetch submodules
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
git submodule update --init --depth 1 3rdparty/EmulatorExtras
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils 3rdparty/EmulatorExtras
|
||||
|
||||
- name: Checkout ref (if provided)
|
||||
if: inputs.ref != ''
|
||||
@@ -189,6 +188,7 @@ jobs:
|
||||
run: |
|
||||
cmake -B build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} -DMAA_HASH_VERSION='${{ steps.set_tag.outputs.tag }}'
|
||||
cmake --build --preset ${{ matrix.arch == 'arm64' && 'windows-publish-arm64' || 'windows-publish-x64' }} --parallel $env:NUMBER_OF_PROCESSORS
|
||||
cmake --build build --target MAA.Updater --config RelWithDebInfo --parallel $env:NUMBER_OF_PROCESSORS
|
||||
cmake --install build --config RelWithDebInfo
|
||||
|
||||
- name: Download MaaFramework
|
||||
@@ -206,6 +206,11 @@ jobs:
|
||||
run: |
|
||||
cp MaaFramework-temp/bin/*Win32ControlUnit* install/
|
||||
|
||||
- name: Generate global.json
|
||||
shell: bash
|
||||
run: |
|
||||
echo '{"sdk":{"version":"10.0.203","rollForward":"disable"}}' > global.json
|
||||
|
||||
- name: Setup .NET SDK
|
||||
uses: actions/setup-dotnet@v5
|
||||
with:
|
||||
|
||||
@@ -129,7 +129,7 @@ jobs:
|
||||
maa_cos:
|
||||
name: Upload to MAA COS
|
||||
needs: meta
|
||||
if: ${{ github.event.inputs.maa_cos == 'true' && !contains(needs.meta.outputs.RELEASE_TAG, '-') }}
|
||||
if: false
|
||||
runs-on: ubuntu-latest
|
||||
continue-on-error: true
|
||||
env:
|
||||
@@ -145,9 +145,9 @@ jobs:
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Upload to COS
|
||||
uses: zkqiang/tencent-cos-action@v0.1.0
|
||||
uses: zkqiang/tencent-cos-action@v1.0.0
|
||||
with:
|
||||
args: upload -rs downloads/${{ env.FILENAME }} MAA/${{ env.FILENAME }}
|
||||
args: sync -r downloads/${{ env.FILENAME }} cos://default/MAA/${{ env.FILENAME }}
|
||||
secret_id: ${{ secrets.MISTEO_MAA_COS_SECRET_ID }}
|
||||
secret_key: ${{ secrets.MISTEO_MAA_COS_SECRET_KEY }}
|
||||
bucket: ${{ secrets.MISTEO_MAA_COS_BUCKET }}
|
||||
|
||||
42
.github/workflows/res-update-game.yml
vendored
@@ -165,8 +165,8 @@ jobs:
|
||||
|
||||
- name: Fetch submodules
|
||||
if: steps.resupd-cache.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils
|
||||
|
||||
- name: Cache MaaDeps
|
||||
if: steps.resupd-cache.outputs.cache-hit != 'true'
|
||||
@@ -204,7 +204,7 @@ jobs:
|
||||
./tools/ResourceUpdater/res_updater
|
||||
|
||||
- name: Wait for resource cloning
|
||||
uses: yogeshlonkar/wait-for-jobs@v0
|
||||
uses: yogeshlonkar/wait-for-jobs@v1
|
||||
with:
|
||||
ignore-skipped: 'false'
|
||||
jobs: |
|
||||
@@ -235,10 +235,23 @@ jobs:
|
||||
run: |
|
||||
./tools/ResourceUpdater/res_updater
|
||||
|
||||
- name: Setup python
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: "3.11"
|
||||
cache: pip
|
||||
cache-dependency-path: |
|
||||
tools/TaskSorter/requirements.txt
|
||||
tools/OptimizeTemplates/requirements.txt
|
||||
|
||||
- name: Install TaskSorter dependencies
|
||||
run: |
|
||||
python -m pip install -r tools/TaskSorter/requirements.txt
|
||||
|
||||
- name: Sort tasks
|
||||
id: task_sorting
|
||||
run: |
|
||||
python3 tools/TaskSorter/TaskSorter.py
|
||||
python tools/TaskSorter/TaskSorter.py
|
||||
echo "gitdiff=$(echo $(git diff --name-only --diff-filter=ACM 2>/dev/null | grep '\.json$'))" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Run prettier
|
||||
@@ -251,25 +264,10 @@ jobs:
|
||||
run: |
|
||||
sh ./tools/ResourceUpdater/version.sh
|
||||
|
||||
- name: Setup python
|
||||
if: steps.update_version.outputs.contains_png == 'True'
|
||||
uses: actions/setup-python@v6
|
||||
with:
|
||||
python-version: "3.11"
|
||||
|
||||
- name: Cache python packages
|
||||
if: always() && steps.update_version.outputs.contains_png == 'True'
|
||||
id: cache_python
|
||||
uses: actions/cache@v5
|
||||
continue-on-error: true
|
||||
with:
|
||||
path: ${{ env.pythonLocation }}/Lib/site-packages
|
||||
key: ${{ runner.os }}-pip-optimize-templates-${{ hashFiles('./tools/OptimizeTemplates/requirements.txt') }}
|
||||
|
||||
- name: Install dependencies
|
||||
if: steps.cache_python.outputs.cache-hit != 'true' && steps.update_version.outputs.contains_png == 'True'
|
||||
if: steps.update_version.outputs.contains_png == 'True'
|
||||
run: |
|
||||
pip install -r tools/OptimizeTemplates/requirements.txt
|
||||
python -m pip install -r tools/OptimizeTemplates/requirements.txt
|
||||
|
||||
- name: Setup oxipng
|
||||
if: steps.update_version.outputs.contains_png == 'True'
|
||||
@@ -280,7 +278,7 @@ jobs:
|
||||
- name: Optimize png images
|
||||
if: steps.update_version.outputs.contains_png == 'True'
|
||||
run: |
|
||||
python3 tools/OptimizeTemplates/optimize_templates.py --no-cleanup -p resource/template/items/ resource/template/infrast/
|
||||
python tools/OptimizeTemplates/optimize_templates.py --no-cleanup -p resource/template/items/ resource/template/infrast/
|
||||
|
||||
- name: Commit changes
|
||||
if: steps.update_version.outputs.changes == 'True'
|
||||
|
||||
4
.github/workflows/smoke-testing.yml
vendored
@@ -70,8 +70,8 @@ jobs:
|
||||
|
||||
- name: Fetch submodules
|
||||
if: steps.smoke-cache.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
git submodule update --init --depth 1 src/MaaUtils
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --init --depth 1 src/MaaUtils
|
||||
|
||||
- name: Cache MaaDeps
|
||||
if: steps.smoke-cache.outputs.cache-hit != 'true'
|
||||
|
||||
122
.github/workflows/unit-tests.yml
vendored
Normal file
@@ -0,0 +1,122 @@
|
||||
name: Unit Tests
|
||||
|
||||
on:
|
||||
# push:
|
||||
# branches:
|
||||
# - "dev-v2"
|
||||
# paths:
|
||||
# - ".github/workflows/unit-tests.yml"
|
||||
# - "unit_test/**"
|
||||
# - "src/**"
|
||||
# pull_request:
|
||||
# paths:
|
||||
# - ".github/workflows/unit-tests.yml"
|
||||
# - "unit_test/**"
|
||||
# - "src/**"
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
select-tests:
|
||||
name: Select Unit Test Suites
|
||||
runs-on: ubuntu-latest
|
||||
outputs:
|
||||
has_tests: ${{ steps.select.outputs.has_tests }}
|
||||
matrix: ${{ steps.select.outputs.matrix }}
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
fetch-depth: 0
|
||||
show-progress: false
|
||||
|
||||
- name: Select affected test suites
|
||||
id: select
|
||||
env:
|
||||
EVENT_NAME: ${{ github.event_name }}
|
||||
BEFORE_SHA: ${{ github.event.before }}
|
||||
HEAD_SHA: ${{ github.sha }}
|
||||
PR_BASE_SHA: ${{ github.event.pull_request.base.sha }}
|
||||
PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
|
||||
run: |
|
||||
python3 - <<'PY'
|
||||
import json
|
||||
import os
|
||||
import subprocess
|
||||
|
||||
def matches(path: str, rule: str) -> bool:
|
||||
if rule.endswith('/**'):
|
||||
return path.startswith(rule[:-3])
|
||||
return path == rule
|
||||
|
||||
with open('unit_test/test-suites.json', encoding='utf-8') as f:
|
||||
mapping = json.load(f)
|
||||
|
||||
event_name = os.environ['EVENT_NAME']
|
||||
changed_files = []
|
||||
run_all = event_name == 'workflow_dispatch'
|
||||
|
||||
if not run_all:
|
||||
if event_name == 'pull_request':
|
||||
base_sha = os.environ['PR_BASE_SHA']
|
||||
head_sha = os.environ['PR_HEAD_SHA']
|
||||
else:
|
||||
base_sha = os.environ['BEFORE_SHA']
|
||||
head_sha = os.environ['HEAD_SHA']
|
||||
|
||||
if not base_sha or set(base_sha) == {'0'}:
|
||||
run_all = True
|
||||
else:
|
||||
diff = subprocess.check_output(
|
||||
['git', 'diff', '--name-only', base_sha, head_sha],
|
||||
text=True,
|
||||
)
|
||||
changed_files = [line for line in diff.splitlines() if line]
|
||||
|
||||
print('Changed files:')
|
||||
for file_path in changed_files:
|
||||
print(f' - {file_path}')
|
||||
|
||||
if run_all or any(any(matches(path, rule) for rule in mapping['runAllOnChanges']) for path in changed_files):
|
||||
selected = mapping['suites']
|
||||
else:
|
||||
selected = []
|
||||
for suite in mapping['suites']:
|
||||
if any(any(matches(path, rule) for rule in suite['paths']) for path in changed_files):
|
||||
selected.append(suite)
|
||||
|
||||
matrix = {'suite': selected}
|
||||
with open(os.environ['GITHUB_OUTPUT'], 'a', encoding='utf-8') as f:
|
||||
f.write(f"has_tests={'true' if selected else 'false'}\n")
|
||||
f.write(f"matrix={json.dumps(matrix, separators=(',', ':'))}\n")
|
||||
PY
|
||||
|
||||
unit-tests:
|
||||
name: ${{ matrix.suite.name }} Unit Tests
|
||||
needs: select-tests
|
||||
if: ${{ needs.select-tests.outputs.has_tests == 'true' }}
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix: ${{ fromJson(needs.select-tests.outputs.matrix) }}
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v6
|
||||
with:
|
||||
show-progress: false
|
||||
|
||||
- name: Configure unit tests
|
||||
run: |
|
||||
cmake -S unit_test -B build/unit_test -DCMAKE_BUILD_TYPE=Release
|
||||
|
||||
- name: Build selected unit test target
|
||||
run: |
|
||||
cmake --build build/unit_test --parallel --target ${{ matrix.suite.buildTarget }}
|
||||
|
||||
- name: Run selected unit tests
|
||||
run: |
|
||||
ctest --test-dir build/unit_test --output-on-failure -R '${{ matrix.suite.ctestRegex }}'
|
||||
7
.github/workflows/update-submodules.yml
vendored
@@ -17,15 +17,14 @@ jobs:
|
||||
submodules: true
|
||||
|
||||
- name: Update submodules
|
||||
run: |
|
||||
git submodule update --remote src/MaaMacGui
|
||||
git submodule update --remote src/maa-cli
|
||||
shell: bash
|
||||
run: bash ./.github/scripts/sync-optional-submodules.sh --remote src/MAAUnified src/MaaMacGui src/maa-cli
|
||||
|
||||
- name: Commit and push changes
|
||||
uses: actions-js/push@master
|
||||
with:
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
message: "feat: Update Submodules MaaMacGui, maa-cli
|
||||
message: "feat: Update Submodules MAAUnified, MaaMacGui, maa-cli
|
||||
|
||||
https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
|
||||
|
||||
4
.gitignore
vendored
@@ -420,6 +420,10 @@ FodyWeavers.xsd
|
||||
# Local History for Visual Studio Code
|
||||
.history/
|
||||
|
||||
# Claude Code
|
||||
.claude/
|
||||
!.claude/skills/
|
||||
|
||||
# Windows Installer files from build outputs
|
||||
*.cab
|
||||
*.msi
|
||||
|
||||
4
.gitmodules
vendored
@@ -13,3 +13,7 @@
|
||||
[submodule "src/MaaUtils"]
|
||||
path = src/MaaUtils
|
||||
url = https://github.com/MaaXYZ/MaaUtils
|
||||
[submodule "src/MAAUnified"]
|
||||
path = src/MAAUnified
|
||||
url = https://github.com/MaaAssistantArknights/MaaUnified.git
|
||||
branch = main
|
||||
|
||||
151
CHANGELOG.md
@@ -1,32 +1,147 @@
|
||||
## v6.7.1
|
||||
## v6.9.2
|
||||
|
||||
### 新增 | New
|
||||
### 许愿墙前挂满愿签,牛牛顺手把更新器、作战流程和海外服体验都打磨了一遍 | Highlights
|
||||
|
||||
* SideStory「人们,我们」导航 @SherkeyXD
|
||||
* 剿灭关卡在结算时识别周限进度 (#15847) @sylw114
|
||||
* restart game client when login errors (#16053) @Constrat
|
||||
这一版的重点仍然是把日常使用体验打磨得更顺手、更稳定。我们一边补齐周年活动与海外服适配,一边继续清理那些会打断长时间挂机流程的细碎问题。
|
||||
|
||||
#### 启动流程与更新可视化
|
||||
|
||||
MAA 现在会在重复启动时直接唤起已经打开的主窗口,不再额外弹出警告打断操作。与此同时,更新器补上了暗色模式、进度条与控制台输出,避免后台更新时因看不到进度而被重复打开,进一步降低更新流程出问题的概率。
|
||||
|
||||
#### 自动作战更稳,也更懂得何时停下
|
||||
|
||||
这一版为关卡未解锁、剿灭未启用全权代理等场景补上了提前停止检查,也支持保存代理指挥记录,并在合成玉 0 掉落时自动结束任务。针对 5.1 七周年版本更新后理智上限调整带来的影响,本次还修复了理智汇报与代理倍率选择异常;此前生息演算容易卡住的问题,同样也是由 5.1 更新后的变更引起,现在也已一并处理。
|
||||
|
||||
技能识别准确率也在这一版中大幅提升。默认情况下,MAA 会在 debug/skill_ready 下仅保留最近 50 次技能识别结果;如果你在自动战斗中遇到技能识别错误,欢迎及时携带日志和截图反馈。若根目录下存在 DEBUG_skill_ready.txt,则会无限保存相关截图;如果你愿意帮助我们训练技能识别模型,可以创建该文件,将错误分类的文件放入 对应标签_err 文件夹后发送至 uye[at]maa-org.net。
|
||||
|
||||
#### 七周年与海外服内容继续补齐
|
||||
|
||||
本次更新适配了七周年许愿墙、“重构”界面主题与争锋频道「绿藤城」,也补齐了 Yostar JP、EN、KR 小游戏相关的 SPA、资源与模板优化,让活动期间和海外服环境下的使用体验更完整。
|
||||
|
||||
----
|
||||
|
||||
### Highlights
|
||||
|
||||
This release continues to focus on making everyday use smoother and more reliable. Alongside support for anniversary content and overseas servers, we kept cleaning up the small but disruptive issues that can break long unattended runs.
|
||||
|
||||
#### Better Launch Flow and Update Visibility
|
||||
|
||||
MAA now re-activates the existing main window on repeated launches instead of interrupting users with an extra warning dialog. The updater also gains dark mode, a progress bar, and console output, helping users avoid reopening it while an update is still running in the background without visible feedback.
|
||||
|
||||
#### More Reliable Automation, with Smarter Stop Conditions
|
||||
|
||||
This version adds early-stop checks for locked stages and annihilation runs without proxy enabled, and it can now save auto-command records while ending runs automatically when 0 Orundum is detected. It also fixes incorrect sanity reporting and proxy multiplier selection caused by the sanity cap changes introduced in the 5.1 anniversary update. The Reclamation Algorithm freeze issue was caused by the same 5.1 update and has been fixed as well.
|
||||
|
||||
Skill recognition accuracy has also been significantly improved. By default, MAA keeps only the most recent 50 skill-recognition results under debug/skill_ready. If you encounter incorrect skill recognition during auto-battle, please report it together with the relevant logs and screenshots. If DEBUG_skill_ready.txt exists in the root directory, related screenshots will be saved without limit. If you would like to help train the skill-recognition model, you can create that file, move misclassified files into the corresponding label_err folder, and send them to uye[at]maa-org.net.
|
||||
|
||||
#### Continued Anniversary and Overseas Server Coverage
|
||||
|
||||
This update adapts to the 7th anniversary wishing wall, the “Reclamation” interface theme, and the Green Vine channel in SSS. It also rounds out Yostar JP, EN, and KR minigame SPA support together with related resource and template optimizations, making event-period and overseas-server usage more complete.
|
||||
|
||||
----
|
||||
|
||||
以下是详细内容:
|
||||
|
||||
## v6.9.2
|
||||
|
||||
### 改进 | Improved
|
||||
|
||||
* 优化刷坍缩方式判断逻辑,在刷取到指定二级坍缩方式的下位范式时不会直接重开 @ABA2396
|
||||
* 剿灭入口检测支持代理卡耗尽情况 @status102
|
||||
|
||||
### 修复 | Fix
|
||||
|
||||
* 欸我草我是啥比 @SherkeyXD
|
||||
* 我是🐖 @SherkeyXD
|
||||
* 繁中服基建幹員識別 (#16183) @vonnoq
|
||||
* 错误的 DateTimeOffset 与 DateTime 对比 @ABA2396
|
||||
* 开始唤醒流程 @status102
|
||||
|
||||
### 文档 | Docs
|
||||
|
||||
* stderr redirection no longer needed for waydroid as it's enabled by default @Constrat
|
||||
* ★ correction @Constrat
|
||||
* 添加 DLL 注入问题解决方案并优化 FAQ 描述 (#16404) @ocsin1
|
||||
|
||||
## v6.9.1
|
||||
|
||||
### 新增 | New
|
||||
|
||||
* 新增完整包更新时的强制提示,安装在根目录或部分特殊目录根目录时禁止启动与更新 (#16435) @ABA2396
|
||||
|
||||
### 改进 | Improved
|
||||
|
||||
* 支持沙盘战斗结束识别,重构战斗失败识别逻辑 (#16449) @status102
|
||||
* 修正应用宝连接时额外的 ClientType 设置 @status102 @ABA2396
|
||||
* 优化自动编队在 Elite 图标匹配失败或无精英化干员时的判定 @status102 @ABA2396
|
||||
* 临期理智药到期时间 OCR 与处理逻辑进一步优化,遇到时效识别失败时会取消本次吃药 @status102
|
||||
|
||||
### 修复 | Fix
|
||||
|
||||
* 修复部分场景下无法自动启动游戏,以及开始唤醒后过早切换账号的问题 (#16422) @1b2c @status102
|
||||
* 修复临期理智药库存位数、日期前缀与剩余时间输出等识别问题,并移除不再生效的日服 ROI 覆盖 @status102
|
||||
* 修复绿票商店稳定性问题,并调整信用商店识别区域以支持 4 位数信用识别 (#16369) @Roland125 @ABA2396 @ZiyinLin
|
||||
* 修复剿灭入口图片资源与结算合成玉基线识别问题 (#16458) (#16460) @Roland125
|
||||
* 修复凯尔希与 GALLUS² 识别问题 @Saratoga-Official
|
||||
* 修复设置指引中连接设置“每次重新检测”提示块隐藏错误 @ABA2396
|
||||
* 修复自动战斗多作业模式导航 retry_time 异常 @status102
|
||||
* 修复公招计数返回值,适配更精细的招募计数 (#16355) (#16371) @Roland125
|
||||
* 修复若干正确性问题(含肉鸽投资存款校验、pixel analyzer 灰度阈值、rect 越界裁剪、肉鸽招募时间解析、密文板识别等) @status102 @FireflySentinel
|
||||
|
||||
### 文档 | Docs
|
||||
|
||||
* 补全连接阶段的 ClientType 参数说明 @ABA2396
|
||||
|
||||
### 其他 | Other
|
||||
|
||||
* add deepwiki config @MistEO
|
||||
* 优化时间对比 @ABA2396
|
||||
* 延长一点干员冲突确认按钮后的等待时间 @ABA2396
|
||||
* 繁中服「命運」主題 &「無憂夢囈」導航 (#16174) @momomochi987
|
||||
* Revert "ci: 临时禁用 macos build" @MistEO
|
||||
* 优化按钮样式切换 @ABA2396
|
||||
* PC 端连接跳过数据上报 @ABA2396
|
||||
|
||||
## v6.9.0
|
||||
|
||||
### 新增 | New
|
||||
|
||||
* 重复启动时通过跨进程事件激活主窗口,替代弹窗警告提示 (#16363) @ABA2396
|
||||
* 新增关卡未解锁代理或剿灭未启用全权代理时的错误停止检查 (#16357) @ABA2396
|
||||
* 新增保存代理指挥记录功能,并支持合成玉掉落检查,0 掉落时自动结束任务 (#16356) @Roland125
|
||||
* 掉落物识别额外输出剿灭进度信息 @status102
|
||||
* 适配“重构”界面主题 (#16349) @SherkeyXD
|
||||
* 支持腾讯应用宝 5.10.56.xx (#16292) @srdr0p
|
||||
* 新增 updater 暗色模式支持 @ABA2396
|
||||
* 新增 updater 进度条与控制台输出支持 @ABA2396
|
||||
* 支持 PC 端 `完成后退出明日方舟` (#16351) @glimmertouch
|
||||
* 新增争锋频道「绿藤城」支持 (#16345) @Daydreamer114
|
||||
* 适配七周年许愿墙 @Copilot
|
||||
* YostarJP/EN/KR MiniGame SPA @Manicsteiner @Constrat @HX3N
|
||||
|
||||
### 改进 | Improved
|
||||
|
||||
* 统一 CheckComboBox 样式 @ABA2396
|
||||
* 大幅提升技能就绪识别准确率,优化技能截图保存策略 (#16393) @ABA2396
|
||||
* 合并并简化任务状态逻辑 @status102
|
||||
* 统一 ProcessTask 匹配命中状态更新逻辑 @status102
|
||||
* 优化 1 星词条选项操作描述 @status102
|
||||
* 理智上限提升至 210 @status102
|
||||
* 调整完整后 `无其他 MAA` 选项绑定逻辑,不再强制勾选退出模拟器 @ABA2396
|
||||
* 调整选项 `IsEnabled` 逻辑 @ABA2396
|
||||
* 使用 PC 端连接方式时,自动禁用不支持的完成后操作 @ABA2396
|
||||
* optimize templates yostarkr SPA @Constrat
|
||||
|
||||
### 修复 | Fix
|
||||
|
||||
* 修复 3 星 tag 标题显示异常 @ABA2396
|
||||
* 修复 CheckComboBox 不显示标题的问题 @ABA2396
|
||||
* 修复生息演算 5.1 更新后无法使用无存档刷分的问题 (#16402) @ABA2396
|
||||
* 修复剿灭后出现升级界面导致任务无法继续的问题 (#16255) (#16370) @Roland125
|
||||
* 修复干员仓储识别中升变阿米娅的识别问题 @status102
|
||||
* 修复若干正确性问题(含 null check / race / clamp / retry 等 9 处) (#16332) @FireflySentinel
|
||||
* 修复干员仓储识别未跳过数据查找失败干员的问题 @status102
|
||||
* 修复 EN IS6 trail 正则匹配问题 @Constrat
|
||||
* 修复月度小队隐藏分队选择的问题 @SherkeyXD
|
||||
* 修复小游戏列表中下拉框偶现无法展开的问题 @ABA2396
|
||||
* 修复蓝叠模拟器关闭失败的问题 (#16388) @lengyanyu258
|
||||
* 升级结算时闪退 @ABA2396
|
||||
* lower YoStarJP office mini threshold (#16390) @Rememorio
|
||||
|
||||
### 文档 | Docs
|
||||
|
||||
* 更新部分代码注释 (#16215) @JasonHuang79
|
||||
|
||||
### 其他 | Other
|
||||
|
||||
* 任务排序支持 JSONC @ABA2396
|
||||
* 调整资源更新环境 @ABA2396
|
||||
* 修改 issue template @ABA2396
|
||||
* 更新周年月卡相关文本 @SherkeyXD
|
||||
|
||||
@@ -34,9 +34,12 @@ target_include_directories(HeaderOnlyLibraries INTERFACE 3rdparty/include)
|
||||
add_subdirectory(src/MaaCore)
|
||||
|
||||
if(BUILD_WPF_GUI)
|
||||
add_subdirectory(src/MaaUpdater)
|
||||
|
||||
include_external_msproject(MaaWpfGui ${PROJECT_SOURCE_DIR}/src/MaaWpfGui/MaaWpfGui.csproj)
|
||||
|
||||
add_dependencies(MaaWpfGui MaaCore)
|
||||
add_dependencies(MaaWpfGui MAA.Updater)
|
||||
if(DEFINED ENV{VSCODE_PID})
|
||||
add_custom_target(run-MaaWpfGui
|
||||
COMMAND "${CMAKE_BINARY_DIR}/bin/$<CONFIG>/MAA.exe"
|
||||
|
||||
@@ -181,6 +181,9 @@
|
||||
"publish-base",
|
||||
"windows-x64"
|
||||
],
|
||||
"cacheVariables": {
|
||||
"BUILD_WPF_GUI": "ON"
|
||||
},
|
||||
"$comment": [
|
||||
"github actions only support Visual Studio 17 2022",
|
||||
"see https://github.com/actions/runner-images/issues/13291"
|
||||
@@ -194,6 +197,9 @@
|
||||
"publish-base",
|
||||
"windows-arm64"
|
||||
],
|
||||
"cacheVariables": {
|
||||
"BUILD_WPF_GUI": "ON"
|
||||
},
|
||||
"$comment": [
|
||||
"github actions only support Visual Studio 17 2022",
|
||||
"see https://github.com/actions/runner-images/issues/13291"
|
||||
|
||||
BIN
docs/.vuepress/public/images/ja-jp/readme/1-dark.png
Normal file
|
After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 90 KiB |
BIN
docs/.vuepress/public/images/ja-jp/readme/2-dark.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 61 KiB |
BIN
docs/.vuepress/public/images/ja-jp/readme/3-dark.png
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
docs/.vuepress/public/images/ja-jp/readme/3-light.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
docs/.vuepress/public/images/ja-jp/readme/4-dark.png
Normal file
|
After Width: | Height: | Size: 141 KiB |
BIN
docs/.vuepress/public/images/ja-jp/readme/4-light.png
Normal file
|
After Width: | Height: | Size: 138 KiB |
|
Before Width: | Height: | Size: 35 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 25 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 33 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 32 KiB |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 57 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 58 KiB |
@@ -78,7 +78,9 @@ We've preset several different development environments for you to choose from:
|
||||
- Press F5 to run
|
||||
|
||||
::: tip
|
||||
To debug Win32Controller (Windows window control) features, you need to manually download the corresponding platform package from [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases), and place `MaaWin32ControlUnit.dll` from the `bin` directory into MAA's DLL directory (e.g. `build/bin/Debug`). PRs for an auto-download script are welcome!
|
||||
To run Win32Controller (Windows window control) / MaaFwAdbController (MaaFramework touch mode) features, you need to manually download the package for your platform from [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases), and place `MaaWin32ControlUnit.dll` / `MaaAdbControlUnit.dll` from the `bin` directory into MAA's DLL directory (e.g. `build/bin/Debug`). PRs for an auto-download script are welcome!
|
||||
|
||||
To debug these features, [compile the Debug version of MaaFramework yourself](https://maafw.com/docs/4.1-BuildGuide) and use the corresponding DLLs, or it will randomly crash at breakpoints.
|
||||
:::
|
||||
|
||||
9. Now you're ready to happily ~~mess around~~ start developing!
|
||||
|
||||
@@ -8,7 +8,8 @@ icon: teenyicons:linux-alt-solid
|
||||
**This tutorial requires readers to have some Linux environment configuration ability and programming foundation!** If you only want to directly install MAA instead of compiling it yourself, please read [User Manual - Linux Emulators and Containers](../manual/device/linux.md).
|
||||
|
||||
::: info Note
|
||||
MAA's build method is still under discussion. The content of this tutorial may be outdated. Please refer to the scripts in [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/.github/workflows/ci.yml#L134). You can also refer to [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights), [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix).
|
||||
MAA's build method is still under discussion. The content of this tutorial may be outdated. Please refer to the scripts in [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/dev-v2/.github/workflows/ci.yml#L224#:~:text=ubuntu%3A).
|
||||
You can also refer to [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) or [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix).
|
||||
:::
|
||||
|
||||
::: info
|
||||
@@ -73,6 +74,8 @@ Mac can use the `tools/build_macos_universal.zsh` script for compilation. It's r
|
||||
cmake --install build --prefix <target_directory>
|
||||
```
|
||||
|
||||
4. To debug MaaFwAdbController (MaaFramework touch mode) features, you need to [compile the Debug version of MaaFramework yourself](https://maafw.com/docs/4.1-BuildGuide) and put `libMaaAdbControlUnit.so` in the installation directory.
|
||||
|
||||
## Integration Documentation
|
||||
|
||||
[~~Perhaps not really documentation~~](../protocol/integration.md)
|
||||
@@ -85,8 +88,6 @@ You can refer to the implementation of `__main__` in [Python demo](https://githu
|
||||
|
||||
You can refer to the implementation in [CppSample](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/Cpp/main.cpp)
|
||||
|
||||
### C Sharp
|
||||
|
||||
<!-- Do not use C#, MD003/heading-style: Heading style [Expected: atx; Actual: atx_closed] -->
|
||||
### C\#
|
||||
|
||||
You can refer to the implementation in [MaaWpfGui](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/MaaWpfGui/Main/AsstProxy.cs)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 3
|
||||
order: 4
|
||||
icon: mdi:plug
|
||||
---
|
||||
|
||||
@@ -16,6 +16,7 @@ As of MAA v5.22.3, the following emulators and connection addresses are supporte
|
||||
- LDPlayer 9: `emulator-5554/5556/5558/5560`, `127.0.0.1:5555/5557/5559/5561`
|
||||
- NoxPlayer: `127.0.0.1:62001/59865`
|
||||
- MEmu Play: `127.0.0.1:21503`
|
||||
- Tencent App Store (after 5.10.56.xx): `127.0.0.1:5555`
|
||||
|
||||
If detection fails, try launching MAA with UAC administrator privileges and detect again. If it still fails, refer to the manual setup instructions below and verify that your emulator and connection address are included in the list above.
|
||||
|
||||
@@ -57,6 +58,7 @@ Emulators running on your local machine should use addresses like `127.0.0.1:<po
|
||||
- [LDPlayer 9](https://help.ldmnq.com/docs/LD9adbserver) `emulator-5554`
|
||||
- [NoxPlayer](https://support.yeshen.com/zh-CN/qt/ml) `127.0.0.1:62001`
|
||||
- [MEmu Play](https://bbs.xyaz.cn/forum.php?mod=viewthread&tid=365537) `127.0.0.1:21503`
|
||||
- [Tencent App Store](https://sj.qq.com/faq/3878): ADB port is fixed at `127.0.0.1:5555`. ADB path example: `C:\Program Files\Tencent\Androws\Application\<version>\adb.exe`.
|
||||
|
||||
For other emulators, refer to [Zhao Qingqing's blog](https://www.cnblogs.com/zhaoqingqing/p/15238464.html).
|
||||
|
||||
@@ -180,17 +182,28 @@ Requires official or international LDPlayer 9 V9.1.32 or newer. <!-- Official V9
|
||||
|
||||
3. Enter the number (ID) of the corresponding emulator in the LDPlayer multi-instance manager in `Instance Number`, such as `0` for the main instance.
|
||||
|
||||
### AVD Screenshot Enhanced Mode
|
||||
|
||||
Requires Android Emulator v27.2.9 or newer. (You should be fine as long as you got the emulator after Arknights launched.)
|
||||
|
||||
AVD Screenshot Enhanced Mode is implemented in MaaFramework. Touch mode must be set accordingly for Screenshot Enhanced Mode to work.
|
||||
|
||||
1. In `Settings` - `Connection` - `Connection Preset`, select `Android Virtual Device (AVD)`.
|
||||
|
||||
2. For `Touch Mode`, select `MaaFramework`.
|
||||
|
||||
## Touch Mode
|
||||
|
||||
1. [Minitouch](https://github.com/DeviceFarmer/minitouch): An Android touch event handler written in C that operates on `evdev` devices and provides a Socket interface for external programs to trigger touch events and gestures. Starting with Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode.<sup>[source](https://github.com/DeviceFarmer/minitouch?tab=readme-ov-file#for-android-10-and-up)</sup>
|
||||
2. [MaaTouch](https://github.com/MaaAssistantArknights/MaaTouch): MAA's Java reimplementation of Minitouch that uses Android's native `InputDevice` and adds extra features. Compatibility with newer Android versions is still being tested. ~~Help us test it~~
|
||||
3. Adb Input: Directly calls ADB to use Android's `input` command for touch operations. Most compatible but slowest.
|
||||
4. [MaaFramework](https://maafw.com/): Delegates screenshot and touch commands to MaaFramework's control unit. Still being tested. ~~Help us test it x2~~
|
||||
|
||||
## ADB Lite
|
||||
|
||||
MAA's independent ADB Client implementation that communicates directly with the ADB Server via TCP. Compared to the original ADB, it avoids constantly launching multiple ADB processes, reducing performance overhead, but some screenshot methods aren't available.<sup>[PR](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pull/3315)</sup>
|
||||
|
||||
We recommend enabling it, but specific pros and cons need feedback. ~~Help us test it x2~~
|
||||
We recommend enabling it, but specific pros and cons need feedback. ~~Help us test it x3~~
|
||||
|
||||
## Running multiple MAA and emulator instances
|
||||
|
||||
|
||||
@@ -121,6 +121,8 @@ Requirements: 16:9 screen resolution larger than 720p
|
||||
|
||||
Recommended configuration: x86_64 architecture (R - 30 - x86_64 - Android 11.0) with MAA's Linux x64 dynamic library
|
||||
|
||||
Also supports [Screenshot Enhanced Mode](../connection.md#avd-screenshot-enhanced-mode).
|
||||
|
||||
Note: Starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.
|
||||
|
||||
### ⚠️ [Genymotion](https://www.genymotion.com/)
|
||||
|
||||
@@ -35,7 +35,9 @@ Supported, but less thoroughly tested. Requires using a touch mode other than `M
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
Supported, but starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.
|
||||
Supported; also supports [Screenshot Enhanced Mode](../connection.md#avd-screenshot-enhanced-mode).
|
||||
|
||||
From Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.
|
||||
|
||||
### ✅ [BlueStacks Air](https://www.bluestacks.com/mac) (Free, optimized for Apple M-series chips)
|
||||
|
||||
@@ -61,4 +63,6 @@ Note: On macOS, the Nox ADB binary is located at `/Applications/NoxAppPlayer.app
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
Supported, but starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.
|
||||
Supported; also supports [Screenshot Enhanced Mode](../connection.md#avd-screenshot-enhanced-mode).
|
||||
|
||||
Starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.
|
||||
|
||||
@@ -40,6 +40,11 @@ const fullySupport = [
|
||||
note: 'Fully compatible. Need to turn on ADB Connectivity in the emulator `Settings` → `Advanced` → `Android Debug Bridge` → `Enable`. Known to be compatible with Hyper-V.\n\n- Recommended to download [Offline Installer](https://support.bluestacks.com/hc/en-us/articles/4402611273485-BlueStacks-5-offline-installer) to avoid slow and bundled installation; recommend installing [Android 11](https://support.bluestacks.com/hc/en-us/articles/4402611273485-BlueStacks-5-offline-installer#:~:text=To%20install%20BlueStacks%205%20Android%2011) version; to uninstall it, please use the official [Uninstall Tool](https://support.bluestacks.com/hc/en-us/articles/360057724751-How-to-uninstall-BlueStacks-5-BlueStacks-X-and-BlueStacks-Services-completely-from-your-PC) to get rid of residues.\n- If the ADB port number keeps changing irregularly and is different every time you start it, it may be because your computer has [Hyper-V](https://support.bluestacks.com/hc/en-us/articles/4415238471053-System-requirements-for-BlueStacks-5-on-Hyper-V-enabled-Windows-10-and-11) enabled. MAA will now try to automatically read the port number from the BlueStacks emulator configuration file. If this doesn\'t work, or you need to use multiple instances, or have installed multiple emulator cores, please refer to [Connection Settings](../connection.html#bluestacks-emulator-hyper-v-port-number-changes-every-startup) to make adjustments. Since Hyper-V runs as administrator, operations that don\'t involve ADB such as automatic emulator shutdown or connection detection also need MAA to run as administrator.',
|
||||
},
|
||||
...shuffleArray([
|
||||
{
|
||||
name: 'Tencent App Store',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: 'Supports versions after 5.10.56.xx. Select `Tencent App Store` connection configuration in `Settings` - `Connection Settings`. Known to be compatible with Hyper-V.\n\n- ADB port is `127.0.0.1:5555`.\n- ADB path example: `C:\\Program Files\\Tencent\\Androws\\Application\\<version>\\adb.exe`.\n\n- You need to first [enable ADB debugging](https://sj.qq.com/faq/3878) in the app.',
|
||||
},
|
||||
{
|
||||
name: 'Nox Player',
|
||||
link: 'https://www.bignox.com/',
|
||||
@@ -67,7 +72,7 @@ const partiallySupport = shuffleArray([
|
||||
{
|
||||
name: 'AVD',
|
||||
link: 'https://developer.android.com/studio/run/managing-avds',
|
||||
note: 'Theoretically supported.\n\n- Starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.\n- AVD is designed for development debugging, not gaming. Other emulators specifically designed for gaming are recommended instead.',
|
||||
note: 'Theoretically supported, with additional support for [Screenshot Enhanced Mode](../connection.html#avd-screenshot-enhanced-mode).\n- Starting from Android 10, Minitouch is no longer available when SELinux is in `Enforcing` mode. Please switch to other touch modes, or **temporarily** switch SELinux to `Permissive` mode.\n- AVD is designed for development debugging, not gaming. Other emulators specifically designed for gaming are recommended instead.',
|
||||
},
|
||||
{
|
||||
name: 'Google Play Games (Developer)',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 2
|
||||
order: 3
|
||||
icon: ph:question-fill
|
||||
---
|
||||
|
||||
@@ -54,6 +54,13 @@ For Windows N/KN (European/Korean versions), you also need to install the [Media
|
||||
|
||||
Due to runtime libraries and system components requiring Windows 10 or above, MAA no longer supports Windows 7/8/8.1 systems.
|
||||
|
||||
### Flagged by Windows Defender / antivirus software (PUA / malware)
|
||||
|
||||
- First verify the download source. Only use official channels (official website, GitHub Releases, Winget, or official community distribution channels), and make sure you downloaded the full package (for example, `MAA-<version>-win-x64.zip`).
|
||||
- Automation tools may trigger heuristic detections in some antivirus engines. A detection result does not always mean the program is malicious.
|
||||
- If the source is trusted, submit a false-positive sample to the security vendor and wait for signature updates.
|
||||
- While waiting, you can temporarily add the MAA installation directory to antivirus allowlists. Avoid disabling real-time protection entirely.
|
||||
|
||||
## Connection errors
|
||||
|
||||
### Verify ADB and connection address are correct
|
||||
|
||||
83
docs/en-us/manual/install.md
Normal file
@@ -0,0 +1,83 @@
|
||||
---
|
||||
order: 2
|
||||
icon: material-symbols:download-2-rounded
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD024 -->
|
||||
|
||||
# Download & Installation
|
||||
|
||||
::: tip
|
||||
You are viewing the MAA GUI download and installation guide. If you need the maa-cli download and installation instructions, see maa-cli's [Installation and Build](./cli/install.md). The Android variant (MAA Android) is currently in open testing — see [MAA-Meow](https://github.com/Aliothmoon/MAA-Meow) for details.
|
||||
:::
|
||||
|
||||
## Downloading MAA
|
||||
|
||||
MAA offers multiple download channels, including the official website, package managers, and group file shares. Choose the method that fits your environment.
|
||||
|
||||
### Download the latest package from the [official website](https://maa.plus)
|
||||
|
||||
The website usually selects the correct architecture automatically; for most readers this will be Windows x64. macOS users should choose the macOS universal build.
|
||||
|
||||
### Download the latest package via [Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install)
|
||||
|
||||
Confirm your system architecture and download the matching package. Mirror酱 does not provide a macOS universal build — macOS users should select the package matching their chip architecture (arm/x86).
|
||||
|
||||
::: tip
|
||||
[Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install) is a third‑party, paid download acceleration service and is not operated by the MAA project. Its operating costs are covered by subscriptions and a portion of revenue is shared with project contributors. Consider subscribing to CDK for faster downloads and to support the project.
|
||||
:::
|
||||
|
||||
### Install via Windows package manager (Winget)
|
||||
|
||||
::: tip
|
||||
This method applies only to Windows users.
|
||||
:::
|
||||
|
||||
Run the following command in a terminal:
|
||||
|
||||
```bash
|
||||
winget install maa
|
||||
```
|
||||
|
||||
When installed this way the default install path is `C:\Users\<username>\AppData\Local\Microsoft\WinGet\Packages`.
|
||||
|
||||
### Download from the official QQ group files
|
||||
|
||||
1. Join the [MAA official QQ group](https://api.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)
|
||||
2. Download the latest MAA package from the group's shared files.
|
||||
|
||||
### Download from [GitHub Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases)
|
||||
|
||||
Make sure to choose the package that matches your system architecture. For most Windows users download `MAA-<version>-win-x64.zip`. For macOS users choose `MAA-<version>-macos-universal.dmg`.
|
||||
|
||||
## Linux and other operating systems
|
||||
|
||||
MAA GUI is currently not supported on Linux or other operating systems. You can use `maa-cli` to access MAA functionality on those systems — see the maa-cli [Installation and Build](./cli/install.md) document for details.
|
||||
|
||||
## Installing MAA
|
||||
|
||||
### Windows
|
||||
|
||||
After downloading you will have a `.zip` file. Extract it fully with your archive tool to obtain a folder containing all MAA files.
|
||||
|
||||
::: warning
|
||||
|
||||
1. Do not extract MAA to locations that require UAC elevation such as `C:\` or `C:\Program Files\`.
|
||||
2. MAA includes a bundled .NET runtime (self-contained deployment), but it still requires the Visual C++ Redistributable x64 (VCRedist x64). After extraction, run `DependencySetup_依赖库安装.bat` in the MAA directory as administrator to install the required dependencies. After installation completes, run `MAA.exe`.
|
||||
|
||||
For more information see the top of the [FAQ](./faq.md).
|
||||
:::
|
||||
|
||||
Double-click `MAA.exe` to start MAA.
|
||||
|
||||
::: tip
|
||||
If you installed via Winget you can start MAA by running `maa` from the command line without extracting the archive or installing runtimes manually. If `maa-cli` is on your PATH you may need extra steps to disambiguate the two.
|
||||
:::
|
||||
|
||||
### macOS
|
||||
|
||||
Open the downloaded `.dmg` and drag `MAA.app` to `/Applications` to complete installation.
|
||||
|
||||
## Next steps
|
||||
|
||||
After installation, return to the [New User Guide](./newbie.md) to continue setup, or visit [Introduction](./introduction/) to learn about MAA's features. If you encounter problems during installation, check the [FAQ](./faq.md) for troubleshooting tips.
|
||||
@@ -1146,10 +1146,10 @@ value
|
||||
Invalid placeholder. Enum value: 0.
|
||||
:::
|
||||
::: field name="MinitouchEnabled" type="boolean" optional
|
||||
Deprecated. Originally for enabling minitouch; "1" - on, "0" - off. Note that the device may not support it. Enum value: 1 (deprecated).
|
||||
Deprecated. Originally for enabling Minitouch; "1" - on, "0" - off. Note that the device may not support it. Enum value: 1 (deprecated).
|
||||
:::
|
||||
::: field name="TouchMode" type="string" optional default="minitouch"
|
||||
Touch mode setting. Options: minitouch | maatouch | adb. Default minitouch. Enum value: 2.
|
||||
Touch mode setting. Options: minitouch | maatouch | adb | MaaFwAdb. Default minitouch. Enum value: 2.
|
||||
:::
|
||||
::: field name="DeploymentWithPause" type="boolean" optional
|
||||
Whether to pause when deploying operators (affects IS, Copilot and Stationary Security Service). Options: "1" | "0". Enum value: 3.
|
||||
@@ -1160,4 +1160,7 @@ Whether to enable AdbLite or not. Options: "0" | "1". Enum value: 4.
|
||||
::: field name="KillAdbOnExit" type="boolean" optional
|
||||
Release Adb on exit. Options: "0" | "1". Enum value: 5.
|
||||
:::
|
||||
::: field name="ClientType" type="string" optional
|
||||
Client channel. Most connection configs do not need this option. Set it before `AsstConnect` / `AsstAsyncConnect` only when the selected `config` uses `[PackageName]` in commands executed during connect. In the built-in configs, only `Androws` and `WSA` currently require it for `displayId` lookup. This does not replace the `client_type` task parameter used by StartUp / CloseDown tasks. Enum value: 6.
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -84,7 +84,9 @@ icon: iconoir:developer
|
||||
- F5 キーを押して実行
|
||||
|
||||
::: tip
|
||||
Win32Controller(Windows ウィンドウ制御)関連機能をデバッグする場合は、[MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) から対応プラットフォームのアーカイブをダウンロードし、`bin` ディレクトリ内の `MaaWin32ControlUnit.dll` を MAA の DLL と同じディレクトリ(例:`build/bin/Debug`)に配置してください。自動ダウンロードスクリプトの PR 歓迎!
|
||||
Win32Controller(Windows ウィンドウ制御)/ MaaFwAdbController(MaaFramework のタッチモード)関連機能を実行する場合は、[MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) から対応プラットフォームのアーカイブをダウンロードし、`bin` ディレクトリ内の `MaaWin32ControlUnit.dll` / `MaaAdbControlUnit.dll` を MAA の DLL と同じディレクトリ(例:`build/bin/Debug`)に配置してください。自動ダウンロードスクリプトの PR 歓迎!
|
||||
|
||||
関連機能をデバッグする場合は、[MaaFramework の Debug バージョンを自分でコンパイル](https://maafw.com/docs/4.1-BuildGuide)し、対応する DLL ファイルを使用する必要があります。そうしないと、ブレークポイントデバッグ中に謎のクラッシュが発生します。
|
||||
:::
|
||||
|
||||
9. これで自由に ~~改造~~ 開発を始められます
|
||||
|
||||
@@ -8,7 +8,8 @@ icon: teenyicons:linux-alt-solid
|
||||
**このチュートリアルでは、読者にLinux環境の構成能力とプログラミングの基礎が必要です!**
|
||||
|
||||
::: info 注意
|
||||
MAAの構築方法はまだ議論されていますが、このチュートリアルの内容は古くなる可能性があります。 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/.github/workflows/ci.yml#L134) のスクリプトに準拠してください
|
||||
MAAの構築方法はまだ議論されていますが、このチュートリアルの内容は古くなる可能性があります。[GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/dev-v2/.github/workflows/ci.yml#L224#:~:text=ubuntu%3A) のスクリプトに準拠してください。
|
||||
また、[AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) や [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix) も参照可能です。
|
||||
:::
|
||||
|
||||
## コンパイルプロセス
|
||||
@@ -56,6 +57,8 @@ MAAの構築方法はまだ議論されていますが、このチュートリ
|
||||
cmake --install build --prefix <target_directory>
|
||||
```
|
||||
|
||||
4. MaaFwAdbController(MaaFramework のタッチモード)関連機能をデバッグする場合は、[MaaFramework の Debug バージョンを自分でコンパイル](https://maafw.com/docs/4.1-BuildGuide)し、`libMaaAdbControlUnit.so` をインストールディレクトリにコピーする必要があります。
|
||||
|
||||
## その他のインストール方法
|
||||
|
||||
- AUR: [maa-assistant-arknights](https://aur.archlinux.org/packages/maa-assistant-arknights)
|
||||
|
||||
@@ -1,23 +1,19 @@
|
||||
---
|
||||
order: 1
|
||||
icon: material-symbols:download
|
||||
icon: material-symbols:download-2-rounded
|
||||
---
|
||||
|
||||
# 安装及编译
|
||||
# インストールとコンパイル
|
||||
|
||||
::: important Translation Required
|
||||
This page is outdated and maybe still in Simplified Chinese. Translation is needed.
|
||||
:::
|
||||
maa-cli は、プリコンパイル済みバイナリ、パッケージマネージャー、または `cargo` を使用した自己コンパイルなど、複数のインストール方法を提供しています。
|
||||
|
||||
maa-cli 提供多种方式安装,包括预编译二进制文件、包管理器和通过 `cargo` 自行编译安装。
|
||||
## プリコンパイル済みバイナリ
|
||||
|
||||
## 预编译二进制文件
|
||||
|
||||
安装 maa-cli 最简单的方式是使用安装脚本一键安装:
|
||||
maa-cli をインストールする最も簡単な方法は、インストールスクリプトを使用する方法です:
|
||||
|
||||
::: tabs#pre-compile
|
||||
|
||||
@tab:active Linux 和 macOS
|
||||
@tab:active Linux と macOS
|
||||
|
||||
```bash
|
||||
curl -fsSL https://raw.githubusercontent.com/MaaAssistantArknights/maa-cli/main/install.sh | bash
|
||||
@@ -31,27 +27,27 @@ Invoke-WebRequest -Uri "https://raw.githubusercontent.com/MaaAssistantArknights/
|
||||
|
||||
:::
|
||||
|
||||
后续你可以通过 `maa self update` 来更新 maa-cli。
|
||||
その後、`maa self update` コマンドで maa-cli を更新できます。
|
||||
|
||||
如果你的平台不在上述列表中,可以尝试自行[编译安装](#编译安装)。
|
||||
お使いのプラットフォームが上記のリストにない場合は、[コンパイルによるインストール](#コンパイルによるインストール)を試してみてください。
|
||||
|
||||
## 通过包管理器安装
|
||||
## パッケージマネージャーによるインストール
|
||||
|
||||
对于 macOS 和受支持的 Linux 发行版用户,可以使用包管理器安装 maa-cli。
|
||||
macOS および対応している Linux ディストリビューションユーザーは、パッケージマネージャーを使用して maa-cli をインストールできます。
|
||||
|
||||
### macOS
|
||||
|
||||
Homebrew 用户可以通过非官方的 [tap](https://github.com/MaaAssistantArknights/homebrew-tap/) 安装 maa-cli:
|
||||
Homebrew ユーザーは、非公式の [tap](https://github.com/MaaAssistantArknights/homebrew-tap/) を使用して maa-cli をインストールできます:
|
||||
|
||||
::: code-tabs
|
||||
|
||||
@tab:active 稳定版
|
||||
@tab:active 安定版
|
||||
|
||||
```bash :no-line-numbers
|
||||
brew install MaaAssistantArknights/tap/maa-cli
|
||||
```
|
||||
|
||||
@tab 不稳定版/预发行版
|
||||
@tab 不安定版/プレリリース版
|
||||
|
||||
```bash :no-line-numbers
|
||||
brew install MaaAssistantArknights/tap/maa-cli-beta
|
||||
@@ -61,11 +57,11 @@ brew install MaaAssistantArknights/tap/maa-cli-beta
|
||||
|
||||
### Linux
|
||||
|
||||
Arch、Nix 以及 Linux Homebrew 用户可以通过包管理器安装 maa-cli。
|
||||
Arch、Nix、および Linux Homebrew ユーザーは、パッケージマネージャーを使用して maa-cli をインストールできます。
|
||||
|
||||
#### Arch Linux
|
||||
|
||||
可以安装 [AUR 包](https://aur.archlinux.org/packages/maa-cli/):
|
||||
[AURパッケージ](https://aur.archlinux.org/packages/maa-cli/) をインストールできます:
|
||||
|
||||
::: code-tabs
|
||||
|
||||
@@ -85,17 +81,17 @@ yay -S maa-cli
|
||||
|
||||
#### ❄️ Nix
|
||||
|
||||
用户可以直接运行:
|
||||
ユーザーは直接実行できます:
|
||||
|
||||
::: code-tabs
|
||||
|
||||
@tab:active 稳定版
|
||||
@tab:active 安定版
|
||||
|
||||
```bash :no-line-numbers
|
||||
nix run nixpkgs#maa-cli
|
||||
```
|
||||
|
||||
@tab 每夜构建
|
||||
@tab ナイトリービルド
|
||||
|
||||
```bash :no-line-numbers
|
||||
nix run github:Cryolitia/nur-packages#maa-cli-nightly
|
||||
@@ -103,31 +99,31 @@ nix run github:Cryolitia/nur-packages#maa-cli-nightly
|
||||
|
||||
:::
|
||||
|
||||
稳定版打包至 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-cli/package.nix) 中,使用 `nixpkgs` 中的 Rust 工具链;每夜构建位于 [NUR](https://github.com/Cryolitia/nur-packages/blob/master/pkgs/maa-assistant-arknights/maa-cli.nix) 中,使用 Beta channel 的 Rust 工具链,由 Github Actions 每日自动更新和构建验证。
|
||||
安定版は [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-cli/package.nix) にパッケージされており、`nixpkgs` の Rust ツールチェーンを使用します。ナイトリービルドは [NUR](https://github.com/Cryolitia/nur-packages/blob/master/pkgs/maa-assistant-arknights/maa-cli.nix) にあり、Rust ツールチェーンのベータチャンネルを使用し、GitHub Actions によって毎日自動更新およびビルド検証が行われます。
|
||||
|
||||
#### Homebrew
|
||||
|
||||
对于在 Linux 上使用 Homebrew 的用户,请参见上述 macOS 的安装方式。
|
||||
Linux で Homebrew を使用するユーザーは、上記の macOS のインストール方法を参照してください。
|
||||
|
||||
#### 其他发行版
|
||||
#### その他のディストリビューション
|
||||
|
||||
请使用 [预编译二进制文件](#预编译二进制文件) 或是 [自行编译安装](#编译安装)。
|
||||
[プリコンパイル済みバイナリ](#プリコンパイル済みバイナリ)を使用するか、[コンパイルによるインストール](#コンパイルによるインストール)を行ってください。
|
||||
|
||||
我们也欢迎各位有兴趣的开发者将 maa-cli 提交到更多发行版的官方仓库或是用户仓库!
|
||||
また、maa-cli をより多くのディストリビューションの公式リポジトリやユーザーリポジトリに提出してくださる開発者の方々も歓迎します!
|
||||
|
||||
## 编译安装
|
||||
## コンパイルによるインストール
|
||||
|
||||
Rust 开发者可以通过 `cargo` 自行编译安装 maa-cli:
|
||||
Rust 開発者は、`cargo` を使用して maa-cli を自己コンパイルできます:
|
||||
|
||||
::: code-tabs
|
||||
|
||||
@tab:active 稳定版本
|
||||
@tab:active 安定バージョン
|
||||
|
||||
```bash :no-line-numbers
|
||||
cargo install --git https://github.com/MaaAssistantArknights/maa-cli.git --bin maa --tag stable --locked
|
||||
```
|
||||
|
||||
@tab 开发版本
|
||||
@tab 開発バージョン
|
||||
|
||||
```bash :no-line-numbers
|
||||
cargo install --git https://github.com/MaaAssistantArknights/maa-cli.git --bin maa --locked
|
||||
@@ -136,65 +132,65 @@ cargo install --git https://github.com/MaaAssistantArknights/maa-cli.git --bin m
|
||||
:::
|
||||
|
||||
::: warning
|
||||
maa-cli 目前的最低支持 Rust 版本 (MSRV) 为 1.88。请注意,MSRV 可能随时发生变化,我们建议始终使用最新的 Rust 工具链以获得最佳体验。
|
||||
maa-cli の現在の最小サポート Rust バージョン(MSRV)は 1.88 です。MSRVは予告なく変更される可能性があるため、最適な体験を得るには常に最新のRustツールチェーンを使用することをお勧めします。
|
||||
:::
|
||||
|
||||
### 编译选项
|
||||
### コンパイルオプション
|
||||
|
||||
从源码编译时,你可以通过 `--no-default-features` 禁用默认的特性,然后通过 `--features` 来启用特定的特性。目前可用的特性有:
|
||||
ソースからコンパイルする場合、`--no-default-features` でデフォルトのフィーチャーを無効にし、`--features` で特定のフィーチャーを有効にすることができます。現在利用可能なフィーチャーは以下の通りです:
|
||||
|
||||
- `cli_installer`: 启用 `maa self update` 命令,用于更新自身,这个特性默认启用;
|
||||
- `core_installer`: 启用 `maa install` 和 `maa update` 命令,用于安装和更新 MaaCore 及资源,这个特性默认启用;
|
||||
- `git2`: 提供 `libgit2` 资源更新后端,这个特性默认启用。
|
||||
- `cli_installer`: `maa self update` コマンドを有効にし、自身を更新するために使用します。このフィーチャーはデフォルトで有効です。
|
||||
- `core_installer`: `maa install` および `maa update` コマンドを有効にし、MaaCore とリソースをインストールおよび更新するために使用します。このフィーチャーはデフォルトで有効です。
|
||||
- `git2`: `libgit2` リソース更新バックエンドを提供します。このフィーチャーはデフォルトで有効です。
|
||||
|
||||
## 安装 MaaCore 及资源
|
||||
## MaaCoreとリソースのインストール
|
||||
|
||||
maa-cli 只提供了一个命令行界面,它需要 MaaCore 和资源来运行任务。
|
||||
maa-cli はコマンドラインインターフェースのみを提供しており、タスクを実行するには MaaCore とリソースが必要です。
|
||||
|
||||
根据安装方式和平台的不同,你的操作也有所区别:
|
||||
インストール方法とプラットフォームによって、操作は異なります:
|
||||
|
||||
::: tabs#maacore
|
||||
|
||||
@tab:active 预编译
|
||||
对于使用预编译二进制或者自行编译的用户,maa-cli 可以帮助你安装和更新:
|
||||
@tab:active プリコンパイル
|
||||
プリコンパイル済みバイナリを使用する場合、または自己コンパイルしたユーザーの場合、maa-cli がインストールと更新を支援します:
|
||||
|
||||
```bash :no-line-numbers
|
||||
maa install
|
||||
```
|
||||
|
||||
@tab Windows
|
||||
对于 Windows 平台的用户,在运行 `maa install` 命令前,请以管理员身份在命令提示符或 PowerShell 中运行以下命令,以安装必要组件 VC++ 运行库:
|
||||
Windows プラットフォームのユーザーは、`maa install` コマンドを実行する前に、管理者権限でコマンドプロンプトまたは PowerShell で以下のコマンドを実行し、必須コンポーネントである VC++ ランタイムをインストールしてください:
|
||||
|
||||
```bat :no-line-numbers
|
||||
winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /norestart" --uninstall-previous --accept-package-agreements --force
|
||||
```
|
||||
|
||||
然后再运行 `maa install`。
|
||||
その後、`maa install` を実行してください。
|
||||
|
||||
@tab Arch
|
||||
你可以使用 maa-cli 安装预编译的 MaaCore:
|
||||
maa-cli を使用してプリコンパイル済みの MaaCore をインストールできます:
|
||||
|
||||
```bash :no-line-numbers
|
||||
maa install
|
||||
```
|
||||
|
||||
你也可以通过 [AUR](https://aur.archlinux.org/packages/maa-assistant-arknights/) 安装 maa-core
|
||||
また、[AUR](https://aur.archlinux.org/packages/maa-assistant-arknights/) を使用して maa-core をインストールすることもできます:
|
||||
|
||||
```bash :no-line-numbers
|
||||
paru -S maa-assistant-arknights
|
||||
```
|
||||
|
||||
或者
|
||||
または
|
||||
|
||||
```bash :no-line-numbers
|
||||
yay -S maa-assistant-arknights
|
||||
```
|
||||
|
||||
@tab Nix
|
||||
Nix 上的 maa-cli 强制依赖 MaaCore,因此 Nix 用户无需,也不应该手动安装 MaaCore。
|
||||
Nix の maa-cli は MaaCore に強く依存しています。そのため、Nix ユーザーは MaaCore を手動でインストールする必要はなく、またすべきではありません。
|
||||
|
||||
:::
|
||||
|
||||
::: warning
|
||||
`maa install` 下载的是 MAA 官方预编译的 MaaCore,而包管理器安装的 MaaCore 可能使用与官方预编译版本不同的编译选项和依赖版本,这也许会导致性能和功能上的略微差异。
|
||||
`maa install` は MAA 公式がプリコンパイルした MaaCore をダウンロードします。一方、パッケージマネージャーでインストールされる MaaCore は、公式のプリコンパイルバージョンとは異なるコンパイルオプションや依存関係のバージョンを使用する可能性があり、これによりパフォーマンスや機能にわずかな違いが生じる可能性があります。
|
||||
:::
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 3
|
||||
order: 4
|
||||
icon: mdi:plug
|
||||
---
|
||||
|
||||
@@ -43,6 +43,7 @@ icon: mdi:plug
|
||||
- [MuMu Pro](https://mumu.163.com/mac/function/20240126/40028_1134600.html) `16384`
|
||||
- [逍遥](https://bbs.xyaz.cn/forum.php?mod=viewthread&tid=365537) `21503`
|
||||
- [夜神](https://support.yeshen.com/zh-CN/qt/ml) `62001`
|
||||
- [テンセントアプリストア](https://sj.qq.com/faq/3878) (5.10.56.xx 以降):ADB ポートは `127.0.0.1:5555` 固定。ADB パス例:`C:\Program Files\Tencent\Androws\Application\バージョン番号\adb.exe`。
|
||||
|
||||
他のエミュレータについては[Zhaoqingqing's Blog](https://www.cnblogs.com/zhaoqingqing/p/15238464.html)を参照してください。
|
||||
|
||||
@@ -224,14 +225,25 @@ LDPlayerの正式版9 V9.1.32 以降を使用する必要があります。<!--
|
||||
|
||||
3. `インスタンス番号` には LD マルチインスタンス内でのエミュレーターの番号を入力してください。主インスタンスの場合は `0` です。
|
||||
|
||||
### AVD スクリーンショット強化モード
|
||||
|
||||
Android Emulator v27.2.9 以降が必要です。(アークナイツのリリース以降にダウンロードしたエミュレーターであれば大丈夫です。)
|
||||
|
||||
AVD スクリーンショット強化モードは MaaFramework 内で実装されているため、MaaFramework のタッチモードを有効にすることが、この機能を利用する前提となります。
|
||||
|
||||
1. `設定` - `接続設定` - `接続構成` で `Android Virtual Device (AVD)` を選択します。
|
||||
|
||||
2. `タッチモード` で `MaaFramework` を選択します。
|
||||
|
||||
## タッチモード
|
||||
|
||||
1. [Minitouch](https://github.com/DeviceFarmer/minitouch):Android タッチイベントを操作するための C 言語で書かれたツールで、`evdev` デバイスを操作し、外部プログラムがタッチイベントとジェスチャーをトリガーできる Socket インターフェースを提供します。Android 10 以降、SELinux が `Enforcing` モードの場合、Minitouch は使用できなくなりました。<sup>[出典](https://github.com/DeviceFarmer/minitouch?tab=readme-ov-file#for-android-10-and-up)</sup>
|
||||
2. [MaaTouch](https://github.com/MaaAssistantArknights/MaaTouch):MAA による Java で Minitouch を再実装し、Android の `InputDevice` を使用し、追加の機能を付加しました。高バージョンの Android での利用可能性はまだテスト中です。~~テストを手伝ってください~~
|
||||
3. Adb Input:直接 ADB を呼び出して、Android の `input` コマンドを使用してタッチ操作を行います。最も互換性があり、最も遅い速度です。
|
||||
4. [MaaFramework](https://maafw.com/):MaaFramework の制御ユニットのスクリーンショットとタッチ機能を呼び出します。利用可能性はまだテスト中です。~~テストを手伝ってください x2~~
|
||||
|
||||
## ADB Lite
|
||||
|
||||
MAA によって独自に実装された ADB クライアントで、オリジナルの ADB よりも多重の ADB プロセスを開始せずに済み、パフォーマンスの低下を抑えることができますが、一部のスクリーンショット方法は使用できません。
|
||||
|
||||
推奨されますが、具体的な利点と欠点はまだフィードバックを得ていません。~~テストを手伝ってください x2~~
|
||||
推奨されますが、具体的な利点と欠点はまだフィードバックを得ていません。~~テストを手伝ってください x3~~
|
||||
|
||||
@@ -121,6 +121,8 @@ MAA Wine Bridge で生成された `MaaDesktopIntegration.so` を `MAA.exe` と
|
||||
|
||||
推奨構成: x86_64 のフレームワーク (R - 30 - x86_64 - Android 11.0) と MAA のLinux x64 ダイナミック ライブラリ
|
||||
|
||||
[スクリーンショット強化モード](../connection.md#avd-スクリーンショット強化モード)の追加サポートもあります。
|
||||
|
||||
- Android 10 以降、SELinux が `Enforcing` モードの場合、Minitouch は使用できません、別のタッチモードに切り替えてください。または SELinux を **一時的に** `Permissive` モードに切り替え。
|
||||
|
||||
### ⚠️ [Genymotion](https://www.genymotion.com/)
|
||||
|
||||
@@ -39,7 +39,9 @@ icon: basil:apple-solid
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
サポートされています。Android 10 以降、SELinux が\`Enforcing\`モードの場合、Minitouch は使用できません、別のタッチモードに切り替えてください。または SELinux を **一時的に** \`Permissive\`モードに切り替え。
|
||||
サポートされています。[スクリーンショット強化モード](../connection.md#avd-スクリーンショット強化モード)の追加サポートもあります。
|
||||
|
||||
Android 10 以降、SELinux が `Enforcing` モードの場合、Minitouch は使用できません、別のタッチモードに切り替えてください。または SELinux を **一時的に** `Permissive` モードに切り替え。
|
||||
|
||||
### ✅ [BlueStacks Air](https://www.bluestacks.com/mac) (無料、Apple Mシリーズチップ向けに最適化されたバージョン)
|
||||
|
||||
@@ -69,4 +71,4 @@ Mac 版の開発は人手不足のため、更新速度が比較的遅いです
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
サポートされています。
|
||||
サポートされています。[スクリーンショット強化モード](../connection.md#avd-スクリーンショット強化モード)の追加サポートもあります。
|
||||
|
||||
@@ -25,12 +25,12 @@ const fullySupport = [
|
||||
{
|
||||
name: 'MuMu Player',
|
||||
link: 'https://www.mumuplayer.com/',
|
||||
note: 'サポートされています、[スクリーンショット強化モード](../connection.html#MuMu スクリーンショット強化モード)の追加サポートもある。 Hyper-Vとの互換性が確認されています。\n\n- “完了後にエミュレータを終了する”機能に異常が発生する場合がありますので、その場合はMuMu公式までご連絡ください。\n- 複数のインスタンスを開くには、MuMu Multiple OpenerのADBボタンから対応するインスタンスのポート情報を確認し、MAA設定-接続設定の接続アドレスのポート番号を対応するポートに変更する必要があります。\n- `ビデオメモリ使用ポリシー`を`リソース使用量が少ない`に設定しないでください。',
|
||||
note: 'サポートされています、[スクリーンショット強化モード](../connection.html#MuMu スクリーンショット強化モード)の追加サポートもあります。 Hyper-Vとの互換性が確認されています。\n\n- “完了後にエミュレータを終了する”機能に異常が発生する場合がありますので、その場合はMuMu公式までご連絡ください。\n- 複数のインスタンスを開くには、MuMu Multiple OpenerのADBボタンから対応するインスタンスのポート情報を確認し、MAA設定-接続設定の接続アドレスのポート番号を対応するポートに変更する必要があります。\n- `ビデオメモリ使用ポリシー`を`リソース使用量が少ない`に設定しないでください。',
|
||||
},
|
||||
{
|
||||
name: 'LDPlayer',
|
||||
link: 'https://www.ldplayer.net/',
|
||||
note: 'サポートされています、[スクリーンショット強化モード](../connection.html#LDPlayer スクリーンショット強化モード)の追加サポートもある。 Hyper-Vとの互換性が確認されています。\n\n- LDPlayer 9のインストーラーは、インストールプロセス中に自動的にHyper-Vをサイレントで無効にしますので、必要な場合は注意してください。',
|
||||
note: 'サポートされています、[スクリーンショット強化モード](../connection.html#LDPlayer スクリーンショット強化モード)の追加サポートもあります。 Hyper-Vとの互換性が確認されています。\n\n- LDPlayer 9のインストーラーは、インストールプロセス中に自動的にHyper-Vをサイレントで無効にしますので、必要な場合は注意してください。',
|
||||
},
|
||||
]),
|
||||
// keep internal sorting for bluestacks.
|
||||
@@ -40,6 +40,11 @@ const fullySupport = [
|
||||
note: 'サポートされています。エミュレーターの `設定` - `上位設定` で `Android Debug Bridge`をONにする必要があります。\n\n- ネットワーク環境が悪い場合は [オフラインパッケージ](https://support.bluestacks.com/hc/zh-tw/articles/4402611273485-BlueStacks-5-%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D%E7%A8%8B%E5%BC%8F)をダウンロードしてください。\n- adbポート番号が不規則に変化し続け、起動するたびに同じでない場合は、お使いのコンピュータが [Hyper-V](https://support.bluestacks.com/hc/ja/articles/4415238471053-BlueStacks-5-Hyper-V%E3%81%8C%E6%9C%89%E5%8A%B9%E3%81%AB%E3%81%AA%E3%81%A3%E3%81%A6%E3%81%84%E3%82%8BWindows-10%E3%81%A8Windows-11%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E8%A6%81%E4%BB%B6)を有効にしている可能性があります,\nこのような状況に対して、MAAはポート番号を自動的に取得する小さなバックドアを提供しています。この機能がは動作しません/複数のエミュレータが必要/複数のエミュレータコアがインストールされているの場合は [よくある質問](../よくある質問.html#blue-stackエミュレータが起動するたびにポート番号が異なるhyper-v) を参照して変更してください。Hyper-V は管理者として実行されるため、エミュレーターの自動シャットダウンや接続の自動検出など、adb を伴わない操作でも MAA を管理者として実行する必要があります。',
|
||||
},
|
||||
...shuffleArray([
|
||||
{
|
||||
name: 'テンセントアプリストア',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: 'バージョン 5.10.56.xx 以降をサポートしています。`設定` - `接続設定` で `テンセントアプリストア` 接続設定を選択してください。Hyper-V との互換性が確認されています。\n\n- ADB ポートは `127.0.0.1:5555` です。\n- ADB パス例:`C:\\Program Files\\Tencent\\Androws\\Application\\バージョン番号\\adb.exe`。\n\n- 事前にアプリストアで [ADB デバッグを有効化](https://sj.qq.com/faq/3878) する必要があります。',
|
||||
},
|
||||
{
|
||||
name: 'NOX',
|
||||
link: 'https://www.yeshen.com/',
|
||||
@@ -67,7 +72,7 @@ const partiallySupport = shuffleArray([
|
||||
{
|
||||
name: 'AVD',
|
||||
link: 'https://developer.android.com/studio/run/managing-avds',
|
||||
note: '理論的なサポートされています。\n\n- Android 10 以降、SELinux が`Enforcing`モードの場合、Minitouch は使用できません、別のタッチモードに切り替えてください。または SELinux を **一時的に** `Permissive`モードに切り替え。\n- AVD はデバッグ用に構築されており、ゲーム用に設計された他のエミュレーターを使用することをおすすめします。',
|
||||
note: '理論的なサポートされています。\n\n- [スクリーンショット強化モード](../connection.html#avd-スクリーンショット強化モード)の追加サポートもあります。\n- Android 10 以降、SELinux が`Enforcing`モードの場合、Minitouch は使用できません、別のタッチモードに切り替えてください。または SELinux を **一時的に** `Permissive`モードに切り替え。\n- AVD はデバッグ用に構築されており、ゲーム用に設計された他のエミュレーターを使用することをおすすめします。',
|
||||
},
|
||||
{
|
||||
name: 'Google Play ゲーム(開発者)',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 2
|
||||
order: 3
|
||||
icon: ph:question-fill
|
||||
---
|
||||
|
||||
|
||||
93
docs/ja-jp/manual/install.md
Normal file
@@ -0,0 +1,93 @@
|
||||
---
|
||||
order: 2
|
||||
icon: material-symbols:download-2-rounded
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD024 -->
|
||||
|
||||
# ダウンロードとインストール
|
||||
|
||||
::: tip
|
||||
|
||||
これは MAA GUI のダウンロードとインストールに関するドキュメントです。maa-cli のダウンロードとインストールについては、[インストールとコンパイル](./cli/install.md)を参照してください。現在、Android版「MAA-Meow(MAA Android版)」はテスト公開中です。詳細は [MAA-Meow](https://github.com/Aliothmoon/MAA-Meow)をご覧ください。(現在、このソフトウェアのUIは中国語のみサポートしています)
|
||||
|
||||
:::
|
||||
|
||||
## MAA のダウンロード
|
||||
|
||||
MAA では、公式サイトからのダウンロード、パッケージマネージャーからのインストール、グループファイルからのダウンロードなど、複数の方法を提供しています。ご都合に合わせた方法でダウンロードしてください。
|
||||
|
||||
### [公式サイト](https://maa.plus)から最新の MAA パッケージをダウンロード
|
||||
|
||||
通常、公式サイトでは正しいバージョンとアーキテクチャが自動選択されます。ほとんどの読者にとっては Windows x64 です。macOS ユーザーの方は、macOS ユニバーサル版をダウンロードしてください。
|
||||
|
||||
### [Mirror ちゃん](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install)から最新の MAA パッケージをダウンロード
|
||||
|
||||
システムアーキテクチャを確認し、対応するパッケージをダウンロードしてください。ほとんどの Windows ユーザーにとっては Windows x64 です。Mac ユーザーの場合、Mirrorちゃんはユニバーサルパッケージを提供していないため、お使いのチップアーキテクチャ(arm/x86)を確認して対応するパッケージをダウンロードしてください。
|
||||
|
||||
::: tip
|
||||
|
||||
[Mirrorちゃん](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install)は独立したサードパーティのダウンロードアクセラレーションサービスであり、MAA の有料サービスではありません。その運営コストはサブスクリプション収入で賄われ、収益の一部はプロジェクト開発者に還元されます。高速ダウンロードを楽しみながらプロジェクトの継続的な開発を支援するために、CDK の購読をご検討ください。
|
||||
|
||||
:::
|
||||
|
||||
### Windows パッケージマネージャー(Winget)を使用したインストール
|
||||
|
||||
::: tip
|
||||
|
||||
この方法は Windows ユーザーのみ利用可能です。
|
||||
|
||||
:::
|
||||
|
||||
ターミナルで以下のコマンドを実行してください:
|
||||
|
||||
```bash
|
||||
winget install maa
|
||||
```
|
||||
|
||||
この方法でインストールした場合、デフォルトのインストールパスは `C:\Users\ユーザー名\AppData\Local\Microsoft\WinGet\Packages` です。
|
||||
|
||||
### QQ グループファイルから最新のMAAパッケージをダウンロード
|
||||
|
||||
1. [MAA 公式 QQ グループ](https://api.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)に参加してください。
|
||||
2. グループファイル内で最新の MAA パッケージをダウンロードしてください。
|
||||
|
||||
### [GitHub Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases)から最新の MAA パッケージをダウンロード
|
||||
|
||||
システムアーキテクチャを確認し、対応するパッケージをダウンロードしてください。ほとんどの Windows ユーザーにとっては `MAA-<バージョン番号>-win-x64.zip` です。macOS ユーザーの方は `MAA-<バージョン番号>-macos-universal.dmg` を選択してください。
|
||||
|
||||
## Linux およびその他のオペレーティングシステム
|
||||
|
||||
MAA GUI は**現時点では** Linux やその他のオペレーティングシステムをサポートしていません。これらのシステムで MAA の機能を使用するには、**maa-cli** を利用できます。詳細は、maa-cli の [インストールとコンパイル](./cli/install.md)を参照してください。
|
||||
|
||||
## MAA のインストール
|
||||
|
||||
### Windows
|
||||
|
||||
ダウンロードが完了すると、`.zip`ファイルが取得できます。解凍ソフトで完全に解凍すると、MAAのすべてのファイルを含むフォルダが作成されます。
|
||||
|
||||
::: warning
|
||||
|
||||
1. `C:\` や `C:\Program Files\` など UAC 権限が必要なパスに MAA を解凍しないでください。
|
||||
|
||||
2. MAA には .NET ランタイムが内蔵されています(自己完結型デプロイ)。ただし、Visual C++ Redistributable x64(VCRedist x64)が必要です。解凍したMAAディレクトリ内で、管理者権限で `DependencySetup_依赖库安装.bat` を実行し、この依存関係をインストールしてください。インストール完了後、`MAA.exe` を実行してください。
|
||||
|
||||
詳細は[よくある質問](./faq.md)のトップを参照してください。
|
||||
|
||||
:::
|
||||
|
||||
`MAA.exe`をダブルクリックすると、MAAが起動します。
|
||||
|
||||
::: tip
|
||||
|
||||
Windows パッケージマネージャー(Winget)を使用してインストールした場合、解凍やランタイムのインストールなどの追加操作なしで、コマンドラインに `maa` と入力するだけで MAA を起動できます。ただし、PATHに `maa-cli` が存在する場合、それらを区別するために追加の手順が必要になることがあります。
|
||||
|
||||
:::
|
||||
|
||||
### macOS
|
||||
|
||||
ダウンロードが完了すると、`.dmg`ファイルが取得できます。その `.dmg` をダブルクリックして開き、`MAA.app` を `/Applications` にドラッグしてインストールを完了します。
|
||||
|
||||
## 次のステップ
|
||||
|
||||
インストールが完了したら、[初心者向けガイド](./newbie.md)に戻って設定を続行するか、[機能紹介](./introduction/)で MAA がサポートするさまざまな機能を確認してください。インストール中に問題が発生した場合は、[よくある質問](./faq.md)を参照して解決を試みてください。
|
||||
@@ -1145,10 +1145,10 @@ bool ASSTAPI AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key,
|
||||
無効なプレースホルダ。列挙値:0。
|
||||
:::
|
||||
::: field name="MinitouchEnabled" type="boolean" optional
|
||||
廃止済み。元は minitouch を有効にするかどうか。"1" オン、"0" オフ。デバイスがサポートされていない可能性がります。列挙値:1(廃止済み)。
|
||||
廃止済み。元は Minitouch を有効にするかどうか。"1" オン、"0" オフ。デバイスがサポートされていない可能性がります。列挙値:1(廃止済み)。
|
||||
:::
|
||||
::: field name="TouchMode" type="string" optional default="minitouch"
|
||||
タッチ モード設定。可能な値:minitouch | maatouch | adb。デフォルト minitouch。列挙値:2。
|
||||
タッチ モード設定。可能な値:minitouch | maatouch | adb | MaaFwAdb。デフォルト minitouch。列挙値:2。
|
||||
:::
|
||||
::: field name="DeploymentWithPause" type="boolean" optional
|
||||
暫停状態でオペレーターを配置するかどうか。自動戦闘、統合戦略、保全駐在に同時に影響。可能な値:"1" または "0"。列挙値:3。
|
||||
@@ -1159,4 +1159,7 @@ AdbLite を使用するかどうか。可能な値:"0" または "1"。列挙
|
||||
::: field name="KillAdbOnExit" type="boolean" optional
|
||||
終了時に Adb プロセスをキルするかどうか。可能な値:"0" または "1"。列挙値:5。
|
||||
:::
|
||||
::: field name="ClientType" type="string" optional
|
||||
クライアント種別(ゲームチャネル)。ほとんどの接続設定では不要です。`AsstConnect` / `AsstAsyncConnect` に渡す `config` が、接続時に実行するコマンド内で `[PackageName]` を使用する場合にのみ、接続前に `AsstSetInstanceOption(..., ClientType, ...)` を設定してください。現在の組み込み設定では、`Androws` と `WSA` の `displayId` 取得のみがこの値に依存します。このオプションは StartUp / CloseDown などのタスクパラメータ `client_type` を置き換えるものではありません。列挙値:6。
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -83,7 +83,9 @@ icon: iconoir:developer
|
||||
- F5 키를 눌러 실행
|
||||
|
||||
::: tip
|
||||
Win32Controller(Windows 창 제어) 관련 기능을 디버깅하려면 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases)에서 해당 플랫폼 압축 파일을 다운로드하고, `bin` 디렉토리의 `MaaWin32ControlUnit.dll`을 MAA DLL과 같은 디렉토리(예: `build/bin/Debug`)에 배치해야 합니다. 자동 다운로드 스크립트 PR 환영!
|
||||
Win32Controller(Windows 창 제어) / MaaFwAdbController(MaaFramework 터치 수행 방식) 관련 기능을 실행하려면 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases)에서 해당 플랫폼 압축 파일을 다운로드하고, `bin` 디렉토리의 `MaaWin32ControlUnit.dll` / `MaaAdbControlUnit.dll`을 MAA DLL과 같은 디렉토리(예: `build/bin/Debug`)에 배치해야 합니다. 자동 다운로드 스크립트 PR 환영!
|
||||
|
||||
若需调试相关功能,则需要自行编译 MaaFramework 的 Debug 版本,使用对应的 DLL 文件,否则在断点调试时会神秘闪退。
|
||||
:::
|
||||
|
||||
9. 이제 자유롭게 ~~개조~~ 개발 시작!
|
||||
|
||||
@@ -8,7 +8,7 @@ icon: teenyicons:linux-alt-solid
|
||||
**이 가이드는 독자가 일정한 Linux 환경 설정 능력과 프로그래밍 기초를 가지고 있다고 가정합니다!** MAA를 직접 컴파일하는 대신 단순히 설치하길 원한다면 [사용자 매뉴얼 - Linux 지원](../manual/device/linux.md)를 참고하세요.
|
||||
|
||||
::: info 주의
|
||||
MAA의 빌드 방법은 여전히 논의 중입니다. 이 가이드의 내용은 최신 내용이 아닐 수 있으므로 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/.github/workflows/ci.yml#L134)의 스크립트를 참고하는 것이 좋습니다.
|
||||
MAA의 빌드 방법은 여전히 논의 중입니다. 이 가이드의 내용은 최신 내용이 아닐 수 있으므로 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/dev-v2/.github/workflows/ci.yml#L224#:~:text=ubuntu%3A)의 스크립트를 참고하는 것이 좋습니다.
|
||||
또한 [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) 또는 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix)를 참고할 수도 있습니다.
|
||||
:::
|
||||
|
||||
@@ -80,7 +80,7 @@ MaaAssistantArknights/MaaMacGui 프로젝트의 [README.md](https://github.com/M
|
||||
cmake --install build --prefix <target_directory>
|
||||
```
|
||||
|
||||
4. 완료, 디렉터리에서 빌드 파일을 확인할 수 있을 것입니다.
|
||||
4. 若需调试 MaaFwAdbController(MaaFramework 触控模式)相关功能,需要[自行编译 MaaFramework](https://maafw.com/docs/4.1-BuildGuide) 的 Debug 版本,将 `libMaaAdbControlUnit.so` 放到安装目录下。
|
||||
|
||||
::::
|
||||
|
||||
@@ -96,8 +96,6 @@ MaaAssistantArknights/MaaMacGui 프로젝트의 [README.md](https://github.com/M
|
||||
|
||||
[CppSample](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/Cpp/main.cpp)의 구현을 참고하세요.
|
||||
|
||||
### C Sharp
|
||||
|
||||
<!-- Do not use C#, MD003/heading-style: Heading style [Expected: atx; Actual: atx_closed] -->
|
||||
### C\#
|
||||
|
||||
[MaaWpfGui](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/MaaWpfGui/Main/AsstProxy.cs)의 구현을 참고하세요.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 3
|
||||
order: 4
|
||||
icon: mdi:plug
|
||||
---
|
||||
|
||||
@@ -16,6 +16,7 @@ MAA v5.22.3까지 지원하는 감지 가능한 에뮬레이터 및 연결 주
|
||||
- LDPlayer 9: `emulator-5554/5556/5558/5560`, `127.0.0.1:5555/5557/5559/5561`
|
||||
- 逍遥(Xiaoyao): `127.0.0.1:62001/59865`
|
||||
- 夜神(Yeshen): `127.0.0.1:21503`
|
||||
- 텐센트 앱스토어 (5.10.56.xx 이후): `127.0.0.1:5555`
|
||||
|
||||
감지에 실패하면 UAC 관리자 권한으로 MAA를 시작하여 다시 감지해보세요. 여전히 실패한다면 아래 수동 설정을 참고하고, 에뮬레이터와 연결 주소가 위 목록에 포함되어 있는지 확인하세요.
|
||||
|
||||
@@ -59,6 +60,7 @@ MAA 폴더에 직접 압축을 푸는 것을 권장합니다. 그러면 ADB 경
|
||||
- [LDPlayer 9](https://help.ldmnq.com/docs/LD9adbserver#edc3863750608062bcb3feea256413dc) `emulator-5554`
|
||||
- [逍遥(Xiaoyao)](https://bbs.xyaz.cn/forum.php?mod=viewthread&tid=365537) `21503`
|
||||
- [夜神(Yeshen)](https://support.yeshen.com/zh-CN/qt/ml) `62001`
|
||||
- [텐센트 앱스토어](https://sj.qq.com/faq/3878): ADB 포트는 `127.0.0.1:5555` 고정. ADB 경로 예시: `C:\Program Files\Tencent\Androws\Application\버전번호\adb.exe`.
|
||||
|
||||
기타 에뮬레이터는 [赵青青의 블로그](https://www.cnblogs.com/zhaoqingqing/p/15238464.html)를 참고하세요.
|
||||
|
||||
@@ -194,11 +196,22 @@ MAA 폴더에 직접 압축을 푸는 것을 권장합니다. 그러면 ADB 경
|
||||
|
||||
3. `인스턴스 번호`에 LD 멀티플레이어에서 해당 에뮬레이터의 일련번호(ID)를 입력합니다. 예: 메인 멀티플레이어의 경우 `0`
|
||||
|
||||
### AVD 스크린샷 향상 모드
|
||||
|
||||
需使用 Android Emulator v27.2.9 及更新版本。(只要是方舟开服之后下载的就没问题。)
|
||||
|
||||
因为 AVD 截图增强模式在 MaaFramework 中实现,所以必须选择 MaaFramework 触控模式才能启用 AVD 截图增强。
|
||||
|
||||
1. `设置` - `连接设置` - `连接配置` 选择 `Android 虚拟设备(AVD)`。
|
||||
|
||||
2. `触控模式` 选择 `MaaFramework`。
|
||||
|
||||
## 터치 모드
|
||||
|
||||
1. [Minitouch](https://github.com/DeviceFarmer/minitouch): C로 작성된 Android 터치 이벤트 핸들러로, 외부 프로그램이 터치 이벤트와 제스처를 트리거할 수 있는 소켓 인터페이스를 제공합니다. Android 10부터는 SELinux가 `Enforcing` 모드일 때 Minitouch가 더 이상 사용되지 않습니다.
|
||||
2. [MaaTouch](https://github.com/MaaAssistantArknights/MaaTouch): MAA가 Java 기반으로 Minitouch를 재구현한 것입니다. 높은 버전의 Android에서도 사용 가능성이 테스트 중입니다.
|
||||
3. Adb Input: ADB 명령어를 직접 호출하여 터치 작업을 수행하며, 호환성이 가장 좋지만, 속도는 가장 느립니다.
|
||||
4. [MaaFramework](https://maafw.com/): 调用 MaaFramework 控制单元的截图和触控功能。可用性尚待测试。~~帮我们做做测试 x2~~
|
||||
|
||||
## ADB Lite
|
||||
|
||||
|
||||
@@ -121,6 +121,8 @@ MAA Wine Bridge에서 생성된 `MaaDesktopIntegration.so`를 `MAA.exe`와 같
|
||||
|
||||
권장 구성: MAA의 리눅스 x64 동적 라이브러리와 함께 x86_64 프레임워크 (R - 30 - x86_64 - Android 11.0) 사용
|
||||
|
||||
[스크린샷 향상 모드](../connection.md#avd-스크린샷-향상-모드)에 대한 추가 지원이 있습니다.
|
||||
|
||||
참고: Android 10 이상에서는 SELinux가 `Enforcing` 모드인 경우 `Minitouch`를 사용할 수 없습니다. 다른 터치 모드로 전환하거나 SELinux를 **임시**로 `Permissive` 모드로 전환하세요.
|
||||
|
||||
### ⚠️ [Genymotion](https://www.genymotion.com/)
|
||||
|
||||
@@ -35,7 +35,9 @@ icon: basil:apple-solid
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
지원됩니다. 그러나 Android 10부터는 SELinux가 `Enforcing` 모드일 때 `Minitouch`를 사용할 수 없습니다. 다른 터치 모드로 전환하거나 SELinux를 **임시**로 `Permissive` 모드로 변경하세요.
|
||||
지원됩니다, [스크린샷 향상 모드](../connection.md#avd-스크린샷-향상-모드)에 대한 추가 지원이 있습니다.
|
||||
|
||||
Android 10부터는 SELinux가 `Enforcing` 모드일 때 `Minitouch`를 사용할 수 없습니다. 다른 터치 모드로 전환하거나 SELinux를 **임시**로 `Permissive` 모드로 변경하세요.
|
||||
|
||||
### ✅ [블루스택 에어](https://www.bluestacks.com/mac) (무료, Apple M 시리즈 칩에 최적화된 버전)
|
||||
|
||||
@@ -65,4 +67,6 @@ Mac 버전 개발에 인력이 부족하여 업데이트 속도가 비교적 느
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
지원됩니다. 그러나 Android 10부터는 SELinux가 `Enforcing` 모드일 때 `Minitouch`를 사용할 수 없습니다. 다른 터치 모드로 전환하거나 SELinux를 **임시**로 `Permissive` 모드로 변경하세요.
|
||||
지원됩니다, [스크린샷 향상 모드](../connection.md#avd-스크린샷-향상-모드)에 대한 추가 지원이 있습니다.
|
||||
|
||||
Android 10부터는 SELinux가 `Enforcing` 모드일 때 `Minitouch`를 사용할 수 없습니다. 다른 터치 모드로 전환하거나 SELinux를 **임시**로 `Permissive` 모드로 변경하세요.
|
||||
|
||||
@@ -40,6 +40,11 @@ const fullySupport = [
|
||||
note: '완전히 호환됩니다. 에뮬레이터의 `설정` - `고급 설정`에서 `ADB 기능`을 켜야 합니다. Hyper-V와 호환되는 것으로 알려져 있습니다.\n\n- 느리고 번들로 제공되는 설치를 피하기 위해 [오프라인 설치 프로그램](https://support.bluestacks.com/hc/en-us/articles/4402611273485-BlueStacks-5-offline-installer)을 다운로드하는 것이 좋습니다; [Android 11](https://support.bluestacks.com/hc/en-us/articles/4402611273485-BlueStacks-5-offline-installer#:~:text=To%20install%20BlueStacks%205%20Android%2011) 버전 설치를 권장합니다; 제거하려면 공식 [제거 도구](https://support.bluestacks.com/hc/en-us/articles/360057724751-How-to-uninstall-BlueStacks-5-BlueStacks-X-and-BlueStacks-Services-completely-from-your-PC)를 사용하여 잔여물을 제거하세요.\n- adb 포트 번호가 계속 불규칙하게 변경되고 시작할 때마다 다르다면 컴퓨터에 [Hyper-V](https://support.bluestacks.com/hc/en-us/articles/4415238471053-System-requirements-for-BlueStacks-5-on-Hyper-V-enabled-Windows-10-and-11)가 활성화되어 있기 때문일 수 있습니다. MAA는 이제 BlueStacks 에뮬레이터 구성 파일 내에서 포트 번호를 자동으로 읽으려고 시도할 것입니다. 이 방법이 작동하지 않거나 다중 실행/둘 이상의 에뮬레이터 커널이 설치된 경우 [연결 설정](../connection.md#bluestacks-에뮬레이터-hyper-v-포트-번호-변경)을 참조하여 변경하세요. Hyper-V는 관리자로 실행되므로 에뮬레이터 자동 종료, 자동 연결 감지 등 adb와 관련 없는 작업도 MAA를 관리자로 실행해야 합니다.',
|
||||
},
|
||||
...shuffleArray([
|
||||
{
|
||||
name: '텐센트 앱스토어',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: '5.10.56.xx 이후 버전을 지원합니다. `설정` - `연결 설정`에서 `텐센트 앱스토어` 연결 구성을 선택하세요. Hyper-V와 호환되는 것으로 알려져 있습니다.\n\n- ADB 포트는 `127.0.0.1:5555`입니다.\n- ADB 경로 예시: `C:\\Program Files\\Tencent\\Androws\\Application\\버전번호\\adb.exe`.\n\n- 먼저 앱스토어에서 [ADB 디버깅을 활성화](https://sj.qq.com/faq/3878)해야 합니다.',
|
||||
},
|
||||
{
|
||||
name: 'Nox',
|
||||
link: 'https://kr.bignox.com/',
|
||||
@@ -67,7 +72,7 @@ const partiallySupport = shuffleArray([
|
||||
{
|
||||
name: 'AVD',
|
||||
link: 'https://developer.android.com/studio/run/managing-avds',
|
||||
note: '이론적으로 지원됩니다.\n\n- Android 10부터 SELinux가 `Enforcing` 모드일 때 Minitouch를 사용할 수 없으므로 다른 터치 모드로 전환하거나 SELinux를 **임시로** `Permissive` 모드로 전환하세요.\n- AVD는 디버깅을 위해 만들어졌으므로 게임용으로 설계된 다른 에뮬레이터를 사용하는 것이 더 좋습니다.',
|
||||
note: '이론적으로 지원됩니다.\n\n- [스크린샷 향상 모드](../connection.html#avd-스크린샷-향상-모드)에 대한 추가 지원이 있습니다.\n- Android 10부터 SELinux가 `Enforcing` 모드일 때 Minitouch를 사용할 수 없으므로 다른 터치 모드로 전환하거나 SELinux를 **임시로** `Permissive` 모드로 전환하세요.\n- AVD는 디버깅을 위해 만들어졌으므로 게임용으로 설계된 다른 에뮬레이터를 사용하는 것이 더 좋습니다.',
|
||||
},
|
||||
{
|
||||
name: 'Google Play Games (개발자용)',
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 2
|
||||
order: 3
|
||||
icon: ph:question-fill
|
||||
---
|
||||
|
||||
@@ -12,7 +12,7 @@ MAA를 처음 사용하는 경우 [초보자 가이드](./newbie.md)를 읽어
|
||||
MAA가 업데이트 후 실행되지 않거나 MAA의 오류 창을 통해 여기에 도달했다면, 이는 대부분 실행 라이브러리가 업데이트되지 않은 문제 때문입니다.
|
||||
가장 자주 발생하는 문제는 실행 라이브러리 문제이며, 많은 사람들이 문서를 읽지 않고 질문만 하기 때문에 공지 내용을 이걸로 교체했습니다.
|
||||
|
||||
MAA는 .NET 런타임을 내장하고 있습니다(자체 포함 배포). 하지만 Visual C++ 런타임이 필요합니다.
|
||||
MAA는 자체 포함 배포 방식을 채택하여 .NET 실행 환경이 내장되어 있으나, Visual C++ 실행 라이브러리는 여전히 필요합니다.
|
||||
|
||||
MAA 디렉토리에서 `DependencySetup_依赖库安装.bat`를 실행하거나, 터미널에서 아래 명령을 실행하거나,
|
||||
|
||||
@@ -52,7 +52,7 @@ Windows 8/8.1/10/11 N/KN(유럽/한국) 버전을 사용하는 경우, [미디
|
||||
|
||||
#### Windows 7 / 8 / 8.1 관련
|
||||
|
||||
MAA가 의존하는 런타임 라이브러리와 시스템 구성 요소가 Windows 10 이상을 필요로 하기 때문에, MAA는 Windows 7 / 8 / 8.1 시스템을 더 이상 지원하지 않습니다.
|
||||
MAA가 의존하는 실행 라이브러리 및 시스템 구성 요소가 Windows 10 이상을 요구하기 때문에, MAA는 Windows 7 / 8 / 8.1을 더 이상 지원하지 않습니다.
|
||||
|
||||
## 연결 오류
|
||||
|
||||
|
||||
83
docs/ko-kr/manual/install.md
Normal file
@@ -0,0 +1,83 @@
|
||||
---
|
||||
order: 2
|
||||
icon: material-symbols:download-2-rounded
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD024 -->
|
||||
|
||||
# 다운로드 및 설치
|
||||
|
||||
::: tip
|
||||
MAA GUI의 다운로드 및 설치 안내 문서를 보고 있습니다. maa-cli의 다운로드 및 설치 안내가 필요하다면 maa-cli의 [설치 및 빌드](./cli/install.md) 문서를 참조하세요. 현재 MAA Android 버전이 테스트 공개 중입니다. 자세한 내용은 [MAA-Meow](https://github.com/Aliothmoon/MAA-Meow)를 참조하세요.
|
||||
:::
|
||||
|
||||
## MAA 다운로드
|
||||
|
||||
MAA는 공식 홈페이지 다운로드, 패키지 관리자 설치, QQ 그룹 파일 다운로드 등 다양한 방법을 제공합니다. 원하는 방법을 선택하여 다운로드하세요.
|
||||
|
||||
### [공식 홈페이지](https://maa.plus)에서 최신 MAA 패키지 다운로드
|
||||
|
||||
공식 홈페이지는 일반적으로 올바른 버전 아키텍처를 자동으로 선택합니다. 이 문서를 읽는 대부분의 사용자에게는 Windows x64가 해당됩니다. macOS 사용자는 macOS 유니버설 버전을 다운로드하세요.
|
||||
|
||||
### [Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install)에서 최신 MAA 패키지 다운로드
|
||||
|
||||
시스템 아키텍처를 확인하고 해당하는 패키지를 다운로드하세요. 이 문서를 읽는 대부분의 Windows 사용자에게는 Windows x64가 해당됩니다. Mac 사용자의 경우, Mirror酱은 유니버설 패키지를 제공하지 않으므로 칩 아키텍처(arm/x86)를 확인한 후 해당 패키지를 다운로드하세요.
|
||||
|
||||
::: tip
|
||||
[Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install)은 독립적인 서드파티 다운로드 가속 서비스로, MAA가 아닌 Mirror酱에서 유료로 운영됩니다. 운영 비용은 구독 수익으로 충당되며, 수익의 일부는 프로젝트 개발자에게 환원됩니다. CDK를 구독하여 고속 다운로드를 즐기면서 프로젝트의 지속적인 개발을 지원해 주세요.
|
||||
:::
|
||||
|
||||
### Windows 패키지 관리자(Winget)로 설치
|
||||
|
||||
::: tip
|
||||
이 방법은 Windows 사용자에게만 적용됩니다.
|
||||
:::
|
||||
|
||||
터미널에서 다음 명령을 실행하세요:
|
||||
|
||||
```bash
|
||||
winget install maa
|
||||
```
|
||||
|
||||
이 방법으로 설치하는 경우 기본 설치 경로는 `C:\Users\사용자이름\AppData\Local\Microsoft\WinGet\Packages`입니다.
|
||||
|
||||
### QQ 그룹 파일에서 최신 MAA 패키지 다운로드
|
||||
|
||||
1. [MAA 공식 QQ 그룹](https://api.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)에 참가하세요.
|
||||
2. 그룹 파일에서 최신 MAA 패키지를 찾아 다운로드하세요.
|
||||
|
||||
### [GitHub Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases)에서 최신 MAA 패키지 다운로드
|
||||
|
||||
시스템 아키텍처를 확인하고 해당하는 패키지를 다운로드하세요. 이 문서를 읽는 대부분의 Windows 사용자에게는 `MAA-<버전>-win-x64.zip`이 해당됩니다. macOS 사용자는 `MAA-<버전>-macos-universal.dmg`를 선택하세요.
|
||||
|
||||
## Linux 및 기타 운영 체제
|
||||
|
||||
MAA GUI는 Linux 및 기타 운영 체제를 **현재 지원하지 않습니다**. 이러한 시스템에서 MAA 기능을 사용하려면 **maa-cli**를 사용하세요. 자세한 내용은 maa-cli의 [설치 및 빌드](./cli/install.md) 문서를 참조하세요.
|
||||
|
||||
## MAA 설치
|
||||
|
||||
### Windows
|
||||
|
||||
다운로드가 완료되면 `.zip` 파일을 얻게 됩니다. 압축 해제 프로그램으로 완전히 압축을 해제하면 MAA의 모든 파일이 포함된 폴더를 얻을 수 있습니다.
|
||||
|
||||
::: warning
|
||||
|
||||
1. `C:\`, `C:\Program Files\` 등 UAC 권한이 필요한 경로에 MAA를 압축 해제하지 마세요.
|
||||
2. MAA는 .NET 런타임이 내장되어 있습니다(자체 포함 배포). 하지만 Visual C++ Redistributable x64(VCRedist x64)가 여전히 필요합니다. 압축 해제된 MAA 디렉토리에서 관리자 권한으로 `DependencySetup_依赖库安装.bat`를 실행하여 해당 종속성을 설치하세요. 설치 완료 후 `MAA.exe`를 실행하세요.
|
||||
|
||||
자세한 내용은 [자주 묻는 질문](./faq.md) 공지를 참조하세요.
|
||||
:::
|
||||
|
||||
`MAA.exe`를 더블 클릭하면 MAA가 실행됩니다.
|
||||
|
||||
::: tip
|
||||
Windows 패키지 관리자(Winget)로 설치한 사용자는 압축 해제, 런타임 설치 등의 추가 작업 없이 명령줄에서 `maa`를 입력하여 MAA를 바로 실행할 수 있습니다. PATH에 `maa-cli`가 있는 경우 둘을 구분하기 위한 추가 단계가 필요할 수 있습니다.
|
||||
:::
|
||||
|
||||
### macOS
|
||||
|
||||
다운로드가 완료되면 `.dmg` 파일을 얻게 됩니다. `.dmg`를 더블 클릭하여 열고, `MAA.app`을 `/Applications`로 드래그하여 설치를 완료하세요.
|
||||
|
||||
## 다음 단계
|
||||
|
||||
설치가 완료되었으면 [초보자 가이드](./newbie.md)로 돌아가 설정을 계속하거나, [기능 소개](./introduction/)에서 MAA가 지원하는 다양한 기능을 확인해 보세요! 설치 중 문제가 발생한 경우 [자주 묻는 질문](./faq.md)을 참조하여 해결해 보세요.
|
||||
@@ -1134,10 +1134,10 @@ Value
|
||||
무효 점유. 열거값: 0
|
||||
:::
|
||||
::: field name="MinitouchEnabled" type="boolean" optional
|
||||
폐기됨. 원 minitouch 활성화 여부; "1" 켜기, "0" 끄기. 장치가 지원하지 않을 수 있음. 열거값: 1 (폐기됨)
|
||||
폐기됨. 원 Minitouch 활성화 여부; "1" 켜기, "0" 끄기. 장치가 지원하지 않을 수 있음. 열거값: 1 (폐기됨)
|
||||
:::
|
||||
::: field name="TouchMode" type="string" optional default="minitouch"
|
||||
터치 모드 설정. 옵션: minitouch | maatouch | adb. 기본값 minitouch. 열거값: 2
|
||||
터치 모드 설정. 옵션: minitouch | maatouch | adb | MaaFwAdb. 기본값 minitouch. 열거값: 2
|
||||
:::
|
||||
::: field name="DeploymentWithPause" type="boolean" optional
|
||||
오퍼레이터 배치 시 일시정지 여부, 자동지휘/통합 전략/보안파견에 모두 영향. 옵션: "1" 켜기, "0" 끄기. 열거값: 3
|
||||
@@ -1148,4 +1148,7 @@ AdbLite 사용 여부. 옵션: "0" 끄기, "1" 켜기. 열거값: 4
|
||||
::: field name="KillAdbOnExit" type="boolean" optional
|
||||
종료 시 ADB 프로세스 종료 여부. 옵션: "0" 끄기, "1" 켜기. 열거값: 5
|
||||
:::
|
||||
::: field name="ClientType" type="string" optional
|
||||
클라이언트 종류(게임 채널). 대부분의 연결 설정에서는 필요하지 않습니다. `AsstConnect` / `AsstAsyncConnect` 에 전달하는 `config` 가 연결 단계에서 실행되는 명령에 `[PackageName]` 을 사용할 때만, 연결 전에 `AsstSetInstanceOption(..., ClientType, ...)` 를 호출해 설정해야 합니다. 현재 내장 설정 중에서는 `Androws` 와 `WSA` 의 `displayId` 조회만 이 값에 의존합니다. 이 옵션은 StartUp / CloseDown 등의 작업 파라미터 `client_type` 를 대체하지 않습니다. 열거값: 6
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -78,7 +78,9 @@ icon: iconoir:developer
|
||||
- 按 F5 运行
|
||||
|
||||
::: tip
|
||||
若需调试 Win32Controller(Windows 窗口控制)相关功能,需要自行从 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) 下载对应平台的压缩包,将 `bin` 目录中的 `MaaWin32ControlUnit.dll` 放到 MAA 的 DLL 同目录下(如 `build/bin/Debug`)。欢迎 PR 一个自动下载脚本!
|
||||
若需运行 Win32Controller(Windows 窗口控制)/ MaaFwAdbController(MaaFramework 触控模式)相关功能,需要自行从 [MaaFramework Releases](https://github.com/MaaXYZ/MaaFramework/releases) 下载对应平台的压缩包,将 `bin` 目录中的 `MaaWin32ControlUnit.dll` / `MaaAdbControlUnit.dll` 放到 MAA 的 DLL 同目录下(如 `build/bin/Debug`)。欢迎 PR 一个自动下载脚本!
|
||||
|
||||
若需调试相关功能,则需要[自行编译 MaaFramework](https://maafw.com/docs/4.1-BuildGuide) 的 Debug 版本,使用对应的 DLL 文件,否则在断点调试时会神秘闪退。
|
||||
:::
|
||||
|
||||
9. 到这里,你就可以愉快地 ~~瞎 JB 改~~ 发电了
|
||||
|
||||
@@ -8,8 +8,8 @@ icon: teenyicons:linux-alt-solid
|
||||
**本教程需要读者有一定的 Linux 环境配置能力及编程基础!**,若您仅希望直接安装MAA而非自行编译,请阅读[用户手册 - Linux 模拟器与容器](../manual/device/linux.md)。
|
||||
|
||||
::: info 注意
|
||||
MAA 的构建方法仍在讨论中, 本教程的内容可能过时, 请以 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/.github/workflows/ci.yml#L134) 中的脚本为准
|
||||
你也可参考 [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) 或 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix)
|
||||
MAA 的构建方法仍在讨论中, 本教程的内容可能过时, 请以 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/dev-v2/.github/workflows/ci.yml#L224#:~:text=ubuntu%3A) 中的脚本为准。
|
||||
你也可参考 [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) 或 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix)。
|
||||
:::
|
||||
|
||||
::: info
|
||||
@@ -80,9 +80,8 @@ Mac 可以使用 `tools/build_macos_universal.zsh` 脚本进行编译
|
||||
cmake --install build --prefix <target_directory>
|
||||
```
|
||||
|
||||
4. 结束,你应该能在目录下看到构建文件了
|
||||
|
||||
::::
|
||||
4. 若需调试 MaaFwAdbController(MaaFramework 触控模式)相关功能,需要[自行编译 MaaFramework](https://maafw.com/docs/4.1-BuildGuide) 的 Debug 版本,将 `libMaaAdbControlUnit.so` 放到安装目录下。
|
||||
::::
|
||||
|
||||
## 集成文档
|
||||
|
||||
@@ -96,8 +95,6 @@ Mac 可以使用 `tools/build_macos_universal.zsh` 脚本进行编译
|
||||
|
||||
可参考 [CppSample](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/Cpp/main.cpp) 中的实现
|
||||
|
||||
### C Sharp
|
||||
|
||||
<!-- Do not use C#, MD003/heading-style: Heading style [Expected: atx; Actual: atx_closed] -->
|
||||
### C\#
|
||||
|
||||
可参考 [MaaWpfGui](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/MaaWpfGui/Main/AsstProxy.cs) 中的实现
|
||||
|
||||
@@ -16,6 +16,7 @@ MAA 可以通过当前**正在运行的单个模拟器**自动检测并填充 AD
|
||||
- 雷电模拟器 9:`emulator-5554/5556/5558/5560`、`127.0.0.1:5555/5557/5559/5561`
|
||||
- 夜神模拟器:`127.0.0.1:62001/59865`
|
||||
- 逍遥模拟器:`127.0.0.1:21503`
|
||||
- 腾讯应用宝 (5.10.56.xx之后):`127.0.0.1:5555`
|
||||
|
||||
若检测失败,请尝试使用 UAC 管理员权限启动 MAA 并再次检测。若仍失败,则请阅读下文手动设置,并参考上述列表进行反馈。
|
||||
|
||||
@@ -57,6 +58,7 @@ MAA 可以通过当前**正在运行的单个模拟器**自动检测并填充 AD
|
||||
- [雷电模拟器 9](https://help.ldmnq.com/docs/LD9adbserver#edc3863750608062bcb3feea256413dc)
|
||||
- [夜神模拟器](https://support.yeshen.com/zh-CN/qt/ml)
|
||||
- [逍遥模拟器](https://bbs.xyaz.cn/forum.php?mod=viewthread&tid=365537)
|
||||
- [腾讯应用宝](https://sj.qq.com/faq/3878):ADB 端口固定为 `127.0.0.1:5555`,ADB 路径示例:`C:\Program Files\Tencent\Androws\Application\版本号\adb.exe`。
|
||||
|
||||
其他模拟器可参考 [赵青青的博客](https://www.cnblogs.com/zhaoqingqing/p/15238464.html)。
|
||||
|
||||
@@ -186,17 +188,28 @@ MAA 可以通过当前**正在运行的单个模拟器**自动检测并填充 AD
|
||||
|
||||
3. `实例编号` 填写雷电多开器内对应模拟器的编号(ID),如主多开为 `0`。
|
||||
|
||||
### AVD 截图增强模式
|
||||
|
||||
需使用 Android Emulator v27.2.9 及更新版本。(只要是方舟开服之后下载的就没问题。)
|
||||
|
||||
AVD 截图增强模式在 MaaFramework 中实现,必须选择 MaaFramework 触控模式才能启用 AVD 截图增强。
|
||||
|
||||
1. `设置` - `连接设置` - `连接配置` 选择 `Android 虚拟设备(AVD)`。
|
||||
|
||||
2. `触控模式` 选择 `MaaFramework`。
|
||||
|
||||
## 触控模式
|
||||
|
||||
1. [Minitouch](https://github.com/DeviceFarmer/minitouch):使用 C 编写的 Android 触控事件器,操作 `evdev` 设备,提供 Socket 接口供外部程序触发触控事件和手势。从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用。<sup>[源](https://github.com/DeviceFarmer/minitouch?tab=readme-ov-file#for-android-10-and-up)</sup>
|
||||
2. [MaaTouch](https://github.com/MaaAssistantArknights/MaaTouch):由 MAA 基于 Java 对 Minitouch 的重新实现,使用安卓原生的 `InputDevice`,并添加了额外特性。高版本 Android 可用性尚待测试。~~帮我们做做测试~~
|
||||
3. Adb Input:直接调用 ADB 使用安卓的 `input` 命令进行触控操作,兼容性最强,速度最慢。
|
||||
4. [MaaFramework](https://maafw.com/):调用 MaaFramework 控制单元的截图和触控功能。可用性尚待测试。~~帮我们做做测试 x2~~
|
||||
|
||||
## ADB Lite
|
||||
|
||||
由 MAA 独立实现的 ADB Client,使用 TCP 直接与 ADB Server 通信。相较原版 ADB 可以避免不停开启多个 ADB 进程,减少性能开销,但部分截图方式不可用。<sup>[PR](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pull/3315)</sup>
|
||||
|
||||
推荐启用,但具体优缺点尚待反馈。~~帮我们做做测试 x2~~
|
||||
推荐启用,但具体优缺点尚待反馈。~~帮我们做做测试 x3~~
|
||||
|
||||
## MAA 和模拟器多开
|
||||
|
||||
|
||||
@@ -121,6 +121,8 @@ MAA WPF GUI 当前可以通过 Wine 运行。MAA 已采用自包含部署方式
|
||||
|
||||
推荐配置: x86_64 的框架 (R - 30 - x86_64 - Android 11.0) 配合 MAA 的 Linux x64 动态库
|
||||
|
||||
额外支持[截图增强模式](../connection.md#avd-截图增强模式)。
|
||||
|
||||
注意:从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用,请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。
|
||||
|
||||
### ⚠️ [Genymotion](https://www.genymotion.com/)
|
||||
|
||||
@@ -35,11 +35,13 @@ icon: basil:apple-solid
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
支持,但从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用。请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。
|
||||
支持,且额外支持[截图增强模式](../connection.md#avd-截图增强模式)。
|
||||
|
||||
### ✅ [蓝叠模拟器air版](https://www.bluestacks.com/mac) (免费,针对 Apple M 系列芯片进行优化的版本)
|
||||
从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用。请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。
|
||||
|
||||
支持,经测试,可用 maatouch 经`127.0.0.1:5555`连接。
|
||||
### ✅ [BlueStacks Air](https://www.bluestacks.com/mac) (免费,针对 Apple M 系列芯片进行优化的版本)
|
||||
|
||||
支持,经测试,可使用 MaaTouch 通过 `127.0.0.1:5555` 连接。
|
||||
|
||||
需要在模拟器 `设置` - `高级` 中打开 `Android调试(ADB)`。
|
||||
|
||||
@@ -61,8 +63,10 @@ icon: basil:apple-solid
|
||||
|
||||
完美支持。
|
||||
|
||||
补充:mac 下夜神模拟器的 ADB 二进制文件的位置为 `/Applications/NoxAppPlayer.app/Contents/MacOS/adb` ,在父目录 `MacOS` 下可使用 `adb devices` 命令查看 ADB 端口。
|
||||
补充:macOS 下夜神模拟器的 ADB 二进制文件的位置为 `/Applications/NoxAppPlayer.app/Contents/MacOS/adb` ,在父目录 `MacOS` 下可使用 `adb devices` 命令查看 ADB 端口。
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
支持,但从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用。请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。
|
||||
支持,且额外支持[截图增强模式](../connection.md#avd-截图增强模式)。
|
||||
|
||||
从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用。请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。
|
||||
|
||||
@@ -45,6 +45,11 @@ const fullySupport = [
|
||||
note: '完美支持,需要在模拟器 `设定` - `进阶` 中打开 `Android调试桥`。已知兼容 Hyper-V。\n\n- 推荐下载 [离线安装包](https://support.bluestacks.com/hc/zh-tw/articles/4402611273485-BlueStacks-5-%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D%E7%A8%8B%E5%BC%8F),避免缓慢和捆绑安装;推荐安装 [Android 11](https://support.bluestacks.com/hc/zh-tw/articles/4402611273485-BlueStacks-5-%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D%E7%A8%8B%E5%BC%8F#:~:text=%E5%AE%89%E8%A3%9D%20BlueStacks%205%20%E7%9A%84%20Android%2011) 版本;卸载请使用官方提供的 [卸载工具](https://support.bluestacks.com/hc/zh-tw/articles/360057724751-%E5%A6%82%E4%BD%95%E5%BE%9E%E6%82%A8%E7%9A%84%E9%9B%BB%E8%85%A6%E4%B8%8A%E5%AE%8C%E5%85%A8%E7%A7%BB%E9%99%A4-BlueStacks-5-BlueStacks-X-%E5%92%8C-BlueStacks-%E6%9C%8D%E5%8B%99) 以清除残留。\n- 若 ADB 端口号不断的无规律变动,每次启动都不相同,可能是因为您的电脑开启了 [Hyper-V](https://support.bluestacks.com/hc/zh-tw/articles/4415238471053-BlueStacks-5-%E6%94%AF%E6%8F%B4-Hyper-V-%E7%9A%84-Windows-10-%E5%92%8C-11-%E4%B8%8A%E7%9A%84%E9%9B%BB%E8%85%A6%E8%A6%8F%E6%A0%BC%E9%9C%80%E6%B1%82)。MAA 现在会尝试自动读取蓝叠模拟器配置文件内的端口号,若该功能失效/你有多开需求/安装了多个模拟器核心,请参考 [连接设置](../connection.html#蓝叠模拟器-hyper-v-每次启动端口号都不一样) 做出修改。由于 Hyper-V 以管理员身份运行,如自动关闭模拟器、自动检测连接等不涉及 ADB 的操作同样需要以管理员身份运行 MAA。',
|
||||
},
|
||||
...shuffleArray([
|
||||
{
|
||||
name: '腾讯应用宝',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: '支持 5.10.56.xx之后的版本。在 `设置` - `连接设置` 中选择 `腾讯应用宝` 连接配置。已知兼容 Hyper-V。\n\n- ADB 端口为 `127.0.0.1:5555`,\n- ADB路径示例:`C:\\Program Files\\Tencent\\Androws\\Application\\版本号\\adb.exe`。\n\n- 需要先在应用宝中 [开启 ADB 调试](https://sj.qq.com/faq/3878)。',
|
||||
},
|
||||
{
|
||||
name: '夜神模拟器',
|
||||
link: 'https://www.yeshen.com/',
|
||||
@@ -72,12 +77,12 @@ const partiallySupport = shuffleArray([
|
||||
{
|
||||
name: 'AVD',
|
||||
link: 'https://developer.android.com/studio/run/managing-avds',
|
||||
note: '理论支持。\n\n- 从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用,请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。\n- AVD 是为调试而生的,更建议使用其他为游戏而设计的模拟器。',
|
||||
note: '理论支持,且额外支持[截图增强模式](../connection.html#avd-截图增强模式)。\n- 从 Android 10 开始,Minitouch 在 SELinux 为 `Enforcing` 模式时不再可用,请切换至其他触控模式,或将 SELinux **临时**切换为 `Permissive` 模式。\n- AVD 是为调试而生的,更建议使用其他为游戏而设计的模拟器。',
|
||||
},
|
||||
{
|
||||
name: 'Google Play 游戏(开发者)',
|
||||
link: 'https://developer.android.com/games/playgames/emulator?hl=zh-cn',
|
||||
note: '理论支持。必须开启 Hyper-V,且必须登录谷歌账户。\n\n- 需要使用 [自定义连接](../connection.html) 的方式来连接,ADB 端口为 `6520`。\n- 由于 Android 10 及更新版本的 SELinux 策略,Minitouch 无法正常工作,请切换到其他触控模式。\n- 每次启动模拟器后的首次连接都会失败,需勾选 `连接失败后尝试关闭并重启ADB进程`。',
|
||||
note: '理论支持。必须启用 Hyper-V,且必须登录谷歌账户。\n\n- 需要使用 [自定义连接](../connection.html) 的方式来连接,ADB 端口为 `6520`。\n- 由于 Android 10 及更新版本的 SELinux 策略,Minitouch 无法正常工作,请切换到其他触控模式。\n- 每次启动模拟器后的首次连接都会失败,需勾选 `连接失败后尝试关闭并重启ADB进程`。',
|
||||
},
|
||||
]);
|
||||
|
||||
@@ -87,11 +92,6 @@ const notSupport = shuffleArray([
|
||||
link: 'https://play.google.com/googleplaygames',
|
||||
note: '不支持,[玩家客户端](https://developer.android.com/games/playgames/pg-emulator?hl=zh-cn#installing-game-consumer)无法连接 ADB。',
|
||||
},
|
||||
{
|
||||
name: '腾讯应用宝',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: '不支持,腾讯应用宝没有给出adb连接选项,无法连接 ADB。',
|
||||
},
|
||||
]);
|
||||
|
||||
const md = new MarkdownIt();
|
||||
|
||||
@@ -54,6 +54,21 @@ winget install "Microsoft.VCRedist.2015+.x64" --override "/repair /passive /nore
|
||||
|
||||
由于 MAA 依赖的运行库和系统组件要求 Windows 10 及以上版本,MAA 不再支持 Windows 7 / 8 / 8.1 系统。
|
||||
|
||||
### 被 Windows Defender / 杀毒软件误报(PUA / 病毒)
|
||||
|
||||
- 请先确认下载来源可信,仅使用官网、GitHub Releases、Winget 或官方群文件;并确认下载的是完整安装包(如 `MAA-<版本>-win-x64.zip`)。
|
||||
- 自动化工具可能会触发部分杀毒软件的启发式检测,出现误报并不一定代表软件存在恶意行为。
|
||||
- 若确认来源可信,建议向对应安全厂商提交误报样本,等待其病毒库修正。
|
||||
- 在等待修正期间,可临时将 MAA 安装目录加入杀毒软件白名单;不建议直接关闭系统实时防护。
|
||||
|
||||
### DLL 注入问题
|
||||
|
||||
MAA 启动时弹出悲报:MAA 路径的 DLL 注入可能会导致 MAA 闪退或界面渲染异常
|
||||
(主要是 Nahimic 等程序引起的)
|
||||
可以在资源管理器中导航至 MAA 给出的路径,右键该 DLL 并重命名,把扩展名改为 `dll1` 等无效扩展名
|
||||
(如果没有扩展名或者你找不到这个文件,就点击页面上的`查看--显示--文件扩展名`和`查看--显示--隐藏的项目`)
|
||||
**该方法可能会导致相关程序出错,请谨慎使用,想了解问题原因可以查看[相关动态](https://t.bilibili.com/1133690423484612615)和 [blog](https://blog.walterlv.com/post/wpf-renders-wrong-because-of-nahimicosd.html)**
|
||||
|
||||
## 连接错误
|
||||
|
||||
### 确认 ADB 及连接地址正确
|
||||
|
||||
@@ -8,7 +8,7 @@ icon: ph:sword-bold
|
||||
`resource/copilot/*.json` 的使用方法及各字段说明
|
||||
|
||||
::: tip
|
||||
请注意 JSON 文件是不支持注释的,文本中的注释仅用于演示,请勿直接复制使用
|
||||
请注意 JSON 文件是不支持注释的,文本中的注释仅用于演示,请勿直接复制使用。注释中的 **作业站** 均指 [PRTS plus](https://prts.plus/) 。
|
||||
:::
|
||||
|
||||
## 完整字段一览
|
||||
@@ -64,7 +64,7 @@ icon: ph:sword-bold
|
||||
"type": "部署", // 操作类型,可选,默认为 "Deploy"
|
||||
// "Deploy" | "Skill" | "Retreat" | "SpeedUp" | "BulletTime" | "SkillUsage" | "Output" | "SkillDaemon" | "MoveCamera" | "ResetStopwatch"
|
||||
// "部署" | "技能" | "撤退" | "二倍速" | "子弹时间" | "技能用法" | "打印" | "摆完挂机" | "移动镜头" | "重置全局计时器"
|
||||
// 中英文皆可,效果相同
|
||||
// 中英文皆可,效果相同,但目前作业站发布只支持英文
|
||||
// 若为 "部署", 当费用不够时,会一直等待到费用够(除非 timeout)
|
||||
// 若为 "技能", 当技能 cd 没转好时,一直等待到技能 cd 好(除非 timeout)
|
||||
// "二倍速" 是可切换的,即使用一次变成二倍速,再次使用又变回一倍速
|
||||
@@ -106,7 +106,7 @@ icon: ph:sword-bold
|
||||
"direction": "左", // 部署干员的干员朝向。 type 为 "部署" 时必选
|
||||
// "Left" | "Right" | "Up" | "Down" | "None"
|
||||
// "左" | "右" | "上" | "下" | "无"
|
||||
// 中英文皆可,效果相同
|
||||
// 中英文皆可,效果相同,但目前作业站发布只支持英文
|
||||
"skip_if_not_ready": false, // 仅在 type 为 "技能" 时有效, 允许在技能不可用时跳过当前行动,主要用于关闭未打完的弹药技能。可选,默认为 false
|
||||
"skill_usage": 1, // 修改技能用法。当 type 为 "技能用法" 时必选
|
||||
// 举例:刚下桃金娘需要她帮忙打几个怪,不能自动开技能,中后期平稳了需要她自动开技能
|
||||
@@ -155,7 +155,7 @@ icon: ph:sword-bold
|
||||
"type": "二倍速"
|
||||
}
|
||||
],
|
||||
"minimum_required": "v4.0", // 最低要求 maa 版本号,必选。
|
||||
"minimum_required": "v6.7.0", // 最低要求 maa 版本号,必选;例如 v6.7.0, v6.8.0-beta.1
|
||||
"doc": {
|
||||
// 描述,可选。
|
||||
"title": "低练度高成功率作业",
|
||||
|
||||
@@ -1145,10 +1145,10 @@ bool ASSTAPI AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key,
|
||||
无效占位。枚举值:0。
|
||||
:::
|
||||
::: field name="MinitouchEnabled" type="boolean" optional
|
||||
已弃用。原为是否启用 minitouch;"1" 开,"0" 关。注意设备可能不支持。枚举值:1(已弃用)。
|
||||
已弃用。原为是否启用 Minitouch;"1" 开,"0" 关。注意设备可能不支持。枚举值:1(已弃用)。
|
||||
:::
|
||||
::: field name="TouchMode" type="string" optional default="minitouch"
|
||||
触控模式设置。可选值:minitouch | maatouch | adb。默认 minitouch。枚举值:2。
|
||||
触控模式设置。可选值:minitouch | maatouch | adb | MaaFwAdb。默认 minitouch。枚举值:2。
|
||||
:::
|
||||
::: field name="DeploymentWithPause" type="boolean" optional
|
||||
是否暂停下干员,同时影响抄作业、肉鸽、保全。可用值:"1" 或 "0"。枚举值:3。
|
||||
@@ -1159,4 +1159,7 @@ bool ASSTAPI AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key,
|
||||
::: field name="KillAdbOnExit" type="boolean" optional
|
||||
退出时是否杀掉 Adb 进程。可用值:"0" 或 "1"。枚举值:5。
|
||||
:::
|
||||
::: field name="ClientType" type="string" optional
|
||||
客户端类型(游戏渠道)。大多数连接配置不需要设置。仅当传给 `AsstConnect` / `AsstAsyncConnect` 的 `config` 在连接阶段命令里使用 `[PackageName]` 时,才需要在连接前调用 `AsstSetInstanceOption(..., ClientType, ...)`。当前内置配置仅 `Androws` 和 `WSA` 的 `displayId` 查询依赖该值。该选项不替代 StartUp / CloseDown 等任务参数里的 `client_type`。枚举值:6。
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -78,7 +78,9 @@ icon: iconoir:developer
|
||||
- 按 F5 執行。
|
||||
|
||||
::: tip
|
||||
若需針對 Win32Controller(Windows 視窗控制)相關功能進行除錯,需要自行從 [MaaFramework Releases](https://github.com/MaaModular/MaaFramework/releases) 下載對應平台的壓縮檔案,將 `bin` 目錄中的 `MaaWin32ControlUnit.dll` 放到 MAA 的 DLL 同目錄下(例如 `build/bin/Debug`)。歡迎 PR 一個自動下載腳本!
|
||||
若需執行 Win32Controller(Windows 視窗控制)/ MaaFwAdbController(MaaFramework 觸控模式)相關功能,需要自行從 [MaaFramework Releases](https://github.com/MaaModular/MaaFramework/releases) 下載對應平台的壓縮檔案,將 `bin` 目錄中的 `MaaWin32ControlUnit.dll` / `MaaAdbControlUnit.dll` 放到 MAA 的 DLL 同目錄下(例如 `build/bin/Debug`)。歡迎 PR 一個自動下載腳本!
|
||||
|
||||
若需針對相關功能進行除錯,則需要自行編譯 MaaFramework 的 Debug 版本,使用對應的 DLL 檔案,否則在斷點除錯時會神秘閃退。
|
||||
:::
|
||||
|
||||
9. 到這裡,你就可以愉快地 ~~瞎雞巴改~~ 發電了
|
||||
|
||||
@@ -8,7 +8,7 @@ icon: teenyicons:linux-alt-solid
|
||||
**本教學需要讀者具備一定的 Linux 環境配置能力與程式設計基礎!** 若您僅希望直接安裝 MAA 而非自行編譯,請參閱[用戶手冊 - Linux 模擬器與容器](../manual/device/linux.md)。
|
||||
|
||||
::: info 注意
|
||||
MAA 的建置方法仍在討論中,本教學內容可能過時,請以 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/.github/workflows/ci.yml#L134) 中的腳本為準。
|
||||
MAA 的建置方法仍在討論中,本教學內容可能過時,請以 [GitHub workflow file](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/dev-v2/.github/workflows/ci.yml#L224#:~:text=ubuntu%3A) 中的腳本為準。
|
||||
您也可以參考 [AUR PKGBUILD](https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=maa-assistant-arknights) 或 [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/by-name/ma/maa-assistant-arknights/package.nix)。
|
||||
:::
|
||||
|
||||
@@ -80,7 +80,7 @@ Mac 使用者可以使用 `tools/build_macos_universal.zsh` 腳本進行編譯
|
||||
cmake --install build --prefix <target_directory>
|
||||
```
|
||||
|
||||
4. 結束,您現在應該能在目錄下看到建置完成的檔案了。
|
||||
4. 若需針對 MaaFwAdbController(MaaFramework 觸控模式)相關功能進行除錯,需要[自行編譯 MaaFramework](https://maafw.com/docs/4.1-BuildGuide) 的 Debug 版本,將 `libMaaAdbControlUnit.so` 放到安裝目錄下。
|
||||
|
||||
::::
|
||||
|
||||
@@ -96,8 +96,6 @@ Mac 使用者可以使用 `tools/build_macos_universal.zsh` 腳本進行編譯
|
||||
|
||||
可參考 [CppSample](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/Cpp/main.cpp) 中的實作方式。
|
||||
|
||||
### C Sharp
|
||||
|
||||
<!-- Do not use C#, MD003/heading-style: Heading style [Expected: atx; Actual: atx_closed] -->
|
||||
### C\#
|
||||
|
||||
可參考 [MaaWpfGui](https://github.com/MaaAssistantArknights/MaaAssistantArknights/blob/master/src/MaaWpfGui/Main/AsstProxy.cs) 中的實作方式。
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 3
|
||||
order: 4
|
||||
icon: mdi:plug
|
||||
---
|
||||
|
||||
@@ -16,6 +16,7 @@ MAA 可以透過目前**正在執行中的單一模擬器**,自動偵測並填
|
||||
- 雷電模擬器 9:`emulator-5554/5556/5558/5560`、`127.0.0.1:5555/5557/5559/5561`
|
||||
- 夜神模擬器:`127.0.0.1:62001/59865`
|
||||
- 逍遙模擬器:`127.0.0.1:21503`
|
||||
- 騰訊應用寶 (5.10.56.xx 之後):`127.0.0.1:5555`
|
||||
|
||||
若偵測失敗,請嘗試以系統管理員權限啟動 MAA 並再次偵測。若仍失敗,請參考下文進行手動設定,並參考上述清單向我們回報。
|
||||
|
||||
@@ -57,6 +58,7 @@ MAA 可以透過目前**正在執行中的單一模擬器**,自動偵測並填
|
||||
- [雷電模擬器 9](https://help.ldmnq.com/docs/LD9adbserver#edc3863750608062bcb3feea256413dc)
|
||||
- [夜神模擬器](https://support.yeshen.com/zh-CN/qt/ml)
|
||||
- [逍遙模擬器](https://bbs.xyaz.cn/forum.php?mod=viewthread&tid=365537)
|
||||
- [騰訊應用寶](https://sj.qq.com/faq/3878):ADB 連接埠固定為 `127.0.0.1:5555`,ADB 路徑範例:`C:\Program Files\Tencent\Androws\Application\版本號\adb.exe`。
|
||||
|
||||
其他模擬器可參閱 [趙青青的博客](https://www.cnblogs.com/zhaoqingqing/p/15238464.html)。
|
||||
|
||||
@@ -186,17 +188,28 @@ MAA 可以透過目前**正在執行中的單一模擬器**,自動偵測並填
|
||||
|
||||
3. `執行個體編號` 填寫雷電多開器內對應的模擬器序號(ID),主多開為 `0`。
|
||||
|
||||
### AVD 截圖增強模式
|
||||
|
||||
需使用 Android Emulator v27.2.9 及更新版本。(只要是方舟開服之後下載的就沒問題。)
|
||||
|
||||
AVD 截圖增強模式在 MaaFramework 中實現,必須選擇 MaaFramework 觸控模式才能啟用 AVD 截圖增強。
|
||||
|
||||
1. `設定` - `連線設定` - `連線配置` 選擇 `Android 虛擬裝置(AVD)`。
|
||||
|
||||
2. `觸控模式` 選擇 `MaaFramework`。
|
||||
|
||||
## 觸控模式
|
||||
|
||||
1. [Minitouch](https://github.com/DeviceFarmer/minitouch):基於 C 語言編寫的 Android 觸控事件驅動程式,透過操作 `evdev` 裝置,提供 Socket 介面供外部程式觸發觸控事件與手勢。自 Android 10 開始,若系統的 SELinux 為 `Enforcing`(強制)模式,Minitouch 將無法運作。<sup>[來源](https://github.com/DeviceFarmer/minitouch?tab=readme-ov-file#for-android-10-and-up)</sup>
|
||||
2. [MaaTouch](https://github.com/MaaAssistantArknights/MaaTouch):由 MAA 基於 Java 對 Minitouch 的重新實作,改用 Android 原生的 `InputDevice`介面,並加入額外特性。目前在高版本 Android 上的相容性仍待測試,~~幫我們做做測試~~。
|
||||
3. Adb Input:直接呼叫 ADB 執行 Android 內建的 `input` 指令來進行觸控操作。此方式的相容性最強,但執行速度最慢。
|
||||
4. [MaaFramework](https://maafw.com/):呼叫 MaaFramework 控制單元的螢幕截圖和觸控功能。可用性尚待測試。~~幫我們做做測試 x2~~
|
||||
|
||||
## ADB Lite
|
||||
|
||||
由 MAA 獨立實現的 ADB 用戶端,使用 TCP 直接與 ADB Server 通信。相較原版 ADB 可避免頻繁開啟 ADB 程序並減少效能開銷,但部分截圖方式不支援。<sup>[PR](https://github.com/MaaAssistantArknights/MaaAssistantArknights/pull/3315)</sup>
|
||||
|
||||
推薦開啟,但具體表現尚待回饋。~~幫我們做做測試 x2~~
|
||||
推薦開啟,但具體表現尚待回饋。~~幫我們做做測試 x3~~
|
||||
|
||||
## MAA 與模擬器多開
|
||||
|
||||
|
||||
@@ -121,6 +121,8 @@ MAA WPF GUI 當前可以透過 Wine 執行。MAA 已採用自包含部署方式
|
||||
|
||||
推薦配置:x86_64 的架構 (R - 30 - x86_64 - Android 11.0) 配合 MAA 的 Linux x64 動態函式庫
|
||||
|
||||
額外支援[截圖增強模式](../connection.md#avd-截圖增強模式)。
|
||||
|
||||
請注意:從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用,請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。
|
||||
|
||||
### ⚠️ [Genymotion](https://www.genymotion.com/)
|
||||
|
||||
@@ -35,11 +35,13 @@ icon: basil:apple-solid
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
支援,但從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用。請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。
|
||||
支援,且額外支援[截圖增強模式](../connection.md#avd-截圖增強模式)。
|
||||
|
||||
### ✅ [BlueStacks 藍疊模擬器 Air 版](https://www.bluestacks.com/mac) (免費,針對 Apple M 系列晶片進行優化的版本)
|
||||
從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用。請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。
|
||||
|
||||
支援,經測試,可用 maatouch 透過 `127.0.0.1:5555` 連線。
|
||||
### ✅ [BlueStacks Air](https://www.bluestacks.com/mac) (免費,針對 Apple M 系列晶片進行優化的版本)
|
||||
|
||||
支援,經測試,可用 MaaTouch 透過 `127.0.0.1:5555` 連線。
|
||||
|
||||
需要在模擬器 `設定` - `進階` 中打開 `Android 調試 (ADB)`。
|
||||
|
||||
@@ -61,8 +63,10 @@ icon: basil:apple-solid
|
||||
|
||||
完美支援。
|
||||
|
||||
補充:mac 下夜神模擬器的 ADB 執行檔路徑為 `/Applications/NoxAppPlayer.app/Contents/MacOS/adb`,在父目錄 `MacOS` 下可使用 `adb devices` 指令查看 ADB 連接埠。
|
||||
補充:macOS 下夜神模擬器的 ADB 執行檔路徑為 `/Applications/NoxAppPlayer.app/Contents/MacOS/adb`,在父目錄 `MacOS` 下可使用 `adb devices` 指令查看 ADB 連接埠。
|
||||
|
||||
### ✅ [AVD](https://developer.android.com/studio/run/managing-avds)
|
||||
|
||||
支援,但從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用。請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。
|
||||
支援,且額外支援[截圖增強模式](../connection.md#avd-截圖增強模式)。
|
||||
|
||||
從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用。請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。
|
||||
|
||||
@@ -45,6 +45,11 @@ const fullySupport = [
|
||||
note: '完美支援,需要在模擬器 `設定` - `進階` 中打開 `Android 調試橋 (ADB)`。已知相容 Hyper-V。\n\n- 推薦下載 [離線安裝程式](https://support.bluestacks.com/hc/zh-tw/articles/4402611273485-BlueStacks-5-%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D%E7%A8%8B%E5%BC%8F),避免下載緩慢或綑綁安裝;推薦安裝 [Android 11](https://support.bluestacks.com/hc/zh-tw/articles/4402611273485-BlueStacks-5-%E9%9B%A2%E7%B7%9A%E5%AE%89%E8%A3%9D%E7%A8%8B%E5%BC%8F#:~:text=%E5%AE%89%E8%A3%9D%20BlueStacks%205%20%E7%9A%84%20Android%2011) 版本;解除安裝請使用官方提供的 [解除安裝工具](https://support.bluestacks.com/hc/zh-tw/articles/360057724751-%E5%A6%82%E4%BD%95%E5%BE%9E%E6%82%A8%E7%9A%84%E9%9B%BB%E8%85%A6%E4%B8%8A%E5%AE%8C%E5%85%A8%E7%A7%BB%E9%99%A4-BlueStacks-5-BlueStacks-X-%E5%92%8C-BlueStacks-%E6%9C%8D%E5%8B%99) 以清除殘留。\n- 若 ADB 連接埠號碼不斷無規律變動,每次啟動都不相同,可能是因為您的電腦開啟了 [Hyper-V](https://support.bluestacks.com/hc/zh-tw/articles/4415238471053-BlueStacks-5-%E6%94%AF%E6%8F%B4-Hyper-V-%E7%9A%84-Windows-10-%E5%92%8C-11-%E4%B8%8A%E7%9A%84%E9%9B%BB%E8%85%A6%E8%A6%8F%E6%A0%BC%E9%9C%80%E6%B1%82)。MAA 目前會嘗試自動讀取藍疊模擬器配置檔案內的連接埠號碼,若該功能失效、有分身多開需求或安裝了多個模擬器核心,請參考 [連線設定](../connection.html#藍疊模擬器-hyper-v-每次啟動連接埠號都不一樣) 進行修改。由於 Hyper-V 以管理員身分執行,如自動關閉模擬器、自動偵測連線等不涉及 ADB 的操作同樣需要以系統管理員身分執行 MAA。',
|
||||
},
|
||||
...shuffleArray([
|
||||
{
|
||||
name: '騰訊應用寶',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: '支援 5.10.56.xx 之後的版本。在 `設定` - `連線設定` 中選擇 `騰訊應用寶` 連線配置。已知相容 Hyper-V。\n\n- ADB 連接埠為 `127.0.0.1:5555`。\n- ADB 路徑範例:`C:\\Program Files\\Tencent\\Androws\\Application\\版本號\\adb.exe`。\n\n- 需要先在應用寶中 [開啟 ADB 除錯](https://sj.qq.com/faq/3878)。',
|
||||
},
|
||||
{
|
||||
name: '夜神模擬器 (NoxPlayer)',
|
||||
link: 'https://www.yeshen.com/',
|
||||
@@ -72,7 +77,7 @@ const partiallySupport = shuffleArray([
|
||||
{
|
||||
name: 'AVD',
|
||||
link: 'https://developer.android.com/studio/run/managing-avds',
|
||||
note: '理論支援。\n\n- 從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用,請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。\n- AVD 是為開發除錯而生的,更建議使用其他為遊戲設計的模擬器。',
|
||||
note: '理論支援,且額外支援[截圖增強模式](../connection.html#avd-截圖增強模式)。\n- 從 Android 10 開始,Minitouch 在 SELinux 為 `Enforcing` 模式時不再可用,請切換至其他觸控模式,或將 SELinux **臨時**切換為 `Permissive` 模式。\n- AVD 是為開發除錯而生的,更建議使用其他為遊戲設計的模擬器。',
|
||||
},
|
||||
{
|
||||
name: 'Google Play 遊戲(開發者版本)',
|
||||
@@ -87,11 +92,6 @@ const notSupport = shuffleArray([
|
||||
link: 'https://play.google.com/googleplaygames',
|
||||
note: '不支援,[一般玩家版客戶端](https://developer.android.com/games/playgames/pg-emulator?hl=zh-tw#installing-game-consumer)無法連線 ADB。',
|
||||
},
|
||||
{
|
||||
name: '騰訊應用寶',
|
||||
link: 'https://sj.qq.com/',
|
||||
note: '不支援,騰訊應用寶沒有提供 ADB 連線選項,無法連線 ADB。',
|
||||
},
|
||||
]);
|
||||
|
||||
const md = new MarkdownIt();
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
order: 2
|
||||
order: 3
|
||||
icon: ph:question-fill
|
||||
---
|
||||
|
||||
|
||||
83
docs/zh-tw/manual/install.md
Normal file
@@ -0,0 +1,83 @@
|
||||
---
|
||||
order: 2
|
||||
icon: material-symbols:download-2-rounded
|
||||
---
|
||||
|
||||
<!-- markdownlint-disable MD024 -->
|
||||
|
||||
# 下載與安裝
|
||||
|
||||
::: tip
|
||||
您正在查閱 MAA GUI 的下載與安裝說明文件。若您需要查閱 maa-cli 的下載與安裝說明,請前往 maa-cli 的 [安裝及編譯](./cli/install.md) 文件。目前 MAA Android 版已開放測試,請前往 [MAA-Meow](https://github.com/Aliothmoon/MAA-Meow) 瞭解更多資訊。
|
||||
:::
|
||||
|
||||
## 下載 MAA
|
||||
|
||||
MAA 提供多種下載方式,包括官網下載、透過套件管理員安裝、群組檔案下載等方式。請選擇適合您的方式進行下載。
|
||||
|
||||
### 透過 [官網](https://maa.plus) 下載最新的 MAA 安裝檔
|
||||
|
||||
官網一般會自動選擇正確的版本架構,對於大多數閱讀本文件的 Windows 使用者來說,應為 Windows x64。對於閱讀本文件的 macOS 使用者來說,應下載 macOS 通用版本。
|
||||
|
||||
### 透過 [Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install) 下載最新的 MAA 安裝檔
|
||||
|
||||
請確認系統架構並下載對應的安裝檔案。對於大多數閱讀本文件的 Windows 使用者來說,應為 Windows x64。對於閱讀本文件的 Mac 使用者,Mirror酱 不提供通用安裝檔,請確認您的晶片架構(arm/x86)後下載對應版本。
|
||||
|
||||
::: tip
|
||||
[Mirror酱](https://mirrorchyan.com/zh/projects?rid=MAA&source=maadocs-install) 是獨立的第三方下載加速服務,需要付費使用,而非由 MAA 收費。其營運成本由訂閱收入支撐,部分收益將回饋專案開發者。歡迎訂閱 CDK 享受快速下載,同時支援專案持續開發。
|
||||
:::
|
||||
|
||||
### 使用 Windows 套件管理員(Winget)安裝
|
||||
|
||||
::: tip
|
||||
本方法僅適用於使用 Windows 的使用者
|
||||
:::
|
||||
|
||||
請在終端機中執行以下指令:
|
||||
|
||||
```bash
|
||||
winget install maa
|
||||
```
|
||||
|
||||
透過此方式安裝的預設安裝路徑為 `C:\Users\使用者名稱\AppData\Local\Microsoft\WinGet\Packages`。
|
||||
|
||||
### 透過 QQ 群組檔案下載最新的 MAA 安裝檔
|
||||
|
||||
1. 加入 [MAA 官方 QQ 群](https://api.maa.plus/MaaAssistantArknights/api/qqgroup/index.html)
|
||||
2. 在群組檔案中找到最新的 MAA 壓縮檔進行下載。
|
||||
|
||||
### 透過 [GitHub Releases](https://github.com/MaaAssistantArknights/MaaAssistantArknights/releases) 下載最新的 MAA 安裝檔
|
||||
|
||||
請確認系統架構並下載對應的安裝檔。對於大多數閱讀本文件的 Windows 使用者來說,檔案名稱應為 `MAA-<版本號>-win-x64.zip`。對於閱讀本文件的 macOS 使用者來說,應選擇 `MAA-<版本號>-macos-universal.dmg`。
|
||||
|
||||
## Linux 和其他作業系統
|
||||
|
||||
MAA GUI **暫不支援** Linux 和其他作業系統。您可以使用 **maa-cli** 在這些系統上使用 MAA 的功能。請前往 maa-cli 的 [安裝及編譯](./cli/install.md) 文件瞭解更多資訊。
|
||||
|
||||
## 安裝 MAA
|
||||
|
||||
### Windows
|
||||
|
||||
下載完成後,您會得到一個 `.zip` 檔案。使用解壓縮軟體將其完整解壓縮後,會得到一個包含 MAA 所有檔案的資料夾。
|
||||
|
||||
::: warning
|
||||
|
||||
1. 請不要將 MAA 解壓縮到如 `C:\` 或 `C:\Program Files\` 等受系統保護的路徑,以免因「管理員權限限制」導致程式執行失敗。
|
||||
2. MAA 已內建 .NET 執行環境(獨立發行版),但仍需要 Visual C++ Redistributable x64(VCRedist x64)。請在解壓縮後的 MAA 目錄中以系統管理員身分執行 `DependencySetup_依赖库安装.bat` 來安裝該相依元件,安裝完成後再執行 `MAA.exe`。
|
||||
|
||||
更多資訊請參考 [常見問題](./faq.md) 置頂內容。
|
||||
:::
|
||||
|
||||
連按兩下 `MAA.exe` 即可啟動 MAA。
|
||||
|
||||
::: tip
|
||||
透過 Windows 套件管理員(Winget)安裝的使用者,可直接在命令列中輸入 `maa` 來啟動 MAA,而無需額外執行解壓縮、安裝執行環境等操作。若環境變數 PATH 中已有 `maa-cli`,可能需要額外步驟以區分兩者。
|
||||
:::
|
||||
|
||||
### macOS
|
||||
|
||||
下載完成後,您會得到一個 `.dmg` 檔案。連按兩下開啟該 `.dmg`,將 `MAA.app` 拖曳至 `/Applications` 以完成安裝。
|
||||
|
||||
## 後續步驟
|
||||
|
||||
安裝完成後,請返回 [新手上路](./newbie.md) 繼續設定,或前往 [功能介紹](./introduction/) 查看 MAA 支援的各項功能吧!若您在安裝中遇到問題,可以嘗試查閱 [常見問題](./faq.md) 來解決問題。
|
||||
@@ -1145,10 +1145,10 @@ bool ASSTAPI AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key,
|
||||
無效佔位。列舉值:0。
|
||||
:::
|
||||
::: field name="MinitouchEnabled" type="boolean" optional
|
||||
已棄用。原為是否啟用 `minitouch`;"1" 開,"0" 關。請注意設備可能不支援。列舉值:1(已棄用)。
|
||||
已棄用。原為是否啟用 Minitouch;"1" 開,"0" 關。請注意設備可能不支援。列舉值:1(已棄用)。
|
||||
:::
|
||||
::: field name="TouchMode" type="string" optional default="minitouch"
|
||||
觸控模式設定。可選值:`minitouch` | `maatouch` | `adb`。預設為 `minitouch`。列舉值:2。
|
||||
觸控模式設定。可選值:minitouch | maatouch | adb | MaaFwAdb。預設為 minitouch。列舉值:2。
|
||||
:::
|
||||
::: field name="DeploymentWithPause" type="boolean" optional
|
||||
是否暫停下幹員,同時影響抄作業、肉鴿、保全派駐。可用值:"1" 或 "0"。列舉值:3。
|
||||
@@ -1159,4 +1159,7 @@ bool ASSTAPI AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key,
|
||||
::: field name="KillAdbOnExit" type="boolean" optional
|
||||
退出時是否結束 ADB。可用值:"0" 或 "1"。列舉值:5。
|
||||
:::
|
||||
::: field name="ClientType" type="string" optional
|
||||
客戶端類型(遊戲渠道)。大多數連線設定不需要設定。僅當傳給 `AsstConnect` / `AsstAsyncConnect` 的 `config` 在連線階段命令中使用 `[PackageName]` 時,才需要在連線前呼叫 `AsstSetInstanceOption(..., ClientType, ...)`。目前內建設定中僅 `Androws` 與 `WSA` 的 `displayId` 查詢依賴該值。此選項不取代 StartUp / CloseDown 等任務參數中的 `client_type`。列舉值:6。
|
||||
:::
|
||||
::::
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "10.0.201",
|
||||
"rollForward": "disable",
|
||||
"allowPrerelease": false
|
||||
}
|
||||
}
|
||||
@@ -61,6 +61,9 @@ extern "C"
|
||||
AsstHandle ASSTAPI AsstCreateEx(AsstApiCallback callback, void* custom_arg);
|
||||
void ASSTAPI AsstDestroy(AsstHandle handle);
|
||||
|
||||
// 设置实例级参数。
|
||||
// InstanceOptionKey::ClientType 仅在所选连接配置的 connect 阶段命令依赖 [PackageName] 时需要预先设置;
|
||||
// 当前内置配置中仅 Androws / WSA 的 displayId 查询依赖该值。
|
||||
AsstBool ASSTAPI
|
||||
AsstSetInstanceOption(AsstHandle handle, AsstInstanceOptionKey key, const char* value);
|
||||
|
||||
|
||||
@@ -0,0 +1,670 @@
|
||||
{
|
||||
"code": "PA-EX-1",
|
||||
"height": 9,
|
||||
"levelId": "activities/act51side/level_act51side_ex01",
|
||||
"name": "在底层",
|
||||
"stageId": "act51side_ex01#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": true,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.6,
|
||||
-10.63
|
||||
],
|
||||
[
|
||||
1.0958801285994695,
|
||||
-7.1,
|
||||
-11.468506414519773
|
||||
]
|
||||
],
|
||||
"width": 10
|
||||
}
|
||||
@@ -0,0 +1,670 @@
|
||||
{
|
||||
"code": "PA-EX-1",
|
||||
"height": 9,
|
||||
"levelId": "activities/act51side/level_act51side_ex01",
|
||||
"name": "在底层",
|
||||
"stageId": "act51side_ex01",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": true,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.6,
|
||||
-10.63
|
||||
],
|
||||
[
|
||||
1.0958801285994695,
|
||||
-7.1,
|
||||
-11.468506414519773
|
||||
]
|
||||
],
|
||||
"width": 10
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-2",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex02",
|
||||
"name": "活尸",
|
||||
"stageId": "act51side_ex02#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_hole"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_hole"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-2",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex02",
|
||||
"name": "活尸",
|
||||
"stageId": "act51side_ex02",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_hole"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_hole"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-3",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex03",
|
||||
"name": "母亲",
|
||||
"stageId": "act51side_ex03#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-3",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex03",
|
||||
"name": "母亲",
|
||||
"stageId": "act51side_ex03",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-4",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex04",
|
||||
"name": "长子",
|
||||
"stageId": "act51side_ex04#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": true,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-4",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex04",
|
||||
"name": "长子",
|
||||
"stageId": "act51side_ex04",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": true,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,710 @@
|
||||
{
|
||||
"code": "PA-EX-5",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex05",
|
||||
"name": "三姐妹",
|
||||
"stageId": "act51side_ex05#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 12
|
||||
}
|
||||
@@ -0,0 +1,710 @@
|
||||
{
|
||||
"code": "PA-EX-5",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex05",
|
||||
"name": "三姐妹",
|
||||
"stageId": "act51side_ex05",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 12
|
||||
}
|
||||
@@ -0,0 +1,733 @@
|
||||
{
|
||||
"code": "PA-EX-6",
|
||||
"height": 9,
|
||||
"levelId": "activities/act51side/level_act51side_ex06",
|
||||
"name": "钦差大臣",
|
||||
"stageId": "act51side_ex06#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.6,
|
||||
-10.63
|
||||
],
|
||||
[
|
||||
1.0958801285994695,
|
||||
-7.1,
|
||||
-11.468506414519773
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,733 @@
|
||||
{
|
||||
"code": "PA-EX-6",
|
||||
"height": 9,
|
||||
"levelId": "activities/act51side/level_act51side_ex06",
|
||||
"name": "钦差大臣",
|
||||
"stageId": "act51side_ex06",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telout"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_telin"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.6,
|
||||
-10.63
|
||||
],
|
||||
[
|
||||
1.0958801285994695,
|
||||
-7.1,
|
||||
-11.468506414519773
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||
@@ -0,0 +1,654 @@
|
||||
{
|
||||
"code": "PA-EX-7",
|
||||
"height": 8,
|
||||
"levelId": "activities/act51side/level_act51side_ex07",
|
||||
"name": "乐观的悲剧",
|
||||
"stageId": "act51side_ex07#f#",
|
||||
"tiles": [
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_floor"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_fence_bound"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 2,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_wall"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": true,
|
||||
"tileKey": "tile_start"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 1,
|
||||
"heightType": 0,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_road"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 0,
|
||||
"isEnd": true,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_end"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
],
|
||||
[
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
},
|
||||
{
|
||||
"buildableType": 0,
|
||||
"heightType": 1,
|
||||
"isEnd": false,
|
||||
"isStart": false,
|
||||
"tileKey": "tile_forbidden"
|
||||
}
|
||||
]
|
||||
],
|
||||
"view": [
|
||||
[
|
||||
0.0,
|
||||
-6.1,
|
||||
-9.76
|
||||
],
|
||||
[
|
||||
0.9448062140292399,
|
||||
-6.6,
|
||||
-10.61172366939915
|
||||
]
|
||||
],
|
||||
"width": 11
|
||||
}
|
||||