47 Commits

Author SHA1 Message Date
470cff34e1 Merge branch 'develop' of github.com:boudji-ludwig-pett/cnam-geometry-dash into develop 2025-05-17 21:51:53 +02:00
068c38a411 fix: obstacle block in editor map 2025-05-17 21:51:50 +02:00
a96463f186 ci: overwrite Artifact 2025-05-17 21:02:29 +02:00
885dd802bb chore(release): v1.0.0 2025-05-17 20:46:11 +02:00
c38eecfbda chore: clean up Debug.Log 2025-05-17 20:32:43 +02:00
8caca60647 chore(release): v1.0.0-staging.5 2025-05-17 20:29:07 +02:00
becd9c455e fix: improve Ship 2025-05-17 20:28:15 +02:00
699ba78ae4 Merge branch 'develop' of github.com:boudji-ludwig-pett/cnam-geometry-dash into develop 2025-05-17 20:21:50 +02:00
c3b8b8526e feat: add StereoMadness part II 2025-05-17 20:21:43 +02:00
b0d4ff9418 Merge branch 'develop' of github.com:boudji-ludwig-pett/cnam-geometry-dash into develop 2025-05-17 19:47:45 +02:00
f4c1ebb83b fix: buttons scaling edit mode in 1280x720 2025-05-17 19:47:23 +02:00
ca831d77f0 feat: manage rotation z on level json 2025-05-17 19:35:35 +02:00
dc442e2acb fix: add more sound effects + buttons scaling in editor mode 2025-05-17 19:30:14 +02:00
9a88fc81ec style: change btn style on choice editor 2025-05-17 18:02:44 +02:00
9d1314a75f fix: add corerctly elements on map to edit 2025-05-17 18:02:07 +02:00
4992ae9e79 docs: update gantt diagram 2025-05-17 18:00:20 +02:00
bfa28a189f feat: explosion effect on win and death 2025-05-17 16:04:16 +02:00
b48e17882c chore: clean up 2025-05-17 15:16:30 +02:00
0e70858ce9 fix: use editmode var 2025-05-17 02:25:54 +02:00
99c0adbae8 fix: set difficulty chooser to inactive 2025-05-17 02:09:50 +02:00
693bcfccec Feature/add stars renderer (#70)
Co-authored-by: Djelal BOUDJI <djelal@gmail.com>
2025-05-17 02:07:26 +02:00
d03e8f7107 Style/change btn style (#69)
Co-authored-by: Djelal BOUDJI <djelal@gmail.com>
2025-05-16 21:36:51 +02:00
2290769447 style/change-btn-style (#68)
Co-authored-by: Djelal BOUDJI <djelal@gmail.com>
2025-05-16 21:17:45 +02:00
f8791dfd1b chore(release): v1.0.0-staging.4 2025-05-16 20:09:58 +02:00
86f64a7705 docs: add instructions to play the game 2025-05-16 20:08:52 +02:00
728c57c66c fix: edit a level (#66)
Co-authored-by: Djelal BOUDJI <djelal@gmail.com>
Co-authored-by: Théo LUDWIG <contact@theoludwig.fr>
2025-05-16 20:03:37 +02:00
0b32ce7036 feat: sounds effects (click on button, win and death) (#67) 2025-05-16 19:27:38 +02:00
2c7a420f90 fix: export (#65) 2025-05-16 13:19:59 +02:00
bdd238f524 feat: edit a level (#64) 2025-05-16 13:19:44 +02:00
f818a9a8a7 feat: escape keyboard shortcut to set menu pause (#63) 2025-05-15 18:05:54 +02:00
3fe6a2998c fix: map editor design (#61) 2025-05-15 07:13:26 +02:00
bde6ea3a43 feat: init AI (#60) 2025-05-15 07:12:46 +02:00
0263f6b3b0 feat: select levels keyboard shortcuts (next/previous with arrows) (#62) 2025-05-15 07:12:03 +02:00
7f2db297fa Map editor design (#59) 2025-05-11 22:30:06 +02:00
97b473cb01 docs: UML updates (#58) 2025-05-08 17:50:45 +02:00
8fe04b974a chore(release): v1.0.0-staging.3 2025-04-28 22:25:40 +02:00
9287a16610 ci: improvements to release process 2025-04-28 22:25:26 +02:00
edc6504e10 feat: export level (#57) 2025-04-28 21:51:37 +02:00
02ef8cdf74 feat: map editor (#56) 2025-04-28 16:52:13 +02:00
5cd536be84 chore(release): v1.0.0-staging.2 2025-04-28 15:21:50 +02:00
7ee0f9899d ci: zip build 2025-04-28 15:10:18 +02:00
e8a020d539 ci: github token permissions 2025-04-28 15:01:48 +02:00
c30bd7eb28 chore(release): v1.0.0-staging.1 2025-04-28 14:46:59 +02:00
7a1a67d411 feat: add logo icon 2025-04-28 14:42:43 +02:00
3108c18744 fix: levels loader in production build 2025-04-28 14:38:16 +02:00
cc27037ea7 ci: automated release 2025-04-28 14:08:46 +02:00
354e15ae78 chore: clean up unity files 2025-04-28 13:59:00 +02:00
124 changed files with 20021 additions and 2940 deletions

View File

@ -7,7 +7,7 @@ charset = utf-8
indent_style = space indent_style = space
end_of_line = lf end_of_line = lf
[*.{json,jsonc,asmdef}] [*.asmdef]
indent_size = 4 indent_size = 4
trim_trailing_whitespace = true trim_trailing_whitespace = true
insert_final_newline = true insert_final_newline = true
@ -28,6 +28,11 @@ indent_style = tab
[*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}] [*.{csproj,vbproj,vcxproj,vcxproj.filters,proj,nativeproj,locproj}]
indent_size = 2 indent_size = 2
[*.{json,jsonc}]
indent_size = 2
trim_trailing_whitespace = true
insert_final_newline = true
[*.builds] [*.builds]
indent_size = 2 indent_size = 2

View File

@ -2,17 +2,15 @@ name: "ci"
on: on:
push: push:
branches: [develop] branches: [develop, staging, main]
pull_request: pull_request:
branches: [develop, staging, main] branches: [develop, staging, main]
jobs: permissions:
lint-commit: contents: write
runs-on: "ubuntu-latest" pull-requests: write
steps:
- uses: "actions/checkout@v4.2.2"
- uses: "wagoid/commitlint-github-action@v6.1.2"
jobs:
lint-editorconfig-checker: lint-editorconfig-checker:
runs-on: "ubuntu-latest" runs-on: "ubuntu-latest"
steps: steps:
@ -20,38 +18,82 @@ jobs:
- uses: "editorconfig-checker/action-editorconfig-checker@main" - uses: "editorconfig-checker/action-editorconfig-checker@main"
- run: "editorconfig-checker" - run: "editorconfig-checker"
# test: build-windows:
# permissions:
# checks: "write"
# runs-on: "ubuntu-latest"
# steps:
# - uses: "actions/checkout@v4.2.2"
# with:
# lfs: true
# - uses: "actions/cache@v4.2.0"
# with:
# path: "Library"
# key: "Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}"
# restore-keys: |
# "Library-"
# - uses: "game-ci/unity-test-runner@v4.3.1"
# env:
# UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
# UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
# UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
# with:
# githubToken: ${{ secrets.GITHUB_TOKEN }}
build:
runs-on: "ubuntu-latest" runs-on: "ubuntu-latest"
outputs:
build-path: ${{ steps.upload.outputs.path }}
steps: steps:
- uses: "actions/checkout@v4.2.2" - uses: "actions/checkout@v4.2.2"
with: with:
lfs: true lfs: true
- uses: "actions/cache@v4.2.0" - uses: "actions/cache@v4.2.3"
with:
path: "Library"
key: "Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}"
restore-keys: |
"Library-"
- uses: "game-ci/unity-builder@v4.3.0"
env:
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
with:
targetPlatform: "StandaloneWindows64"
- name: Upload Windows Build Artifact
id: upload
if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main'
uses: actions/upload-artifact@v4.4.3
with:
name: build-windows
path: build/
owerwrite: true
build-macos:
runs-on: "ubuntu-latest"
outputs:
build-path: ${{ steps.upload.outputs.path }}
steps:
- uses: "actions/checkout@v4.2.2"
with:
lfs: true
- uses: "actions/cache@v4.2.3"
with:
path: "Library"
key: "Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}"
restore-keys: |
"Library-"
- uses: "game-ci/unity-builder@v4.3.0"
env:
UNITY_LICENSE: ${{ secrets.UNITY_LICENSE }}
UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
with:
targetPlatform: "StandaloneOSX"
- name: Upload macOS Build Artifact
id: upload
if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main'
uses: actions/upload-artifact@v4.3.0
with:
name: build-macos
path: build/
owerwrite: true
build-linux:
runs-on: "ubuntu-latest"
outputs:
build-path: ${{ steps.upload.outputs.path }}
steps:
- uses: "actions/checkout@v4.2.2"
with:
lfs: true
- uses: "actions/cache@v4.2.3"
with: with:
path: "Library" path: "Library"
key: "Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}" key: "Library-${{ hashFiles('Assets/**', 'Packages/**', 'ProjectSettings/**') }}"
@ -66,7 +108,66 @@ jobs:
with: with:
targetPlatform: "StandaloneLinux64" targetPlatform: "StandaloneLinux64"
# - uses: "actions/upload-artifact@v4.4.3" - name: Upload Linux Build Artifact
# with: id: upload
# name: "Build" if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main'
# path: "build" uses: actions/upload-artifact@v4.6.2
with:
name: build-linux
path: build/
owerwrite: true
create-release:
needs: [build-windows, build-macos, build-linux]
if: github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/main'
runs-on: ubuntu-latest
steps:
- name: Get version from commit message
id: get_version
run: |
COMMIT_MESSAGE="${{ github.event.head_commit.message }}"
# Extract the version number after "chore(release): "
VERSION=$(echo "$COMMIT_MESSAGE" | sed -n 's/^chore(release): \(v[0-9]*\.[0-9]*\.[0-9]*[-a-zA-Z0-9.]*\).*$/\1/p')
echo "version=$VERSION" >> "$GITHUB_OUTPUT"
shell: bash
- name: Download Windows Build Artifact
uses: actions/download-artifact@v4.3.0
with:
name: build-windows
path: build/windows
- name: Download macOS Build Artifact
uses: actions/download-artifact@v4.3.0
with:
name: build-macos
path: build/macos
- name: Download Linux Build Artifact
uses: actions/download-artifact@v4.3.0
with:
name: build-linux
path: build/linux
- name: Zip Builds
run: |
cd build/windows
zip -r ../windows.zip .
cd ../macos
zip -r ../macos.zip .
cd ../linux
zip -r ../linux.zip .
- name: Create GitHub Release
id: create_release
uses: softprops/action-gh-release@v2.2.2
with:
tag_name: ${{ steps.get_version.outputs.version }}
name: ${{ steps.get_version.outputs.version }}
body: |
🎮 Automatic ${{ github.ref == 'refs/heads/main' && 'Production' || 'Pre-release' }} build
prerelease: ${{ github.ref != 'refs/heads/main' }}
files: |
build/windows.zip
build/macos.zip
build/linux.zip

View File

@ -0,0 +1,80 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3654053280041398781
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4104371471751400115}
- component: {fileID: 1415423667558431683}
m_Layer: 0
m_Name: AICollider
m_TagString: AICollider
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4104371471751400115
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654053280041398781}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 86.53131, y: 53.261993, z: -5.1268225}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!61 &1415423667558431683
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3654053280041398781}
m_Enabled: 1
serializedVersion: 3
m_Density: 1
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_ForceSendLayers:
serializedVersion: 2
m_Bits: 4294967295
m_ForceReceiveLayers:
serializedVersion: 2
m_Bits: 4294967295
m_ContactCaptureLayers:
serializedVersion: 2
m_Bits: 4294967295
m_CallbackLayers:
serializedVersion: 2
m_Bits: 4294967295
m_IsTrigger: 1
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
m_Offset: {x: 0, y: 0}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0, y: 0}
oldSize: {x: 0, y: 0}
newSize: {x: 0, y: 0}
adaptiveTilingThreshold: 0
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
m_Size: {x: 1, y: 1}
m_EdgeRadius: 0

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a862ece8e0cd6047ea9e799642c7b31c
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -97,7 +97,7 @@ TextureImporter:
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4 - serializedVersion: 4
buildTarget: WebGL buildTarget: Android
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
@ -109,6 +109,7 @@ TextureImporter:
ignorePlatformSupport: 0 ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
>>>>>>> develop
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: sprites:
@ -147,8 +148,7 @@ TextureImporter:
secondaryTextures: [] secondaryTextures: []
spriteCustomMetadata: spriteCustomMetadata:
entries: [] entries: []
nameFileIdTable: nameFileIdTable: {}
RegularBlock01_0: 229215520534054086
mipmapLimitGroupName: mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
userData: userData:

View File

@ -1,10 +1,10 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: b51d2de513d090b4485816dbca782498 guid: e0426acdd6d763946bab617252a0f5aa
TextureImporter: TextureImporter:
internalIDToNameTable: internalIDToNameTable:
- first: - first:
213: 6385790085498839582 213: 1925945982471551178
second: BlankSquare_0 second: BlankSquare 1_0
externalObjects: {} externalObjects: {}
serializedVersion: 13 serializedVersion: 13
mipmaps: mipmaps:
@ -96,24 +96,11 @@ TextureImporter:
ignorePlatformSupport: 0 ignorePlatformSupport: 0
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet: spriteSheet:
serializedVersion: 2 serializedVersion: 2
sprites: sprites:
- serializedVersion: 2 - serializedVersion: 2
name: BlankSquare_0 name: BlankSquare 1_0
rect: rect:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
@ -128,8 +115,8 @@ TextureImporter:
physicsShape: [] physicsShape: []
tessellationDetail: -1 tessellationDetail: -1
bones: [] bones: []
spriteID: e12ae58df32ee9850800000000000000 spriteID: ac8becdbaa55aba10800000000000000
internalID: 6385790085498839582 internalID: 1925945982471551178
vertices: [] vertices: []
indices: indices:
edges: [] edges: []
@ -148,7 +135,7 @@ TextureImporter:
spriteCustomMetadata: spriteCustomMetadata:
entries: [] entries: []
nameFileIdTable: nameFileIdTable:
BlankSquare_0: 6385790085498839582 BlankSquare 1_0: 1925945982471551178
mipmapLimitGroupName: mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
userData: userData:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 58314e7be35f3201e8f3d376508d5800
TextureImporter:
internalIDToNameTable:
- first:
213: -522367714226421056
second: Save_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: Save_0
rect:
serializedVersion: 2
x: 24
y: 23
width: 464
height: 464
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 0c2c66fd45d20c8f0800000000000000
internalID: -522367714226421056
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
Save_0: -522367714226421056
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

View File

@ -0,0 +1,260 @@
fileFormatVersion: 2
guid: 28e1127a5b69e79449d6eacfb1632438
TextureImporter:
internalIDToNameTable:
- first:
213: -4579822432219233078
second: cancelBtn_0
- first:
213: -4181939333999132496
second: cancelBtn_1
- first:
213: 8512661480653712572
second: cancelBtn_2
- first:
213: -2543711027167231359
second: cancelBtn_3
- first:
213: 4838270059752062411
second: cancelBtn_4
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: cancelBtn_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 1536
height: 1024
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: ac4053943c33170c0800000000000000
internalID: -4579822432219233078
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: cancelBtn_1
rect:
serializedVersion: 2
x: 82
y: 622
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 0b08fb42554c6f5c0800000000000000
internalID: -4181939333999132496
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: cancelBtn_2
rect:
serializedVersion: 2
x: 82
y: 350
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: cbce38fb38c032670800000000000000
internalID: 8512661480653712572
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: cancelBtn_3
rect:
serializedVersion: 2
x: 82
y: 326
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 18204764c4ce2bcd0800000000000000
internalID: -2543711027167231359
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: cancelBtn_4
rect:
serializedVersion: 2
x: 82
y: 94
width: 7
height: 7
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: bcdfdee2cfcf42340800000000000000
internalID: 4838270059752062411
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
cancelBtn_0: -4579822432219233078
cancelBtn_1: -4181939333999132496
cancelBtn_2: 8512661480653712572
cancelBtn_3: -2543711027167231359
cancelBtn_4: 4838270059752062411
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: a291da95cf123274b9c96368a41731dd
TextureImporter:
internalIDToNameTable:
- first:
213: -654415992179358624
second: closeBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: closeBtn_0
rect:
serializedVersion: 2
x: 3
y: 32
width: 1019
height: 987
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 06480d25f1c0be6f0800000000000000
internalID: -654415992179358624
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
closeBtn_0: -654415992179358624
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 0cecb027d0e23fc41b3b3d7c399978c4
TextureImporter:
internalIDToNameTable:
- first:
213: -1609267759769251333
second: createALevelBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: createALevelBtn_0
rect:
serializedVersion: 2
x: 23
y: 88
width: 978
height: 728
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: bf1177eaf7bbaa9e0800000000000000
internalID: -1609267759769251333
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
createALevelBtn_0: -1609267759769251333
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: eaa3bde145edde942b542cb709a37416
TextureImporter:
internalIDToNameTable:
- first:
213: -2153231444099213249
second: editALevelBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: editALevelBtn_0
rect:
serializedVersion: 2
x: 23
y: 207
width: 978
height: 609
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: f38d34fe86f2e12e0800000000000000
internalID: -2153231444099213249
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
editALevelBtn_0: -2153231444099213249
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: b53550c59261cea43ba8038fdd102203
TextureImporter:
internalIDToNameTable:
- first:
213: 9002939317064965793
second: editorBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: editorBtn_0
rect:
serializedVersion: 2
x: 38
y: 88
width: 947
height: 795
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 1ae1e08fb9dd0fc70800000000000000
internalID: 9002939317064965793
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
editorBtn_0: 9002939317064965793
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 1d7f8c8f8305efa4c8b78f4dd391c49b guid: 1b21bd4ccae70934eb86a3a2a6928e98
TextureImporter: TextureImporter:
internalIDToNameTable: internalIDToNameTable:
- first: - first:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: f3e63de14d549a542a79bff56b230926
TextureImporter:
internalIDToNameTable:
- first:
213: 6669414160430206226
second: importBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: importBtn_0
rect:
serializedVersion: 2
x: 23
y: 88
width: 978
height: 835
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 21d0764c7d48e8c50800000000000000
internalID: 6669414160430206226
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
importBtn_0: 6669414160430206226
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 KiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: ea1e3303403fe0b43bebec59c2f55590
TextureImporter:
internalIDToNameTable:
- first:
213: -1409255045544979666
second: importBtn2_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: importBtn2_0
rect:
serializedVersion: 2
x: 17
y: 47
width: 539
height: 343
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: e235d5ca002517ce0800000000000000
internalID: -1409255045544979666
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
importBtn2_0: -1409255045544979666
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 8a60769d8e7b06e4ea5712865d14b809
TextureImporter:
internalIDToNameTable:
- first:
213: -4287216300838241123
second: playBtn_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: playBtn_0
rect:
serializedVersion: 2
x: 22
y: 88
width: 979
height: 795
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: d9cb5413d7fb084c0800000000000000
internalID: -4287216300838241123
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
playBtn_0: -4287216300838241123
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

View File

@ -0,0 +1,286 @@
fileFormatVersion: 2
guid: fe99c546935fa084e8cbec8b68e3f96e
TextureImporter:
internalIDToNameTable:
- first:
213: -626436719271748831
second: saveBtn_0
- first:
213: -1715996769668828261
second: saveBtn_1
- first:
213: -8850024829547459184
second: saveBtn_2
- first:
213: 9204917831739309651
second: saveBtn_3
- first:
213: -7034966553427437937
second: saveBtn_4
- first:
213: -142403778502646489
second: saveBtn_5
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: saveBtn_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 1536
height: 1024
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 12bdb817f137e47f0800000000000000
internalID: -626436719271748831
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: saveBtn_1
rect:
serializedVersion: 2
x: 83
y: 735
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: b93fb2c970e8f28e0800000000000000
internalID: -1715996769668828261
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: saveBtn_2
rect:
serializedVersion: 2
x: 82
y: 622
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 09dcf659e456e2580800000000000000
internalID: -8850024829547459184
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: saveBtn_3
rect:
serializedVersion: 2
x: 81
y: 431
width: 8
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 35efa7b8fff6ebf70800000000000000
internalID: 9204917831739309651
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: saveBtn_4
rect:
serializedVersion: 2
x: 82
y: 350
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: f8614384137ce5e90800000000000000
internalID: -7034966553427437937
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: saveBtn_5
rect:
serializedVersion: 2
x: 82
y: 326
width: 6
height: 6
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 7252da79484160ef0800000000000000
internalID: -142403778502646489
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
saveBtn_0: -626436719271748831
saveBtn_1: -1715996769668828261
saveBtn_2: -8850024829547459184
saveBtn_3: 9204917831739309651
saveBtn_4: -7034966553427437937
saveBtn_5: -142403778502646489
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: b83b54968fd22ff438fe127c168bebac guid: 7fe0358ef92ff8a449d0bee123119795
TextureImporter: TextureImporter:
internalIDToNameTable: internalIDToNameTable:
- first: - first:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 7bbd15eb9b940f4c59561753a3d516ce guid: bcd6c4da7709ff9458a5784f7f807e30
TextureImporter: TextureImporter:
internalIDToNameTable: internalIDToNameTable:
- first: - first:

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 6b64c942662170e44b2f80d605a405f4
TextureImporter:
internalIDToNameTable:
- first:
213: -2073137460773038770
second: PauseIcon_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: WebGL
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: PauseIcon_0
rect:
serializedVersion: 2
x: 17
y: 19
width: 239
height: 218
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: e455110a67cba33e0800000000000000
internalID: -2073137460773038770
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
PauseIcon_0: -2073137460773038770
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -97,7 +97,7 @@ TextureImporter:
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4 - serializedVersion: 4
buildTarget: WebGL buildTarget: Android
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1

View File

@ -97,7 +97,7 @@ TextureImporter:
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4 - serializedVersion: 4
buildTarget: WebGL buildTarget: Android
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,10 +1,10 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 4cc2ad05a74922248a49910d3aaa5442 guid: 79b56765ff1452848bd947d19c642244
TextureImporter: TextureImporter:
internalIDToNameTable: internalIDToNameTable:
- first: - first:
213: 6693083200273925831 213: -6564193165698205349
second: LevelStatsBtn_0 second: Remove_0
externalObjects: {} externalObjects: {}
serializedVersion: 13 serializedVersion: 13
mipmaps: mipmaps:
@ -97,7 +97,7 @@ TextureImporter:
androidETC2FallbackOverride: 0 androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0 forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4 - serializedVersion: 4
buildTarget: WebGL buildTarget: Android
maxTextureSize: 2048 maxTextureSize: 2048
resizeAlgorithm: 0 resizeAlgorithm: 0
textureFormat: -1 textureFormat: -1
@ -113,7 +113,7 @@ TextureImporter:
serializedVersion: 2 serializedVersion: 2
sprites: sprites:
- serializedVersion: 2 - serializedVersion: 2
name: LevelStatsBtn_0 name: Remove_0
rect: rect:
serializedVersion: 2 serializedVersion: 2
x: 0 x: 0
@ -128,8 +128,8 @@ TextureImporter:
physicsShape: [] physicsShape: []
tessellationDetail: -1 tessellationDetail: -1
bones: [] bones: []
spriteID: 7c6467c85bb92ec50800000000000000 spriteID: b59f289281d47e4a0800000000000000
internalID: 6693083200273925831 internalID: -6564193165698205349
vertices: [] vertices: []
indices: indices:
edges: [] edges: []
@ -148,7 +148,7 @@ TextureImporter:
spriteCustomMetadata: spriteCustomMetadata:
entries: [] entries: []
nameFileIdTable: nameFileIdTable:
LevelStatsBtn_0: 6693083200273925831 Remove_0: -6564193165698205349
mipmapLimitGroupName: mipmapLimitGroupName:
pSDRemoveMatte: 0 pSDRemoveMatte: 0
userData: userData:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

@ -0,0 +1,143 @@
fileFormatVersion: 2
guid: fee916e0a10de404a9c3d67602b6e0fd
TextureImporter:
internalIDToNameTable:
- first:
213: 1781407419429470612
second: etoiles_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: etoiles_0
rect:
serializedVersion: 2
x: 111
y: 88
width: 911
height: 835
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 491c6531c94d8b810800000000000000
internalID: 1781407419429470612
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
etoiles_0: 1781407419429470612
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -2,18 +2,754 @@
"name": "Back on Track", "name": "Back on Track",
"musicName": "BackOnTrack", "musicName": "BackOnTrack",
"order": 2, "order": 2,
"difficulty": 1,
"elements": [ "elements": [
{ {
"type": "Spike", "type": "Spike",
"x": -6.684000015258789, "x": -9.5,
"y": -2.8970000743865969, "y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallSpike",
"x": 2.5999999046325685,
"y": -3.4100000858306886,
"scaleX": -1.0, "scaleX": -1.0,
"scaleY": -1.0 "scaleY": -1.0
}, },
{ {
"type": "Spike", "type": "Spike",
"x": -3.059999942779541, "x": 3.4000000953674318,
"y": -2.930000066757202, "y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 11.0,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 11.850000381469727,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 12.850000381469727,
"y": -3.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 14.449999809265137,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 16.0,
"y": -3.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 16.0,
"y": -2.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 17.649999618530275,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 19.049999237060548,
"y": -3.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 19.049999237060548,
"y": -2.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 19.049999237060548,
"y": -1.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 28.5,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 29.299999237060548,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 35.599998474121097,
"y": -3.0999999046325685,
"scaleX": 1.2000000476837159,
"scaleY": 0.15000000596046449
},
{
"type": "KillZone",
"x": 39.810001373291019,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 44.04999923706055,
"y": -3.0999999046325685,
"scaleX": 1.2000000476837159,
"scaleY": 0.15000000596046449
},
{
"type": "Spike",
"x": 44.099998474121097,
"y": -2.4200000762939455,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 48.25,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 52.45000076293945,
"y": -2.9000000953674318,
"scaleX": 1.2000000476837159,
"scaleY": 0.23000000417232514
},
{
"type": "Spike",
"x": 52.5,
"y": -2.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 58.0,
"y": -1.2000000476837159,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 61.5,
"y": 0.4000000059604645,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 65.0,
"y": 2.0,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 68.5,
"y": 3.5999999046325685,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 72.0,
"y": 5.199999809265137,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 56.38999938964844,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 58.22999954223633,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 60.0,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 61.0,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 62.79999923706055,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 64.5999984741211,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 66.5999984741211,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 68.19999694824219,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 69.9000015258789,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 71.69999694824219,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 73.5,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "ObstacleBlock",
"x": 81.94000244140625,
"y": 0.5199999809265137,
"scaleX": 3.0,
"scaleY": 1.559999942779541
},
{
"type": "ObstacleBlock",
"x": 97.30999755859375,
"y": 0.03999999910593033,
"scaleX": 3.0,
"scaleY": 1.3799999952316285
},
{
"type": "ObstacleBlock",
"x": 112.66999816894531,
"y": 0.5199999809265137,
"scaleX": 3.0,
"scaleY": 1.559999942779541
},
{
"type": "ObstacleBlock",
"x": 128.0500030517578,
"y": -0.6499999761581421,
"scaleX": 3.0,
"scaleY": 1.1100000143051148
},
{
"type": "Spike",
"x": 77.6500015258789,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 78.44999694824219,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 79.30999755859375,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 80.16000366210938,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 84.4800033569336,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 85.2699966430664,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 86.16000366210938,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 86.94999694824219,
"y": 4.829999923706055,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 95.87000274658203,
"y": 5.75,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 96.68000030517578,
"y": 5.75,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 97.5199966430664,
"y": 5.75,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 98.36000061035156,
"y": 5.75,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 78.54000091552735,
"y": 5.900000095367432,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 79.56999969482422,
"y": 5.900000095367432,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 85.33999633789063,
"y": 5.900000095367432,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 86.36000061035156,
"y": 5.900000095367432,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 95.8499984741211,
"y": 5.179999828338623,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 96.68000030517578,
"y": 5.179999828338623,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 97.5199966430664,
"y": 5.179999828338623,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 98.36000061035156,
"y": 5.179999828338623,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 119.94999694824219,
"y": 4.860000133514404,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "Spike",
"x": 120.87000274658203,
"y": 2.509999990463257,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 136.5,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 138.1999969482422,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 139.89999389648438,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 141.60000610351563,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 143.3000030517578,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 145.0,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 146.6999969482422,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 148.39999389648438,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 150.10000610351563,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 151.8000030517578,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 153.5,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 155.1999969482422,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 156.89999389648438,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 158.60000610351563,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 160.3000030517578,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 162.0,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 163.6999969482422,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 165.39999389648438,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 167.10000610351563,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 168.8000030517578,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "KillZone",
"x": 170.5,
"y": -3.200000047683716,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 138.5,
"y": 2.0399999618530275,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 139.33999633789063,
"y": 2.0399999618530275,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 140.17999267578126,
"y": 2.0399999618530275,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 141.02000427246095,
"y": 2.0399999618530275,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 143.3000030517578,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 144.13999938964845,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 144.97999572753907,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 145.82000732421876,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 146.66000366210938,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 147.5,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 148.33999633789063,
"y": 0.8899999856948853,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 150.4199981689453,
"y": -0.3100000023841858,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 151.25,
"y": -0.3100000023841858,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 151.0800018310547,
"y": -0.3100000023841858,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 152.91000366210938,
"y": -0.3100000023841858,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 153.74000549316407,
"y": -0.3100000023841858,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 156.6999969482422,
"y": 1.2999999523162842,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 160.1999969482422,
"y": 2.9000000953674318,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 163.8000030517578,
"y": 4.5,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 167.3000030517578,
"y": 6.099999904632568,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 170.8000030517578,
"y": 7.699999809265137,
"scaleX": -1.0,
"scaleY": -1.0
},
{
"type": "SmallObstacleBlock",
"x": 174.3000030517578,
"y": 9.300000190734864,
"scaleX": -1.0, "scaleX": -1.0,
"scaleY": -1.0 "scaleY": -1.0
} }

File diff suppressed because it is too large Load Diff

BIN
Assets/Resources/Logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: 7941bec4ab82ba5f8a978cf1b4d91010
TextureImporter:
internalIDToNameTable:
- first:
213: 1404028623067837608
second: Logo_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: Logo_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 1024
height: 1024
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 8a47074089c1c7310800000000000000
internalID: 1404028623067837608
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
Logo_0: 1404028623067837608
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 KiB

View File

@ -0,0 +1,156 @@
fileFormatVersion: 2
guid: bb33a1422640593caba3c9cfc277eed1
TextureImporter:
internalIDToNameTable:
- first:
213: -9192638271177797499
second: death_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Android
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: death_0
rect:
serializedVersion: 2
x: 50
y: 42
width: 118
height: 118
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 58059c172303d6080800000000000000
internalID: -9192638271177797499
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
death_0: -9192638271177797499
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 1f762bc8c54d24bc38a9c08ae37e1861
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 0f783190ab25e24deb41c3810d8bd910
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: a534a6e5c2588e8468f392da95b4d051
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 01bc19d23f018f986bec98d64fb0c51b
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

View File

@ -306,6 +306,9 @@ GameObject:
- component: {fileID: 678214373} - component: {fileID: 678214373}
- component: {fileID: 678214375} - component: {fileID: 678214375}
- component: {fileID: 678214374} - component: {fileID: 678214374}
- component: {fileID: 678214377}
- component: {fileID: 678214376}
- component: {fileID: 678214378}
m_Layer: 5 m_Layer: 5
m_Name: Save m_Name: Save
m_TagString: Untagged m_TagString: Untagged
@ -370,6 +373,90 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 678214372} m_GameObject: {fileID: 678214372}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!114 &678214376
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 678214372}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 678214374}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 678214377}
m_TargetAssemblyTypeName: JSONExporter, Assembly-CSharp
m_MethodName: ExportJSON
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
--- !u!114 &678214377
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 678214372}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d3227fe18f4441647bdd19d3131efa02, type: 3}
m_Name:
m_EditorClassIdentifier:
editor: {fileID: 0}
--- !u!114 &678214378
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 678214372}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f5bf592d3d8430744a08058675701934, type: 3}
m_Name:
m_EditorClassIdentifier:
mapParent: {fileID: 0}
blockGroupContainer: {fileID: 394350961}
buttonPrefabTemplate: {fileID: 1993500743}
--- !u!1 &739948034 --- !u!1 &739948034
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2 fileFormatVersion: 2
guid: 73b983a44d701df4bb6d8ceb94e05a2b guid: bdddba7e4ac5baa4e833a5e67122d0d3
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
userData: userData:

View File

@ -149,14 +149,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 1027243870}
m_Father: {fileID: 585327055} m_Father: {fileID: 585327055}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -160, y: 0} m_AnchoredPosition: {x: -161, y: 0}
m_SizeDelta: {x: 185, y: 40} m_SizeDelta: {x: 170, y: 90}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &323428364 --- !u!114 &323428364
MonoBehaviour: MonoBehaviour:
@ -202,9 +201,9 @@ MonoBehaviour:
m_OnClick: m_OnClick:
m_PersistentCalls: m_PersistentCalls:
m_Calls: m_Calls:
- m_Target: {fileID: 0} - m_Target: {fileID: 1858033414}
m_TargetAssemblyTypeName: MainMenu, Assembly-CSharp m_TargetAssemblyTypeName: MainMenu, Assembly-CSharp
m_MethodName: OpenImport m_MethodName: EditLevel
m_Mode: 1 m_Mode: 1
m_Arguments: m_Arguments:
m_ObjectArgument: {fileID: 0} m_ObjectArgument: {fileID: 0}
@ -234,8 +233,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: -2153231444099213249, guid: eaa3bde145edde942b542cb709a37416, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -408,6 +407,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3} m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 1895261020}
--- !u!114 &681324524 --- !u!114 &681324524
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -502,278 +502,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 681324521} m_GameObject: {fileID: 681324521}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &1027243869
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1027243870}
- component: {fileID: 1027243872}
- component: {fileID: 1027243871}
m_Layer: 5
m_Name: EditLevelText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1027243870
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1027243869}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 323428363}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1027243871
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1027243869}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Edit a level
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &1027243872
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1027243869}
m_CullTransparentMesh: 1
--- !u!1 &1040235959
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1040235960}
- component: {fileID: 1040235962}
- component: {fileID: 1040235961}
m_Layer: 5
m_Name: CreateLevelText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1040235960
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1040235959}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1200117237}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1040235961
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1040235959}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Create a level
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &1040235962
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1040235959}
m_CullTransparentMesh: 1
--- !u!1 &1200117236 --- !u!1 &1200117236
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -804,14 +532,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 1040235960}
m_Father: {fileID: 585327055} m_Father: {fileID: 585327055}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 160, y: 0} m_AnchoredPosition: {x: 160, y: -10}
m_SizeDelta: {x: 185, y: 40} m_SizeDelta: {x: 180, y: 120}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1200117238 --- !u!114 &1200117238
MonoBehaviour: MonoBehaviour:
@ -859,7 +586,7 @@ MonoBehaviour:
m_Calls: m_Calls:
- m_Target: {fileID: 1858033414} - m_Target: {fileID: 1858033414}
m_TargetAssemblyTypeName: MainMenu, Assembly-CSharp m_TargetAssemblyTypeName: MainMenu, Assembly-CSharp
m_MethodName: CreateLevel m_MethodName: CreateVoidLevel
m_Mode: 1 m_Mode: 1
m_Arguments: m_Arguments:
m_ObjectArgument: {fileID: 0} m_ObjectArgument: {fileID: 0}
@ -889,8 +616,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: -1609267759769251333, guid: 0cecb027d0e23fc41b3b3d7c399978c4, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -1087,6 +814,136 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3} m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 1895261020}
--- !u!1 &1895261019
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1895261021}
- component: {fileID: 1895261020}
m_Layer: 0
m_Name: Sound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!82 &1895261020
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1895261019}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 0}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!4 &1895261021
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1895261019}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 513.29504, y: 455.8944, z: -2.436951}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1985937862 --- !u!1 &1985937862
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1173,3 +1030,4 @@ SceneRoots:
- {fileID: 1858033413} - {fileID: 1858033413}
- {fileID: 585327055} - {fileID: 585327055}
- {fileID: 1985937865} - {fileID: 1985937865}
- {fileID: 1895261021}

View File

@ -149,14 +149,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 164913377}
m_Father: {fileID: 481473977} m_Father: {fileID: 481473977}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -110} m_AnchoredPosition: {x: 0, y: -175}
m_SizeDelta: {x: 160, y: 30} m_SizeDelta: {x: 160, y: 110}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &39408930 --- !u!114 &39408930
MonoBehaviour: MonoBehaviour:
@ -234,8 +233,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: 9002939317064965793, guid: b53550c59261cea43ba8038fdd102203, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -252,142 +251,6 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 39408928} m_GameObject: {fileID: 39408928}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &164913376
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 164913377}
- component: {fileID: 164913379}
- component: {fileID: 164913378}
m_Layer: 5
m_Name: EditorText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &164913377
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164913376}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 39408929}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &164913378
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164913376}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Editor
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &164913379
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 164913376}
m_CullTransparentMesh: 1
--- !u!1 &303285652 --- !u!1 &303285652
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -463,6 +326,135 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 303285652} m_GameObject: {fileID: 303285652}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &376463333
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 376463335}
- component: {fileID: 376463334}
m_Layer: 0
m_Name: Sound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!82 &376463334
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 376463333}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 0}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!4 &376463335
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 376463333}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 591.1148, y: 374.54196, z: 17.932013}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &481473973 --- !u!1 &481473973
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -562,6 +554,7 @@ RectTransform:
- {fileID: 666344588} - {fileID: 666344588}
- {fileID: 39408929} - {fileID: 39408929}
- {fileID: 1809963736} - {fileID: 1809963736}
- {fileID: 780585405}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
@ -599,14 +592,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 1899869499}
m_Father: {fileID: 481473977} m_Father: {fileID: 481473977}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -45} m_AnchoredPosition: {x: 0, y: -105}
m_SizeDelta: {x: 160, y: 30} m_SizeDelta: {x: 160, y: 110}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &666344589 --- !u!114 &666344589
MonoBehaviour: MonoBehaviour:
@ -684,8 +676,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: 6669414160430206226, guid: f3e63de14d549a542a79bff56b230926, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -702,6 +694,81 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 666344587} m_GameObject: {fileID: 666344587}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &780585404
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 780585405}
- component: {fileID: 780585407}
- component: {fileID: 780585406}
m_Layer: 5
m_Name: GameObject
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &780585405
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 780585404}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 481473977}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 85}
m_SizeDelta: {x: 206.4181, y: 202.9899}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &780585406
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 780585404}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 1404028623067837608, guid: 7941bec4ab82ba5f8a978cf1b4d91010, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &780585407
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 780585404}
m_CullTransparentMesh: 1
--- !u!1 &948896765 --- !u!1 &948896765
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -781,142 +848,6 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &997659732
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 997659733}
- component: {fileID: 997659735}
- component: {fileID: 997659734}
m_Layer: 5
m_Name: PlayText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &997659733
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 997659732}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1587889808}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &997659734
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 997659732}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Play
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &997659735
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 997659732}
m_CullTransparentMesh: 1
--- !u!1 &1587889807 --- !u!1 &1587889807
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -947,14 +878,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 997659733}
m_Father: {fileID: 481473977} m_Father: {fileID: 481473977}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 15.000004} m_AnchoredPosition: {x: 0, y: -40}
m_SizeDelta: {x: 160, y: 30} m_SizeDelta: {x: 160, y: 110}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1587889809 --- !u!114 &1587889809
MonoBehaviour: MonoBehaviour:
@ -1032,8 +962,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: -4287216300838241123, guid: 8a60769d8e7b06e4ea5712865d14b809, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -1164,7 +1094,7 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: -4781373940957465942, guid: 1d7f8c8f8305efa4c8b78f4dd391c49b, type: 3} m_Sprite: {fileID: -4781373940957465942, guid: 1b21bd4ccae70934eb86a3a2a6928e98, type: 3}
m_Type: 0 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
@ -1216,6 +1146,7 @@ MonoBehaviour:
name: name:
musicName: musicName:
order: 0 order: 0
difficulty: 0
elements: [] elements: []
--- !u!4 &1832520163 --- !u!4 &1832520163
Transform: Transform:
@ -1337,142 +1268,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3} m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
--- !u!1 &1899869498 sfxSource: {fileID: 376463334}
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1899869499}
- component: {fileID: 1899869501}
- component: {fileID: 1899869500}
m_Layer: 5
m_Name: ImportText
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1899869499
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1899869498}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 666344588}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1899869500
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1899869498}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Import
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 1
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &1899869501
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1899869498}
m_CullTransparentMesh: 1
--- !u!1660057539 &9223372036854775807 --- !u!1660057539 &9223372036854775807
SceneRoots: SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1481,3 +1277,4 @@ SceneRoots:
- {fileID: 481473977} - {fileID: 481473977}
- {fileID: 948896768} - {fileID: 948896768}
- {fileID: 1832520163} - {fileID: 1832520163}
- {fileID: 376463335}

View File

@ -154,7 +154,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 84.74307, y: 105.52587} m_AnchoredPosition: {x: 63, y: 48}
m_SizeDelta: {x: 29.4862, y: 43.7482} m_SizeDelta: {x: 29.4862, y: 43.7482}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &77506302 --- !u!114 &77506302
@ -348,142 +348,6 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &244257726
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 244257727}
- component: {fileID: 244257729}
- component: {fileID: 244257728}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &244257727
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 244257726}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 885044259}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &244257728
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 244257726}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Import
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4281479730
m_fontColor: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 24
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &244257729
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 244257726}
m_CullTransparentMesh: 1
--- !u!1 &773247538 --- !u!1 &773247538
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -682,14 +546,13 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1} m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0 m_ConstrainProportionsScale: 0
m_Children: m_Children: []
- {fileID: 244257727}
m_Father: {fileID: 1442014941} m_Father: {fileID: 1442014941}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 36.861893} m_AnchoredPosition: {x: -21.743084, y: -20.66397}
m_SizeDelta: {x: 160, y: 30} m_SizeDelta: {x: 170, y: 90}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &885044260 --- !u!114 &885044260
MonoBehaviour: MonoBehaviour:
@ -780,8 +643,8 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} m_Sprite: {fileID: -1409255045544979666, guid: ea1e3303403fe0b43bebec59c2f55590, type: 3}
m_Type: 1 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
m_FillMethod: 4 m_FillMethod: 4
@ -849,6 +712,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3} m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 1646124753}
--- !u!114 &955286180 --- !u!114 &955286180
MonoBehaviour: MonoBehaviour:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1048,6 +912,135 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0, y: 0} m_Pivot: {x: 0, y: 0}
--- !u!1 &1646124752
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1646124754}
- component: {fileID: 1646124753}
m_Layer: 0
m_Name: Sound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!82 &1646124753
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1646124752}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 0}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!4 &1646124754
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1646124752}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 513.29504, y: 455.8944, z: -2.436951}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1660057539 &9223372036854775807 --- !u!1660057539 &9223372036854775807
SceneRoots: SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1055,3 +1048,4 @@ SceneRoots:
- {fileID: 837005990} - {fileID: 837005990}
- {fileID: 1442014941} - {fileID: 1442014941}
- {fileID: 162069549} - {fileID: 162069549}
- {fileID: 1646124754}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 73b983a44d701df4bb6d8ceb94e05a2b
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -222,63 +222,81 @@ MonoBehaviour:
m_StringArgument: m_StringArgument:
m_BoolArgument: 0 m_BoolArgument: 0
m_CallState: 2 m_CallState: 2
--- !u!1001 &109370708 --- !u!1 &99686832
PrefabInstance: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
serializedVersion: 2 m_CorrespondingSourceObject: {fileID: 0}
m_Modification: m_PrefabInstance: {fileID: 0}
serializedVersion: 3 m_PrefabAsset: {fileID: 0}
m_TransformParent: {fileID: 0} serializedVersion: 6
m_Modifications: m_Component:
- target: {fileID: 1771296619209216840, guid: e9dda45aef9258745a40efb48437d584, type: 3} - component: {fileID: 99686833}
propertyPath: m_Name - component: {fileID: 99686835}
value: BonusSlowSpeed - component: {fileID: 99686834}
objectReference: {fileID: 0} m_Layer: 5
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_Name: Checkmark
propertyPath: m_LocalPosition.x m_TagString: Untagged
value: -5.4423084 m_Icon: {fileID: 0}
objectReference: {fileID: 0} m_NavMeshLayer: 0
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_StaticEditorFlags: 0
propertyPath: m_LocalPosition.y m_IsActive: 1
value: -2.783749 --- !u!224 &99686833
objectReference: {fileID: 0} RectTransform:
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_ObjectHideFlags: 0
propertyPath: m_LocalPosition.z m_CorrespondingSourceObject: {fileID: 0}
value: 0 m_PrefabInstance: {fileID: 0}
objectReference: {fileID: 0} m_PrefabAsset: {fileID: 0}
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_GameObject: {fileID: 99686832}
propertyPath: m_LocalRotation.w m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
value: 1 m_LocalPosition: {x: 0, y: 0, z: 0}
objectReference: {fileID: 0} m_LocalScale: {x: 1, y: 1, z: 1}
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_ConstrainProportionsScale: 0
propertyPath: m_LocalRotation.x m_Children: []
value: 0 m_Father: {fileID: 295909703}
objectReference: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_AnchorMin: {x: 0.5, y: 0.5}
propertyPath: m_LocalRotation.y m_AnchorMax: {x: 0.5, y: 0.5}
value: 0 m_AnchoredPosition: {x: 0, y: 0}
objectReference: {fileID: 0} m_SizeDelta: {x: 36.9547, y: 33.6365}
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_Pivot: {x: 0.5, y: 0.5}
propertyPath: m_LocalRotation.z --- !u!114 &99686834
value: 0 MonoBehaviour:
objectReference: {fileID: 0} m_ObjectHideFlags: 0
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_CorrespondingSourceObject: {fileID: 0}
propertyPath: m_LocalEulerAnglesHint.x m_PrefabInstance: {fileID: 0}
value: 0 m_PrefabAsset: {fileID: 0}
objectReference: {fileID: 0} m_GameObject: {fileID: 99686832}
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_Enabled: 1
propertyPath: m_LocalEulerAnglesHint.y m_EditorHideFlags: 0
value: 0 m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
objectReference: {fileID: 0} m_Name:
- target: {fileID: 6543394447596783970, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_EditorClassIdentifier:
propertyPath: m_LocalEulerAnglesHint.z m_Material: {fileID: 0}
value: 0 m_Color: {r: 1, g: 1, b: 1, a: 1}
objectReference: {fileID: 0} m_RaycastTarget: 1
m_RemovedComponents: [] m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_RemovedGameObjects: [] m_Maskable: 1
m_AddedGameObjects: [] m_OnCullStateChanged:
m_AddedComponents: [] m_PersistentCalls:
m_SourcePrefab: {fileID: 100100000, guid: e9dda45aef9258745a40efb48437d584, type: 3} m_Calls: []
m_Sprite: {fileID: 10901, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &99686835
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 99686832}
m_CullTransparentMesh: 1
--- !u!1 &245275147 --- !u!1 &245275147
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -358,6 +376,82 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 245275147} m_GameObject: {fileID: 245275147}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1 &295909702
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 295909703}
- component: {fileID: 295909705}
- component: {fileID: 295909704}
m_Layer: 5
m_Name: Background
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &295909703
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 295909702}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 99686833}
m_Father: {fileID: 2145558729}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 49.9975, y: 40.9}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &295909704
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 295909702}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 10907, guid: 0000000000000000f000000000000000, type: 0}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &295909705
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 295909702}
m_CullTransparentMesh: 1
--- !u!1 &487176671 --- !u!1 &487176671
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -434,6 +528,67 @@ CanvasRenderer:
m_PrefabAsset: {fileID: 0} m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 487176671} m_GameObject: {fileID: 487176671}
m_CullTransparentMesh: 1 m_CullTransparentMesh: 1
--- !u!1001 &496264820
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 3025146551836412649, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_Name
value: BonusBoostSpeed
objectReference: {fileID: 0}
- target: {fileID: 3025146551836412649, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_IsActive
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalPosition.x
value: -2
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalPosition.y
value: -2.88
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalRotation.w
value: 0.99681437
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalRotation.z
value: -0.079757296
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 7134261581051338486, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: -9.149
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 5d01d2d55c6c25541b0db90186e76c2b, type: 3}
--- !u!1 &519420028 --- !u!1 &519420028
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -544,6 +699,7 @@ MonoBehaviour:
normalMinYFollow: 2 normalMinYFollow: 2
shipMinYFollow: 6 shipMinYFollow: 6
smoothSpeed: 5 smoothSpeed: 5
isPlaying: 1
--- !u!1 &521952199 --- !u!1 &521952199
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -5827,6 +5983,8 @@ RectTransform:
- {fileID: 1269654000} - {fileID: 1269654000}
- {fileID: 1464555240} - {fileID: 1464555240}
- {fileID: 6776933} - {fileID: 6776933}
- {fileID: 2145558729}
- {fileID: 2049642316}
m_Father: {fileID: 1371294550} m_Father: {fileID: 1371294550}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
@ -5849,6 +6007,7 @@ MonoBehaviour:
pauseMenu: {fileID: 892725781} pauseMenu: {fileID: 892725781}
pauseButton: {fileID: 1038445495} pauseButton: {fileID: 1038445495}
levelLoader: {fileID: 1999482186} levelLoader: {fileID: 1999482186}
sfxSource: {fileID: 1247869546}
volumeSlider: {fileID: 6776934} volumeSlider: {fileID: 6776934}
--- !u!1 &988798827 --- !u!1 &988798827
GameObject: GameObject:
@ -6221,7 +6380,7 @@ MonoBehaviour:
m_OnCullStateChanged: m_OnCullStateChanged:
m_PersistentCalls: m_PersistentCalls:
m_Calls: [] m_Calls: []
m_Sprite: {fileID: -2073137460773038770, guid: 7bbd15eb9b940f4c59561753a3d516ce, type: 3} m_Sprite: {fileID: -2073137460773038770, guid: bcd6c4da7709ff9458a5784f7f807e30, type: 3}
m_Type: 0 m_Type: 0
m_PreserveAspect: 0 m_PreserveAspect: 0
m_FillCenter: 1 m_FillCenter: 1
@ -6274,6 +6433,135 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100} m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1247869545
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1247869547}
- component: {fileID: 1247869546}
m_Layer: 0
m_Name: Sound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!82 &1247869546
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1247869545}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 0}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!4 &1247869547
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1247869545}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 8.485552, y: 2.2081068, z: -0.13737443}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1267397455 --- !u!1 &1267397455
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -6404,6 +6692,8 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ebe0bd74200510d4aa75c327a76499c6, type: 3} m_Script: {fileID: 11500000, guid: ebe0bd74200510d4aa75c327a76499c6, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
pauseMenu: {fileID: 892725783}
sfxSource: {fileID: 1247869546}
SpeedMultiplier: 1 SpeedMultiplier: 1
--- !u!61 &1267397460 --- !u!61 &1267397460
BoxCollider2D: BoxCollider2D:
@ -7315,9 +7605,10 @@ MonoBehaviour:
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
levelsLoader: {fileID: 0} levelsLoader: {fileID: 0}
audioSource: {fileID: 1999482188} editMode: 0
createMode: 0
musicSource: {fileID: 1999482188}
progressionText: {fileID: 245275149} progressionText: {fileID: 245275149}
groundWidth: 1
--- !u!4 &1999482187 --- !u!4 &1999482187
Transform: Transform:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -7465,6 +7756,197 @@ RectTransform:
m_AnchoredPosition: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100} m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &2049642315
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2049642316}
- component: {fileID: 2049642318}
- component: {fileID: 2049642317}
m_Layer: 0
m_Name: AI
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2049642316
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2049642315}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: -2.9565992}
m_LocalScale: {x: 0.4166666, y: 0.4166666, z: 0.4166666}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 892725782}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -377, y: -274}
m_SizeDelta: {x: 87.0508, y: 79.9371}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &2049642317
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2049642315}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_FontData:
m_Font: {fileID: 12800000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3}
m_FontSize: 56
m_FontStyle: 0
m_BestFit: 0
m_MinSize: 0
m_MaxSize: 56
m_Alignment: 0
m_AlignByGeometry: 0
m_RichText: 1
m_HorizontalOverflow: 0
m_VerticalOverflow: 0
m_LineSpacing: 1
m_Text: AI
--- !u!222 &2049642318
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2049642315}
m_CullTransparentMesh: 1
--- !u!1 &2145558728
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2145558729}
- component: {fileID: 2145558730}
- component: {fileID: 2145558731}
m_Layer: 5
m_Name: CheckboxAI
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &2145558729
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2145558728}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 295909703}
m_Father: {fileID: 892725782}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -424.55, y: -273.6}
m_SizeDelta: {x: 60.1819, y: 50.9705}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &2145558730
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2145558728}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9085046f02f69544eb97fd06b6048fe2, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 295909704}
toggleTransition: 1
graphic: {fileID: 99686834}
m_Group: {fileID: 0}
onValueChanged:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 2145558731}
m_TargetAssemblyTypeName: AI, Assembly-CSharp
m_MethodName: OnAiChange
m_Mode: 1
m_Arguments:
m_ObjectArgument: {fileID: 0}
m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
m_IsOn: 0
--- !u!114 &2145558731
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2145558728}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b63079a9773c036389c5b87c12e728c3, type: 3}
m_Name:
m_EditorClassIdentifier:
AIToggle: {fileID: 0}
player: {fileID: 1267397459}
--- !u!1660057539 &9223372036854775807 --- !u!1660057539 &9223372036854775807
SceneRoots: SceneRoots:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -7475,4 +7957,5 @@ SceneRoots:
- {fileID: 1371294550} - {fileID: 1371294550}
- {fileID: 521952202} - {fileID: 521952202}
- {fileID: 555497623} - {fileID: 555497623}
- {fileID: 109370708} - {fileID: 496264820}
- {fileID: 1247869547}

View File

@ -300,7 +300,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -0.000013351, y: -98.7} m_AnchoredPosition: {x: 3.6, y: -182.2}
m_SizeDelta: {x: 629.6868, y: 98.2373} m_SizeDelta: {x: 629.6868, y: 98.2373}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &92159576 --- !u!114 &92159576
@ -438,6 +438,192 @@ Transform:
m_Children: [] m_Children: []
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &334972165
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 334972166}
- component: {fileID: 334972167}
m_Layer: 5
m_Name: Sound
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &334972166
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 334972165}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1153106989}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!82 &334972167
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 334972165}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 0}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 0
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 500
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!1 &407660540
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 407660541}
- component: {fileID: 407660542}
m_Layer: 5
m_Name: StarsManager
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &407660541
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 407660540}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 760835823}
m_Father: {fileID: 1153106989}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &407660542
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 407660540}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 443f905013127a44f9c3dcf5a8fed74b, type: 3}
m_Name:
m_EditorClassIdentifier:
starTemplate: {fileID: 1331855743}
starsContainer: {fileID: 760835823}
levelsLoader: {fileID: 0}
extraPadding: 10
--- !u!1 &633505916 --- !u!1 &633505916
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -548,7 +734,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -22.8, y: -49.119} m_AnchoredPosition: {x: 3.6, y: -135.3}
m_SizeDelta: {x: 629.6868, y: 98.2373} m_SizeDelta: {x: 629.6868, y: 98.2373}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &760653960 --- !u!114 &760653960
@ -607,6 +793,42 @@ MonoBehaviour:
m_EditorClassIdentifier: m_EditorClassIdentifier:
levelTotalAttemptsText: {fileID: 760653960} levelTotalAttemptsText: {fileID: 760653960}
levelsLoader: {fileID: 0} levelsLoader: {fileID: 0}
--- !u!1 &760835822
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 760835823}
m_Layer: 5
m_Name: StarsContainer
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &760835823
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 760835822}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 1331855742}
m_Father: {fileID: 407660541}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: -41}
m_SizeDelta: {x: 375, y: 100}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &954359120 --- !u!1 &954359120
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -846,6 +1068,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 2c53cba3260b30d02b79e69a3198546c, type: 3} m_Script: {fileID: 11500000, guid: 2c53cba3260b30d02b79e69a3198546c, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 334972167}
levelsLoader: {fileID: 0} levelsLoader: {fileID: 0}
--- !u!1 &1099679056 --- !u!1 &1099679056
GameObject: GameObject:
@ -992,6 +1215,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3} m_Script: {fileID: 11500000, guid: ef2acea012085a3bb9a981fc334afaec, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 334972167}
--- !u!1 &1153106988 --- !u!1 &1153106988
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1031,6 +1255,8 @@ RectTransform:
- {fileID: 760653959} - {fileID: 760653959}
- {fileID: 92159575} - {fileID: 92159575}
- {fileID: 1571276505} - {fileID: 1571276505}
- {fileID: 334972166}
- {fileID: 407660541}
m_Father: {fileID: 0} m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0} m_AnchorMin: {x: 0, y: 0}
@ -1101,6 +1327,81 @@ Canvas:
m_SortingLayerID: 0 m_SortingLayerID: 0
m_SortingOrder: 0 m_SortingOrder: 0
m_TargetDisplay: 0 m_TargetDisplay: 0
--- !u!1 &1331855741
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1331855742}
- component: {fileID: 1331855744}
- component: {fileID: 1331855743}
m_Layer: 5
m_Name: star
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1331855742
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1331855741}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 760835823}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 40, y: 40}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1331855743
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1331855741}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier:
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 1781407419429470612, guid: fee916e0a10de404a9c3d67602b6e0fd, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &1331855744
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1331855741}
m_CullTransparentMesh: 1
--- !u!1 &1364527281 --- !u!1 &1364527281
GameObject: GameObject:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0
@ -1246,6 +1547,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: c34ef065650ba0802be580828cc0d474, type: 3} m_Script: {fileID: 11500000, guid: c34ef065650ba0802be580828cc0d474, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 334972167}
levelsLoader: {fileID: 0} levelsLoader: {fileID: 0}
--- !u!1 &1571276504 --- !u!1 &1571276504
GameObject: GameObject:
@ -1282,7 +1584,7 @@ RectTransform:
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMin: {x: 0.5, y: 0.5}
m_AnchorMax: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5}
m_AnchoredPosition: {x: -52.318, y: -147.36} m_AnchoredPosition: {x: 3.6, y: -95.2}
m_SizeDelta: {x: 629.6868, y: 98.2373} m_SizeDelta: {x: 629.6868, y: 98.2373}
m_Pivot: {x: 0.5, y: 0.5} m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1571276506 --- !u!114 &1571276506
@ -1372,6 +1674,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3} m_Script: {fileID: 11500000, guid: a1cd6b406f139414086355a222af717e, type: 3}
m_Name: m_Name:
m_EditorClassIdentifier: m_EditorClassIdentifier:
sfxSource: {fileID: 0}
--- !u!81 &1975177173 --- !u!81 &1975177173
AudioListener: AudioListener:
m_ObjectHideFlags: 0 m_ObjectHideFlags: 0

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 2fabb6c6015f46541a57baf21011fa51
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,19 @@
using UnityEngine;
using UnityEngine.UI;
public class AI : MonoBehaviour
{
public Toggle AIToggle;
public Player player;
public void OnAiChange()
{
player.IsAI = AIToggle.isOn;
}
public void Awake()
{
AIToggle = GetComponent<Toggle>();
AIToggle.isOn = player.IsAI;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: b63079a9773c036389c5b87c12e728c3

View File

@ -0,0 +1,20 @@
using UnityEngine;
public class CameraController : MonoBehaviour
{
public float moveSpeed = 10f;
void Update()
{
float horizontalInput = Input.GetAxisRaw("Horizontal"); // ← → ou A D
float verticalInput = Input.GetAxisRaw("Vertical"); // ↑ ↓ ou W S
Vector3 movement = new Vector3(
horizontalInput * moveSpeed * Time.deltaTime,
verticalInput * moveSpeed * Time.deltaTime,
0f
);
Camera.main.transform.position += movement;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 74af3e3f2c02bde43b24c2f56589d071

View File

@ -5,4 +5,6 @@ public interface IGameMode
void Update(Player player); void Update(Player player);
void OnCollisionEnter(Player player, Collision2D collision); void OnCollisionEnter(Player player, Collision2D collision);
void OnCollisionExit(Player player, Collision2D collision); void OnCollisionExit(Player player, Collision2D collision);
void Jump(Player player);
} }

View File

@ -1,6 +1,4 @@
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement;
public class NormalGameMode : IGameMode public class NormalGameMode : IGameMode
{ {
@ -15,7 +13,6 @@ public class NormalGameMode : IGameMode
{ {
player.RigidBody.linearVelocity = new Vector2(HorizontalSpeed * player.SpeedMultiplier, player.RigidBody.linearVelocity.y); player.RigidBody.linearVelocity = new Vector2(HorizontalSpeed * player.SpeedMultiplier, player.RigidBody.linearVelocity.y);
if (player.IsColliding && Input.GetKey(JumpKey) && !isRotating) if (player.IsColliding && Input.GetKey(JumpKey) && !isRotating)
{ {
Jump(player); Jump(player);
@ -38,11 +35,14 @@ public class NormalGameMode : IGameMode
UpdateParticlePositionAndRotation(player); UpdateParticlePositionAndRotation(player);
} }
private void Jump(Player player) public void Jump(Player player)
{ {
player.RigidBody.linearVelocity = new Vector2(player.RigidBody.linearVelocity.x, 0); player.RigidBody.linearVelocity = new Vector2(player.RigidBody.linearVelocity.x, 0);
player.RigidBody.AddForce(Vector2.up * JumpForce, ForceMode2D.Impulse); player.RigidBody.AddForce(Vector2.up * JumpForce, ForceMode2D.Impulse);
if (player.LevelsLoader != null)
{
player.LevelsLoader.IncreaseTotalJumps(); player.LevelsLoader.IncreaseTotalJumps();
}
isRotating = true; isRotating = true;
targetRotationAngle = player.transform.eulerAngles.z - 90f; targetRotationAngle = player.transform.eulerAngles.z - 90f;
} }
@ -83,16 +83,6 @@ public class NormalGameMode : IGameMode
public void OnCollisionEnter(Player player, Collision2D collision) public void OnCollisionEnter(Player player, Collision2D collision)
{ {
player.IsColliding = true; player.IsColliding = true;
if (collision.gameObject.CompareTag("Kill"))
{
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
}
if (collision.gameObject.CompareTag("Win"))
{
SceneManager.LoadScene("SelectLevelScene");
}
} }
public void OnCollisionExit(Player player, Collision2D collision) public void OnCollisionExit(Player player, Collision2D collision)

View File

@ -1,3 +1,4 @@
using System.IO;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
@ -6,9 +7,9 @@ public class ShipGameMode : IGameMode
private const float HorizontalSpeed = 8.6f; private const float HorizontalSpeed = 8.6f;
private const float JumpForce = 26.6581f; private const float JumpForce = 26.6581f;
private const KeyCode JumpKey = KeyCode.Space; private const KeyCode JumpKey = KeyCode.Space;
private const float UpperAngle = 45f; private const float MaxAscentAngle = 45f;
private const float LowerAngle = -45f; private const float MaxDescentAngle = -45f;
private const float RotationTransitionDuration = 0.5f; private const float RotationSpeed = 360f;
public void Update(Player player) public void Update(Player player)
{ {
@ -19,25 +20,27 @@ public class ShipGameMode : IGameMode
if (jumpPressed) if (jumpPressed)
{ {
Jump(player); Jump(player);
}
if (Input.GetKeyDown(JumpKey)) float targetAngle;
if (player.RigidBody.linearVelocity.y > 0.1f)
{ {
player.Transform.rotation = Quaternion.Euler(0, 0, UpperAngle); float velocityLerp = Mathf.Clamp01(player.RigidBody.linearVelocity.y / JumpForce);
targetAngle = Mathf.Lerp(0f, MaxAscentAngle, velocityLerp);
}
else if (player.RigidBody.linearVelocity.y < -0.1f)
{
float velocityLerp = Mathf.Clamp01(Mathf.Abs(player.RigidBody.linearVelocity.y) / 20f);
targetAngle = Mathf.Lerp(0f, MaxDescentAngle, velocityLerp);
} }
else else
{ {
player.Transform.rotation = Quaternion.Euler(0, 0, UpperAngle); targetAngle = 0f;
} }
}
else
{
float currentAngle = GetCurrentZAngle(player); float currentAngle = GetCurrentZAngle(player);
float newAngle = Mathf.MoveTowardsAngle(currentAngle, targetAngle, RotationSpeed * Time.deltaTime);
float t = Mathf.Clamp01(Time.deltaTime / RotationTransitionDuration);
float interpolationFactor = Mathf.Sin(t * (Mathf.PI / 2));
float newAngle = Mathf.Lerp(currentAngle, LowerAngle, interpolationFactor);
player.Transform.rotation = Quaternion.Euler(0, 0, newAngle); player.Transform.rotation = Quaternion.Euler(0, 0, newAngle);
}
if (player.Particle.gameObject.activeSelf) if (player.Particle.gameObject.activeSelf)
{ {
@ -55,29 +58,23 @@ public class ShipGameMode : IGameMode
return angle; return angle;
} }
private void Jump(Player player) public void Jump(Player player)
{
if (player.RigidBody.linearVelocity.y <= 0.1f)
{ {
player.RigidBody.linearVelocity = new Vector2(player.RigidBody.linearVelocity.x, 0); player.RigidBody.linearVelocity = new Vector2(player.RigidBody.linearVelocity.x, 0);
player.RigidBody.AddForce(Vector2.up * JumpForce, ForceMode2D.Impulse); player.RigidBody.AddForce(Vector2.up * JumpForce, ForceMode2D.Impulse);
if (player.LevelsLoader != null)
{
player.LevelsLoader.IncreaseTotalJumps(); player.LevelsLoader.IncreaseTotalJumps();
} }
}
}
public void OnCollisionEnter(Player player, Collision2D collision) public void OnCollisionEnter(Player player, Collision2D collision)
{ {
if (collision.gameObject.CompareTag("Kill")) float snappedAngle = 0f;
{ player.Transform.rotation = Quaternion.Euler(0, 0, snappedAngle);
SceneManager.LoadScene(SceneManager.GetActiveScene().name);
return;
}
if (collision.gameObject.CompareTag("Win"))
{
SceneManager.LoadScene("HomeScene");
return;
}
float currentAngle = GetCurrentZAngle(player);
float shortestAngle = Mathf.DeltaAngle(currentAngle, 0);
player.Transform.rotation = Quaternion.RotateTowards(player.Transform.rotation, Quaternion.Euler(0, 0, 0), Mathf.Abs(shortestAngle));
} }
public void OnCollisionExit(Player player, Collision2D collision) public void OnCollisionExit(Player player, Collision2D collision)

View File

@ -0,0 +1,155 @@
using UnityEngine;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using SimpleFileBrowser;
using TMPro;
#if UNITY_EDITOR
using UnityEditor;
#endif
[RequireComponent(typeof(LevelEditor))]
public class JSONExporter : MonoBehaviour
{
public TMP_Text statusText;
public int difficultyToExport = 1;
private LevelEditor editor;
private string levelsFolder;
private string assetFolderPath;
private void Awake()
{
editor = GetComponent<LevelEditor>();
levelsFolder = Path.Combine(Application.dataPath, "Resources/Levels");
if (!Directory.Exists(levelsFolder))
Directory.CreateDirectory(levelsFolder);
assetFolderPath = "Assets/Resources/Levels";
if (statusText == null)
{
var statusObj = GameObject.Find("StatusText");
if (statusObj != null)
statusText = statusObj.GetComponent<TMP_Text>();
}
}
private void Start()
{
SetStatus("Ready to export...", Color.white);
}
public void ExportJSON()
{
SetStatus("Exporting...", Color.yellow);
StartCoroutine(ShowSaveDialog());
}
private IEnumerator ShowSaveDialog()
{
yield return FileBrowser.WaitForSaveDialog(
FileBrowser.PickMode.Files,
false,
levelsFolder,
"NewLevel.json",
"Save Level JSON",
"Save"
);
if (!FileBrowser.Success)
{
SetStatus("Save canceled.", Color.red);
yield break;
}
string chosenPath = FileBrowser.Result[0];
string fileName = Path.GetFileNameWithoutExtension(chosenPath);
string destPath = Path.Combine(levelsFolder, fileName + ".json");
var elements = new List<SerializableElement>();
var allCols = Object.FindObjectsByType<Collider2D>(FindObjectsSortMode.None);
foreach (var col in allCols)
{
var go = col.gameObject;
if (!go.name.Contains("(Clone)") || go.name.ToLower().Contains("ground"))
continue;
Vector3 scale = go.transform.localScale;
Vector3 pos = go.transform.position;
elements.Add(new SerializableElement
{
type = go.name.Replace("(Clone)", ""),
x = Mathf.Round(pos.x * 100f) / 100f,
y = Mathf.Round(pos.y * 100f) / 100f,
scaleX = Mathf.Round(scale.x * 100f) / 100f,
scaleY = Mathf.Round(scale.y * 100f) / 100f,
rotationZ = Mathf.Round(go.transform.rotation.eulerAngles.z * 100f) / 100f
});
}
if (elements.Count == 0)
{
SetStatus("No elements to export.", Color.red);
yield break;
}
LevelData data = new LevelData
{
name = fileName,
musicName = "",
order = 0,
difficulty = difficultyToExport,
elements = elements.ToArray()
};
string json = JsonUtility.ToJson(data, prettyPrint: true);
try
{
File.WriteAllText(destPath, json);
SetStatus($"Export successful: {fileName}.json (diff {difficultyToExport})", Color.green);
}
catch (System.Exception e)
{
Debug.LogError("Export error: " + e);
SetStatus("Export error. See console.", Color.red);
yield break;
}
#if UNITY_EDITOR
string assetPath = Path.Combine(assetFolderPath, fileName + ".json");
AssetDatabase.ImportAsset(assetPath, ImportAssetOptions.ForceUpdate);
#endif
var loader = FindObjectOfType<LevelsLoader>();
loader?.RefreshLevels();
}
private void SetStatus(string message, Color color)
{
if (statusText == null) return;
statusText.text = message;
statusText.color = color;
statusText.gameObject.SetActive(false);
statusText.gameObject.SetActive(true);
Canvas.ForceUpdateCanvases();
}
[System.Serializable]
private class SerializableElement
{
public string type;
public float x, y, scaleX, scaleY, rotationZ;
}
[System.Serializable]
private class LevelData
{
public string name;
public string musicName;
public int order;
public int difficulty;
public SerializableElement[] elements;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d3227fe18f4441647bdd19d3131efa02

View File

@ -0,0 +1,153 @@
using UnityEngine;
using UnityEngine.UI;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using SimpleFileBrowser;
using TMPro;
[System.Serializable]
public class BlockData
{
public string prefabName;
public Vector3 position;
public float rotationZ;
public Vector3 scale;
}
[System.Serializable]
public class LevelData
{
public string levelName;
public List<BlockData> blocks = new List<BlockData>();
}
public class JSONLevelEditor : MonoBehaviour
{
[Header("UI")]
public TMP_Dropdown levelDropdown;
public Button loadButton;
public Button saveButton;
public TMP_Text statusText;
[Header("Editor")]
public Transform editRoot; // où on instancie les blocs
public List<GameObject> blockPrefabs; // à remplir dans linspecteur (mêmes noms que dans JSON)
private LevelData currentLevel;
private string currentJsonPath;
private void Start()
{
// Remplir la dropdown avec les JSON disponibles dans Resources/Levels
var assets = Resources.LoadAll<TextAsset>("Levels");
levelDropdown.options.Clear();
foreach (var txt in assets)
levelDropdown.options.Add(new TMP_Dropdown.OptionData(txt.name));
levelDropdown.RefreshShownValue();
loadButton.onClick.AddListener(OnLoadClicked);
saveButton.onClick.AddListener(OnSaveClicked);
UpdateStatus("Prêt.", Color.white);
}
private void OnLoadClicked()
{
string lvlName = levelDropdown.options[levelDropdown.value].text;
TextAsset json = Resources.Load<TextAsset>($"Levels/{lvlName}");
if (json == null)
{
UpdateStatus($"Niveau '{lvlName}' introuvable.", Color.red);
return;
}
currentJsonPath = Path.Combine(Application.dataPath, "Resources/Levels", lvlName + ".json");
currentLevel = JsonUtility.FromJson<LevelData>(json.text);
if (currentLevel == null)
{
UpdateStatus("Impossible de parser le JSON.", Color.red);
return;
}
ClearEditRoot();
foreach (var bd in currentLevel.blocks)
{
var prefab = blockPrefabs.Find(p => p.name == bd.prefabName);
if (prefab == null) continue;
var go = Instantiate(prefab, editRoot);
go.transform.localPosition = bd.position;
go.transform.localEulerAngles = new Vector3(0, 0, bd.rotationZ);
go.transform.localScale = bd.scale;
// vous pouvez ajouter un script pour manipuler ce 'go' dans léditeur
}
UpdateStatus($"Niveau '{lvlName}' chargé.", Color.green);
}
private void OnSaveClicked()
{
if (currentLevel == null)
{
UpdateStatus("Aucun niveau chargé.", Color.red);
return;
}
// Reconstruire le LevelData depuis les enfants de editRoot
currentLevel.blocks.Clear();
foreach (Transform child in editRoot)
{
var bd = new BlockData
{
prefabName = child.name.Replace("(Clone)", ""),
position = child.localPosition,
rotationZ = child.localEulerAngles.z,
scale = child.localScale
};
currentLevel.blocks.Add(bd);
}
// Demande path de sauvegarde
StartCoroutine(DoSaveDialog());
}
private IEnumerator DoSaveDialog()
{
yield return FileBrowser.WaitForSaveDialog(
FileBrowser.PickMode.Files, false, null, "json",
"Save JSON", "Save");
if (!FileBrowser.Success)
{
UpdateStatus("Sauvegarde annulée.", Color.red);
yield break;
}
string dest = FileBrowser.Result[0];
if (!dest.EndsWith(".json")) dest += ".json";
string jsonText = JsonUtility.ToJson(currentLevel, true);
try
{
File.WriteAllText(dest, jsonText);
UpdateStatus($"Sauvegardé : {dest}", Color.green);
}
catch (System.Exception e)
{
Debug.LogError(e);
UpdateStatus("Erreur lors de la sauvegarde.", Color.red);
}
}
private void ClearEditRoot()
{
for (int i = editRoot.childCount - 1; i >= 0; i--)
DestroyImmediate(editRoot.GetChild(i).gameObject);
}
private void UpdateStatus(string msg, Color col)
{
if (statusText == null) return;
statusText.text = msg;
statusText.color = col;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4a995a69086a0184d830aa300b3c2843

View File

@ -11,6 +11,7 @@ public class LevelElement
public float y; public float y;
public float scaleX = -1; public float scaleX = -1;
public float scaleY = -1; public float scaleY = -1;
public float rotationZ = 0;
} }
[System.Serializable] [System.Serializable]
@ -26,6 +27,7 @@ public class Level
public string name; public string name;
public string musicName; public string musicName;
public int order; public int order;
public int difficulty;
public List<LevelElement> elements; public List<LevelElement> elements;

View File

@ -1,14 +1,14 @@
using UnityEngine; using UnityEngine;
using UnityEngine.UI; using UnityEngine.UI;
using UnityEngine.EventSystems;
using System.Collections.Generic; using System.Collections.Generic;
public class LevelEditor : MonoBehaviour public class LevelEditor : MonoBehaviour
{ {
[Header("Placement")] [Header("Placement")]
public Transform mapParent;
private GameObject currentBlock; private GameObject currentBlock;
private bool isPlacingBlock = false; private bool isPlacingBlock = false;
private Vector3 currentScale = new Vector3(1f, 1f, 1); private Vector3 currentScale = Vector3.one;
private float scaleStep = 0.1f; private float scaleStep = 0.1f;
[Header("UI")] [Header("UI")]
@ -28,209 +28,395 @@ public class LevelEditor : MonoBehaviour
private enum ResizeAxis { None, Horizontal, Vertical } private enum ResizeAxis { None, Horizontal, Vertical }
private ResizeAxis currentResizeAxis = ResizeAxis.None; private ResizeAxis currentResizeAxis = ResizeAxis.None;
private Transform persistentBlockContainer;
void Start() void Start()
{ {
persistentBlockContainer = new GameObject("PlacedBlocks").transform;
DontDestroyOnLoad(persistentBlockContainer.gameObject);
LoadPrefabs(); LoadPrefabs();
GenerateButtons(); GenerateButtons();
} }
void Update()
{
if (IsPointerOverUI()) return;
if (isPlacingBlock && currentBlock != null)
HandleBlockPlacement();
else
HandleBlockSelection();
HandleBlockResizing();
HandleBlockDeletion();
}
void OnDestroy()
{
ClearEditor();
}
#region UI
void LoadPrefabs() void LoadPrefabs()
{ {
blockPrefabs.AddRange(Resources.LoadAll<GameObject>("Prefabs")); var all = Resources.LoadAll<GameObject>("Prefabs");
blockPrefabs.Clear();
foreach (var prefab in all)
{
var name = prefab.name.ToLower();
if (name == "ground" || name == "winnerwall") continue;
blockPrefabs.Add(prefab);
}
} }
void GenerateButtons() void GenerateButtons()
{ {
ClearCurrentButtons(); ClearCurrentButtons();
if (blockGroupContainer == null || buttonPrefabTemplate == null)
Transform container = blockGroupContainer; {
Debug.LogError("UI Container ou prefab manquant.");
return;
}
int start = currentPage * buttonsPerPage; int start = currentPage * buttonsPerPage;
int end = Mathf.Min(start + buttonsPerPage, blockPrefabs.Count); int end = Mathf.Min(start + buttonsPerPage, blockPrefabs.Count);
for (int i = start; i < end; i++) for (int i = start; i < end; i++)
{ {
GameObject button = Instantiate(buttonPrefabTemplate, container); var btn = Instantiate(buttonPrefabTemplate, blockGroupContainer);
button.SetActive(true); btn.SetActive(true);
SetupButtonVisual(btn.transform, blockPrefabs[i], i - start);
var prefab = blockPrefabs[i];
btn.GetComponent<Button>().onClick.AddListener(() => SelectPrefab(prefab));
currentButtons.Add(btn);
}
}
Transform canvas = button.transform.Find("Canvas"); void SetupButtonVisual(Transform t, GameObject prefab, int idx)
Transform bg = canvas?.Find("BlankSquare");
Transform icon = canvas?.Find("PrefabIcon");
if (bg == null || icon == null)
{ {
Destroy(button); var canvas = t.Find("Canvas");
continue; var bg = canvas?.Find("BlankSquare");
} var icon = canvas?.Find("PrefabIcon");
if (bg == null || icon == null) { Destroy(t.gameObject); return; }
float xOffset = -375f + (i - start) * 125f; float xOff = -325f + idx * 125f;
bg.GetComponent<RectTransform>().anchoredPosition = new Vector2(xOffset, bg.GetComponent<RectTransform>().anchoredPosition.y); var bgRt = bg.GetComponent<RectTransform>();
icon.GetComponent<RectTransform>().anchoredPosition = new Vector2(xOffset, icon.GetComponent<RectTransform>().anchoredPosition.y); var icRt = icon.GetComponent<RectTransform>();
bgRt.anchoredPosition = new Vector2(xOff, bgRt.anchoredPosition.y - 70);
Image bgImage = bg.GetComponent<Image>(); icRt.anchoredPosition = new Vector2(xOff, icRt.anchoredPosition.y - 70);
Image iconImage = icon.GetComponent<Image>(); bg.GetComponent<Image>().sprite = Resources.Load<Sprite>("InGame/ButtonSkin/BlankSquare");
icon.GetComponent<Image>().sprite = prefab.GetComponent<SpriteRenderer>()?.sprite;
bgImage.sprite = Resources.Load<Sprite>("InGame/ButtonSkin/BlankSquare"); icRt.sizeDelta = prefab.name.ToLower().Contains("small")
iconImage.sprite = blockPrefabs[i].GetComponent<SpriteRenderer>()?.sprite; ? new Vector2(50, 25)
: new Vector2(50, 50);
string prefabName = blockPrefabs[i].name.ToLower();
if (prefabName.Contains("smallspike") || prefabName.Contains("smallobstacle"))
{
icon.GetComponent<RectTransform>().sizeDelta = new Vector2(50, 25);
}
else
{
icon.GetComponent<RectTransform>().sizeDelta = new Vector2(50, 50);
}
GameObject prefab = blockPrefabs[i];
button.GetComponent<Button>().onClick.AddListener(() => SelectPrefab(prefab));
currentButtons.Add(button);
}
} }
void ClearCurrentButtons() void ClearCurrentButtons()
{ {
foreach (var button in currentButtons) foreach (var b in currentButtons) Destroy(b);
{
Destroy(button);
}
currentButtons.Clear(); currentButtons.Clear();
} }
public void NextPage() public void NextPage()
{ {
int maxPage = 3; int max = Mathf.CeilToInt(blockPrefabs.Count / (float)buttonsPerPage);
if (currentPage < maxPage - 1) if (currentPage < max - 1) { currentPage++; GenerateButtons(); }
{
currentPage++;
GenerateButtons();
}
} }
public void PreviousPage() public void PreviousPage()
{ {
if (currentPage > 0) if (currentPage > 0) { currentPage--; GenerateButtons(); }
{
currentPage--;
GenerateButtons();
}
} }
#endregion
#region Placement
void SelectPrefab(GameObject prefab) void SelectPrefab(GameObject prefab)
{ {
if (isPlacingBlock) if (isPlacingBlock) return;
{ currentScale = DetermineScaleFromName(prefab.name);
return;
}
string name = prefab.name.ToLower();
if (name.Contains("portal"))
{
currentScale = new Vector3(0.5f, 0.5f, 1);
}
else if (name.Contains("small"))
{
currentScale = new Vector3(0.15f, 0.07f, 1);
}
else if (name.Contains("spike"))
{
currentScale = new Vector3(0.15f, 0.15f, 1);
}
else if (name.Contains("block"))
{
currentScale = new Vector3(0.2f, 0.2f, 1);
}
else if (name.Contains("bonus"))
{
currentScale = new Vector3(0.3f, 0.3f, 1);
}
else
{
currentScale = new Vector3(1f, 1f, 1);
}
InstantiateAndPrepare(prefab, currentScale); InstantiateAndPrepare(prefab, currentScale);
} }
void Update() Vector3 DetermineScaleFromName(string name)
{ {
if (isPlacingBlock && currentBlock != null) name = name.ToLower();
{ if (name.Contains("portal")) return new Vector3(0.5f, 0.5f, 1);
Vector2 mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition); if (name.Contains("small")) return new Vector3(0.15f, 0.07f, 1);
currentBlock.transform.position = new Vector3(Mathf.Round(mousePos.x), Mathf.Round(mousePos.y), -1); if (name.Contains("spike")) return new Vector3(0.15f, 0.15f, 1);
if (name.Contains("block")) return new Vector3(0.2f, 0.2f, 1);
if (name.Contains("bonus")) return new Vector3(0.3f, 0.3f, 1);
return Vector3.one;
}
void HandleBlockPlacement()
{
Vector2 m = Camera.main.ScreenToWorldPoint(Input.mousePosition);
currentBlock.transform.position = new Vector3(Mathf.Round(m.x), Mathf.Round(m.y), -1);
if (Input.GetKeyDown(KeyCode.R)) HandleBlockRotation();
if (!currentBlock.name.ToLower().Contains("portal")) if (!currentBlock.name.ToLower().Contains("portal"))
{ {
float scroll = Input.GetAxis("Mouse ScrollWheel"); float s = Input.GetAxis("Mouse ScrollWheel");
if (scroll != 0) if (s != 0)
{ {
float newScale = Mathf.Max(0.1f, currentScale.x + scroll * scaleStep); float ns = Mathf.Max(0.1f, currentScale.x + s * scaleStep);
currentScale = new Vector3(newScale, newScale, 1); currentScale = Vector3.one * ns;
currentBlock.transform.localScale = currentScale; currentBlock.transform.localScale = currentScale;
} }
} }
if (Input.GetMouseButtonDown(0)) if (Input.GetMouseButtonDown(0))
{ {
Collider2D[] overlaps = Physics2D.OverlapBoxAll( if (!IsPlacementValid())
currentBlock.transform.position,
currentBlock.GetComponent<Collider2D>().bounds.size,
0f
);
if (overlaps.Length > 1)
{ {
return; return;
} }
PlaceBlock(); PlaceBlock();
} }
} }
if (Input.GetMouseButtonDown(0) && !isPlacingBlock) bool IsPlacementValid()
{ {
Vector2 mousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition); var col = currentBlock.GetComponent<Collider2D>();
Collider2D hit = Physics2D.OverlapPoint(mousePos); var hits = Physics2D.OverlapBoxAll(col.bounds.center, col.bounds.size, 0f);
foreach (var h in hits)
if (hit != null)
{ {
resizingTarget = hit.gameObject; if (h == col) continue;
originalMousePos = mousePos; if (h.transform.IsChildOf(currentBlock.transform)) continue;
originalScale = resizingTarget.transform.localScale; return false;
}
return true;
}
Vector2 localClick = mousePos - (Vector2)resizingTarget.transform.position; void HandleBlockSelection()
float ratio = resizingTarget.GetComponent<Collider2D>().bounds.size.x / {
resizingTarget.GetComponent<Collider2D>().bounds.size.y; if (!Input.GetMouseButtonDown(0)) return;
Vector2 m = Camera.main.ScreenToWorldPoint(Input.mousePosition);
var hit = Physics2D.OverlapPoint(m);
if (hit != null && !hit.CompareTag("Ground"))
{
var sel = hit.gameObject;
if ((sel.name.Contains("ObstacleSafer") || sel.name.Contains("ObstacleKiller"))
&& sel.transform.parent != null
&& sel.transform.parent.name.Contains("ObstacleBlock"))
sel = sel.transform.parent.gameObject;
currentBlock = sel;
isPlacingBlock = true;
currentScale = currentBlock.transform.localScale;
}
}
void PlaceBlock()
{
string name = currentBlock.name.ToLower();
bool isSpikeType = name.Contains("spike") || name.Contains("smallspike") || name.Contains("killzone");
currentResizeAxis = Mathf.Abs(localClick.x) > Mathf.Abs(localClick.y * ratio) if (isSpikeType)
{
if (IsBlockedBySameTypeInSnapDirection())
{
Debug.LogError("❌ Impossible de poser un spike sur un autre spike !");
Destroy(currentBlock);
}
else
{
if (!SnapSpikeByRotation())
{
Debug.LogError("❌ Impossible de poser un spike dans le vide !");
Destroy(currentBlock);
}
else
{
TrySnapToNearbyBlock();
}
}
}
else
{
TrySnapToNearbyBlock();
// 🔧 Réduction du collider du ObstacleKiller si cest un ObstacleBlock
if (name.Contains("obstacleblock"))
{
foreach (Transform child in currentBlock.transform)
{
if (child.name.ToLower().Contains("obstaclekiller"))
{
var col = child.GetComponent<BoxCollider2D>();
if (col != null)
{
Vector2 originalSize = col.size;
col.size = new Vector2(originalSize.x, 1f);
col.offset = new Vector2(col.offset.x, -0.5f);
Debug.Log($"✂️ Collider réduit pour {child.name} → {col.size}");
}
}
}
}
}
isPlacingBlock = false;
currentBlock = null;
}
bool IsBlockedBySameTypeInSnapDirection()
{
var col = currentBlock.GetComponent<Collider2D>();
var b = col.bounds;
int rot = (Mathf.RoundToInt(currentBlock.transform.eulerAngles.z / 90) % 4 + 4) % 4;
Vector2 dir = rot switch
{
1 => Vector2.right,
2 => Vector2.up,
3 => Vector2.left,
_ => Vector2.down
};
float offset = 0.01f;
Vector2 origin = rot switch
{
1 => new Vector2(b.min.x - offset, b.center.y), // left
3 => new Vector2(b.max.x + offset, b.center.y), // right
2 => new Vector2(b.center.x, b.max.y + offset), // top
_ => new Vector2(b.center.x, b.min.y - offset) // bottom
};
RaycastHit2D[] hits = Physics2D.BoxCastAll(
origin,
b.size,
0f,
dir,
100f
);
foreach (var h in hits)
{
if (h.collider == null || h.collider.gameObject == currentBlock) continue;
if (h.collider.isTrigger) continue;
string me = currentBlock.name.ToLower();
string other = h.collider.gameObject.name.ToLower();
bool meIsSpikeFamily = me.Contains("spike") || me.Contains("killzone");
bool otherIsSpikeFamily = other.Contains("spike") || other.Contains("killzone");
if (meIsSpikeFamily && otherIsSpikeFamily)
{
return true;
}
break;
}
return false;
}
bool SnapSpikeByRotation()
{
var col = currentBlock.GetComponent<Collider2D>();
var b = col.bounds;
float hw = b.extents.x;
float hh = b.extents.y;
int rot = ((Mathf.RoundToInt(currentBlock.transform.eulerAngles.z / 90f) % 4) + 4) % 4;
Vector2 dir;
switch (rot)
{
case 1: dir = Vector2.right; break;
case 2: dir = Vector2.up; break;
case 3: dir = Vector2.left; break;
default: dir = Vector2.down; break;
}
const float eps = 0.01f;
List<Vector2> origins = new List<Vector2>();
if (dir == Vector2.down || dir == Vector2.up)
{
float y0 = (dir == Vector2.down) ? b.min.y - eps : b.max.y + eps;
origins.Add(new Vector2(b.min.x + 0.1f * b.size.x, y0));
origins.Add(new Vector2(b.center.x, y0));
origins.Add(new Vector2(b.max.x - 0.1f * b.size.x, y0));
}
else
{
float x0 = (dir == Vector2.left) ? b.min.x - eps : b.max.x + eps;
origins.Add(new Vector2(x0, b.min.y + 0.1f * b.size.y));
origins.Add(new Vector2(x0, b.center.y));
origins.Add(new Vector2(x0, b.max.y - 0.1f * b.size.y));
}
float bestDist = float.PositiveInfinity;
RaycastHit2D bestHit = default;
foreach (var o in origins)
{
var hits = Physics2D.RaycastAll(o, dir, 100f);
foreach (var h in hits)
{
if (h.collider == null || h.collider.gameObject == currentBlock) continue;
if (h.collider.isTrigger) continue;
if (h.distance < bestDist)
{
bestDist = h.distance;
bestHit = h;
}
}
}
if (bestHit.collider == null)
return false;
Vector3 p = currentBlock.transform.position;
if (dir == Vector2.down) p.y = bestHit.point.y + hh;
else if (dir == Vector2.up) p.y = bestHit.point.y - hh;
else if (dir == Vector2.left) p.x = bestHit.point.x + hw;
else if (dir == Vector2.right) p.x = bestHit.point.x - hw;
currentBlock.transform.position = new Vector3(p.x, p.y, -1f);
return true;
}
#endregion
#region Resizing & Deletion
void HandleBlockResizing()
{
if (Input.GetMouseButtonDown(0) && Input.GetKey(KeyCode.LeftShift) && !isPlacingBlock)
{
Vector2 m = Camera.main.ScreenToWorldPoint(Input.mousePosition);
var hit = Physics2D.OverlapPoint(m);
if (hit != null && !hit.CompareTag("Ground"))
BeginResizing(hit.gameObject, m);
}
if (isResizing && resizingTarget != null)
PerformResizing();
}
void BeginResizing(GameObject tgt, Vector2 mPos)
{
resizingTarget = tgt;
originalMousePos = mPos;
originalScale = tgt.transform.localScale;
Vector2 local = mPos - (Vector2)tgt.transform.position;
float ratio = tgt.GetComponent<Collider2D>().bounds.size.x / tgt.GetComponent<Collider2D>().bounds.size.y;
currentResizeAxis = Mathf.Abs(local.x) > Mathf.Abs(local.y * ratio)
? ResizeAxis.Horizontal ? ResizeAxis.Horizontal
: ResizeAxis.Vertical; : ResizeAxis.Vertical;
isResizing = true; isResizing = true;
} }
}
if (isResizing && resizingTarget != null) void PerformResizing()
{ {
Vector3 currentMousePos = Camera.main.ScreenToWorldPoint(Input.mousePosition); Vector3 m = Camera.main.ScreenToWorldPoint(Input.mousePosition);
Vector3 delta = currentMousePos - originalMousePos; Vector3 delta = m - originalMousePos;
Vector3 ns = originalScale;
if (currentResizeAxis == ResizeAxis.Horizontal) if (currentResizeAxis == ResizeAxis.Horizontal)
ns.x = Mathf.Max(0.1f, originalScale.x + delta.x);
else
ns.y = Mathf.Max(0.1f, originalScale.y + delta.y);
resizingTarget.transform.localScale = ns;
if (IsOverlapping(resizingTarget))
{ {
float newScaleX = Mathf.Max(0.1f, originalScale.x + delta.x); resizingTarget.transform.localScale = originalScale;
resizingTarget.transform.localScale = new Vector3(newScaleX, originalScale.y, 1);
} }
else if (currentResizeAxis == ResizeAxis.Vertical)
{
float newScaleY = Mathf.Max(0.1f, originalScale.y + delta.y);
resizingTarget.transform.localScale = new Vector3(originalScale.x, newScaleY, 1);
}
if (Input.GetMouseButtonUp(0)) if (Input.GetMouseButtonUp(0))
{ {
isResizing = false; isResizing = false;
@ -238,30 +424,154 @@ public class LevelEditor : MonoBehaviour
currentResizeAxis = ResizeAxis.None; currentResizeAxis = ResizeAxis.None;
} }
} }
bool IsOverlapping(GameObject obj)
{
var b = obj.GetComponent<Collider2D>().bounds;
foreach (var h in Physics2D.OverlapBoxAll(b.center, b.size, 0f))
if (h.gameObject != obj) return true;
return false;
} }
void PlaceBlock() void HandleBlockDeletion()
{ {
isPlacingBlock = false; if (!Input.GetMouseButtonDown(1)) return;
currentBlock = null; Vector2 m = Camera.main.ScreenToWorldPoint(Input.mousePosition);
var hit = Physics2D.OverlapPoint(m);
if (hit != null && !hit.CompareTag("Ground"))
{
var toD = hit.gameObject;
if ((toD.name.Contains("ObstacleSafer") || toD.name.Contains("ObstacleKiller"))
&& toD.transform.parent != null
&& toD.transform.parent.name.Contains("ObstacleBlock"))
toD = toD.transform.parent.gameObject;
if (toD == currentBlock) { currentBlock = null; isPlacingBlock = false; }
Destroy(toD);
}
}
#endregion
#region Utility
bool IsPointerOverUI()
=> EventSystem.current != null && EventSystem.current.IsPointerOverGameObject();
void TrySnapToNearbyBlock()
{
if (currentBlock == null) return;
var col = currentBlock.GetComponent<Collider2D>();
var b = col.bounds;
float snapDistance = 2f;
float verticalEps = 0.1f;
// === SNAP HORIZONTAL (droite)
Vector2 hBoxSize = new Vector2(snapDistance, b.size.y - verticalEps * 2f);
Vector2 rightCenter = new Vector2(b.max.x + snapDistance / 2f, b.center.y);
var hits = Physics2D.OverlapBoxAll(rightCenter, hBoxSize, 0f);
foreach (var h in hits)
{
if (IsInvalidSnapTarget(h)) continue;
float newX = h.bounds.min.x - b.extents.x;
currentBlock.transform.position = new Vector3(newX, currentBlock.transform.position.y, -1f);
return;
}
// === SNAP HORIZONTAL (gauche)
Vector2 leftCenter = new Vector2(b.min.x - snapDistance / 2f, b.center.y);
hits = Physics2D.OverlapBoxAll(leftCenter, hBoxSize, 0f);
foreach (var h in hits)
{
if (IsInvalidSnapTarget(h)) continue;
float newX = h.bounds.max.x + b.extents.x;
currentBlock.transform.position = new Vector3(newX, currentBlock.transform.position.y, -1f);
return;
}
// === SNAP VERTICAL (dessous)
Vector2 downBoxSize = new Vector2(b.size.x - 0.1f, snapDistance);
Vector2 downCenter = new Vector2(b.center.x, b.min.y - snapDistance / 2f);
hits = Physics2D.OverlapBoxAll(downCenter, downBoxSize, 0f);
foreach (var h in hits)
{
if (IsInvalidSnapTarget(h)) continue;
float newY = h.bounds.max.y + b.extents.y;
currentBlock.transform.position = new Vector3(currentBlock.transform.position.x, newY, -1f);
return;
}
// === SNAP VERTICAL (au-dessus)
Vector2 upCenter = new Vector2(b.center.x, b.max.y + snapDistance / 2f);
hits = Physics2D.OverlapBoxAll(upCenter, downBoxSize, 0f);
foreach (var h in hits)
{
if (IsInvalidSnapTarget(h)) continue;
float newY = h.bounds.min.y - b.extents.y;
currentBlock.transform.position = new Vector3(currentBlock.transform.position.x, newY, -1f);
return;
}
}
bool IsInvalidSnapTarget(Collider2D h)
{
if (h == null || h.gameObject == currentBlock || h.isTrigger) return true;
var t = h.transform;
if (t.parent != null && t.parent.name.Contains("ObstacleBlock"))
{
if (t.name.Contains("ObstacleKiller") || t.name.Contains("ObstacleSafer"))
return true;
}
return false;
}
// Filtrage des enfants parasites
bool IsChildOfObstacleBlock(Collider2D col)
{
var t = col.transform;
if (t.parent == null) return false;
bool isNamedObstacleChild = t.name.Contains("ObstacleSafer") || t.name.Contains("ObstacleKiller");
bool parentIsBlock = t.parent.name.Contains("ObstacleBlock");
return isNamedObstacleChild && parentIsBlock;
}
void HandleBlockRotation()
{
currentBlock.transform.Rotate(0, 0, -90f);
} }
void InstantiateAndPrepare(GameObject prefab, Vector3? scaleOverride = null) void InstantiateAndPrepare(GameObject prefab, Vector3? scaleOverride = null)
{ {
GameObject obj = Instantiate(prefab); var obj = Instantiate(prefab, persistentBlockContainer);
obj.transform.position = new Vector3(0, 0, -1); obj.transform.position = new Vector3(0, 0, -1);
obj.transform.localScale = scaleOverride ?? currentScale; obj.transform.localScale = scaleOverride ?? currentScale;
if (mapParent != null)
{
obj.transform.SetParent(mapParent);
}
currentBlock = obj; currentBlock = obj;
currentBlock.tag = prefab.tag;
isPlacingBlock = true; isPlacingBlock = true;
} }
public void Save() public void Save()
{ {
} }
#endregion
public void ClearEditor()
{
if (persistentBlockContainer == null) return;
foreach (Transform child in persistentBlockContainer)
{
Destroy(child.gameObject);
}
currentBlock = null;
isPlacingBlock = false;
currentPage = 0;
ClearCurrentButtons();
GenerateButtons();
}
} }

View File

@ -5,29 +5,38 @@ using System.IO;
public class LevelLoader : MonoBehaviour public class LevelLoader : MonoBehaviour
{ {
public LevelsLoader levelsLoader; public LevelsLoader levelsLoader;
public AudioSource audioSource; public bool editMode;
public bool createMode;
public AudioSource musicSource;
public Text progressionText; public Text progressionText;
private readonly float groundY = -6.034f; private readonly float groundY = -6.034f;
private GameObject GetPrefab(string type) private GameObject GetPrefab(string type)
{ {
return Resources.Load<GameObject>("Prefabs/" + type); var prefab = Resources.Load<GameObject>("Prefabs/" + type);
if (prefab == null)
{
Debug.LogError($"Prefab introuvable pour : {type}");
}
return prefab;
} }
private void LoadAudio() private void LoadAudio()
{ {
audioSource.clip = Resources.Load<AudioClip>(Path.Combine("Musics", levelsLoader.levelCurrent.musicName)); musicSource.clip = Resources.Load<AudioClip>(Path.Combine("Musics", levelsLoader.levelCurrent.musicName));
if (editMode)
{
return;
}
if (PlayerPrefs.HasKey("Volume")) if (PlayerPrefs.HasKey("Volume"))
{ {
audioSource.volume = PlayerPrefs.GetFloat("Volume"); musicSource.volume = PlayerPrefs.GetFloat("Volume");
} }
else else
{ {
audioSource.volume = 1f; musicSource.volume = 1f;
} }
musicSource.Play();
audioSource.Play();
} }
private void LoadElements() private void LoadElements()
@ -36,35 +45,112 @@ public class LevelLoader : MonoBehaviour
foreach (var element in current.elements) foreach (var element in current.elements)
{ {
GameObject prefab = GetPrefab(element.type); GameObject prefab = GetPrefab(element.type);
GameObject instance = Instantiate(prefab, new Vector3(element.x, element.y, 0), Quaternion.identity); if (prefab == null) continue;
GameObject instance = Instantiate(
prefab,
new Vector3(element.x, element.y, 0),
Quaternion.identity
);
if (editMode)
{
foreach (Transform child in instance.transform)
{
if (child.name.Contains("ObstacleKiller"))
{
var col = child.GetComponent<BoxCollider2D>();
if (col != null && col.size.y > 2f) // Trop grand
{
Debug.LogWarning($"⚠️ Collider {child.name} trop grand, réduction appliquée.");
col.size = new Vector2(col.size.x, 1f);
col.offset = new Vector2(col.offset.x, -2f); // Ajuste selon ton design
}
}
}
}
// En mode jeu/test uniquement → ajout du AICollider
if (!editMode)
{
Instantiate(
Resources.Load<GameObject>("AICollider"),
new Vector3(element.x - 1, element.y, 0),
Quaternion.identity
);
}
// Appliquer l'échelle personnalisée
Vector3 originalScale = instance.transform.localScale; Vector3 originalScale = instance.transform.localScale;
float newScaleX = element.scaleX > 0 ? element.scaleX : originalScale.x; float newScaleX = element.scaleX > 0 ? element.scaleX : originalScale.x;
float newScaleY = element.scaleY > 0 ? element.scaleY : originalScale.y; float newScaleY = element.scaleY > 0 ? element.scaleY : originalScale.y;
instance.transform.localScale = new Vector3(newScaleX, newScaleY, originalScale.z); instance.transform.localScale = new Vector3(newScaleX, newScaleY, originalScale.z);
// Appliquer la rotation
if (element.rotationZ != 0)
{
instance.transform.rotation = Quaternion.Euler(0, 0, element.rotationZ);
}
} }
// Sol uniquement en mode jeu
if (!editMode)
{
GameObject groundPrefab = GetPrefab("Ground");
if (groundPrefab != null)
{
GameObject groundInstance = Instantiate(
groundPrefab,
new Vector3(current.LastX / 2, groundY, 0),
Quaternion.identity
);
groundInstance.transform.localScale = new Vector3(current.LastX / 5f * 2, 1, 1);
}
GameObject winWall = GetPrefab("WinnerWall");
Instantiate(
winWall,
new Vector3(current.LastX, 0, 0),
Quaternion.Euler(0, 0, 90)
);
}
}
private void Awake()
{
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
Level current = levelsLoader.levelCurrent;
createMode = PlayerPrefs.GetInt("CreateMode", 0) == 1;
if (!editMode)
{
GameObject groundPrefab = GetPrefab("Ground"); GameObject groundPrefab = GetPrefab("Ground");
GameObject groundInstance = Instantiate(groundPrefab, new Vector3(current.LastX / 2, groundY, 0), Quaternion.identity); GameObject groundInstance = Instantiate(groundPrefab, new Vector3(current.LastX / 2, groundY, 0), Quaternion.identity);
float groundWidth = current.LastX; float groundWidth = current.LastX;
groundInstance.transform.localScale = new Vector3(groundWidth / 5f * 2, 1, 1); groundInstance.transform.localScale = new Vector3(groundWidth / 5f * 2, 1, 1);
Instantiate(GetPrefab("WinnerWall"), new Vector3(current.LastX, 0, 0), Quaternion.Euler(0, 0, 90)); Instantiate(GetPrefab("WinnerWall"), new Vector3(current.LastX, 0, 0), Quaternion.Euler(0, 0, 90));
} }
}
public void Start() public void Start()
{ {
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>(); if (!createMode)
{
levelsLoader = GameObject
.FindGameObjectWithTag("LevelsLoader")
.GetComponent<LevelsLoader>();
levelsLoader.IncreaseTotalAttempts(); levelsLoader.IncreaseTotalAttempts();
LoadAudio();
LoadElements(); LoadElements();
LoadAudio();
}
} }
public void Update() public void Update()
{ {
Level current = levelsLoader.levelCurrent; if (!editMode)
progressionText.text = current.ProgressionPercent + "%"; {
progressionText.text = levelsLoader.levelCurrent.ProgressionPercent + "%";
}
} }
} }

View File

@ -18,46 +18,42 @@ public class LevelsLoader : MonoBehaviour
private void LoadAllLevels() private void LoadAllLevels()
{ {
TextAsset[] levelFiles = Resources.LoadAll<TextAsset>("Levels"); TextAsset[] levelFiles = Resources.LoadAll<TextAsset>("Levels");
TextAsset[] levelStatsFiles = Resources.LoadAll<TextAsset>("LevelsStats");
Dictionary<string, LevelStat> levelStatsMap = new();
foreach (TextAsset jsonTextFileStats in levelStatsFiles)
{
LevelStat levelStat = LevelStat.CreateFromJSON(jsonTextFileStats.text);
levelStat.JsonName = jsonTextFileStats.name;
levelStatsMap[levelStat.JsonName] = levelStat;
}
foreach (TextAsset jsonTextFile in levelFiles) foreach (TextAsset jsonTextFile in levelFiles)
{ {
Level level = Level.CreateFromJSON(jsonTextFile.text); Level level = Level.CreateFromJSON(jsonTextFile.text);
level.JsonName = jsonTextFile.name; level.JsonName = jsonTextFile.name;
level.TotalAttempts = 0;
level.TotalJumps = 0;
level.ProgressionPercent = 0;
level.ProgressionPercentMax = 0;
if (levelStatsMap.TryGetValue(level.JsonName, out LevelStat levelStat)) string statPath = Path.Combine(Application.persistentDataPath, level.JsonName + ".json");
if (File.Exists(statPath))
{ {
string statJson = File.ReadAllText(statPath);
LevelStat levelStat = JsonUtility.FromJson<LevelStat>(statJson);
level.TotalAttempts = levelStat.totalAttempts; level.TotalAttempts = levelStat.totalAttempts;
level.TotalJumps = levelStat.totalJumps; level.TotalJumps = levelStat.totalJumps;
level.ProgressionPercentMax = levelStat.progressionPercent; level.ProgressionPercentMax = levelStat.progressionPercent;
} }
else else
{ {
levelStat = new LevelStat { JsonName = level.JsonName, totalJumps = 0, totalAttempts = 0 }; level.TotalAttempts = 0;
levelStatsMap[level.JsonName] = levelStat; level.TotalJumps = 0;
level.ProgressionPercentMax = 0;
} }
level.ProgressionPercent = 0;
levels.Add(level); levels.Add(level);
} }
levels.Sort((x, y) => x.order.CompareTo(y.order)); levels.Sort((x, y) => x.order.CompareTo(y.order));
} }
private void SaveLevelCurrent() private void SaveLevelCurrent()
{ {
string levelJson = JsonUtility.ToJson(levelCurrent, true) + "\n"; if (levelCurrent == null)
File.WriteAllText(Path.Combine(Application.dataPath, "Resources", "Levels", levelCurrent.JsonName + ".json"), levelJson); {
return;
}
LevelStat levelStat = new() LevelStat levelStat = new()
{ {
@ -66,39 +62,69 @@ public class LevelsLoader : MonoBehaviour
totalAttempts = levelCurrent.TotalAttempts, totalAttempts = levelCurrent.TotalAttempts,
progressionPercent = levelCurrent.ProgressionPercentMax, progressionPercent = levelCurrent.ProgressionPercentMax,
}; };
string levelStatJson = JsonUtility.ToJson(levelStat, true) + "\n"; string levelStatJson = JsonUtility.ToJson(levelStat, true) + "\n";
File.WriteAllText(Path.Combine(Application.dataPath, "Resources", "LevelsStats", levelCurrent.JsonName + ".json"), levelStatJson);
string savePath = Path.Combine(Application.persistentDataPath, levelCurrent.JsonName + ".json");
File.WriteAllText(savePath, levelStatJson);
} }
public void NextLevel() public void NextLevel()
{ {
if (levels.Count == 0)
{
return;
}
int currentIndex = levels.IndexOf(levelCurrent); int currentIndex = levels.IndexOf(levelCurrent);
levelCurrent = levels[(currentIndex + 1) % levels.Count]; levelCurrent = levels[(currentIndex + 1) % levels.Count];
} }
public void PreviousLevel() public void PreviousLevel()
{ {
if (levels.Count == 0)
{
return;
}
int currentIndex = levels.IndexOf(levelCurrent); int currentIndex = levels.IndexOf(levelCurrent);
levelCurrent = levels[(currentIndex - 1 + levels.Count) % levels.Count]; levelCurrent = levels[(currentIndex - 1 + levels.Count) % levels.Count];
} }
public void IncreaseTotalJumps() public void IncreaseTotalJumps()
{ {
if (levelCurrent == null)
{
return;
}
levelCurrent.TotalJumps += 1; levelCurrent.TotalJumps += 1;
SaveLevelCurrent(); SaveLevelCurrent();
} }
public void IncreaseTotalAttempts() public void IncreaseTotalAttempts()
{ {
if (levelCurrent == null)
{
return;
}
levelCurrent.TotalAttempts += 1; levelCurrent.TotalAttempts += 1;
SaveLevelCurrent(); SaveLevelCurrent();
} }
public int CalculateCurrentProgressionPercent(Vector3 playerPosition) public int CalculateCurrentProgressionPercent(Vector3 playerPosition)
{ {
if (levelCurrent == null)
{
return 0;
}
float lastX = levelCurrent.LastX; float lastX = levelCurrent.LastX;
GameObject winnerWallPrefab = Resources.Load<GameObject>("Prefabs/WinnerWall"); GameObject winnerWallPrefab = Resources.Load<GameObject>("Prefabs/WinnerWall");
float winnerWallWidth = winnerWallPrefab.GetComponent<Renderer>().bounds.size.x; float winnerWallWidth = winnerWallPrefab != null
? winnerWallPrefab.GetComponent<Renderer>().bounds.size.x
: 0f;
float marginError = 0.5f; float marginError = 0.5f;
float totalDistance = lastX - (winnerWallWidth / 2) - marginError; float totalDistance = lastX - (winnerWallWidth / 2) - marginError;
@ -117,6 +143,8 @@ public class LevelsLoader : MonoBehaviour
levels.Clear(); levels.Clear();
LoadAllLevels(); LoadAllLevels();
if (levels.Count > 0) if (levels.Count > 0)
{
levelCurrent = levels[0]; levelCurrent = levels[0];
} }
} }
}

View File

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 588b3f9ce673f764b8a3a81842ed9f46
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,10 +1,26 @@
using System.Collections;
using System.IO;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
public class LevelHomeButton : MonoBehaviour public class LevelHomeButton : MonoBehaviour
{ {
public AudioSource sfxSource;
public static IEnumerator PlaySoundAndLoadScene(AudioSource sfxSource, string scene)
{
yield return new WaitWhile(() => sfxSource.isPlaying);
Time.timeScale = 1;
SceneManager.LoadScene(scene);
}
public void GoToHome() public void GoToHome()
{ {
SceneManager.LoadScene("HomeScene"); PlayerPrefs.SetInt("CreateMode", 0);
PlayerPrefs.SetInt("EditMode", 0);
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(PlaySoundAndLoadScene(sfxSource, "HomeScene"));
} }
} }

View File

@ -7,4 +7,9 @@ public class LevelNameButton : MonoBehaviour
{ {
SceneManager.LoadScene("LevelScene"); SceneManager.LoadScene("LevelScene");
} }
public void EditLevel()
{
PlayerPrefs.SetInt("CreateMode", 0);
SceneManager.LoadScene("LevelEditorScene");
}
} }

View File

@ -1,7 +1,9 @@
using System.IO;
using UnityEngine; using UnityEngine;
public class LevelNextButton : MonoBehaviour public class LevelNextButton : MonoBehaviour
{ {
public AudioSource sfxSource;
public LevelsLoader levelsLoader; public LevelsLoader levelsLoader;
public void Start() public void Start()
@ -9,8 +11,18 @@ public class LevelNextButton : MonoBehaviour
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>(); levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
} }
public void Update()
{
if (Input.GetKeyDown(KeyCode.RightArrow))
{
NextLevel();
}
}
public void NextLevel() public void NextLevel()
{ {
levelsLoader.NextLevel(); levelsLoader.NextLevel();
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
} }
} }

View File

@ -1,7 +1,9 @@
using System.IO;
using UnityEngine; using UnityEngine;
public class LevelPreviousButton : MonoBehaviour public class LevelPreviousButton : MonoBehaviour
{ {
public AudioSource sfxSource;
public LevelsLoader levelsLoader; public LevelsLoader levelsLoader;
public void Start() public void Start()
@ -9,8 +11,18 @@ public class LevelPreviousButton : MonoBehaviour
levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>(); levelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
} }
public void Update()
{
if (Input.GetKeyDown(KeyCode.LeftArrow))
{
PreviousLevel();
}
}
public void PreviousLevel() public void PreviousLevel()
{ {
levelsLoader.PreviousLevel(); levelsLoader.PreviousLevel();
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
} }
} }

View File

@ -1,16 +1,25 @@
using System.IO;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
public class MainMenu : MonoBehaviour public class MainMenu : MonoBehaviour
{ {
public AudioSource sfxSource;
public void LaunchGame() public void LaunchGame()
{ {
SceneManager.LoadSceneAsync("SelectLevelScene"); sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelScene"));
} }
public void OpenImport() public void OpenImport()
{ {
SceneManager.LoadSceneAsync("ImportScene"); sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "ImportScene"));
} }
public void QuitGame() public void QuitGame()
@ -18,13 +27,36 @@ public class MainMenu : MonoBehaviour
Application.Quit(); Application.Quit();
} }
public void EditorChoice() public void LevelEditor()
{ {
SceneManager.LoadSceneAsync("EditorChoiceScene"); sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "LevelEditorScene"));
} }
public void CreateLevel() public void CreateVoidLevel()
{ {
SceneManager.LoadSceneAsync("CreateLevelScene"); PlayerPrefs.SetInt("CreateMode", 1);
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "LevelEditorScene"));
}
public void EditorChoice()
{
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "EditorChoiceScene"));
}
public void EditLevel()
{
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelToEditScene"));
} }
} }

View File

@ -1,3 +1,4 @@
using System.IO;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
using UnityEngine.UI; using UnityEngine.UI;
@ -7,32 +8,36 @@ public class PauseMenu : MonoBehaviour
public GameObject pauseMenu; public GameObject pauseMenu;
public GameObject pauseButton; public GameObject pauseButton;
public LevelLoader levelLoader; public LevelLoader levelLoader;
public AudioSource sfxSource;
public Slider volumeSlider; public Slider volumeSlider;
public void Start() public void Start()
{ {
if (PlayerPrefs.HasKey("Volume")) if (PlayerPrefs.HasKey("Volume"))
{ {
levelLoader.audioSource.volume = PlayerPrefs.GetFloat("Volume"); levelLoader.musicSource.volume = PlayerPrefs.GetFloat("Volume");
volumeSlider.value = levelLoader.audioSource.volume; volumeSlider.value = levelLoader.musicSource.volume;
} }
else else
{ {
levelLoader.audioSource.volume = 1f; levelLoader.musicSource.volume = 1f;
volumeSlider.value = 1f; volumeSlider.value = 1f;
} }
} }
public void ChangeVolume() public void ChangeVolume()
{ {
levelLoader.audioSource.volume = volumeSlider.value; levelLoader.musicSource.volume = volumeSlider.value;
PlayerPrefs.SetFloat("Volume", levelLoader.audioSource.volume); PlayerPrefs.SetFloat("Volume", levelLoader.musicSource.volume);
} }
public void Pause() public void Pause()
{ {
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
Time.timeScale = 0; Time.timeScale = 0;
levelLoader.audioSource.Pause(); levelLoader.musicSource.Pause();
pauseMenu.SetActive(true); pauseMenu.SetActive(true);
pauseButton.SetActive(false); pauseButton.SetActive(false);
@ -41,13 +46,19 @@ public class PauseMenu : MonoBehaviour
public void Home() public void Home()
{ {
Time.timeScale = 1; Time.timeScale = 1;
SceneManager.LoadScene("HomeScene"); sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "HomeScene"));
} }
public void Resume() public void Resume()
{ {
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "click"));
sfxSource.Play();
Time.timeScale = 1; Time.timeScale = 1;
levelLoader.audioSource.Play(); levelLoader.musicSource.Play();
pauseMenu.SetActive(false); pauseMenu.SetActive(false);
pauseButton.SetActive(true); pauseButton.SetActive(true);

View File

@ -1,3 +1,4 @@
using System.IO;
using UnityEngine; using UnityEngine;
using UnityEngine.SceneManagement; using UnityEngine.SceneManagement;
@ -6,9 +7,14 @@ public class Player : MonoBehaviour
public Rigidbody2D RigidBody { get; private set; } public Rigidbody2D RigidBody { get; private set; }
public Transform Transform { get; private set; } public Transform Transform { get; private set; }
public ParticleSystem Particle { get; private set; } public ParticleSystem Particle { get; private set; }
public LevelsLoader LevelsLoader { get; private set; } public LevelsLoader LevelsLoader { get; set; }
public SpriteRenderer SpriteRenderer { get; private set; } public SpriteRenderer SpriteRenderer { get; private set; }
public bool IsColliding { get; set; } = true; public bool IsColliding { get; set; } = true;
public bool HasStarted { get; set; } = false;
public bool CanJump { get; set; } = true;
public PauseMenu pauseMenu;
public AudioSource sfxSource;
public bool editMode { get; set; } = false;
public IGameMode CurrentGameMode { get; set; } public IGameMode CurrentGameMode { get; set; }
public float SpeedMultiplier = 1f; public float SpeedMultiplier = 1f;
@ -19,7 +25,16 @@ public class Player : MonoBehaviour
Transform = transform; Transform = transform;
Particle = GetComponentInChildren<ParticleSystem>(); Particle = GetComponentInChildren<ParticleSystem>();
SpriteRenderer = GetComponentInChildren<SpriteRenderer>(); SpriteRenderer = GetComponentInChildren<SpriteRenderer>();
LevelsLoader = GameObject.FindGameObjectWithTag("LevelsLoader").GetComponent<LevelsLoader>();
GameObject loaderObj = GameObject.FindGameObjectWithTag("LevelsLoader");
if (loaderObj != null)
{
LevelsLoader = loaderObj.GetComponent<LevelsLoader>();
}
else
{
Debug.LogWarning("LevelsLoader introuvable : Progression désactivée pour ce niveau.");
}
} }
public void Start() public void Start()
@ -31,23 +46,88 @@ public class Player : MonoBehaviour
CurrentGameMode = new NormalGameMode(); CurrentGameMode = new NormalGameMode();
} }
public bool IsAI
{
get
{
if (PlayerPrefs.HasKey("AI"))
{
return PlayerPrefs.GetInt("AI") == 1;
}
else
{
return false;
}
}
set
{
PlayerPrefs.SetInt("AI", value ? 1 : 0);
}
}
public void Update() public void Update()
{ {
CurrentGameMode.Update(this); CurrentGameMode?.Update(this);
if (LevelsLoader != null)
{
LevelsLoader.CalculateCurrentProgressionPercent(transform.position); LevelsLoader.CalculateCurrentProgressionPercent(transform.position);
} }
public void OnCollisionEnter2D(Collision2D collision) if (Input.GetKeyDown(KeyCode.Escape))
{ {
CurrentGameMode.OnCollisionEnter(this, collision); if (pauseMenu.pauseMenu.activeSelf)
{
pauseMenu.Resume();
}
else
{
pauseMenu.Pause();
}
}
}
public virtual void OnCollisionEnter2D(Collision2D collision)
{
CurrentGameMode?.OnCollisionEnter(this, collision);
if (editMode && (collision.gameObject.CompareTag("Kill") || collision.gameObject.CompareTag("Win")))
{
GameObject spawn = new GameObject("AutoSpawnPoint");
spawn.transform.position = new Vector3(-16, -3, 0f);
transform.position = spawn.transform.position;
RigidBody.linearVelocity = Vector2.zero;
SpeedMultiplier = 1f;
CurrentGameMode = new NormalGameMode();
SpriteRenderer.sprite = Resources.Load<Sprite>("Shapes/BaseSquare");
return;
}
if (collision.gameObject.CompareTag("Kill"))
{
SpriteRenderer.sprite = Resources.Load<Sprite>("Shapes/Explosion");
Time.timeScale = 0;
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "death"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, SceneManager.GetActiveScene().name));
}
if (collision.gameObject.CompareTag("Win"))
{
SpriteRenderer.sprite = Resources.Load<Sprite>("Shapes/Explosion");
Time.timeScale = 0;
sfxSource.clip = Resources.Load<AudioClip>(Path.Combine("Sounds", "win"));
sfxSource.Play();
StartCoroutine(LevelHomeButton.PlaySoundAndLoadScene(sfxSource, "SelectLevelScene"));
}
} }
public void OnCollisionExit2D(Collision2D collision) public void OnCollisionExit2D(Collision2D collision)
{ {
CurrentGameMode.OnCollisionExit(this, collision); CurrentGameMode?.OnCollisionExit(this, collision);
} }
private void OnTriggerEnter2D(Collider2D collision) public virtual void OnTriggerEnter2D(Collider2D collision)
{ {
if (collision.CompareTag("ShipPortal")) if (collision.CompareTag("ShipPortal"))
{ {
@ -69,6 +149,10 @@ public class Player : MonoBehaviour
SpeedMultiplier /= 1.5f; SpeedMultiplier /= 1.5f;
Destroy(collision.gameObject); Destroy(collision.gameObject);
} }
else if (collision.CompareTag("AICollider") && IsAI)
{
CurrentGameMode.Jump(this);
}
} }
public void ChangeGameMode(IGameMode newMode) public void ChangeGameMode(IGameMode newMode)

View File

@ -8,6 +8,9 @@ public class PlayerCamera : MonoBehaviour
public float smoothSpeed = 5.0f; public float smoothSpeed = 5.0f;
private float initialY; private float initialY;
[Header("References")]
public bool isPlaying;
private void Start() private void Start()
{ {
initialY = transform.position.y; initialY = transform.position.y;
@ -15,22 +18,29 @@ public class PlayerCamera : MonoBehaviour
private void Update() private void Update()
{ {
if (!isPlaying) return;
Player player = playerObject.GetComponent<Player>(); Player player = playerObject.GetComponent<Player>();
float minYFollow = normalMinYFollow; // Choix du minY selon le mode de jeu
if (player.CurrentGameMode is ShipGameMode) float minYFollow = (player.CurrentGameMode is ShipGameMode)
{ ? shipMinYFollow
minYFollow = shipMinYFollow; : normalMinYFollow;
}
// Calcul de la cible Y
float targetY = initialY; float targetY = initialY;
if (playerObject.transform.position.y > minYFollow) if (playerObject.transform.position.y > minYFollow)
{
targetY = playerObject.transform.position.y; targetY = playerObject.transform.position.y;
}
// Interpolation douce
float newY = Mathf.Lerp(transform.position.y, targetY, smoothSpeed * Time.deltaTime); float newY = Mathf.Lerp(transform.position.y, targetY, smoothSpeed * Time.deltaTime);
transform.position = new Vector3(playerObject.transform.position.x, newY, transform.position.z); // Clamp pour éviter de descendre sous Y = 0
newY = Mathf.Max(newY, 0f);
// On suit aussi l'axe X du joueur
float newX = playerObject.transform.position.x;
transform.position = new Vector3(newX, newY, transform.position.z);
} }
} }

View File

@ -0,0 +1,74 @@
using UnityEngine;
using UnityEngine.UI;
public class SelectDifficulty : MonoBehaviour
{
public GameObject selectDifficultyPanel;
public GameObject mainSaveButton;
public StarsRenderer starsRenderer;
public JSONExporter jsonExporter;
private int currentDifficulty;
private const int MinDiff = 1;
private const int MaxDiff = 5;
void Awake()
{
if (selectDifficultyPanel == null)
{
selectDifficultyPanel = GameObject.Find("SelectDifficultyPanel");
}
if (mainSaveButton == null)
{
mainSaveButton = GameObject.Find("MainSaveButton");
}
}
void Start()
{
currentDifficulty = starsRenderer != null
? starsRenderer.GetCurrentDifficulty()
: MinDiff;
currentDifficulty = Mathf.Clamp(currentDifficulty, MinDiff, MaxDiff);
UpdateUI();
}
private void UpdateUI()
{
starsRenderer.UseAutomaticMode();
starsRenderer?.SetManualDifficulty(currentDifficulty);
}
public void OpenSelectDifficulty()
{
selectDifficultyPanel.SetActive(true);
mainSaveButton.SetActive(false);
UpdateUI();
}
public void PreviousDifficulty()
{
if (currentDifficulty > MinDiff)
{
currentDifficulty--;
UpdateUI();
}
}
public void NextDifficulty()
{
if (currentDifficulty < MaxDiff)
{
currentDifficulty++;
UpdateUI();
}
}
public void Cancel()
{
selectDifficultyPanel.SetActive(false);
mainSaveButton.SetActive(true);
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: c9aabd0c1803d3d46b76d6bbfcc0f471

View File

@ -0,0 +1,96 @@
using UnityEngine;
using UnityEngine.UI;
public class StarsRenderer : MonoBehaviour
{
public Image starTemplate;
public RectTransform starsContainer;
public LevelsLoader levelsLoader;
public float extraPadding = 10f;
private bool useManualMode = false;
private int manualDifficulty = 1;
private float starSpacing;
private int lastRenderedDifficulty = -1;
void Start()
{
if (starTemplate == null || starsContainer == null)
{
Debug.LogError("Star template ou starsContainer non assigné !", this);
enabled = false;
return;
}
starTemplate.gameObject.SetActive(false);
if (levelsLoader == null)
{
var loaderObj = GameObject.FindGameObjectWithTag("LevelsLoader");
if (loaderObj != null)
levelsLoader = loaderObj.GetComponent<LevelsLoader>();
}
starSpacing = starTemplate.rectTransform.sizeDelta.x + extraPadding;
lastRenderedDifficulty = -1;
}
void Update()
{
int target = GetCurrentDifficulty();
if (target != lastRenderedDifficulty)
RenderStarsInternal(target);
}
public void SetManualDifficulty(int difficulty)
{
useManualMode = true;
manualDifficulty = Mathf.Clamp(difficulty, 1, 5);
lastRenderedDifficulty = -1;
RenderStarsInternal(manualDifficulty);
}
public void UseAutomaticMode()
{
useManualMode = false;
lastRenderedDifficulty = -1;
}
public int GetCurrentDifficulty()
{
if (useManualMode)
return manualDifficulty;
if (levelsLoader != null && levelsLoader.levelCurrent != null)
return Mathf.Clamp(levelsLoader.levelCurrent.difficulty, 1, 5);
return 1;
}
private void RenderStarsInternal(int difficulty)
{
for (int i = starsContainer.childCount - 1; i >= 0; i--)
{
var child = starsContainer.GetChild(i);
if (child.gameObject != starTemplate.gameObject)
Destroy(child.gameObject);
}
lastRenderedDifficulty = difficulty;
float totalWidth = difficulty * starSpacing - extraPadding;
float startX = -totalWidth / 2 + starTemplate.rectTransform.sizeDelta.x / 2;
for (int i = 0; i < difficulty; i++)
{
var star = Instantiate(starTemplate, starsContainer);
star.gameObject.SetActive(true);
star.rectTransform.anchoredPosition = new Vector2(startX + i * starSpacing, 0f);
star.rectTransform.SetAsLastSibling();
}
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 443f905013127a44f9c3dcf5a8fed74b

View File

@ -0,0 +1,129 @@
using UnityEngine;
public class TestManager : MonoBehaviour
{
[Header("References")]
public IGameMode gameMode;
public Player currentPlayer;
public Transform spawnPoint;
public GameObject editorUI;
public PlayerCamera playerCamera;
public AudioSource sfxSource;
private bool isTesting = false;
void Start()
{
if (spawnPoint == null)
{
GameObject spawn = new GameObject("AutoSpawnPoint");
spawn.transform.position = new Vector3(-16, -3, 0f);
spawnPoint = spawn.transform;
}
if (currentPlayer == null)
{
Debug.LogError("[TestManager] Aucun Player assigné !");
}
else
{
gameMode = new NormalGameMode();
currentPlayer.editMode = true;
currentPlayer.ChangeGameMode(gameMode);
currentPlayer.SpeedMultiplier = 0f;
if (currentPlayer.SpriteRenderer != null)
currentPlayer.SpriteRenderer.enabled = false;
if (currentPlayer.Particle != null)
currentPlayer.Particle.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear); // 🛑 Stop propre
}
if (playerCamera != null)
{
playerCamera.isPlaying = false;
}
}
void Update()
{
if (isTesting && currentPlayer == null)
{
StopTest();
}
}
public void StartOrStop()
{
if (isTesting)
StopTest();
else
StartTest();
}
public void StartTest()
{
if (currentPlayer == null)
{
Debug.LogError("[TestManager] Player manquant pour lancer le test !");
return;
}
if (editorUI != null)
{
Debug.LogError("editor UI null");
editorUI.SetActive(false);
}
currentPlayer.transform.position = spawnPoint.position;
currentPlayer.transform.rotation = Quaternion.Euler(0f, 0f, 0f);
currentPlayer.RigidBody.freezeRotation = true;
currentPlayer.RigidBody.linearVelocity = Vector2.zero;
currentPlayer.SpeedMultiplier = 1f;
currentPlayer.ChangeGameMode(gameMode);
isTesting = true;
if (playerCamera != null)
{
playerCamera.playerObject = currentPlayer.gameObject;
playerCamera.isPlaying = true;
}
if (currentPlayer.SpriteRenderer != null)
currentPlayer.SpriteRenderer.enabled = true;
if (currentPlayer.Particle != null)
currentPlayer.Particle.Play();
}
public void StopTest()
{
if (currentPlayer != null)
{
currentPlayer.transform.position = spawnPoint.position;
currentPlayer.RigidBody.linearVelocity = Vector2.zero;
currentPlayer.RigidBody.angularVelocity = 0f;
currentPlayer.transform.rotation = Quaternion.identity;
currentPlayer.SpriteRenderer.sprite = Resources.Load<Sprite>("Shapes/BaseSquare");
currentPlayer.SpeedMultiplier = 0f;
if (currentPlayer.Particle != null)
currentPlayer.Particle.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear);
if (currentPlayer.SpriteRenderer != null)
currentPlayer.SpriteRenderer.enabled = false;
}
if (editorUI != null)
editorUI.SetActive(true);
if (playerCamera != null)
{
playerCamera.isPlaying = false;
playerCamera.transform.position = new Vector3(0f, 0f, -10f);
}
isTesting = false;
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 2c6d38f8c53ec314c9827a842e6f17d8

Binary file not shown.

After

Width:  |  Height:  |  Size: 353 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 702 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 616 KiB

View File

@ -8,11 +8,11 @@ repeat
if (Le joueur percute un obstacle ?) then (Oui) if (Le joueur percute un obstacle ?) then (Oui)
:Le joueur meurt; :Le joueur meurt;
:Augmenter le nombre d'essais de 1; :Augmenter le nombre d'essais de 1;
:Perdre toutes les pièces et bonus; :Perdre toutes les bonus;
else (Non) else (Non)
partition "Actions du joueur" { partition "Actions du joueur" {
group Saut group Saut
if (L'utilisateur clique sur l'écran ?) then (Oui) if (L'utilisateur appuie sur espace ?) then (Oui)
:Le joueur effectue un saut; :Le joueur effectue un saut;
endif endif
end group end group
@ -27,15 +27,15 @@ repeat
end group end group
endif endif
if (Le joueur clique sur un bonus dans son inventaire ?) then (Oui) if (Le joueur percute un bonus ?) then (Oui)
group Activation de Bonus group Activation de Bonus
:Le joueur clique sur un bonus dans l'inventaire; :Le joueur clique sur un bonus dans l'inventaire;
switch (Type de bonus) switch (Type de bonus)
case (Temps ralenti) case (Temps ralenti)
:Activer ralentissement du temps; :Activer ralentissement du temps;
:Temps ralenti : 3 secondes; :Durée : 3 secondes;
case (Annulation d'obstacle) case (Temps accéléré)
:Supprimer tous les obstacles; :Activer accélération du temps;
:Durée : 3 secondes; :Durée : 3 secondes;
endswitch endswitch
end group end group
@ -54,9 +54,6 @@ repeat
:Quitter le niveau; :Quitter le niveau;
:Retour au menu principal; :Retour au menu principal;
stop stop
case (Mode Checkpoint)
:Activer/Désactiver le mode Checkpoint;
:Reprendre la partie;
case (Volume) case (Volume)
:Modifier le volume sonore; :Modifier le volume sonore;
:Revenir au menu de pause; :Revenir au menu de pause;
@ -72,7 +69,6 @@ repeat
if (Le joueur touche la zone de fin ?) then (Oui) if (Le joueur touche la zone de fin ?) then (Oui)
:Terminer le niveau; :Terminer le niveau;
:Animation de fin de niveau; :Animation de fin de niveau;
:Conserver les pièces obtenues;
break break
endif endif
} }

Some files were not shown because too many files have changed in this diff Show More