Compare commits

..

14 Commits

Author SHA1 Message Date
Michal Pikulski
b90ab4b0ba FInalize first pass over cement decoration game 2025-11-24 15:54:14 +01:00
Michal Pikulski
e04db31a98 Settings cleaned up, working on dragging etc. 2025-11-24 15:54:14 +01:00
Michal Pikulski
6a41fd3340 Setup scene for the statue nonsense 2025-11-24 15:54:13 +01:00
Michal Pikulski
e9a6f35ef5 cement daddy 2025-11-24 15:54:13 +01:00
Michal Pikulski
e33de5da3d Fix the sound bird interactaiblity issues. 2025-11-24 11:41:47 +01:00
Michal Pikulski
f0abc4760b Hide Ana-Lyse's dialogue component when taking photo, also correctly restore a hidden state with the dialogu turned off 2025-11-24 11:07:46 +01:00
Michal Pikulski
ff28bd23cb Fix up eagle eye's weirdness, add option to auto clear saves 2025-11-24 10:37:40 +01:00
Michal Pikulski
3f847508be Working mulit-slot items 2025-11-21 15:50:06 +01:00
Michal Pikulski
e9320c6d03 Poop obstacle pipeline working 2025-11-21 11:33:49 +01:00
Michal Pikulski
b4b17c18ed Some b ase obstacle and poop spawning 2025-11-21 09:22:06 +01:00
Michal Pikulski
8b283774e6 Fixup booster pack pickup 2025-11-21 08:38:33 +01:00
fba484d686 Removed booster pack again 2025-11-20 17:45:44 +01:00
c0e5ec14bd Moved boosterpack 2025-11-20 17:32:02 +01:00
311d6066be Added new boostie bois icon 2025-11-20 17:06:05 +01:00
143 changed files with 9520 additions and 2252 deletions

View File

@@ -63,18 +63,6 @@ MonoBehaviour:
m_SerializedLabels:
- BlokkemonCard
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 4f4ec75013bc276429c2f4fa52d165e0
m_Address: Assets/Data/Cards/Card_KalkUlation 3.asset
m_ReadOnly: 0
m_SerializedLabels:
- BlokkemonCard
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 53996921ed2094948aa317efe4ca6630
m_Address: Assets/Data/Cards/Card_MormorMarmor 3.asset
m_ReadOnly: 0
m_SerializedLabels:
- BlokkemonCard
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 73d54071304571647b3238a799d9781f
m_Address: Assets/Data/Cards/Card_New Card.asset
m_ReadOnly: 0
@@ -123,12 +111,6 @@ MonoBehaviour:
m_SerializedLabels:
- BlokkemonCard
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: c73a9b19b3208d940b9fae7360287a48
m_Address: Assets/Data/Cards/Card_New Card.asset
m_ReadOnly: 0
m_SerializedLabels:
- BlokkemonCard
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: cd07dfe9285ad414a9b3bd71829b1c41
m_Address: Assets/Data/Cards/Card_New Card.asset
m_ReadOnly: 0

View File

@@ -20,6 +20,11 @@ MonoBehaviour:
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 359004e51663d6442b7d2b960d12b459
m_Address: Settings/StatueDressupSettings
m_ReadOnly: 0
m_SerializedLabels: []
FlaggedDuringContentUpdateRestriction: 0
- m_GUID: 35bfcff00faa72c4eb272a9e8288f965
m_Address: Settings/PlayerFollowerSettings
m_ReadOnly: 0

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

View File

@@ -0,0 +1,478 @@
fileFormatVersion: 2
guid: c82cc29f97a609840a859131de6bb050
TextureImporter:
internalIDToNameTable: []
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: 0
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: iOS
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
- 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: WindowsStoreApps
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: BoosterPack_Open_00003
rect:
serializedVersion: 2
x: 488
y: 602
width: 305
height: 458
alignment: 9
pivot: {x: 0.5344262, y: 0.4978166}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 23c75beb02a850d4d97af7bc335e0205
internalID: -1542913152
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00004
rect:
serializedVersion: 2
x: 355
y: 139
width: 317
height: 458
alignment: 9
pivot: {x: 0.533123, y: 0.4978166}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: be47dc573f95ee1409d1dc7623cf222d
internalID: -704773250
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00005
rect:
serializedVersion: 2
x: 156
y: 599
width: 330
height: 461
alignment: 9
pivot: {x: 0.530303, y: 0.4989154}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 9cae4b4bca420f04c8709409cb4022d7
internalID: -1953837687
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00006
rect:
serializedVersion: 2
x: 674
y: 149
width: 319
height: 451
alignment: 9
pivot: {x: 0.53291535, y: 0.49889135}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: f25bf44d9424b43459428b49b249e951
internalID: -438658208
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00009
rect:
serializedVersion: 2
x: 995
y: 194
width: 321
height: 432
alignment: 9
pivot: {x: 0.529595, y: 0.5046296}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 0750a110b0b058349ba6419afed1ff7d
internalID: 250079585
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00010
rect:
serializedVersion: 2
x: 795
y: 628
width: 334
height: 432
alignment: 9
pivot: {x: 0.5269461, y: 0.5069444}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: b58cb65759cc4f64c90c212b40bbd414
internalID: -759410942
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00012
rect:
serializedVersion: 2
x: 1
y: 1068
width: 338
height: 418
alignment: 9
pivot: {x: 0.5325444, y: 0.5047847}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: af33343635831344f91b79e17a63062a
internalID: 1939217773
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00021
rect:
serializedVersion: 2
x: 1
y: 9
width: 352
height: 366
alignment: 9
pivot: {x: 0.52840906, y: 0.5163934}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: f58b6e8ca8b18f1489f10464a8c41765
internalID: 1227092851
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00036
rect:
serializedVersion: 2
x: 488
y: 1258
width: 462
height: 228
alignment: 9
pivot: {x: 0.512987, y: 0.4868421}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 89de36fa2c2277b49bfb73272c354c2c
internalID: 356022349
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00038
rect:
serializedVersion: 2
x: 1
y: 377
width: 153
height: 683
alignment: 9
pivot: {x: 0.5686275, y: 0.49926794}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: c6ceed8ffb35f59469a0f328f489754d
internalID: -1149951502
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00039
rect:
serializedVersion: 2
x: 1083
y: 1062
width: 831
height: 985
alignment: 9
pivot: {x: 0.5306859, y: 0.47614214}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: de643e128829c0c4e9f7299a11d7c098
internalID: -756596378
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00043
rect:
serializedVersion: 2
x: 1
y: 1488
width: 1080
height: 559
alignment: 9
pivot: {x: 0.5, y: 0.68515205}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 23affd3b7fb5de942b5981ebdd85f89d
internalID: 570064178
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00044
rect:
serializedVersion: 2
x: 1916
y: 1974
width: 59
height: 73
alignment: 9
pivot: {x: -8.152542, y: 5.4931507}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: a75b5f2e4ebbfef4a923f03a75f6505a
internalID: 143675427
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00045
rect:
serializedVersion: 2
x: 1977
y: 2044
width: 3
height: 3
alignment: 9
pivot: {x: 180, y: -179}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: ab60b253ca5524e47a316067e6ba19dd
internalID: -516162685
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 6ad5731df086ce340b213f117d406b9a
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
BoosterPack_Open_00003: -1542913152
BoosterPack_Open_00004: -704773250
BoosterPack_Open_00005: -1953837687
BoosterPack_Open_00006: -438658208
BoosterPack_Open_00009: 250079585
BoosterPack_Open_00010: -759410942
BoosterPack_Open_00012: 1939217773
BoosterPack_Open_00021: 1227092851
BoosterPack_Open_00036: 356022349
BoosterPack_Open_00038: -1149951502
BoosterPack_Open_00039: -756596378
BoosterPack_Open_00043: 570064178
BoosterPack_Open_00044: 143675427
BoosterPack_Open_00045: -516162685
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,29 @@
#
# Sprite sheet data for Unity.
#
# To import these sprites into your Unity project, download "TexturePackerImporter":
# https://www.codeandweb.com/texturepacker/unity
#
# $TexturePacker:SmartUpdate:26fc90411cdd42fb36e8018399bc34fc:0879ee33e4ca10384be7aa74eba1a87a:6766b9bfc2446ae468d31b7d47709eea$
#
:format=40300
:texture=booster_explode-booster_open1.png
:size=2048x2048
:pivotpoints=enabled
:borders=disabled
:alphahandling=ClearTransparentPixels
BoosterPack_Open_00003;488;602;305;458; 0.5344262295081967;0.49781659388646293; 0;0;0;0
BoosterPack_Open_00004;355;139;317;458; 0.5331230283911672;0.49781659388646293; 0;0;0;0
BoosterPack_Open_00005;156;599;330;461; 0.5303030303030303;0.49891540130151846; 0;0;0;0
BoosterPack_Open_00006;674;149;319;451; 0.5329153605015674;0.49889135254988914; 0;0;0;0
BoosterPack_Open_00009;995;194;321;432; 0.5295950155763239;0.5046296296296297; 0;0;0;0
BoosterPack_Open_00010;795;628;334;432; 0.5269461077844312;0.5069444444444444; 0;0;0;0
BoosterPack_Open_00012;1;1068;338;418; 0.5325443786982249;0.5047846889952153; 0;0;0;0
BoosterPack_Open_00021;1;9;352;366; 0.5284090909090909;0.5163934426229508; 0;0;0;0
BoosterPack_Open_00036;488;1258;462;228; 0.512987012987013;0.48684210526315785; 0;0;0;0
BoosterPack_Open_00038;1;377;153;683; 0.5686274509803921;0.49926793557833093; 0;0;0;0
BoosterPack_Open_00039;1083;1062;831;985; 0.5306859205776173;0.47614213197969546; 0;0;0;0
BoosterPack_Open_00043;1;1488;1080;559; 0.5;0.6851520572450804; 0;0;0;0
BoosterPack_Open_00044;1916;1974;59;73; -8.152542372881356;5.493150684931507; 0;0;0;0
BoosterPack_Open_00045;1977;2044;3;3; 180;-179; 0;0;0;0

View File

@@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: eef3e69d546eb3f49bba43db92477fa1
TextScriptImporter:
guid: 5a9d0082cbed8764687ed18bfb238165
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

@@ -0,0 +1,846 @@
fileFormatVersion: 2
guid: b07c9a09f81cfa5428d6db01c6a36960
TextureImporter:
internalIDToNameTable: []
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: 0
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: iOS
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
- 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: WindowsStoreApps
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: BoosterPack_Open_00000
rect:
serializedVersion: 2
x: 694
y: 535
width: 300
height: 457
alignment: 9
pivot: {x: 0.53333336, y: 0.4989059}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: e215c6340c0acc54a871b142ac83a453
internalID: -1296148786
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00001
rect:
serializedVersion: 2
x: 694
y: 535
width: 300
height: 457
alignment: 9
pivot: {x: 0.53333336, y: 0.4989059}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: f146bf716a4cda74e973a93c1c6c35e3
internalID: -1402704606
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00002
rect:
serializedVersion: 2
x: 694
y: 535
width: 300
height: 457
alignment: 9
pivot: {x: 0.53333336, y: 0.4989059}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 927ce4592b7b5644a8e79476a791d891
internalID: 2020666823
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00007
rect:
serializedVersion: 2
x: 1733
y: 1192
width: 309
height: 443
alignment: 9
pivot: {x: 0.5339806, y: 0.5011287}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 3cbef557329f5c34ea4df5d1499eaba4
internalID: -569078138
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00008
rect:
serializedVersion: 2
x: 705
y: 994
width: 308
height: 434
alignment: 9
pivot: {x: 0.52922076, y: 0.50230414}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 31612f050d0f08844bbe972bbee1dd48
internalID: -1114803608
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00011
rect:
serializedVersion: 2
x: 1734
y: 1637
width: 313
height: 410
alignment: 9
pivot: {x: 0.53035146, y: 0.50731707}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: a0927293f5226a1419808f133c906f0d
internalID: -1707904053
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00013
rect:
serializedVersion: 2
x: 1355
y: 928
width: 320
height: 394
alignment: 9
pivot: {x: 0.528125, y: 0.5101523}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 5dc647552f5909c4ba65068031b2db4a
internalID: 11658095
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00014
rect:
serializedVersion: 2
x: 1
y: 269
width: 338
height: 404
alignment: 9
pivot: {x: 0.52662724, y: 0.51237625}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: cb03558c6960ec9469c19462e31f3ad7
internalID: 1636917706
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00015
rect:
serializedVersion: 2
x: 341
y: 281
width: 329
height: 379
alignment: 9
pivot: {x: 0.52887535, y: 0.51187336}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: c56b032c3fc4f96478e74897057ba9c3
internalID: 1313662612
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00016
rect:
serializedVersion: 2
x: 348
y: 662
width: 344
height: 390
alignment: 9
pivot: {x: 0.53197676, y: 0.5102564}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 2cf941dc7dd2cb941bc7cc497a201777
internalID: -663746785
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00017
rect:
serializedVersion: 2
x: 1015
y: 965
width: 338
height: 365
alignment: 9
pivot: {x: 0.52662724, y: 0.5150685}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 0f2b2b4c8e7601447a610c3753dbf19c
internalID: 690547046
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00018
rect:
serializedVersion: 2
x: 1
y: 675
width: 345
height: 380
alignment: 9
pivot: {x: 0.5246377, y: 0.51842105}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 1bc33f5906e89d045912d7abfadcee34
internalID: -1072681517
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00019
rect:
serializedVersion: 2
x: 354
y: 1054
width: 349
height: 374
alignment: 9
pivot: {x: 0.530086, y: 0.51336896}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 8d92bb3b51ea3dd4c9264e2353ffb292
internalID: 1767599524
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00020
rect:
serializedVersion: 2
x: 1
y: 1057
width: 351
height: 371
alignment: 9
pivot: {x: 0.52421653, y: 0.52021563}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 9bcbe60ad9d424c40b1878611e0a8923
internalID: -859748247
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00022
rect:
serializedVersion: 2
x: 1376
y: 1324
width: 355
height: 365
alignment: 9
pivot: {x: 0.52394366, y: 0.5205479}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 624469217be918643924b57230b192a3
internalID: 1294752669
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00023
rect:
serializedVersion: 2
x: 1018
y: 1332
width: 355
height: 356
alignment: 9
pivot: {x: 0.5267606, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 8457865c57a54964c87c3ac772e09428
internalID: -794715370
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00024
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: c83398ce2b623f8428f223b62410cdef
internalID: 1556969222
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00025
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 26fb230e0470e5d4a8bc4fd05e77931b
internalID: -1341641347
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00026
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: fd1b6357f1a8cc94b81dabdc503a6ccb
internalID: -1121644178
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00027
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 793c2502cd29ea14786747c2f86125da
internalID: 1803829139
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00028
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 7cfcf231d9a381d478b7e2640da0658f
internalID: 802121317
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00029
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 2ddb1a94d7ed26c4690d3a2728642459
internalID: -1154758693
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00030
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 8b48a3e5100a8394193b12e0631086a1
internalID: 1108068530
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00031
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 8d0cc03d3bc055841add367349fd72ea
internalID: 1260386178
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00032
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 20a3ec573cf439c44a8125dab5840182
internalID: 1576340854
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00033
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: d8a7c5a46225ae14e89da51c1244f4ae
internalID: 606793032
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00034
rect:
serializedVersion: 2
x: 1018
y: 1690
width: 356
height: 357
alignment: 9
pivot: {x: 0.5252809, y: 0.52100843}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: e963aa9261c5f204cb838858be95777e
internalID: -1161193577
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00035
rect:
serializedVersion: 2
x: 1376
y: 1691
width: 356
height: 356
alignment: 9
pivot: {x: 0.5280899, y: 0.5168539}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: dcfe40bb1a1c35544b38752a64634012
internalID: -1309407190
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00037
rect:
serializedVersion: 2
x: 694
y: 535
width: 300
height: 457
alignment: 9
pivot: {x: 0.53333336, y: 0.4989059}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: fc47238fedcfeed4ca772ffea6cf6eab
internalID: -351264517
vertices: []
indices:
edges: []
weights: []
- serializedVersion: 2
name: BoosterPack_Open_00042
rect:
serializedVersion: 2
x: 1
y: 1430
width: 1015
height: 617
alignment: 9
pivot: {x: 0.5320197, y: 0.6726094}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 93324b9a6df8b8741b238b2998b248d5
internalID: -687370649
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 38132a2ed45bbc041bfb7f7ce023a4c1
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
BoosterPack_Open_00000: -1296148786
BoosterPack_Open_00001: -1402704606
BoosterPack_Open_00002: 2020666823
BoosterPack_Open_00007: -569078138
BoosterPack_Open_00008: -1114803608
BoosterPack_Open_00011: -1707904053
BoosterPack_Open_00013: 11658095
BoosterPack_Open_00014: 1636917706
BoosterPack_Open_00015: 1313662612
BoosterPack_Open_00016: -663746785
BoosterPack_Open_00017: 690547046
BoosterPack_Open_00018: -1072681517
BoosterPack_Open_00019: 1767599524
BoosterPack_Open_00020: -859748247
BoosterPack_Open_00022: 1294752669
BoosterPack_Open_00023: -794715370
BoosterPack_Open_00024: 1556969222
BoosterPack_Open_00025: -1341641347
BoosterPack_Open_00026: -1121644178
BoosterPack_Open_00027: 1803829139
BoosterPack_Open_00028: 802121317
BoosterPack_Open_00029: -1154758693
BoosterPack_Open_00030: 1108068530
BoosterPack_Open_00031: 1260386178
BoosterPack_Open_00032: 1576340854
BoosterPack_Open_00033: 606793032
BoosterPack_Open_00034: -1161193577
BoosterPack_Open_00035: -1309407190
BoosterPack_Open_00037: -351264517
BoosterPack_Open_00042: -687370649
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,45 @@
#
# Sprite sheet data for Unity.
#
# To import these sprites into your Unity project, download "TexturePackerImporter":
# https://www.codeandweb.com/texturepacker/unity
#
# $TexturePacker:SmartUpdate:26fc90411cdd42fb36e8018399bc34fc:0879ee33e4ca10384be7aa74eba1a87a:6766b9bfc2446ae468d31b7d47709eea$
#
:format=40300
:texture=booster_explode-booster_open2.png
:size=2048x2048
:pivotpoints=enabled
:borders=disabled
:alphahandling=ClearTransparentPixels
BoosterPack_Open_00000;694;535;300;457; 0.5333333333333333;0.4989059080962801; 0;0;0;0
BoosterPack_Open_00001;694;535;300;457; 0.5333333333333333;0.4989059080962801; 0;0;0;0
BoosterPack_Open_00002;694;535;300;457; 0.5333333333333333;0.4989059080962801; 0;0;0;0
BoosterPack_Open_00007;1733;1192;309;443; 0.5339805825242718;0.5011286681715575; 0;0;0;0
BoosterPack_Open_00008;705;994;308;434; 0.5292207792207793;0.5023041474654377; 0;0;0;0
BoosterPack_Open_00011;1734;1637;313;410; 0.5303514376996805;0.5073170731707317; 0;0;0;0
BoosterPack_Open_00013;1355;928;320;394; 0.528125;0.5101522842639594; 0;0;0;0
BoosterPack_Open_00014;1;269;338;404; 0.5266272189349113;0.5123762376237624; 0;0;0;0
BoosterPack_Open_00015;341;281;329;379; 0.5288753799392097;0.5118733509234829; 0;0;0;0
BoosterPack_Open_00016;348;662;344;390; 0.5319767441860465;0.5102564102564102; 0;0;0;0
BoosterPack_Open_00017;1015;965;338;365; 0.5266272189349113;0.5150684931506849; 0;0;0;0
BoosterPack_Open_00018;1;675;345;380; 0.5246376811594203;0.5184210526315789; 0;0;0;0
BoosterPack_Open_00019;354;1054;349;374; 0.5300859598853869;0.5133689839572193; 0;0;0;0
BoosterPack_Open_00020;1;1057;351;371; 0.5242165242165242;0.5202156334231807; 0;0;0;0
BoosterPack_Open_00022;1376;1324;355;365; 0.523943661971831;0.5205479452054795; 0;0;0;0
BoosterPack_Open_00023;1018;1332;355;356; 0.5267605633802817;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00024;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00025;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00026;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00027;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00028;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00029;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00030;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00031;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00032;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00033;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00034;1018;1690;356;357; 0.5252808988764045;0.5210084033613445; 0;0;0;0
BoosterPack_Open_00035;1376;1691;356;356; 0.5280898876404494;0.5168539325842696; 0;0;0;0
BoosterPack_Open_00037;694;535;300;457; 0.5333333333333333;0.4989059080962801; 0;0;0;0
BoosterPack_Open_00042;1;1430;1015;617; 0.5320197044334976;0.6726094003241492; 0;0;0;0

View File

@@ -1,6 +1,6 @@
fileFormatVersion: 2
guid: 1890da8c51b4fb44b9c7aa761a8f3b5a
TextScriptImporter:
guid: d31a0a1dac4525640b1b3498623ca555
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:

Binary file not shown.

After

Width:  |  Height:  |  Size: 201 KiB

View File

@@ -0,0 +1,179 @@
fileFormatVersion: 2
guid: d212976f52504ec4b85a14c7b73a93cb
TextureImporter:
internalIDToNameTable: []
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: 0
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: iOS
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
- 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: WindowsStoreApps
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: BoosterPack_Open_00040
rect:
serializedVersion: 2
x: 1
y: 967
width: 1076
height: 1080
alignment: 9
pivot: {x: 0.5018587, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 4f3d75943c8b7724fbf8d7e2896abd2b
internalID: 1693853676
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: 89501e49a9d6ea3438a44abd5923c5e3
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
BoosterPack_Open_00040: 1693853676
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,16 @@
#
# Sprite sheet data for Unity.
#
# To import these sprites into your Unity project, download "TexturePackerImporter":
# https://www.codeandweb.com/texturepacker/unity
#
# $TexturePacker:SmartUpdate:26fc90411cdd42fb36e8018399bc34fc:0879ee33e4ca10384be7aa74eba1a87a:6766b9bfc2446ae468d31b7d47709eea$
#
:format=40300
:texture=booster_explode-booster_open3.png
:size=2048x2048
:pivotpoints=enabled
:borders=disabled
:alphahandling=ClearTransparentPixels
BoosterPack_Open_00040;1;967;1076;1080; 0.5018587360594795;0.5; 0;0;0;0

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 144 KiB

View File

@@ -0,0 +1,179 @@
fileFormatVersion: 2
guid: 42cc239a21a1be54b9873f7a1b34ed00
TextureImporter:
internalIDToNameTable: []
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: 0
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: iOS
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
- 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: WindowsStoreApps
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: BoosterPack_Open_00041
rect:
serializedVersion: 2
x: 1
y: 967
width: 1080
height: 1080
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: 0
bones: []
spriteID: 1e02e0c0932fcff49b22013f6f966573
internalID: -1182694353
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: b49ba3e594a0a3e449a2a4da689fdf01
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
BoosterPack_Open_00041: -1182694353
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,16 @@
#
# Sprite sheet data for Unity.
#
# To import these sprites into your Unity project, download "TexturePackerImporter":
# https://www.codeandweb.com/texturepacker/unity
#
# $TexturePacker:SmartUpdate:26fc90411cdd42fb36e8018399bc34fc:0879ee33e4ca10384be7aa74eba1a87a:6766b9bfc2446ae468d31b7d47709eea$
#
:format=40300
:texture=booster_explode-booster_open4.png
:size=2048x2048
:pivotpoints=enabled
:borders=disabled
:alphahandling=ClearTransparentPixels
BoosterPack_Open_00041;1;967;1080;1080; 0.5;0.5; 0;0;0;0

View File

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

View File

@@ -122,6 +122,32 @@ TextureImporter:
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
- serializedVersion: 4
buildTarget: WindowsStoreApps
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:
@@ -129,10 +155,10 @@ TextureImporter:
name: AEblerup_Map_Statue_0
rect:
serializedVersion: 2
x: 59
y: 48
width: 405
height: 567
x: 0
y: 0
width: 555
height: 676
alignment: 9
pivot: {x: 0.5, y: 0.25}
border: {x: 0, y: 0, z: 0, w: 0}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1d60a4c02e1dbb64dbd638d32d2bcf44
guid: f8e72f50f049669479ed8aad00e40a77
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@@ -15,6 +15,6 @@ MonoBehaviour:
_itemId: chocolate_4f2011c6
itemName: BoosterPack
description: boostert pack
mapSprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
mapSprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
pickUpSound: {fileID: 0}
dropSound: {fileID: 0}

View File

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

View File

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

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 1
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: Shoe
decorationName: Shoe
decorationSprite: {fileID: -792204027, guid: f1b529408513adc409a57c9ba7131823, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ca949a6208ce5b5488e90ea3e2eed6df
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 2
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: axe
decorationName: axe
decorationSprite: {fileID: 6674386295937086461, guid: 3bd1c178a78fcd144965cd1731dc309b, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 5efa934e009bc234e920904b05db3c2f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 3
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: can
decorationName: can
decorationSprite: {fileID: 792078976, guid: f1b529408513adc409a57c9ba7131823, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8819ec8b1f4910a4494755cf043636d1
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 4
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: i_feel_the_magic_between_you_and_i
decorationName: I feel the magic between you and I
decorationSprite: {fileID: 1623587888, guid: 1630961e1f25e4243ad74e4e3b0c7e54, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b09b79db8ef15144bb2138ec59f26a9c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 5
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: the_people's_sticker
decorationName: the people's sticker
decorationSprite: {fileID: 3452003437791708593, guid: 4c13556eeb918624c9dd3d7e4086242e, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 8838477f768600848813a215ab6a46fe
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 6
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: cardalbum
decorationName: CardAlbum
decorationSprite: {fileID: -4354454609415314374, guid: 1ba1f8cf73f79214190f1432fe1e3bc6, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: f0df83df3cff9d84ba9fd4895e5d1b58
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 7
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: chocolate
decorationName: chocolate
decorationSprite: {fileID: -509776585262497855, guid: c648336c825f7d7479582bbe4d95d0bc, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4101d48e428899d409df02f24c83571f
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 8
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: tennis_ball
decorationName: tennis ball
decorationSprite: {fileID: -8897872742393391051, guid: 44a64b7a80921694790236bab7765357, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b01ee8334ee052b4784225337e9a5ece
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData 9
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: bird_poop
decorationName: bird poop
decorationSprite: {fileID: 6130942287420046110, guid: 9ef635f111f888a4386a7f0290117264, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a5d493c2c7c9cf74cab038023b401273
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,19 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 74c6ae9aa803480c8fb918dd58cfb809, type: 3}
m_Name: TestDecorationData
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.Data.DecorationData
decorationId: backpack
decorationName: backpack
decorationSprite: {fileID: -6415490079858998490, guid: b9d1a045f7c163a4d9e2d38071913885, type: 3}
authoredSize: {x: 300, y: 300}
isUnlocked: 1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 2ea75de9ff6dbfb4b8c246a654868479
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -19,7 +19,9 @@ MonoBehaviour:
requiredOrientation: 1
- sceneName: DivingForPictures
requiredOrientation: 0
- sceneName: BirdB
- sceneName: BirdPoop
requiredOrientation: 1
- sceneName: CardQualityControl
requiredOrientation: 1
- sceneName: StatueDecoration
requiredOrientation: 1

View File

@@ -2,7 +2,6 @@
using UnityEditor;
using System.Collections.Generic;
using System.Linq;
using System.IO;
namespace AppleHills.Core.Settings.Editor
{
@@ -164,23 +163,31 @@ namespace AppleHills.Core.Settings.Editor
EditorGUILayout.Space(10);
// Draw all properties
SerializedProperty property = serializedObj.GetIterator();
bool enterChildren = true;
while (property.NextVisible(enterChildren))
// Special handling for DebugSettings
if (settings is DebugSettings)
{
enterChildren = false;
// Skip the script field
if (property.name == "m_Script") continue;
// Group headers
if (property.isArray && property.propertyType == SerializedPropertyType.Generic)
DrawDebugSettingsEditor(serializedObj, settings as DebugSettings);
}
else
{
// Draw all properties for other settings types
SerializedProperty property = serializedObj.GetIterator();
bool enterChildren = true;
while (property.NextVisible(enterChildren))
{
EditorGUILayout.LabelField(property.displayName, EditorStyles.boldLabel);
enterChildren = false;
// Skip the script field
if (property.name == "m_Script") continue;
// Group headers
if (property.isArray && property.propertyType == SerializedPropertyType.Generic)
{
EditorGUILayout.LabelField(property.displayName, EditorStyles.boldLabel);
}
EditorGUILayout.PropertyField(property, true);
}
EditorGUILayout.PropertyField(property, true);
}
// Apply changes
@@ -196,6 +203,37 @@ namespace AppleHills.Core.Settings.Editor
}
}
private void DrawDebugSettingsEditor(SerializedObject serializedObj, DebugSettings debugSettings)
{
SerializedProperty property = serializedObj.GetIterator();
bool enterChildren = true;
bool useSaveLoadSystem = debugSettings.UseSaveLoadSystem;
while (property.NextVisible(enterChildren))
{
enterChildren = false;
// Skip the script field
if (property.name == "m_Script") continue;
// Check if this property should be disabled
bool shouldDisable = false;
if (!useSaveLoadSystem)
{
// Disable save-load related options when useSaveLoadSystem is false
if (property.name == "autoClearSaves" || property.name == "dontSaveOnQuit")
{
shouldDisable = true;
}
}
// Disable GUI for dependent fields
EditorGUI.BeginDisabledGroup(shouldDisable);
EditorGUILayout.PropertyField(property, true);
EditorGUI.EndDisabledGroup();
}
}
// Helper method to highlight important fields
private void DrawHighlightedProperty(SerializedProperty property, string tooltip = null)
{

View File

@@ -2,7 +2,6 @@
using UnityEditor;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using Core.Settings;
namespace AppleHills.Core.Settings.Editor
@@ -11,7 +10,7 @@ namespace AppleHills.Core.Settings.Editor
{
private Vector2 scrollPosition;
private List<BaseSettings> allSettings = new List<BaseSettings>();
private string[] tabNames = new string[] { "Player & Follower", "Interaction & Items", "Diving Minigame", "Card System", "Card Sorting", "Bird Pooper" };
private string[] tabNames = new string[] { "Player & Follower", "Interaction & Items", "Diving Minigame", "Card System", "Card Sorting", "Bird Pooper", "Statue Dressup" };
private int selectedTab = 0;
private Dictionary<string, SerializedObject> serializedSettingsObjects = new Dictionary<string, SerializedObject>();
private GUIStyle headerStyle;
@@ -52,6 +51,7 @@ namespace AppleHills.Core.Settings.Editor
CreateSettingsIfMissing<CardSystemSettings>("CardSystemSettings");
CreateSettingsIfMissing<CardSortingSettings>("CardSortingSettings");
CreateSettingsIfMissing<BirdPooperSettings>("BirdPooperSettings");
CreateSettingsIfMissing<StatueDressupSettings>("StatueDressupSettings");
}
private void CreateSettingsIfMissing<T>(string fileName) where T : BaseSettings
@@ -127,6 +127,9 @@ namespace AppleHills.Core.Settings.Editor
case 5: // Bird Pooper
DrawSettingsEditor<BirdPooperSettings>();
break;
case 6: // Statue Dressup
DrawSettingsEditor<StatueDressupSettings>();
break;
}
EditorGUILayout.EndScrollView();

View File

@@ -0,0 +1,95 @@
using System.IO;
using UnityEditor;
using UnityEngine;
using AppleHills.Core.Settings;
namespace Editor.Tools
{
/// <summary>
/// Editor script that automatically clears saves before entering play mode
/// if the autoClearSaves setting is enabled in DebugSettings
/// </summary>
[InitializeOnLoad]
public static class AutoClearSavesOnPlay
{
static AutoClearSavesOnPlay()
{
EditorApplication.playModeStateChanged += OnPlayModeStateChanged;
}
private static void OnPlayModeStateChanged(PlayModeStateChange state)
{
// Only act when entering play mode (before the scene starts playing)
if (state != PlayModeStateChange.ExitingEditMode)
return;
// Try to load the debug settings
DebugSettings debugSettings = LoadDebugSettings();
if (debugSettings == null)
{
Debug.LogWarning("[AutoClearSaves] Could not find DebugSettings asset. Auto-clear saves disabled.");
return;
}
// Check if auto-clear is enabled
if (!debugSettings.AutoClearSaves)
{
return;
}
// Execute the clear saves logic
ClearSavesFolder();
}
private static DebugSettings LoadDebugSettings()
{
// Try to find the DebugSettings asset in the project
string[] guids = AssetDatabase.FindAssets("t:DebugSettings");
if (guids.Length == 0)
{
return null;
}
// Load the first found DebugSettings asset
string path = AssetDatabase.GUIDToAssetPath(guids[0]);
return AssetDatabase.LoadAssetAtPath<DebugSettings>(path);
}
private static void ClearSavesFolder()
{
// Construct the save folder path (matches SaveLoadManager.DefaultSaveFolder)
string saveFolder = Path.Combine(Application.persistentDataPath, "GameSaves");
if (!Directory.Exists(saveFolder))
{
Debug.Log("[AutoClearSaves] Save folder does not exist, nothing to clear.");
return;
}
try
{
// Delete all files in the save folder
string[] files = Directory.GetFiles(saveFolder);
int deletedCount = 0;
foreach (string file in files)
{
File.Delete(file);
deletedCount++;
}
if (deletedCount > 0)
{
Debug.Log($"[AutoClearSaves] Automatically deleted {deletedCount} save file(s) before entering play mode");
}
}
catch (System.Exception ex)
{
Debug.LogError($"[AutoClearSaves] Failed to auto-clear saves: {ex}");
}
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: c3ba01f7bb704c17bc4f22fd726f7fee
timeCreated: 1763974355

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@@ -0,0 +1,195 @@
fileFormatVersion: 2
guid: 9ef635f111f888a4386a7f0290117264
TextureImporter:
internalIDToNameTable:
- first:
213: 6130942287420046110
second: bird_poop_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: iOS
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
- 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
- serializedVersion: 4
buildTarget: WindowsStoreApps
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: bird_poop_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 386
height: 371
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: e1bb71cf68b751550800000000000000
internalID: 6130942287420046110
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
bird_poop_0: 6130942287420046110
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

View File

@@ -0,0 +1,195 @@
fileFormatVersion: 2
guid: 77b22fe548c7b264a8c6d243bd1d62ad
TextureImporter:
internalIDToNameTable:
- first:
213: -6300450527438492720
second: camera_icon_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: iOS
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
- 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
- serializedVersion: 4
buildTarget: WindowsStoreApps
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: camera_icon_0
rect:
serializedVersion: 2
x: 19
y: 68
width: 474
height: 377
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: 0db2b1360ad4098a0800000000000000
internalID: -6300450527438492720
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
camera_icon_0: -6300450527438492720
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

View File

@@ -0,0 +1,195 @@
fileFormatVersion: 2
guid: 338c4323de4ff7f4c99e4c10a744e914
TextureImporter:
internalIDToNameTable:
- first:
213: -7424888634701936452
second: statue_outline_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: iOS
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
- 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
- serializedVersion: 4
buildTarget: WindowsStoreApps
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: statue_outline_0
rect:
serializedVersion: 2
x: 0
y: 0
width: 555
height: 676
alignment: 0
pivot: {x: 0.5, y: 0.5}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: cb881cf102f75f890800000000000000
internalID: -7424888634701936452
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID: a4e62b13d7f4aeb42a7c302cf33555e9
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
statue_outline_0: -7424888634701936452
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,6 +1,10 @@
version: 2
tpsheetFileNames:
- Assets/Art/Animations/Characters/Butterfly/butterfly_bottle.tpsheet
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open1.tpsheet
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open2.tpsheet
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open3.tpsheet
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open4.tpsheet
- Assets/Art/Sprites/Spritesheets/Characters/Annelise_Camera/Annelise_camera-AnneLise_1.tpsheet
- Assets/Art/Sprites/Spritesheets/Characters/Annelise_Camera/Annelise_camera-AnneLise_2.tpsheet
- Assets/Art/Sprites/Spritesheets/Characters/Gardener/Gardener-IdleRun.tpsheet
@@ -32,6 +36,10 @@ tpsheetFileNames:
- Assets/External/Plugins/codeandweb.com/Example/SpriteSheet/sprites.tpsheet
textureFileNames:
- Assets/Art/Animations/Characters/Butterfly/butterfly_bottle.png
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open1.png
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open2.png
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open3.png
- Assets/Art/Animations/UI/Booster/booster_explode-booster_open4.png
- Assets/Art/Sprites/Spritesheets/Characters/Annelise_Camera/Annelise_camera-AnneLise_1.png
- Assets/Art/Sprites/Spritesheets/Characters/Annelise_Camera/Annelise_camera-AnneLise_2.png
- Assets/Art/Sprites/Spritesheets/Characters/Gardener/Gardener-IdleRun.png
@@ -91,5 +99,9 @@ normalmapFileNames:
-
-
-
-
-
-
-
- Assets/External/Plugins/codeandweb.com/Example/SpriteSheet/sprites_n.png
enableDebugOutput: 0

View File

@@ -262,7 +262,7 @@ MonoBehaviour:
m_Calls: []
itemData: {fileID: 11400000, guid: aaf36cd26cf74334e9c7db6c1b03b3fb, type: 2}
iconRenderer: {fileID: 6258593095132504700}
slottedItemRenderer: {fileID: 4110666412151536905}
slottedItemRenderers: []
onItemSlotted:
m_PersistentCalls:
m_Calls: []

View File

@@ -1170,7 +1170,7 @@ MonoBehaviour:
m_Calls: []
itemData: {fileID: 11400000, guid: f97b9e24d6dceb145b56426c1152ebeb, type: 2}
iconRenderer: {fileID: 2343214996212089369}
slottedItemRenderer: {fileID: 7990414055343410434}
slottedItemRenderers: []
onItemSlotted:
m_PersistentCalls:
m_Calls: []

View File

@@ -348,7 +348,7 @@ MonoBehaviour:
m_Calls: []
itemData: {fileID: 11400000, guid: c68dea945fecbf44094359769db04f31, type: 2}
iconRenderer: {fileID: 2825253017896168654}
slottedItemRenderer: {fileID: 3806274462998212361}
slottedItemRenderers: []
onItemSlotted:
m_PersistentCalls:
m_Calls: []

View File

@@ -9,7 +9,7 @@ GameObject:
serializedVersion: 6
m_Component:
- component: {fileID: 1702819536151974707}
m_Layer: 10
m_Layer: 0
m_Name: AnnaLiseSpotSong
m_TagString: Untagged
m_Icon: {fileID: 0}
@@ -41,13 +41,11 @@ GameObject:
m_Component:
- component: {fileID: 2523333015159032981}
- component: {fileID: 8875860401447896107}
- component: {fileID: 5057760771402457000}
- component: {fileID: 2433130051631076285}
- component: {fileID: 7290110366808972859}
- component: {fileID: 9196152289301358918}
- component: {fileID: 2596311128101197840}
m_Layer: 10
m_Name: SoundBird_Slot
- component: {fileID: 7004860270194965002}
m_Layer: 0
m_Name: SoundBird
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -68,6 +66,7 @@ Transform:
m_Children:
- {fileID: 3907351184805552114}
- {fileID: 1702819536151974707}
- {fileID: 2513116580733004004}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &8875860401447896107
@@ -128,109 +127,6 @@ SpriteRenderer:
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!61 &5057760771402457000
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 588897581313790951}
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: 0
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
m_Offset: {x: 0, y: 1.2}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0.5, y: 0.5}
oldSize: {x: 1.86, y: 3.25}
newSize: {x: 2.21, y: 3.91}
adaptiveTilingThreshold: 0.5
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
m_Size: {x: 3.5, y: 4.5}
m_EdgeRadius: 0
--- !u!114 &2433130051631076285
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 588897581313790951}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ec1a2e6e32f746c4990c579e13b79104, type: 3}
m_Name:
m_EditorClassIdentifier:
isOneTime: 0
cooldown: -1
characterToInteract: 2
interactionStarted:
m_PersistentCalls:
m_Calls: []
interactionInterrupted:
m_PersistentCalls:
m_Calls: []
characterArrived:
m_PersistentCalls:
m_Calls: []
interactionComplete:
m_PersistentCalls:
m_Calls: []
itemData: {fileID: 11400000, guid: d28f5774afad9d14f823601707150700, type: 2}
iconRenderer: {fileID: 8875860401447896107}
slottedItemRenderer: {fileID: 6941190210788968874}
onItemSlotted:
m_PersistentCalls:
m_Calls: []
onItemSlotRemoved:
m_PersistentCalls:
m_Calls: []
onCorrectItemSlotted:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 0}
m_TargetAssemblyTypeName: AnneLiseBehaviour, AppleHillsScripts
m_MethodName: GotoSpot
m_Mode: 2
m_Arguments:
m_ObjectArgument: {fileID: 588897581313790951}
m_ObjectArgumentAssemblyTypeName: UnityEngine.GameObject, UnityEngine
m_IntArgument: 0
m_FloatArgument: 0
m_StringArgument:
m_BoolArgument: 0
m_CallState: 2
onIncorrectItemSlotted:
m_PersistentCalls:
m_Calls: []
onForbiddenItemSlotted:
m_PersistentCalls:
m_Calls: []
--- !u!114 &7290110366808972859
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -267,7 +163,7 @@ Animator:
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!114 &2596311128101197840
--- !u!114 &7004860270194965002
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -276,9 +172,10 @@ MonoBehaviour:
m_GameObject: {fileID: 588897581313790951}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95e46aacea5b42888ee7881894193c11, type: 3}
m_Script: {fileID: 11500000, guid: cfd3b894d78129b4aa5310e5ce9cceae, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Core.SaveLoad.AppleState
m_EditorClassIdentifier: AppleHillsScripts::StateMachines.Quarry.SoundBird.IdleState
itemSlot: {fileID: 0}
--- !u!1 &4624889622840393752
GameObject:
m_ObjectHideFlags: 0
@@ -304,13 +201,13 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4624889622840393752}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -0.28, y: 0.57, z: 0}
m_LocalScale: {x: 0.6666667, y: 0.6666667, z: 0.6666667}
m_LocalRotation: {x: 0, y: 0, z: -0.075422555, w: 0.9971517}
m_LocalPosition: {x: -0.27, y: 2.37, z: 0}
m_LocalScale: {x: 0.336075, y: 0.336075, z: 0.336075}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 2523333015159032981}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: -8.651}
--- !u!212 &6941190210788968874
SpriteRenderer:
m_ObjectHideFlags: 0
@@ -369,3 +266,97 @@ SpriteRenderer:
m_WasSpriteAssigned: 0
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &6117389795918759898
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2513116580733004004}
m_Layer: 0
m_Name: AnimContainer
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2513116580733004004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6117389795918759898}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.13, y: 3.48, z: 0}
m_LocalScale: {x: 0.33, y: 0.33, z: 0.33}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 5133773671673172183}
m_Father: {fileID: 2523333015159032981}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &814760252274833115
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 2513116580733004004}
m_Modifications:
- target: {fileID: 5383276844808284485, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_Name
value: NextStepIndicator
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
--- !u!4 &5133773671673172183 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
m_PrefabInstance: {fileID: 814760252274833115}
m_PrefabAsset: {fileID: 0}

View File

@@ -802,7 +802,7 @@ MonoBehaviour:
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 0}
m_TargetGraphic: {fileID: 4189849640380816173}
m_OnClick:
m_PersistentCalls:
m_Calls:
@@ -1459,6 +1459,10 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 2474710976069581060}
m_Modifications:
- target: {fileID: 823686888810001266, guid: 428a0feafda9d6d4e87ecf43ad41dc20, type: 3}
propertyPath: m_OnClick.m_PersistentCalls.m_Calls.Array.data[0].m_CallState
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5445689290567702089, guid: 428a0feafda9d6d4e87ecf43ad41dc20, type: 3}
propertyPath: m_Pivot.x
value: 1

View File

@@ -0,0 +1,180 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &5552423787977869117
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1501260903740545620}
- component: {fileID: 4535520683689111684}
- component: {fileID: 3364890105999893377}
- component: {fileID: 134329718604943685}
- component: {fileID: 4086097097060867018}
m_Layer: 0
m_Name: Poop
m_TagString: Projectile
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1501260903740545620
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5552423787977869117}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -11.18, y: -1.97, z: 0}
m_LocalScale: {x: 0.43, y: 0.43, z: 0.43}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &4535520683689111684
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5552423787977869117}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 6130942287420046110, guid: 9ef635f111f888a4386a7f0290117264, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 3.86, y: 3.71}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!50 &3364890105999893377
Rigidbody2D:
serializedVersion: 5
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5552423787977869117}
m_BodyType: 1
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 1
m_LinearDamping: 0
m_AngularDamping: 0.05
m_GravityScale: 1
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_Interpolate: 0
m_SleepingMode: 1
m_CollisionDetection: 0
m_Constraints: 0
--- !u!61 &134329718604943685
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5552423787977869117}
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.5, y: 0.5}
oldSize: {x: 3.86, y: 3.71}
newSize: {x: 3.86, y: 3.71}
adaptiveTilingThreshold: 0.5
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
m_Size: {x: 3.86, y: 3.71}
m_EdgeRadius: 0
--- !u!114 &4086097097060867018
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5552423787977869117}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f2c53b7e2a0042efa4c6679b992b6b6c, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.BirdPooper.PoopProjectile

View File

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

View File

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

View File

@@ -0,0 +1,217 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &3536052400313117972
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2159841359414636212}
- component: {fileID: 4795053012425497095}
m_Layer: 0
m_Name: Visual
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &2159841359414636212
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3536052400313117972}
serializedVersion: 2
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: 6842023794578555096}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &4795053012425497095
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3536052400313117972}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: 9dfc825aed78fcd4ba02077103263b40, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 2133529702, guid: 99d4c3083e9c24142bc20deaeaf95720, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 2.56, y: 4.94}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &8373178063207716143
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 6842023794578555096}
- component: {fileID: 1509565078017969516}
- component: {fileID: 11467650667563993}
- component: {fileID: 8135420306913345847}
m_Layer: 0
m_Name: Target
m_TagString: Target
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &6842023794578555096
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8373178063207716143}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 7.27167, y: -14.259, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 2159841359414636212}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!61 &1509565078017969516
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8373178063207716143}
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: 0
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
m_Offset: {x: 0.10432935, y: 1.5258197}
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: 2.773602, y: 4.729781}
m_EdgeRadius: 0
--- !u!114 &11467650667563993
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8373178063207716143}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ed380d10e1e04ae7990e5c726c929063, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleHillsCamera.EdgeAnchor
referenceMarker: {fileID: 0}
cameraAdapter: {fileID: 0}
anchorEdge: 2
useReferenceMargin: 0
customMargin: 0
adjustOnStart: 1
adjustOnScreenResize: 1
preserveOtherAxes: 1
accountForObjectSize: 1
customAnchorPoint: {fileID: 0}
showVisualization: 1
visualizationColor: {r: 1, g: 0, b: 0, a: 0.8}
showObjectBounds: 1
debugMode: 0
--- !u!114 &8135420306913345847
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 8373178063207716143}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5331a770bc634a738b82f9450441de12, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.BirdPooper.Target
verticalAnchor: 2
spriteRenderer: {fileID: 4795053012425497095}
hitColor: {r: 1, g: 0, b: 0, a: 1}
onTargetHit:
m_PersistentCalls:
m_Calls: []

View File

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

View File

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

View File

@@ -0,0 +1,105 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &769974252937479200
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7351787172634191403}
- component: {fileID: 7495592582591578536}
- component: {fileID: 597267714783345863}
- component: {fileID: 3617977973382190563}
- component: {fileID: 8998709565229564215}
m_Layer: 5
m_Name: DecorationDraggableInstance
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7351787172634191403
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
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: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7495592582591578536
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_CullTransparentMesh: 1
--- !u!114 &597267714783345863
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
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: 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!225 &3617977973382190563
CanvasGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_Alpha: 1
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
--- !u!114 &8998709565229564215
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: e4659fd035c74a79af0311de9e17f44a, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.DragDrop.DecorationDraggableInstance
decorationImage: {fileID: 597267714783345863}
canvasGroup: {fileID: 0}

View File

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

View File

@@ -0,0 +1,105 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &769974252937479200
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7351787172634191403}
- component: {fileID: 7495592582591578536}
- component: {fileID: 597267714783345863}
- component: {fileID: 3617977973382190563}
- component: {fileID: 2222137027263565689}
m_Layer: 5
m_Name: DecorationGridIcon
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &7351787172634191403
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
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: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 0, y: 0}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!222 &7495592582591578536
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_CullTransparentMesh: 1
--- !u!114 &597267714783345863
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
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: 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!225 &3617977973382190563
CanvasGroup:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_Alpha: 1
m_Interactable: 1
m_BlocksRaycasts: 1
m_IgnoreParentGroups: 0
--- !u!114 &2222137027263565689
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 769974252937479200}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9c806d80a321498c9f33f13d7a31065c, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.StatueDressup.DragDrop.DecorationGridIcon
iconImage: {fileID: 597267714783345863}
decorationData: {fileID: 0}

View File

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

View File

@@ -226,7 +226,7 @@ GameObject:
- component: {fileID: 2741639361616064442}
- component: {fileID: 4903273501345439385}
- component: {fileID: 1054459649399154791}
- component: {fileID: 7319925080429004531}
- component: {fileID: 61210891595976786}
m_Layer: 10
m_Name: Hidden
m_TagString: Untagged
@@ -451,7 +451,7 @@ MonoBehaviour:
audioSource: {fileID: 0}
clipPriority: 0
sourcePriority: 1
--- !u!114 &7319925080429004531
--- !u!114 &61210891595976786
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
@@ -460,9 +460,9 @@ MonoBehaviour:
m_GameObject: {fileID: 1011363502278351410}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 95e46aacea5b42888ee7881894193c11, type: 3}
m_Script: {fileID: 11500000, guid: 1fa347bfb45f473f8639842928f8cfa1, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Core.SaveLoad.AppleState
m_EditorClassIdentifier: AppleHillsScripts::StateMachines.Quarry.AnneLise.HiddenState
--- !u!1 &1674229500073894281
GameObject:
m_ObjectHideFlags: 0
@@ -830,6 +830,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 603ecc4a6ab6bb84c8cb9773fa310b69, type: 3}
m_Name:
m_EditorClassIdentifier: '::'
dialogueCanvas: {fileID: 7042752134100908030}
--- !u!114 &1193493154550576580
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -1740,3 +1741,8 @@ RectTransform:
m_CorrespondingSourceObject: {fileID: 3484825090253933040, guid: a8b0a1c6cf21352439dc24d3b03182db, type: 3}
m_PrefabInstance: {fileID: 4289827099693551234}
m_PrefabAsset: {fileID: 0}
--- !u!1 &7042752134100908030 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 6499933157207406972, guid: a8b0a1c6cf21352439dc24d3b03182db, type: 3}
m_PrefabInstance: {fileID: 4289827099693551234}
m_PrefabAsset: {fileID: 0}

View File

@@ -98,7 +98,6 @@ MonoBehaviour:
maxTapsToOpen: 3
tapPulseScale: 2
tapPulseDuration: 0.5
openingParticleSystem: {fileID: 0}
--- !u!1 &7174819457781356441
GameObject:
m_ObjectHideFlags: 0
@@ -203,7 +202,7 @@ MonoBehaviour:
useIdleAnimation: 1
idleAnimationSpeed: 1
packImage: {fileID: 536676675070797395}
packSprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
packSprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
glowEffect: {fileID: 0}
glowTransform: {fileID: 0}
openingScalePunch: 0.5
@@ -297,7 +296,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
m_Sprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1

View File

@@ -553,6 +553,9 @@ MonoBehaviour:
DelayBeforeStart: 0
TimeBetweenPages: 0
AutoStartFlip: 0
OnTargetReached:
m_PersistentCalls:
m_Calls: []
--- !u!1 &1503143967148854509
GameObject:
m_ObjectHideFlags: 0
@@ -1312,7 +1315,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
m_Sprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -3631,7 +3634,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
m_Sprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -4075,7 +4078,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
m_Sprite: {fileID: -1296148786, guid: b07c9a09f81cfa5428d6db01c6a36960, type: 3}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
@@ -7124,7 +7127,7 @@ PrefabInstance:
objectReference: {fileID: 0}
- target: {fileID: 8576570241677955255, guid: c260b7a90f2306840a21b8a898010e5a, type: 3}
propertyPath: m_AnchoredPosition.x
value: 31.999939
value: 32
objectReference: {fileID: 0}
- target: {fileID: 8576570241677955255, guid: c260b7a90f2306840a21b8a898010e5a, type: 3}
propertyPath: m_AnchoredPosition.y

File diff suppressed because one or more lines are too long

View File

@@ -1 +0,0 @@
{"TestSuite":"","Date":0,"Player":{"Development":false,"ScreenWidth":0,"ScreenHeight":0,"ScreenRefreshRate":0,"Fullscreen":false,"Vsync":0,"AntiAliasing":0,"Batchmode":false,"RenderThreadingMode":"MultiThreaded","GpuSkinning":false,"Platform":"","ColorSpace":"","AnisotropicFiltering":"","BlendWeights":"","GraphicsApi":"","ScriptingBackend":"IL2CPP","AndroidTargetSdkVersion":"AndroidApiLevelAuto","AndroidBuildSystem":"Gradle","BuildTarget":"Android","StereoRenderingPath":"MultiPass"},"Hardware":{"OperatingSystem":"","DeviceModel":"","DeviceName":"","ProcessorType":"","ProcessorCount":0,"GraphicsDeviceName":"","SystemMemorySizeMB":0},"Editor":{"Version":"6000.2.6f1","Branch":"6000.2/staging","Changeset":"cc51a95c0300","Date":1758053328},"Dependencies":["com.coplaydev.unity-mcp@6.3.0","com.moolt.packages.net@0.0.3","com.unity.2d.sprite@1.0.0","com.unity.2d.spriteshape@12.0.1","com.unity.addressables@2.7.3","com.unity.addressables.android@1.0.7","com.unity.cinemachine@3.1.4","com.unity.device-simulator.devices@1.0.0","com.unity.feature.2d@2.0.1","com.unity.film-internal-utilities@0.18.4-preview","com.unity.graphtoolkit@0.4.0-exp.2","com.unity.ide.rider@3.0.38","com.unity.ide.visualstudio@2.0.23","com.unity.inputsystem@1.14.2","com.unity.multiplayer.center@1.0.0","com.unity.render-pipelines.universal@17.2.0","com.unity.timeline@1.8.9","com.unity.ugui@2.0.0","com.unity.modules.accessibility@1.0.0","com.unity.modules.ai@1.0.0","com.unity.modules.androidjni@1.0.0","com.unity.modules.animation@1.0.0","com.unity.modules.assetbundle@1.0.0","com.unity.modules.audio@1.0.0","com.unity.modules.cloth@1.0.0","com.unity.modules.director@1.0.0","com.unity.modules.imageconversion@1.0.0","com.unity.modules.imgui@1.0.0","com.unity.modules.jsonserialize@1.0.0","com.unity.modules.particlesystem@1.0.0","com.unity.modules.physics@1.0.0","com.unity.modules.physics2d@1.0.0","com.unity.modules.screencapture@1.0.0","com.unity.modules.terrain@1.0.0","com.unity.modules.terrainphysics@1.0.0","com.unity.modules.tilemap@1.0.0","com.unity.modules.ui@1.0.0","com.unity.modules.uielements@1.0.0","com.unity.modules.umbra@1.0.0","com.unity.modules.unityanalytics@1.0.0","com.unity.modules.unitywebrequest@1.0.0","com.unity.modules.unitywebrequestassetbundle@1.0.0","com.unity.modules.unitywebrequestaudio@1.0.0","com.unity.modules.unitywebrequesttexture@1.0.0","com.unity.modules.unitywebrequestwww@1.0.0","com.unity.modules.vehicles@1.0.0","com.unity.modules.video@1.0.0","com.unity.modules.vr@1.0.0","com.unity.modules.wind@1.0.0","com.unity.modules.xr@1.0.0","com.unity.modules.subsystems@1.0.0","com.unity.modules.hierarchycore@1.0.0","com.unity.render-pipelines.core@17.2.0","com.unity.shadergraph@17.2.0","com.unity.render-pipelines.universal-config@17.0.3","com.unity.test-framework@1.6.0","com.unity.ext.nunit@2.0.5","com.unity.2d.animation@12.0.2","com.unity.2d.pixel-perfect@5.1.0","com.unity.2d.psdimporter@11.0.1","com.unity.2d.tilemap@1.0.0","com.unity.2d.tilemap.extras@5.0.1","com.unity.2d.aseprite@2.0.1","com.unity.splines@2.8.2","com.unity.profiling.core@1.0.2","com.unity.scriptablebuildpipeline@2.4.2","com.unity.2d.common@11.0.1","com.unity.mathematics@1.3.2","com.unity.nuget.newtonsoft-json@3.2.1","com.unity.searcher@4.9.3","com.unity.burst@1.8.24","com.unity.collections@2.5.7","com.unity.rendering.light-transport@1.0.1","com.unity.settings-manager@2.1.0","com.unity.nuget.mono-cecil@1.11.5","com.unity.test-framework.performance@3.1.0"],"Results":[]}

View File

@@ -1 +0,0 @@
{"MeasurementCount":-1}

View File

@@ -432118,72 +432118,10 @@ Transform:
m_CorrespondingSourceObject: {fileID: 9067462609398217044, guid: 6cbcaf4eb20e63e4fb462f6fb1ada3a7, type: 3}
m_PrefabInstance: {fileID: 286519576}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &287904381
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
serializedVersion: 3
m_TransformParent: {fileID: 726450010}
m_Modifications:
- target: {fileID: 5383276844808284485, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_Name
value: NextStepIndicator
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
--- !u!4 &287904382 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 5507990123417429516, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
m_PrefabInstance: {fileID: 287904381}
m_PrefabAsset: {fileID: 0}
--- !u!1 &287904383 stripped
GameObject:
m_CorrespondingSourceObject: {fileID: 5383276844808284485, guid: afbb486e5456a20479aee4cf8bc949b6, type: 3}
m_PrefabInstance: {fileID: 287904381}
m_CorrespondingSourceObject: {fileID: 4754571837807058846, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
m_PrefabInstance: {fileID: 1399567329}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &289703776
PrefabInstance:
@@ -442023,38 +441961,6 @@ MonoBehaviour:
audioSource: {fileID: 0}
clipPriority: 0
sourcePriority: 0
--- !u!1 &726450009
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 726450010}
m_Layer: 0
m_Name: AnimContainer
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &726450010
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 726450009}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0.13, y: 3.48, z: 0}
m_LocalScale: {x: 0.33, y: 0.33, z: 0.33}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 287904382}
m_Father: {fileID: 1399567330}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!4 &733706664 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6078012632802010276, guid: 3346526f3046f424196615241a307104, type: 3}
@@ -450296,7 +450202,7 @@ GameObject:
- component: {fileID: 1137411215}
m_Layer: 0
m_Name: CinemachineCamera
m_TagString: Untagged
m_TagString: MainCinemachineCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
@@ -452521,7 +452427,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!4 &1252594309
Transform:
m_ObjectHideFlags: 0
@@ -455783,74 +455689,10 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 368957768}
m_Modifications:
- target: {fileID: 22512726373136855, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_Layer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 588897581313790951, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_Name
value: SoundBird_Slot
objectReference: {fileID: 0}
- target: {fileID: 588897581313790951, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_Layer
value: 0
objectReference: {fileID: 0}
- target: {fileID: 588897581313790951, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_IsActive
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.size
value: 2
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_Mode
value: 6
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_Mode
value: 1
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_Target
value:
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_Target
value:
objectReference: {fileID: 2078227529}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_CallState
value: 2
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_MethodName
value: birdCanHear
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_MethodName
value: TakePhoto
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_TargetAssemblyTypeName
value: soundBird_CanFly, AppleHillsScripts
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_TargetAssemblyTypeName
value: StateMachines.Quarry.AnneLise.AnneLiseBushBehaviour, AppleHillsScripts
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgument
value:
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[0].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_Arguments.m_ObjectArgumentAssemblyTypeName
value: UnityEngine.Object, UnityEngine
objectReference: {fileID: 0}
- target: {fileID: 2523333015159032981, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalPosition.x
value: 0.04
@@ -455891,54 +455733,13 @@ PrefabInstance:
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalScale.x
value: 0.336075
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalScale.y
value: 0.336075
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalScale.z
value: 0.336075
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalPosition.x
value: -0.27
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalPosition.y
value: 2.37
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalRotation.w
value: 0.9971517
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalRotation.z
value: -0.075422555
objectReference: {fileID: 0}
- target: {fileID: 3907351184805552114, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: -8.651
objectReference: {fileID: 0}
m_RemovedComponents:
- {fileID: 2433130051631076285, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
- {fileID: 5057760771402457000, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
- target: {fileID: 7004860270194965002, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
propertyPath: itemSlot
value:
objectReference: {fileID: 1923065567}
m_RemovedComponents: []
m_RemovedGameObjects: []
m_AddedGameObjects:
- targetCorrespondingSourceObject: {fileID: 2523333015159032981, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
insertIndex: -1
addedObject: {fileID: 726450010}
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 9ad58c5e86338824db8a6daebdb432b5, type: 3}
--- !u!4 &1399567330 stripped
@@ -465965,7 +465766,8 @@ MonoBehaviour:
m_Calls: []
itemData: {fileID: 11400000, guid: d28f5774afad9d14f823601707150700, type: 2}
iconRenderer: {fileID: 1399567344}
slottedItemRenderer: {fileID: 1707349194}
slottedItemRenderers:
- {fileID: 1707349194}
onItemSlotted:
m_PersistentCalls:
m_Calls: []
@@ -471576,73 +471378,11 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: f44866deaba5f5c4a90f0330dd9957f0, type: 3}
--- !u!61 &562729168214229371
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
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: 0
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
m_Offset: {x: 0.17629433, y: -0.044074535}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0.5, y: 0.5}
oldSize: {x: 4.11, y: 7.29}
newSize: {x: 1.76, y: 0.75}
adaptiveTilingThreshold: 0.5
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
m_Size: {x: 4.306877, y: 7.860119}
m_EdgeRadius: 0
--- !u!4 &1548124686061025688 stripped
Transform:
m_CorrespondingSourceObject: {fileID: 6843886318979936936, guid: f15bf96f88d21b14191ad80200912775, type: 3}
m_PrefabInstance: {fileID: 3917799031583628180}
m_PrefabAsset: {fileID: 0}
--- !u!114 &1554702159576081814
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 242e6101be071f44fb14c3c12641c833, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::AppleAudioSource
audioSourceType: 3
audioSource: {fileID: 0}
clipPriority: 0
sourcePriority: 0
--- !u!1001 &2428672463423402429
PrefabInstance:
m_ObjectHideFlags: 0
@@ -471728,22 +471468,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 0bbded61e58193848ac59c8eea761bcc, type: 3}
--- !u!4 &2504621885268752766
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3200818438143536082}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -1.91, y: -0.1, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 8350908121428767421}
m_Father: {fileID: 3843529282510246820}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &2558461749605481847
PrefabInstance:
m_ObjectHideFlags: 0
@@ -471813,64 +471537,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: fc42c3bdda1c86d49b0bf80c28e5d372, type: 3}
--- !u!212 &2790478272885370935
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6695765450717844540}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 1
m_Sprite: {fileID: -8520225520565161345, guid: 34bd87b3ddf2a094c8b6e4700837321b, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 9.61, y: 8.51}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1001 &2926576032425091693
PrefabInstance:
m_ObjectHideFlags: 0
@@ -471928,22 +471594,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 2bb1b410b1073a74db35790cbdbb3d65, type: 3}
--- !u!1 &3200818438143536082
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 2504621885268752766}
m_Layer: 10
m_Name: HighlightEffect
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!1001 &3634696358937253989
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472013,6 +471663,14 @@ PrefabInstance:
propertyPath: bushAnimator
value:
objectReference: {fileID: 1476225951}
- target: {fileID: 3093816592344978065, guid: 3346526f3046f424196615241a307104, type: 3}
propertyPath: slottedItemRenderers.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 3093816592344978065, guid: 3346526f3046f424196615241a307104, type: 3}
propertyPath: 'slottedItemRenderers.Array.data[0]'
value:
objectReference: {fileID: 3708074769586677214}
- target: {fileID: 3093816592344978065, guid: 3346526f3046f424196615241a307104, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_Target
value:
@@ -472091,22 +471749,11 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 95e46aacea5b42888ee7881894193c11, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Core.SaveLoad.AppleState
--- !u!4 &3843529282510246820
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
--- !u!212 &3708074769586677214 stripped
SpriteRenderer:
m_CorrespondingSourceObject: {fileID: 7990414055343410434, guid: 3346526f3046f424196615241a307104, type: 3}
m_PrefabInstance: {fileID: 3708074769586677211}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -27.55, y: -37.05, z: 0}
m_LocalScale: {x: 0.51387, y: 0.51387, z: 0.1284675}
m_ConstrainProportionsScale: 1
m_Children:
- {fileID: 2504621885268752766}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &3917799031583628180
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472184,6 +471831,14 @@ PrefabInstance:
serializedVersion: 3
m_TransformParent: {fileID: 1007550749}
m_Modifications:
- target: {fileID: 106497079666291966, guid: df01157608cce6447b7ccde0bfa290e1, type: 3}
propertyPath: slottedItemRenderers.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 106497079666291966, guid: df01157608cce6447b7ccde0bfa290e1, type: 3}
propertyPath: 'slottedItemRenderers.Array.data[0]'
value:
objectReference: {fileID: 3978117984697153446}
- target: {fileID: 106497079666291966, guid: df01157608cce6447b7ccde0bfa290e1, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.data[1].m_Target
value:
@@ -472249,6 +471904,11 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: df01157608cce6447b7ccde0bfa290e1, type: 3}
--- !u!212 &3978117984697153446 stripped
SpriteRenderer:
m_CorrespondingSourceObject: {fileID: 3806274462998212361, guid: df01157608cce6447b7ccde0bfa290e1, type: 3}
m_PrefabInstance: {fileID: 3978117984697153445}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &4596770314561390347
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472384,103 +472044,6 @@ Transform:
m_CorrespondingSourceObject: {fileID: 3238893659345357084, guid: 65ec1c071829bf649a3393368237ad7f, type: 3}
m_PrefabInstance: {fileID: 4656836127232412646}
m_PrefabAsset: {fileID: 0}
--- !u!82 &4848152957860830997
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 6418180475301049370, guid: ee2166600ebe2b84ea8b22d20e34a691, type: 2}
m_PlayOnAwake: 0
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!1001 &4912039252317080710
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472639,64 +472202,6 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 9fba2c868971b20439aaea06a939d8e7, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!212 &4996209826637780837
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 2
m_Sprite: {fileID: 4365544765984126881, guid: 9dac643e78ad86e4988c11a92f9c7a6d, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 1.76, y: 0.75}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 1
--- !u!1001 &5288063114372713135
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472832,66 +472337,6 @@ Transform:
m_CorrespondingSourceObject: {fileID: 5624291602052377355, guid: 2b23896b733c2ae4cba6dcf21193402b, type: 3}
m_PrefabInstance: {fileID: 5320929981885366459}
m_PrefabAsset: {fileID: 0}
--- !u!1 &5336239773106239980
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3843529282510246820}
- component: {fileID: 4996209826637780837}
- component: {fileID: 562729168214229371}
- component: {fileID: 4848152957860830997}
- component: {fileID: 1554702159576081814}
- component: {fileID: 5336239773106239981}
m_Layer: 10
m_Name: BoosterPack
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &5336239773106239981
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 5336239773106239980}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 11629418bd2d44fa9da229ad62c04332, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Interactions.BoosterPackPickup
isOneTime: 0
cooldown: -1
characterToInteract: 2
interactionStarted:
m_PersistentCalls:
m_Calls: []
interactionInterrupted:
m_PersistentCalls:
m_Calls: []
characterArrived:
m_PersistentCalls:
m_Calls: []
interactionComplete:
m_PersistentCalls:
m_Calls: []
itemData: {fileID: 11400000, guid: c7fafa07afc3ea44598349d2a4777a8c, type: 2}
iconRenderer: {fileID: 4996209826637780837}
glowVisualPrefab: {fileID: 3200818438143536082}
zoomCamera: {fileID: 412581054}
boosterPackCount: 1
cameraBlendWait: 0.6
growDuration: 0.5
pulseDuration: 0.3
pulseCount: 3
disappearDuration: 0.5
growScale: 1.5
pulseScale: 1.2
--- !u!1001 &6535840132433368489
PrefabInstance:
m_ObjectHideFlags: 0
@@ -472969,46 +472414,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 3fa494ec083cbe54a86c3a1b107a90c0, type: 3}
--- !u!1 &6695765450717844540
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8350908121428767421}
- component: {fileID: 2790478272885370935}
- component: {fileID: 7148712646780739740}
m_Layer: 10
m_Name: Glow
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!95 &7148712646780739740
Animator:
serializedVersion: 7
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6695765450717844540}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: 625c4cf5003c069478057729a67f9f65, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
m_LinearVelocityBlending: 0
m_StabilizeFeet: 0
m_AnimatePhysics: 0
m_WarningMessage:
m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!1001 &7530821580781571560
PrefabInstance:
m_ObjectHideFlags: 0
@@ -473262,6 +472667,22 @@ PrefabInstance:
propertyPath: playerToPlaceDistance
value: 30
objectReference: {fileID: 0}
- target: {fileID: 4110666412151536905, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: m_Size.x
value: 5.75
objectReference: {fileID: 0}
- target: {fileID: 4110666412151536905, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: m_Size.y
value: 2.78
objectReference: {fileID: 0}
- target: {fileID: 4110666412151536905, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: m_Sprite
value:
objectReference: {fileID: 0}
- target: {fileID: 4110666412151536905, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: m_WasSpriteAssigned
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5375394469162727687, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: m_LocalPosition.x
value: 5.28
@@ -473334,6 +472755,18 @@ PrefabInstance:
propertyPath: m_Name
value: LureSpotA_Slot
objectReference: {fileID: 0}
- target: {fileID: 8578055200319571631, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: iconRenderer
value:
objectReference: {fileID: 8013274907828598646}
- target: {fileID: 8578055200319571631, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: slottedItemRenderers.Array.size
value: 1
objectReference: {fileID: 0}
- target: {fileID: 8578055200319571631, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: 'slottedItemRenderers.Array.data[0]'
value:
objectReference: {fileID: 8013274907828598645}
- target: {fileID: 8578055200319571631, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
propertyPath: onCorrectItemSlotted.m_PersistentCalls.m_Calls.Array.size
value: 2
@@ -473388,6 +472821,16 @@ Transform:
m_CorrespondingSourceObject: {fileID: 2045549771447434109, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
m_PrefabInstance: {fileID: 8013274907828598643}
m_PrefabAsset: {fileID: 0}
--- !u!212 &8013274907828598645 stripped
SpriteRenderer:
m_CorrespondingSourceObject: {fileID: 4110666412151536905, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
m_PrefabInstance: {fileID: 8013274907828598643}
m_PrefabAsset: {fileID: 0}
--- !u!212 &8013274907828598646 stripped
SpriteRenderer:
m_CorrespondingSourceObject: {fileID: 6258593095132504700, guid: 3144c6bbac26fbd49a1608152821cc5f, type: 3}
m_PrefabInstance: {fileID: 8013274907828598643}
m_PrefabAsset: {fileID: 0}
--- !u!1001 &8058740013708592448
PrefabInstance:
m_ObjectHideFlags: 0
@@ -473449,21 +472892,6 @@ PrefabInstance:
m_AddedGameObjects: []
m_AddedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 21444cac99fc9944a85884eccbc8b78d, type: 3}
--- !u!4 &8350908121428767421
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 6695765450717844540}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 2.03, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 2504621885268752766}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1660057539 &9223372036854775807
SceneRoots:
m_ObjectHideFlags: 0
@@ -473514,4 +472942,3 @@ SceneRoots:
- {fileID: 708284666}
- {fileID: 1679697302}
- {fileID: 412581053}
- {fileID: 3843529282510246820}

View File

@@ -306,7 +306,9 @@ MonoBehaviour:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.BirdPooper.BirdPooperGameManager
player: {fileID: 941621859}
obstacleSpawner: {fileID: 938885957}
targetSpawner: {fileID: 1838778561}
gameOverScreen: {fileID: 81231374}
poopPrefab: {fileID: 5552423787977869117, guid: 066f9990a9b1f5547b387633d5d204c0, type: 3}
--- !u!4 &128829408
Transform:
m_ObjectHideFlags: 0
@@ -681,12 +683,12 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 690060017}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 30.01, y: 0, z: 0}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 33.56759, y: 1.13668, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 938885956}
m_Father: {fileID: 1498486831}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &938473625
GameObject:
@@ -712,12 +714,12 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 938473625}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -30.12, y: 0, z: 0}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: -26.56241, y: 1.13668, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 938885956}
m_Father: {fileID: 1498486831}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &938885955
GameObject:
@@ -744,14 +746,12 @@ Transform:
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 938885955}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 3.55759, y: 1.13668, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 690060018}
- {fileID: 938473626}
m_Father: {fileID: 0}
m_Children: []
m_Father: {fileID: 1498486831}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &938885957
MonoBehaviour:
@@ -774,18 +774,10 @@ MonoBehaviour:
- {fileID: 5356906417396349863, guid: cc2a11f7e5edd7640921d1db442a7224, type: 3}
- {fileID: 1771686652490758453, guid: c2dcfdcc678ff3248b40d189f46a4d3b, type: 3}
- {fileID: 2166804132462075410, guid: c60915cb9b989c04caf075ed31cb2a53, type: 3}
- {fileID: 8872570883018587233, guid: ef4923a2e60ffa540b99d955668c9491, type: 3}
- {fileID: 6378685721593782219, guid: 6b5e79bd10362854e96e56400a25794d, type: 3}
- {fileID: 5221014930798827916, guid: c0d26b0d29c2d5a41a60dc01f80bd500, type: 3}
- {fileID: 9077746715280142631, guid: 830960246de8eec4d9535097ce3653db, type: 3}
- {fileID: 7335086015568222999, guid: 06674917a922d6c48a2d0ac0f6056e01, type: 3}
- {fileID: 8558432647259683993, guid: 8c71dd9ad06dafc41a3308f566726ac5, type: 3}
- {fileID: 461075067585331030, guid: 6a77320ba6ef47f448aa934a22bf396f, type: 3}
- {fileID: 552236068384934285, guid: a9a0c00b5622246429ebd7eaa351d175, type: 3}
- {fileID: 2022439803908362932, guid: 75f3874bd8cb48f4c8c7ff4452ec1c5f, type: 3}
- {fileID: 1526963434598685192, guid: 1a8e2dd4ee8bcab44850e0e63f14777d, type: 3}
- {fileID: 539450891493405750, guid: 700d5f9584069e940baa7107695d2788, type: 3}
- {fileID: 8553623782462946796, guid: de509c8e31091fc469f238050ff49c20, type: 3}
--- !u!1 &941621855
GameObject:
m_ObjectHideFlags: 0
@@ -796,12 +788,12 @@ GameObject:
m_Component:
- component: {fileID: 941621856}
- component: {fileID: 941621858}
- component: {fileID: 941621857}
- component: {fileID: 941621859}
- component: {fileID: 941621860}
- component: {fileID: 941621861}
m_Layer: 0
m_Name: Bird
m_TagString: Untagged
m_TagString: Player
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
@@ -822,52 +814,6 @@ Transform:
- {fileID: 989743355}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!61 &941621857
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 941621855}
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.10795927, y: 0.15422785}
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: 3.1489096, y: 3.1797535}
m_EdgeRadius: 0
--- !u!50 &941621858
Rigidbody2D:
serializedVersion: 5
@@ -939,6 +885,83 @@ MonoBehaviour:
visualizationColor: {r: 1, g: 0, b: 0, a: 0.8}
showObjectBounds: 1
debugMode: 0
--- !u!60 &941621861
PolygonCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 941621855}
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_Points:
m_Paths:
- - {x: 1.1532116, y: 0.58190906}
- {x: 1.4644184, y: 0.5569483}
- {x: 1.4214172, y: 0.31169766}
- {x: 1.6079073, y: 0.28156418}
- {x: 1.8019552, y: 0.67698365}
- {x: 1.8297558, y: 1.323832}
- {x: 1.654233, y: 1.3764026}
- {x: 1.5695343, y: 1.1152095}
- {x: 0.92802143, y: 1.1187038}
- {x: 0.7329979, y: 1.503772}
- {x: 0.46102428, y: 1.5575173}
- {x: 0.085243225, y: 1.2721097}
- {x: -0.123518944, y: 1.4144537}
- {x: -0.55174446, y: 1.6402422}
- {x: -0.64256763, y: 1.5012914}
- {x: -0.6007347, y: 1.0087695}
- {x: -0.7314367, y: 0.7691624}
- {x: -0.92963314, y: 0.907363}
- {x: -1.0350323, y: 0.77632636}
- {x: -0.7913971, y: 0.43193945}
- {x: -1.1180935, y: 0.46667978}
- {x: -1.1118784, y: 0.20180213}
- {x: -0.65509033, y: 0.111432254}
- {x: -0.5556206, y: -0.24077833}
- {x: -0.1923418, y: -0.6376203}
- {x: 0.0838753, y: -0.5945872}
- {x: 0.32236862, y: -0.4514704}
- {x: 0.4662609, y: -0.059037298}
- {x: 0.802371, y: 0.12178908}
- {x: 0.9939432, y: 0.33046013}
m_UseDelaunayMesh: 0
--- !u!1 &989743352
GameObject:
m_ObjectHideFlags: 0
@@ -1094,14 +1117,160 @@ RectTransform:
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Children:
- {fileID: 1122850720}
m_Father: {fileID: 1536057440}
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_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 100, y: 100}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!1 &1122850719
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1122850720}
- component: {fileID: 1122850723}
- component: {fileID: 1122850722}
- component: {fileID: 1122850721}
- component: {fileID: 1122850724}
m_Layer: 5
m_Name: Button
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1122850720
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1122850719}
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: 1088771378}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 1, y: 0}
m_AnchorMax: {x: 1, y: 0}
m_AnchoredPosition: {x: -91, y: 63}
m_SizeDelta: {x: 300, y: 300}
m_Pivot: {x: 1, y: 0}
--- !u!114 &1122850721
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1122850719}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button
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: 1122850722}
m_OnClick:
m_PersistentCalls:
m_Calls:
- m_Target: {fileID: 128829407}
m_TargetAssemblyTypeName: Minigames.BirdPooper.BirdPooperGameManager, AppleHillsScripts
m_MethodName: SpawnPoop
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: 1
--- !u!114 &1122850722
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1122850719}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
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: 6130942287420046110, guid: 9ef635f111f888a4386a7f0290117264, 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 &1122850723
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1122850719}
m_CullTransparentMesh: 1
--- !u!114 &1122850724
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1122850719}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 494d0aedce9744308499355006071138, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::UI.DummyInput
--- !u!1 &1143700528
GameObject:
m_ObjectHideFlags: 0
@@ -1155,6 +1324,41 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1498486830
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1498486831}
m_Layer: 0
m_Name: Spawners
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1498486831
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1498486830}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -3.55759, y: -1.13668, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 938885956}
- {fileID: 1838778560}
- {fileID: 690060018}
- {fileID: 938473626}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1536057436
GameObject:
m_ObjectHideFlags: 0
@@ -1428,6 +1632,56 @@ Transform:
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &1838778559
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1838778560}
- component: {fileID: 1838778561}
m_Layer: 0
m_Name: TargetSpawner
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1838778560
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1838778559}
serializedVersion: 2
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: 1498486831}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1838778561
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1838778559}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 16beae843b5f431f9256a56aab02b53d, type: 3}
m_Name:
m_EditorClassIdentifier: AppleHillsScripts::Minigames.BirdPooper.TargetSpawner
spawnPoint: {fileID: 690060018}
despawnPoint: {fileID: 938473626}
referenceMarker: {fileID: 1143700529}
cameraAdapter: {fileID: 2103114179}
targetPrefabs:
- {fileID: 8373178063207716143, guid: 020f7494c613b06479ccad2c4cedde0f, type: 3}
--- !u!1 &2103114174
GameObject:
m_ObjectHideFlags: 0
@@ -1528,6 +1782,6 @@ SceneRoots:
- {fileID: 580848255}
- {fileID: 941621856}
- {fileID: 1143700530}
- {fileID: 938885956}
- {fileID: 1498486831}
- {fileID: 1536057440}
- {fileID: 128829408}

File diff suppressed because it is too large Load Diff

View File

@@ -172,6 +172,7 @@ namespace Core
var cardSystemSettings = SettingsProvider.Instance.LoadSettingsSynchronous<CardSystemSettings>();
var sortingGameSettings = SettingsProvider.Instance.LoadSettingsSynchronous<CardSortingSettings>();
var birdPooperSettings = SettingsProvider.Instance.LoadSettingsSynchronous<BirdPooperSettings>();
var statueDressupSettings = SettingsProvider.Instance.LoadSettingsSynchronous<StatueDressupSettings>();
// Register settings with service locator
if (playerSettings != null)
@@ -233,9 +234,20 @@ namespace Core
{
Debug.LogError("Failed to load BirdPooperSettings");
}
if (statueDressupSettings != null)
{
ServiceLocator.Register<IStatueDressupSettings>(statueDressupSettings);
Logging.Debug("StatueDressupSettings registered successfully");
}
else
{
Debug.LogError("Failed to load StatueDressupSettings");
}
// Log success
_settingsLoaded = playerSettings != null && interactionSettings != null && minigameSettings != null && cardSystemSettings != null && birdPooperSettings != null;
_settingsLoaded = playerSettings != null && interactionSettings != null && minigameSettings != null
&& cardSystemSettings != null && birdPooperSettings != null && statueDressupSettings != null;
if (_settingsLoaded)
{
Logging.Debug("All settings loaded and registered with ServiceLocator");

View File

@@ -85,9 +85,17 @@ namespace Core.SaveLoad
private void OnApplicationQuit()
{
if (DeveloperSettingsProvider.Instance.GetSettings<DebugSettings>().useSaveLoadSystem)
var debugSettings = DeveloperSettingsProvider.Instance.GetSettings<DebugSettings>();
// Only save if the save system is enabled AND dontSaveOnQuit is false
if (debugSettings.UseSaveLoadSystem && !debugSettings.DontSaveOnQuit)
{
Save();
Logging.Debug("[SaveLoadManager] Saving on application quit");
}
else if (debugSettings.DontSaveOnQuit)
{
Logging.Debug("[SaveLoadManager] Skipping save on quit (dontSaveOnQuit enabled)");
}
}

View File

@@ -55,6 +55,13 @@ namespace Core.Settings
[Tooltip("Y position where poop is destroyed (off-screen bottom)")]
[SerializeField] private float poopDestroyYPosition = -10f;
[Header("Targets")]
[Tooltip("Target scroll speed in units/s (can be different from obstacles)")]
[SerializeField] private float targetMoveSpeed = 4f;
[Tooltip("Time between target spawns in seconds")]
[SerializeField] private float targetSpawnInterval = 3f;
// Interface implementation
public float Gravity => gravity;
public float FlapForce => flapForce;
@@ -71,6 +78,8 @@ namespace Core.Settings
public float ObstacleMaxSpawnY => obstacleMaxSpawnY;
public float PoopFallSpeed => poopFallSpeed;
public float PoopDestroyYPosition => poopDestroyYPosition;
public float TargetMoveSpeed => targetMoveSpeed;
public float TargetSpawnInterval => targetSpawnInterval;
public override void OnValidate()
{
@@ -83,6 +92,8 @@ namespace Core.Settings
maxRotationAngle = Mathf.Clamp(maxRotationAngle, 0f, 90f);
rotationSpeed = Mathf.Max(0.1f, rotationSpeed);
obstacleSpawnInterval = Mathf.Max(0.1f, obstacleSpawnInterval);
targetMoveSpeed = Mathf.Max(0.1f, targetMoveSpeed);
targetSpawnInterval = Mathf.Max(0.1f, targetSpawnInterval);
}
}
}

View File

@@ -29,8 +29,12 @@ namespace AppleHills.Core.Settings
[SerializeField] public bool pauseTimeOnPauseGame = true;
[Header("Save Load Options")]
[Tooltip("Should use save laod system?")]
[Tooltip("Should use save load system?")]
[SerializeField] public bool useSaveLoadSystem = true;
[Tooltip("Automatically clear all saves before entering play mode in editor")]
[SerializeField] public bool autoClearSaves = false;
[Tooltip("Load saves on start but don't save/overwrite data on exit")]
[SerializeField] public bool dontSaveOnQuit = false;
[Header("Logging Options")]
[Tooltip("Logging level for bootstrap services")]
@@ -49,6 +53,9 @@ namespace AppleHills.Core.Settings
// Property getters
public bool ShowDebugUiMessages => showDebugUiMessages;
public bool PauseTimeOnPauseGame => pauseTimeOnPauseGame;
public bool UseSaveLoadSystem => useSaveLoadSystem;
public bool AutoClearSaves => autoClearSaves;
public bool DontSaveOnQuit => dontSaveOnQuit;
public override void OnValidate()
{

View File

@@ -28,6 +28,10 @@
// Poop Projectile
float PoopFallSpeed { get; }
float PoopDestroyYPosition { get; }
// Targets
float TargetMoveSpeed { get; }
float TargetSpawnInterval { get; }
}
}

View File

@@ -23,5 +23,8 @@ namespace AppleHills.Core.Settings
public PickupItemData slotItem; // The slot object (SO reference)
public List<PickupItemData> allowedItems;
public List<PickupItemData> forbiddenItems; // Items that cannot be placed in this slot
[Tooltip("Number of items required to complete this slot. If 0, requires ALL allowed items.")]
public int requiredItemCount; // 0 = require all allowed items (backward compatible)
}
}

View File

@@ -1,5 +1,6 @@
using UnityEngine;
using System.Collections.Generic;
using Minigames.StatueDressup.Data;
namespace AppleHills.Core.Settings
{
@@ -160,4 +161,45 @@ namespace AppleHills.Core.Settings
// General Animation
float DefaultAnimationDuration { get; }
}
/// <summary>
/// Interface for statue dressup minigame settings
/// </summary>
public interface IStatueDressupSettings
{
// Decoration Display
Vector2 DefaultAuthoredSize { get; }
// Decoration Content
List<DecorationData> AllDecorations { get; }
// Menu Configuration
int ItemsPerPage { get; }
int GridColumns { get; }
Vector2 GridSpacing { get; }
// Drag and Drop
float DragScaleTransitionDuration { get; }
float ReturnToMenuDuration { get; }
float MinOverlapPercentage { get; }
// Animation
float HoverScaleMultiplier { get; }
float HoverAnimationDuration { get; }
float PlacementAnimationDuration { get; }
// Photo Settings
string PhotoSaveKey { get; }
int PhotoQuality { get; }
bool CaptureFullScreen { get; }
// Rewards
int CardsRewardCount { get; }
bool AutoCompleteOnPhoto { get; }
// State Persistence
bool EnableStatePersistence { get; }
string StateSaveKey { get; }
int MaxSavedDecorations { get; }
}
}

View File

@@ -0,0 +1,149 @@
using System.Collections.Generic;
using AppleHills.Core.Settings;
using Minigames.StatueDressup.Data;
using UnityEngine;
namespace Core.Settings
{
/// <summary>
/// Settings for the Mr. Cement Statue Decoration minigame
/// </summary>
[CreateAssetMenu(fileName = "StatueDressupSettings", menuName = "AppleHills/Settings/Statue Dressup", order = 7)]
public class StatueDressupSettings : BaseSettings, IStatueDressupSettings
{
[Header("Decoration Display")]
[Tooltip("Default full size for decorations when placed on statue")]
[SerializeField] private Vector2 defaultAuthoredSize = new Vector2(128f, 128f);
[Header("Decoration Content")]
[Tooltip("List of all available decoration data assets")]
[SerializeField] private List<DecorationData> allDecorations = new List<DecorationData>();
[Header("Menu Configuration")]
[Tooltip("Number of decoration items to display per page (2 columns x 5 rows = 10)")]
[SerializeField] private int itemsPerPage = 10;
[Tooltip("Number of columns in the decoration grid")]
[SerializeField] private int gridColumns = 2;
[Tooltip("Spacing between grid items")]
[SerializeField] private Vector2 gridSpacing = new Vector2(10f, 10f);
[Header("Drag and Drop")]
[Tooltip("Duration for icon to full size transition when dragging starts")]
[SerializeField] private float dragScaleTransitionDuration = 0.2f;
[Tooltip("Duration for return to menu animation")]
[SerializeField] private float returnToMenuDuration = 0.3f;
[Tooltip("Minimum overlap percentage required to place on statue (0-1)")]
[SerializeField] private float minOverlapPercentage = 0.1f;
[Header("Animation")]
[Tooltip("Scale multiplier for hover effect (1.0 = no change, 1.1 = 10% larger)")]
[SerializeField] private float hoverScaleMultiplier = 1.05f;
[Tooltip("Duration of hover animation")]
[SerializeField] private float hoverAnimationDuration = 0.2f;
[Tooltip("Duration for placement animation")]
[SerializeField] private float placementAnimationDuration = 0.15f;
[Header("Photo Settings")]
[Tooltip("PlayerPrefs key for saving the statue photo")]
[SerializeField] private string photoSaveKey = "MrCementStatuePhoto";
[Tooltip("Quality of the captured photo (1-100)")]
[SerializeField] private int photoQuality = 85;
[Tooltip("Whether to capture full screen or just statue area")]
[SerializeField] private bool captureFullScreen;
[Header("Rewards")]
[Tooltip("Number of Blokkemon cards awarded on completion")]
[SerializeField] private int cardsRewardCount = 3;
[Tooltip("Whether completion is automatic or requires confirmation")]
[SerializeField] private bool autoCompleteOnPhoto = true;
[Header("State Persistence")]
[Tooltip("Whether to save decoration positions between sessions")]
[SerializeField] private bool enableStatePersistence = true;
[Tooltip("PlayerPrefs key for saving decoration state")]
[SerializeField] private string stateSaveKey = "StatueDecorationState";
[Tooltip("Maximum number of decorations to save")]
[SerializeField] private int maxSavedDecorations = 50;
// IStatueDressupSettings implementation - Decoration Display
public Vector2 DefaultAuthoredSize => defaultAuthoredSize;
// IStatueDressupSettings implementation - Decoration Content
public List<DecorationData> AllDecorations => allDecorations;
// IStatueDressupSettings implementation - Menu Configuration
public int ItemsPerPage => itemsPerPage;
public int GridColumns => gridColumns;
public Vector2 GridSpacing => gridSpacing;
// IStatueDressupSettings implementation - Drag and Drop
public float DragScaleTransitionDuration => dragScaleTransitionDuration;
public float ReturnToMenuDuration => returnToMenuDuration;
public float MinOverlapPercentage => minOverlapPercentage;
// IStatueDressupSettings implementation - Animation
public float HoverScaleMultiplier => hoverScaleMultiplier;
public float HoverAnimationDuration => hoverAnimationDuration;
public float PlacementAnimationDuration => placementAnimationDuration;
// IStatueDressupSettings implementation - Photo Settings
public string PhotoSaveKey => photoSaveKey;
public int PhotoQuality => photoQuality;
public bool CaptureFullScreen => captureFullScreen;
// IStatueDressupSettings implementation - Rewards
public int CardsRewardCount => cardsRewardCount;
public bool AutoCompleteOnPhoto => autoCompleteOnPhoto;
// IStatueDressupSettings implementation - State Persistence
public bool EnableStatePersistence => enableStatePersistence;
public string StateSaveKey => stateSaveKey;
public int MaxSavedDecorations => maxSavedDecorations;
public override void OnValidate()
{
base.OnValidate();
// Validate decoration display
defaultAuthoredSize.x = Mathf.Max(32f, defaultAuthoredSize.x);
defaultAuthoredSize.y = Mathf.Max(32f, defaultAuthoredSize.y);
// Validate menu configuration
itemsPerPage = Mathf.Max(1, itemsPerPage);
gridColumns = Mathf.Max(1, gridColumns);
gridSpacing.x = Mathf.Max(0f, gridSpacing.x);
gridSpacing.y = Mathf.Max(0f, gridSpacing.y);
// Validate drag and drop
dragScaleTransitionDuration = Mathf.Max(0.01f, dragScaleTransitionDuration);
returnToMenuDuration = Mathf.Max(0.01f, returnToMenuDuration);
minOverlapPercentage = Mathf.Clamp01(minOverlapPercentage);
// Validate animation
hoverScaleMultiplier = Mathf.Max(1f, hoverScaleMultiplier);
hoverAnimationDuration = Mathf.Max(0.01f, hoverAnimationDuration);
placementAnimationDuration = Mathf.Max(0.01f, placementAnimationDuration);
// Validate photo settings
photoQuality = Mathf.Clamp(photoQuality, 1, 100);
// Validate rewards
cardsRewardCount = Mathf.Max(0, cardsRewardCount);
// Validate state persistence
maxSavedDecorations = Mathf.Max(1, maxSavedDecorations);
}
}
}

View File

@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 4fcf232a64e34f489b874519cc96339e
timeCreated: 1763984221

View File

@@ -1,84 +1,131 @@
using System.Collections;
using Unity.Cinemachine;
using UnityEngine;
using System.Collections;
public class EagleEyeBehaviour : MonoBehaviour
namespace DamianExperiments
{
[SerializeField] private CinemachineCamera virtualCamera;
[SerializeField] private CinemachineConfiner2D confiner2D;
[SerializeField] private float zoomOutOrthoSize = 30f;
[SerializeField] private float normalOrthoSize = 15f;
private float currentOrthoSize;
[SerializeField] private float transitionDuration = 0.5f; // Duration of the transition
[SerializeField] private float eagleEyeDuration = 3f; // Duration to stay zoomed out
[SerializeField] private bool disablePlayerInputDuringEagleEye = true; // Gate input disable
[SerializeField] private UnityEngine.UI.Button eagleEyeButton; // Reference to the UI button
private Coroutine zoomCoroutine;
public void ActivateEagleEye()
public class EagleEyeBehaviour : MonoBehaviour
{
//Assigns the Virtual Camera and Confiner if not already assigned
if (virtualCamera == null)
{
virtualCamera = FindAnyObjectByType<CinemachineCamera>();
}
if (confiner2D == null)
{
confiner2D = virtualCamera.GetComponent<CinemachineConfiner2D>();
}
// Serialized backing fields allow manual assignment in the inspector
private GameObject _cinecameraObject;
private CinemachineCamera _virtualCamera;
private CinemachineConfiner2D _confiner2D;
// Implementation for activating eagle eye behaviour
if (disablePlayerInputDuringEagleEye)
// Lazy-fetched properties: if null, try to find the GameObject tagged "MainCinemachineCamera"
private CinemachineCamera VirtualCamera
{
currentOrthoSize = virtualCamera.Lens.OrthographicSize;
}
if (eagleEyeButton != null)
{
eagleEyeButton.interactable = false;
}
if (zoomCoroutine != null) StopCoroutine(zoomCoroutine);
zoomCoroutine = StartCoroutine(EagleEyeSequence());
}
private IEnumerator EagleEyeSequence()
{
if (disablePlayerInputDuringEagleEye)
{
Core.GameManager.Instance.RequestPause(this); // Disable player input
}
yield return StartCoroutine(SmoothOrthoSize(virtualCamera, zoomOutOrthoSize, transitionDuration));
yield return new WaitForSeconds(eagleEyeDuration);
float zoomInTarget = disablePlayerInputDuringEagleEye ? currentOrthoSize : normalOrthoSize;
yield return StartCoroutine(SmoothOrthoSize(virtualCamera, zoomInTarget, transitionDuration));
if (disablePlayerInputDuringEagleEye)
{
Core.GameManager.Instance.ReleasePause(this); // Re-enable player input
}
if (eagleEyeButton != null)
{
eagleEyeButton.interactable = true;
}
}
private IEnumerator SmoothOrthoSize(CinemachineCamera cam, float targetSize, float duration)
{
float startSize = cam.Lens.OrthographicSize;
float elapsed = 0f;
while (elapsed < duration)
{
elapsed += Time.deltaTime;
cam.Lens.OrthographicSize = Mathf.Lerp(startSize, targetSize, elapsed / duration);
if (confiner2D != null)
get
{
confiner2D.InvalidateBoundingShapeCache();
if (_virtualCamera == null)
{
if (_cinecameraObject == null)
_cinecameraObject = GameObject.FindWithTag("MainCinemachineCamera");
if (_cinecameraObject != null)
{
_virtualCamera = _cinecameraObject.GetComponent<CinemachineCamera>();
if (_virtualCamera == null)
Debug.LogWarning("EagleEyeBehaviour: Found object with tag 'MainCinemachineCamera' " +
"but couldn't find a CinemachineCamera component.");
}
else
{
Debug.LogWarning("EagleEyeBehaviour: No GameObject found with tag 'MainCinemachineCamera'.");
}
}
return _virtualCamera;
}
yield return null;
set => _virtualCamera = value;
}
cam.Lens.OrthographicSize = targetSize;
if (confiner2D != null)
private CinemachineConfiner2D Confiner2D
{
confiner2D.InvalidateBoundingShapeCache();
get
{
if (_confiner2D == null)
{
// If a virtual camera exists, try to pull the confiner from it
if (VirtualCamera != null)
{
_confiner2D = VirtualCamera.GetComponent<CinemachineConfiner2D>();
}
if (_confiner2D == null)
{
Debug.LogWarning("EagleEyeBehaviour: CinemachineConfiner2D not found on the MainCinemachineCamera object.");
}
}
return _confiner2D;
}
set => _confiner2D = value;
}
[SerializeField] private float zoomOutOrthoSize = 30f;
[SerializeField] private float normalOrthoSize = 15f;
[SerializeField] private float transitionDuration = 0.5f; // Duration of the transition
[SerializeField] private float eagleEyeDuration = 3f; // Duration to stay zoomed out
[SerializeField] private UnityEngine.UI.Button eagleEyeButton; // Reference to the UI button
private Coroutine _zoomCoroutine;
private Coroutine _smoothOrthoCoroutine;
private float _currentOrthoSize;
public void ResetEagleEye()
{
if (_zoomCoroutine != null)
StopCoroutine(_zoomCoroutine);
if (_smoothOrthoCoroutine != null)
StopCoroutine(_smoothOrthoCoroutine);
if (eagleEyeButton != null)
eagleEyeButton.interactable = true;
}
public void ActivateEagleEye()
{
if (eagleEyeButton != null)
{
eagleEyeButton.interactable = false;
}
if (_zoomCoroutine != null) StopCoroutine(_zoomCoroutine);
_zoomCoroutine = StartCoroutine(EagleEyeSequence());
}
private IEnumerator EagleEyeSequence()
{
_smoothOrthoCoroutine = StartCoroutine(SmoothOrthoSize(VirtualCamera, zoomOutOrthoSize, transitionDuration));
yield return _smoothOrthoCoroutine;
yield return new WaitForSeconds(eagleEyeDuration);
float zoomInTarget = normalOrthoSize;
_smoothOrthoCoroutine = StartCoroutine(SmoothOrthoSize(VirtualCamera, zoomInTarget, transitionDuration));;
yield return _smoothOrthoCoroutine;
if (eagleEyeButton != null)
{
eagleEyeButton.interactable = true;
}
}
private IEnumerator SmoothOrthoSize(CinemachineCamera cam, float targetSize, float duration)
{
float startSize = cam.Lens.OrthographicSize;
float elapsed = 0f;
while (elapsed < duration)
{
elapsed += Time.deltaTime;
cam.Lens.OrthographicSize = Mathf.Lerp(startSize, targetSize, elapsed / duration);
if (Confiner2D != null)
{
Confiner2D.InvalidateBoundingShapeCache();
}
yield return null;
}
cam.Lens.OrthographicSize = targetSize;
if (Confiner2D != null)
{
Confiner2D.InvalidateBoundingShapeCache();
}
}
}
}

View File

@@ -30,7 +30,7 @@ public class cameraSwitcherNailBird : MonoBehaviour
private void OnTriggerExit2D(Collider2D other)
{
if (other.CompareTag("Player"))
if (other.CompareTag("Player") && gameObject.activeInHierarchy)
{
playerInsideCount--;
if (playerInsideCount == 0 && virtualCamera != null)

View File

@@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: 12ea065dca5840acae696a40c0cd96dc
timeCreated: 1763632462

View File

@@ -93,6 +93,10 @@ namespace Interactions
yield break;
}
// Cache original transform state to restore later
Vector3 originalPosition = heldItemTransform.localPosition;
Vector3 originalScale = heldItemTransform.localScale;
// 1. Pause follower movement
follower.PauseMovement();
@@ -132,7 +136,6 @@ namespace Interactions
}
// 3. Grow animation (no glow during this)
Vector3 originalScale = heldItemTransform.localScale;
Tween.LocalScale(heldItemTransform, originalScale * growScale, growDuration, 0f, Tween.EaseOutBack);
yield return new WaitForSeconds(growDuration);
@@ -275,10 +278,14 @@ namespace Interactions
Destroy(zoomCamera.gameObject);
}
// 10. Clear the follower's held item since we "consumed" it
// 10. Restore held item transform to original state before clearing
heldItemTransform.localPosition = originalPosition;
heldItemTransform.localScale = originalScale;
// 11. Clear the follower's held item since we "consumed" it
follower.ClearHeldItem();
// 11. Resume follower movement
// 12. Resume follower movement
follower.ResumeMovement();
sequencePlaying = false;

View File

@@ -38,6 +38,11 @@ namespace Interactions
protected FollowerController FollowerController;
private bool isActive = true;
/// <summary>
/// Gets whether this interactable is currently active (can be clicked)
/// </summary>
public bool IsActive => isActive;
// Action component system
private List<InteractionActionBase> _registeredActions = new List<InteractionActionBase>();
@@ -443,6 +448,14 @@ namespace Interactions
isActive = true;
}
/// <summary>
/// Enable or disable this interactable
/// </summary>
public void SetActive(bool active)
{
isActive = active;
}
#endregion
#region Legacy Methods & Compatibility

View File

@@ -1,4 +1,5 @@
using System.Collections.Generic;
using System.Linq; // for Count() on List<bool>
using UnityEngine;
using UnityEngine.Events;
using System; // for Action<T>
@@ -23,8 +24,9 @@ namespace Interactions
public class ItemSlotSaveData
{
public ItemSlotState slotState;
public string slottedItemSaveId;
public string slottedItemDataId; // ItemId of the PickupItemData (for verification)
public List<string> slottedItemSaveIds = new List<string>(); // Changed to list for multi-slot support
public List<string> slottedItemDataIds = new List<string>(); // Changed to list for multi-slot support
public bool isLocked; // Track if slot is completed and locked
}
/// <summary>
@@ -37,13 +39,17 @@ namespace Interactions
public PickupItemData itemData;
public SpriteRenderer iconRenderer;
// Slotted item tracking
private PickupItemData currentlySlottedItemData;
public SpriteRenderer slottedItemRenderer;
private GameObject currentlySlottedItemObject;
// Multi-slot item tracking
private List<PickupItemData> slottedItemsData = new List<PickupItemData>();
public SpriteRenderer[] slottedItemRenderers; // Array of renderers for multiple items
private List<GameObject> slottedItemObjects = new List<GameObject>();
private List<bool> slottedItemCorrectness = new List<bool>(); // Track which items are correct
// Tracks the current state of the slotted item
// Tracks the current state of the slotted item(s)
private ItemSlotState currentState = ItemSlotState.None;
// Lock flag to prevent removal after successful completion
private bool isLockedAfterCompletion;
// Settings reference
private IInteractionSettings interactionSettings;
@@ -53,10 +59,53 @@ namespace Interactions
/// Read-only access to the current slotted item state.
/// </summary>
public ItemSlotState CurrentSlottedState => currentState;
/// <summary>
/// Number of items currently slotted (correct or incorrect)
/// </summary>
public int CurrentSlottedCount => slottedItemObjects.Count;
/// <summary>
/// Number of CORRECT items currently slotted
/// </summary>
public int CurrentCorrectCount => slottedItemCorrectness.Count(correct => correct);
/// <summary>
/// Number of items required to complete this slot
/// </summary>
public int RequiredItemCount
{
get
{
var config = interactionSettings?.GetSlotItemConfig(itemData);
if (config != null)
{
// If requiredItemCount is set (> 0), use it; otherwise require all allowed items
return config.requiredItemCount > 0 ? config.requiredItemCount : (config.allowedItems?.Count ?? 0);
}
return 1; // Default to 1 for backward compatibility
}
}
/// <summary>
/// Whether this slot has all required CORRECT items
/// </summary>
public bool IsComplete => CurrentCorrectCount >= RequiredItemCount && RequiredItemCount > 0;
/// <summary>
/// Whether this slot has space for more items
/// </summary>
public bool HasSpace => slottedItemRenderers != null && CurrentSlottedCount < slottedItemRenderers.Length;
/// <summary>
/// Whether this is a multi-slot (more than one renderer)
/// </summary>
private bool IsMultiSlot => slottedItemRenderers != null && slottedItemRenderers.Length > 1;
public UnityEvent onItemSlotted;
public UnityEvent onItemSlotRemoved;
// Native C# event alternative for code-only subscribers
// Native C# event alternatives for code-only subscribers
public event Action<PickupItemData, PickupItemData> OnItemSlotted; // (slotData, slottedItemData)
public event Action<PickupItemData> OnItemSlotRemoved;
public UnityEvent onCorrectItemSlotted;
@@ -69,17 +118,30 @@ namespace Interactions
public UnityEvent onForbiddenItemSlotted;
/// <summary>
/// Get the first (or only) slotted object - for backward compatibility
/// </summary>
public GameObject GetSlottedObject()
{
return currentlySlottedItemObject;
return slottedItemObjects.Count > 0 ? slottedItemObjects[0] : null;
}
/// <summary>
/// Set a slotted object - for backward compatibility, replaces first item or adds
/// </summary>
public void SetSlottedObject(GameObject obj)
{
currentlySlottedItemObject = obj;
if (currentlySlottedItemObject != null)
if (obj != null)
{
currentlySlottedItemObject.SetActive(false);
if (slottedItemObjects.Count == 0)
{
slottedItemObjects.Add(obj);
}
else
{
slottedItemObjects[0] = obj;
}
obj.SetActive(false);
}
}
@@ -134,12 +196,32 @@ namespace Interactions
{
var heldItem = FollowerController?.CurrentlyHeldItemData;
// Check if slot is locked after completion
if (isLockedAfterCompletion)
{
if (heldItem != null)
return (false, "This is already complete.");
else
return (false, "I can't remove these items.");
}
// Scenario: Nothing held + Empty slot = Error
if (heldItem == null && currentlySlottedItemObject == null)
if (heldItem == null && CurrentSlottedCount == 0)
return (false, "This requires an item.");
// Check forbidden items if trying to slot into empty slot
if (heldItem != null && currentlySlottedItemObject == null)
// If holding an item and slot is full but not complete, allow swap
if (heldItem != null && !HasSpace)
{
// Allow swap for fixing mistakes (single-slot or multi-slot not complete)
if (!IsMultiSlot || !IsComplete)
return (true, null); // Allow swap
// Multi-slot is complete - can't swap
return (false, "This slot is full.");
}
// Check forbidden items if trying to slot
if (heldItem != null)
{
var config = interactionSettings?.GetSlotItemConfig(itemData);
var forbidden = config?.forbiddenItems ?? new List<PickupItemData>();
@@ -153,7 +235,7 @@ namespace Interactions
/// <summary>
/// Main interaction logic: Slot, pickup, swap, or combine items.
/// Returns true only if correct item was slotted.
/// Returns true only if correct item was slotted AND slot is now complete.
/// </summary>
protected override bool DoInteraction()
{
@@ -162,24 +244,33 @@ namespace Interactions
var heldItemData = FollowerController.CurrentlyHeldItemData;
var heldItemObj = FollowerController.GetHeldPickupObject();
// Scenario 1: Held item + Empty slot = Slot it
if (heldItemData != null && currentlySlottedItemObject == null)
// Scenario 1: Held item + Has space = Slot it
if (heldItemData != null && HasSpace)
{
SlotItem(heldItemObj, heldItemData);
FollowerController.ClearHeldItem(); // Clear follower's hand after slotting
return IsSlottedItemCorrect();
// Check if we completed the slot
if (IsComplete)
{
isLockedAfterCompletion = true;
currentState = ItemSlotState.Correct;
return true; // Completed!
}
return false; // Slotted but not complete yet
}
// Scenario 2 & 3: Slot is full
if (currentlySlottedItemObject != null)
if (CurrentSlottedCount > 0)
{
// Try combination if both items present
if (heldItemData != null)
// Try combination if both items present (only for single slots)
if (heldItemData != null && !IsMultiSlot)
{
var slottedPickup = currentlySlottedItemObject.GetComponent<Pickup>();
var slottedPickup = slottedItemObjects[0].GetComponent<Pickup>();
if (slottedPickup != null)
{
var comboResult = FollowerController.TryCombineItems(slottedPickup, out var combinationResultItem);
var comboResult = FollowerController.TryCombineItems(slottedPickup, out _);
if (comboResult == FollowerController.CombinationResult.Successful)
{
@@ -190,55 +281,88 @@ namespace Interactions
}
}
// No combination or unsuccessful - perform swap
// Step 1: Pickup from slot (follower now holds the old slotted item)
FollowerController.TryPickupItem(currentlySlottedItemObject, currentlySlottedItemData, dropItem: false);
ClearSlot();
// Step 2: If we had a held item, slot it (follower already holding picked up item, don't clear!)
if (heldItemData != null)
// Swap behavior when slot is full (single slots OR multi-slots that aren't complete)
if (heldItemData != null && !HasSpace)
{
SlotItem(heldItemObj, heldItemData);
// Don't clear follower - they're holding the item they picked up from the slot
return IsSlottedItemCorrect();
// For single slots: always allow swap
// For multi-slots: only allow swap if not complete yet (allows fixing mistakes)
if (!IsMultiSlot || !IsComplete)
{
// LIFO swap - swap with the last item
int lastIndex = CurrentSlottedCount - 1;
var itemToReturn = slottedItemObjects[lastIndex];
var itemDataToReturn = slottedItemsData[lastIndex];
// Step 1: Give old item to follower
FollowerController.TryPickupItem(itemToReturn, itemDataToReturn, dropItem: false);
// Step 2: Remove old item from slot
RemoveItemAtIndex(lastIndex);
// Step 3: Slot the new item
SlotItem(heldItemObj, heldItemData);
// Check if we completed the slot with this swap
if (IsComplete)
{
isLockedAfterCompletion = true;
currentState = ItemSlotState.Correct;
return true; // Completed!
}
return false; // Swapped but not complete
}
}
// Just picked up from slot - not a success
return false;
// Pickup from slot (empty hands) - LIFO removal
if (heldItemData == null)
{
int lastIndex = CurrentSlottedCount - 1;
var itemToPickup = slottedItemObjects[lastIndex];
var itemDataToPickup = slottedItemsData[lastIndex];
// Try to give item to follower
FollowerController.TryPickupItem(itemToPickup, itemDataToPickup, dropItem: false);
// Remove from slot
RemoveItemAtIndex(lastIndex);
// Just picked up from slot - not a success
return false;
}
}
// Shouldn't reach here (validation prevents empty + no held)
return false;
}
/// <summary>
/// Helper: Check if the currently slotted item is correct.
/// </summary>
private bool IsSlottedItemCorrect()
{
return currentState == ItemSlotState.Correct;
}
/// <summary>
/// Helper: Clear the slot and fire removal events.
/// </summary>
private void ClearSlot()
{
var previousData = currentlySlottedItemData;
var previousData = slottedItemsData.Count > 0 ? slottedItemsData[0] : null;
// Clear the pickup's OwningSlot reference
if (currentlySlottedItemObject != null)
// Clear all pickup's OwningSlot references
foreach (var itemObj in slottedItemObjects)
{
var pickup = currentlySlottedItemObject.GetComponent<Pickup>();
if (pickup != null)
if (itemObj != null)
{
pickup.OwningSlot = null;
var pickup = itemObj.GetComponent<Pickup>();
if (pickup != null)
{
pickup.OwningSlot = null;
}
}
}
currentlySlottedItemObject = null;
currentlySlottedItemData = null;
slottedItemObjects.Clear();
slottedItemsData.Clear();
slottedItemCorrectness.Clear(); // Also clear correctness tracking
currentState = ItemSlotState.None;
isLockedAfterCompletion = false;
UpdateSlottedSprite();
// Fire removal events
@@ -246,35 +370,92 @@ namespace Interactions
OnItemSlotRemoved?.Invoke(previousData);
}
/// <summary>
/// Helper: Remove a specific item from the slot by index.
/// </summary>
private void RemoveItemAtIndex(int index)
{
if (index < 0 || index >= CurrentSlottedCount)
return;
var itemObj = slottedItemObjects[index];
var removedItemData = slottedItemsData[index];
// Clear the pickup's OwningSlot reference
if (itemObj != null)
{
var pickup = itemObj.GetComponent<Pickup>();
if (pickup != null)
{
pickup.OwningSlot = null;
}
}
slottedItemObjects.RemoveAt(index);
slottedItemsData.RemoveAt(index);
slottedItemCorrectness.RemoveAt(index); // Also remove correctness tracking
if (CurrentSlottedCount == 0)
{
currentState = ItemSlotState.None;
isLockedAfterCompletion = false;
}
UpdateSlottedSprite();
// Fire removal events
onItemSlotRemoved?.Invoke();
OnItemSlotRemoved?.Invoke(removedItemData);
}
#endregion
#region Visual Updates
/// <summary>
/// Updates the sprite and scale for the currently slotted item.
/// Updates the sprite and scale for all slotted items.
/// </summary>
private void UpdateSlottedSprite()
{
if (slottedItemRenderer != null && currentlySlottedItemData != null && currentlySlottedItemData.mapSprite != null)
if (slottedItemRenderers == null || slottedItemRenderers.Length == 0)
return;
// Update each renderer based on slotted items
for (int i = 0; i < slottedItemRenderers.Length; i++)
{
slottedItemRenderer.sprite = currentlySlottedItemData.mapSprite;
// Scale sprite to desired height, preserve aspect ratio, compensate for parent scale
float desiredHeight = playerFollowerSettings?.HeldIconDisplayHeight ?? 2.0f;
var sprite = currentlySlottedItemData.mapSprite;
float spriteHeight = sprite.bounds.size.y;
Vector3 parentScale = slottedItemRenderer.transform.parent != null
? slottedItemRenderer.transform.parent.localScale
: Vector3.one;
if (spriteHeight > 0f)
var slotRenderer = slottedItemRenderers[i];
if (slotRenderer == null)
continue;
// If we have an item at this index, show it
if (i < slottedItemsData.Count && slottedItemsData[i] != null)
{
float uniformScale = desiredHeight / spriteHeight;
float scale = uniformScale / Mathf.Max(parentScale.x, parentScale.y);
slottedItemRenderer.transform.localScale = new Vector3(scale, scale, 1f);
var slottedData = slottedItemsData[i];
if (slottedData.mapSprite != null)
{
slotRenderer.sprite = slottedData.mapSprite;
// Scale sprite to desired height, preserve aspect ratio, compensate for parent scale
float desiredHeight = playerFollowerSettings?.HeldIconDisplayHeight ?? 2.0f;
var sprite = slottedData.mapSprite;
float spriteHeight = sprite.bounds.size.y;
Vector3 parentScale = slotRenderer.transform.parent != null
? slotRenderer.transform.parent.localScale
: Vector3.one;
if (spriteHeight > 0f)
{
float uniformScale = desiredHeight / spriteHeight;
float scale = uniformScale / Mathf.Max(parentScale.x, parentScale.y);
slotRenderer.transform.localScale = new Vector3(scale, scale, 1f);
}
}
}
else
{
// Clear renderer if no item at this index
slotRenderer.sprite = null;
}
}
else if (slottedItemRenderer != null)
{
slottedItemRenderer.sprite = null;
}
}
@@ -297,31 +478,47 @@ namespace Interactions
protected override object GetSerializableState()
{
// Get slotted item save ID if there's a slotted item
string slottedSaveId = "";
string slottedDataId = "";
if (currentlySlottedItemObject != null)
var saveData = new ItemSlotSaveData
{
var slottedPickup = currentlySlottedItemObject.GetComponent<Pickup>();
if (slottedPickup is SaveableInteractable saveablePickup)
slotState = currentState,
isLocked = isLockedAfterCompletion
};
// Save all slotted items
foreach (var itemObj in slottedItemObjects)
{
if (itemObj != null)
{
slottedSaveId = saveablePickup.SaveId;
var slottedPickup = itemObj.GetComponent<Pickup>();
if (slottedPickup is SaveableInteractable saveablePickup)
{
saveData.slottedItemSaveIds.Add(saveablePickup.SaveId);
}
else
{
saveData.slottedItemSaveIds.Add("");
}
}
else
{
saveData.slottedItemSaveIds.Add("");
}
}
// Also save the itemData ID for verification
if (currentlySlottedItemData != null)
// Save all item data IDs for verification
foreach (var slottedData in slottedItemsData)
{
slottedDataId = currentlySlottedItemData.itemId;
if (slottedData != null)
{
saveData.slottedItemDataIds.Add(slottedData.itemId);
}
else
{
saveData.slottedItemDataIds.Add("");
}
}
return new ItemSlotSaveData
{
slotState = currentState,
slottedItemSaveId = slottedSaveId,
slottedItemDataId = slottedDataId
};
return saveData;
}
protected override void ApplySerializableState(string serializedData)
@@ -335,13 +532,26 @@ namespace Interactions
// Restore slot state
currentState = data.slotState;
isLockedAfterCompletion = data.isLocked;
// Restore slotted item if there was one
if (!string.IsNullOrEmpty(data.slottedItemSaveId))
// Restore all slotted items if there were any
if (data.slottedItemSaveIds != null && data.slottedItemSaveIds.Count > 0)
{
Logging.Debug($"[ItemSlot] Restoring slotted item: {data.slottedItemSaveId} (itemId: {data.slottedItemDataId})");
RestoreSlottedItem(data.slottedItemSaveId, data.slottedItemDataId);
for (int i = 0; i < data.slottedItemSaveIds.Count; i++)
{
string saveId = data.slottedItemSaveIds[i];
string dataId = i < data.slottedItemDataIds.Count ? data.slottedItemDataIds[i] : "";
if (!string.IsNullOrEmpty(saveId))
{
Logging.Debug($"[ItemSlot] Restoring slotted item {i}: {saveId} (itemId: {dataId})");
RestoreSlottedItem(saveId, dataId);
}
}
}
// Update all renderers after restoration
UpdateSlottedSprite();
}
/// <summary>
@@ -411,118 +621,107 @@ namespace Interactions
return;
}
// Silently slot the item (no events, no interaction completion)
// Add to slotted items list (no events, no interaction completion)
// Follower state is managed separately during save/load restoration
ApplySlottedItemState(slottedObject, slottedData, triggerEvents: false);
slottedItemObjects.Add(slottedObject);
slottedItemsData.Add(slottedData);
Logging.Debug($"[ItemSlot] Successfully restored slotted item: {slottedData.itemName} (itemId: {slottedData.itemId})");
}
/// <summary>
/// Core logic for slotting an item. Can be used both for normal slotting and silent restoration.
/// NOTE: Does NOT call CompleteInteraction - the template method handles that via DoInteraction return value.
/// NOTE: Does NOT manage follower state - caller is responsible for clearing follower's hand if needed.
/// </summary>
/// <param name="itemToSlot">The item GameObject to slot (or null to clear)</param>
/// <param name="itemToSlotData">The PickupItemData for the item</param>
/// <param name="triggerEvents">Whether to fire events</param>
private void ApplySlottedItemState(GameObject itemToSlot, PickupItemData itemToSlotData, bool triggerEvents)
{
if (itemToSlot == null)
// Determine if this item is correct for correctness tracking
var config = interactionSettings?.GetSlotItemConfig(itemData);
var allowed = config?.allowedItems ?? new List<PickupItemData>();
bool isCorrectItem = PickupItemData.ListContainsEquivalent(allowed, slottedData);
slottedItemCorrectness.Add(isCorrectItem);
// Deactivate the item and set pickup state
slottedObject.SetActive(false);
if (pickup != null)
{
// Clear slot - also clear the pickup's OwningSlot reference
if (currentlySlottedItemObject != null)
{
var oldPickup = currentlySlottedItemObject.GetComponent<Pickup>();
if (oldPickup != null)
{
oldPickup.OwningSlot = null;
}
}
var previousData = currentlySlottedItemData;
currentlySlottedItemObject = null;
currentlySlottedItemData = null;
currentState = ItemSlotState.None;
// Fire native event for slot clearing (only if triggering events)
if (previousData != null && triggerEvents)
{
onItemSlotRemoved?.Invoke();
OnItemSlotRemoved?.Invoke(previousData);
}
}
else
{
// Slot the item
itemToSlot.SetActive(false);
itemToSlot.transform.SetParent(null);
SetSlottedObject(itemToSlot);
currentlySlottedItemData = itemToSlotData;
// Mark the pickup as picked up and track slot ownership for save/load
var pickup = itemToSlot.GetComponent<Pickup>();
if (pickup != null)
{
pickup.IsPickedUp = true;
pickup.OwningSlot = this;
}
// Determine if correct
var config = interactionSettings?.GetSlotItemConfig(itemData);
var allowed = config?.allowedItems ?? new List<PickupItemData>();
if (itemToSlotData != null && PickupItemData.ListContainsEquivalent(allowed, itemToSlotData))
{
currentState = ItemSlotState.Correct;
// Fire events if requested
if (triggerEvents)
{
DebugUIMessage.Show($"You correctly slotted {itemToSlotData.itemName} into: {itemData.itemName}", Color.green);
onCorrectItemSlotted?.Invoke();
OnCorrectItemSlotted?.Invoke(itemData, currentlySlottedItemData);
}
}
else
{
currentState = ItemSlotState.Incorrect;
// Fire events if requested
if (triggerEvents)
{
DebugUIMessage.Show("I'm not sure this works.", Color.yellow);
onIncorrectItemSlotted?.Invoke();
OnIncorrectItemSlotted?.Invoke(itemData, currentlySlottedItemData);
}
}
pickup.IsPickedUp = true;
pickup.OwningSlot = this;
}
UpdateSlottedSprite();
Logging.Debug($"[ItemSlot] Successfully restored slotted item: {slottedData.itemName} (itemId: {slottedData.itemId}, correct: {isCorrectItem})");
}
/// <summary>
/// Public API for slotting items during gameplay.
/// Adds item to the slot (multi-slot support).
/// Caller is responsible for managing follower's held item state.
/// </summary>
public void SlotItem(GameObject itemToSlot, PickupItemData itemToSlotData)
{
ApplySlottedItemState(itemToSlot, itemToSlotData, triggerEvents: true);
if (itemToSlot == null || itemToSlotData == null)
{
Logging.Warning($"[ItemSlot] Attempted to slot null item or data");
return;
}
// Determine if this item is correct (allowed)
var config = interactionSettings?.GetSlotItemConfig(itemData);
var allowed = config?.allowedItems ?? new List<PickupItemData>();
bool isCorrectItem = PickupItemData.ListContainsEquivalent(allowed, itemToSlotData);
// Add to lists
slottedItemObjects.Add(itemToSlot);
slottedItemsData.Add(itemToSlotData);
slottedItemCorrectness.Add(isCorrectItem); // Track correctness
// Deactivate item and set pickup state
itemToSlot.SetActive(false);
itemToSlot.transform.SetParent(null);
var pickup = itemToSlot.GetComponent<Pickup>();
if (pickup != null)
{
pickup.IsPickedUp = true;
pickup.OwningSlot = this;
}
// Update visuals
UpdateSlottedSprite();
// Fire events based on correctness
if (isCorrectItem)
{
DebugUIMessage.Show($"You slotted {itemToSlotData.itemName} into: {itemData.itemName}", Color.green);
// Fire generic slot event
onItemSlotted?.Invoke();
OnItemSlotted?.Invoke(itemData, itemToSlotData);
// Only fire correct completion event if ALL required CORRECT items are now slotted
if (IsComplete)
{
currentState = ItemSlotState.Correct;
DebugUIMessage.Show($"Completed: {itemData.itemName}", Color.green);
onCorrectItemSlotted?.Invoke();
OnCorrectItemSlotted?.Invoke(itemData, itemToSlotData);
}
}
else
{
// Incorrect item slotted
DebugUIMessage.Show($"Slotted {itemToSlotData.itemName}, but it might not be right...", Color.yellow);
onItemSlotted?.Invoke(); // Still fire generic event
OnItemSlotted?.Invoke(itemData, itemToSlotData);
onIncorrectItemSlotted?.Invoke();
OnIncorrectItemSlotted?.Invoke(itemData, itemToSlotData);
}
}
/// <summary>
/// Bilateral restoration entry point: Pickup calls this to offer itself to the Slot.
/// Returns true if claim was successful, false if slot already has an item or wrong pickup.
/// Returns true if claim was successful, false if slot is full or wrong pickup.
/// </summary>
public bool TryClaimSlottedItem(Pickup pickup)
{
if (pickup == null)
return false;
// If slot already has an item, reject the claim
if (currentlySlottedItemObject != null)
// If slot is full, reject the claim
if (!HasSpace)
{
Logging.Warning($"[ItemSlot] Already has a slotted item, rejecting claim from {pickup.gameObject.name}");
Logging.Warning($"[ItemSlot] Slot is full, rejecting claim from {pickup.gameObject.name}");
return false;
}
@@ -530,10 +729,21 @@ namespace Interactions
// Note: We don't have easy access to the expected SaveId here, so we just accept it
// The Pickup's bilateral restoration ensures it only claims the correct slot
// Claim the pickup
ApplySlottedItemState(pickup.gameObject, pickup.itemData, triggerEvents: false);
// Add the item to lists
slottedItemObjects.Add(pickup.gameObject);
slottedItemsData.Add(pickup.itemData);
Logging.Debug($"[ItemSlot] Successfully claimed slotted item: {pickup.itemData?.itemName}");
// Determine correctness for tracking
var config = interactionSettings?.GetSlotItemConfig(itemData);
var allowed = config?.allowedItems ?? new List<PickupItemData>();
bool isCorrectItem = PickupItemData.ListContainsEquivalent(allowed, pickup.itemData);
slottedItemCorrectness.Add(isCorrectItem);
pickup.gameObject.SetActive(false);
pickup.IsPickedUp = true;
pickup.OwningSlot = this;
Logging.Debug($"[ItemSlot] Successfully claimed slotted item: {pickup.itemData?.itemName} (correct: {isCorrectItem})");
return true;
}

View File

@@ -56,12 +56,12 @@ namespace Minigames.BirdPooper
return;
}
// Register as override consumer to capture ALL input (except UI button)
// Register as override consumer to capture ALL input (except UI button)
// Register as default consumer (gets input if nothing else consumes it)
// This allows UI buttons to work while still flapping when tapping empty space
if (Input.InputManager.Instance != null)
{
Input.InputManager.Instance.RegisterOverrideConsumer(this);
Debug.Log("[BirdPlayerController] Registered as override input consumer");
Input.InputManager.Instance.SetDefaultConsumer(this);
Debug.Log("[BirdPlayerController] Registered as default input consumer");
}
else
{
@@ -161,12 +161,12 @@ namespace Minigames.BirdPooper
/// <summary>
/// Called when a trigger collider enters this object's trigger.
/// Used for detecting obstacles without physics interactions.
/// Used for detecting obstacles and targets without physics interactions.
/// </summary>
private void OnTriggerEnter2D(Collider2D other)
{
// Check if the colliding object is tagged as an obstacle
if (other.CompareTag("Obstacle"))
// Check if the colliding object is tagged as an obstacle or target
if (other.CompareTag("Obstacle") || other.CompareTag("Target"))
{
HandleDeath();
}

View File

@@ -16,7 +16,13 @@ namespace Minigames.BirdPooper
[Header("References")]
[SerializeField] private BirdPlayerController player;
[SerializeField] private ObstacleSpawner obstacleSpawner;
[SerializeField] private TargetSpawner targetSpawner;
[SerializeField] private GameOverScreen gameOverScreen;
[SerializeField] private GameObject poopPrefab;
[Header("Game State")]
private int targetsHit;
private bool isGameOver;
internal override void OnManagedAwake()
{
@@ -42,6 +48,11 @@ namespace Minigames.BirdPooper
Debug.LogError("[BirdPooperGameManager] ObstacleSpawner reference not assigned!");
}
if (targetSpawner == null)
{
Debug.LogWarning("[BirdPooperGameManager] TargetSpawner reference not assigned! Targets will not spawn.");
}
if (gameOverScreen == null)
{
Debug.LogError("[BirdPooperGameManager] GameOverScreen reference not assigned!");
@@ -51,12 +62,21 @@ namespace Minigames.BirdPooper
// Hide game over screen on start
gameOverScreen.gameObject.SetActive(false);
}
if (poopPrefab == null)
{
Debug.LogWarning("[BirdPooperGameManager] Poop prefab not assigned!");
}
}
internal override void OnManagedStart()
{
base.OnManagedStart();
// Initialize game state
isGameOver = false;
targetsHit = 0;
// Subscribe to player events
if (player != null)
{
@@ -70,6 +90,13 @@ namespace Minigames.BirdPooper
obstacleSpawner.StartSpawning();
Debug.Log("[BirdPooperGameManager] Started obstacle spawning");
}
// Start target spawning
if (targetSpawner != null)
{
targetSpawner.StartSpawning();
Debug.Log("[BirdPooperGameManager] Started target spawning");
}
}
internal override void OnManagedDestroy()
@@ -95,7 +122,10 @@ namespace Minigames.BirdPooper
/// </summary>
private void HandlePlayerDamaged()
{
Debug.Log("[BirdPooperGameManager] Player damaged - showing game over screen");
if (isGameOver) return;
isGameOver = true;
Debug.Log($"[BirdPooperGameManager] Player damaged - Game Over! Targets Hit: {targetsHit}");
// Stop spawning obstacles
if (obstacleSpawner != null)
@@ -103,6 +133,12 @@ namespace Minigames.BirdPooper
obstacleSpawner.StopSpawning();
}
// Stop spawning targets
if (targetSpawner != null)
{
targetSpawner.StopSpawning();
}
// Show game over screen
if (gameOverScreen != null)
{
@@ -113,6 +149,39 @@ namespace Minigames.BirdPooper
Debug.LogError("[BirdPooperGameManager] GameOverScreen reference missing!");
}
}
/// <summary>
/// Spawns a poop projectile at the player's current position.
/// Called by UI button OnClick event.
/// </summary>
public void SpawnPoop()
{
if (isGameOver || player == null || poopPrefab == null)
return;
Vector3 spawnPosition = player.transform.position;
Instantiate(poopPrefab, spawnPosition, Quaternion.identity);
Debug.Log($"[BirdPooperGameManager] Spawned poop at {spawnPosition}");
}
/// <summary>
/// Called when a target is successfully hit by poop (Phase 5).
/// </summary>
public void OnTargetHit()
{
if (isGameOver) return;
targetsHit++;
Debug.Log($"[BirdPooperGameManager] Target Hit! Total: {targetsHit}");
}
#region Public Accessors
public bool IsGameOver => isGameOver;
public int TargetsHit => targetsHit;
#endregion
}
}

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