Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| c9e923975d | |||
| f5de33eac2 | |||
| faa061cced | |||
| c6830fa7a4 | |||
| e8b1569dd7 | |||
| 24b15d23a3 | |||
| ebb7ff5713 | |||
| 78fd2d534a |
@@ -2,8 +2,6 @@
|
|||||||
[Ll]ibrary/
|
[Ll]ibrary/
|
||||||
[Tt]emp/
|
[Tt]emp/
|
||||||
[Oo]bj/
|
[Oo]bj/
|
||||||
[Bb]uild/
|
|
||||||
[Bb]uilds/
|
|
||||||
[Ll]ogs/
|
[Ll]ogs/
|
||||||
[Uu]ser[Ss]ettings/
|
[Uu]ser[Ss]ettings/
|
||||||
[Mm]emoryCaptures/
|
[Mm]emoryCaptures/
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!114 &-7717569176498003463
|
--- !u!114 &-7089469192452529075
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 996dc0389e6ab3d47bff36efb5100da8
|
guid: 286d47ba18aaede41a95ea42de5ee2aa
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 9bf264414994db540866bf91890392c5
|
guid: 739043b0a1c09054cadff15b32b61fec
|
||||||
ModelImporter:
|
ModelImporter:
|
||||||
serializedVersion: 24200
|
serializedVersion: 24200
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
@@ -33,7 +33,7 @@ ModelImporter:
|
|||||||
isReadable: 0
|
isReadable: 0
|
||||||
meshes:
|
meshes:
|
||||||
lODScreenPercentages: []
|
lODScreenPercentages: []
|
||||||
globalScale: 1
|
globalScale: 0.1
|
||||||
meshCompression: 0
|
meshCompression: 0
|
||||||
addColliders: 0
|
addColliders: 0
|
||||||
useSRGBMaterialColor: 1
|
useSRGBMaterialColor: 1
|
||||||
@@ -91,7 +91,7 @@ ModelImporter:
|
|||||||
armStretch: 0.05
|
armStretch: 0.05
|
||||||
legStretch: 0.05
|
legStretch: 0.05
|
||||||
feetSpacing: 0
|
feetSpacing: 0
|
||||||
globalScale: 1
|
globalScale: 0.1
|
||||||
rootMotionBoneName:
|
rootMotionBoneName:
|
||||||
hasTranslationDoF: 0
|
hasTranslationDoF: 0
|
||||||
hasExtraRoot: 0
|
hasExtraRoot: 0
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: da281ef2071b2e144a17cf0ab83f1f82
|
guid: daccda73d2db7124db470c2a2f478fcf
|
||||||
ModelImporter:
|
ModelImporter:
|
||||||
serializedVersion: 24200
|
serializedVersion: 24200
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
@@ -33,7 +33,7 @@ ModelImporter:
|
|||||||
isReadable: 0
|
isReadable: 0
|
||||||
meshes:
|
meshes:
|
||||||
lODScreenPercentages: []
|
lODScreenPercentages: []
|
||||||
globalScale: 1
|
globalScale: 0.1
|
||||||
meshCompression: 0
|
meshCompression: 0
|
||||||
addColliders: 0
|
addColliders: 0
|
||||||
useSRGBMaterialColor: 1
|
useSRGBMaterialColor: 1
|
||||||
@@ -91,7 +91,7 @@ ModelImporter:
|
|||||||
armStretch: 0.05
|
armStretch: 0.05
|
||||||
legStretch: 0.05
|
legStretch: 0.05
|
||||||
feetSpacing: 0
|
feetSpacing: 0
|
||||||
globalScale: 1
|
globalScale: 0.1
|
||||||
rootMotionBoneName:
|
rootMotionBoneName:
|
||||||
hasTranslationDoF: 0
|
hasTranslationDoF: 0
|
||||||
hasExtraRoot: 0
|
hasExtraRoot: 0
|
||||||
@@ -0,0 +1,110 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d459dec8d7c5c524f912fd0b41cf58a4
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 24200
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 0
|
||||||
|
motionNodeName:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
importAnimatedCustomProperties: 0
|
||||||
|
importConstraints: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
extraUserProperties: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 0.1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 1
|
||||||
|
importLights: 1
|
||||||
|
nodeNameCollisionStrategy: 1
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
generateMeshLods: 0
|
||||||
|
meshLodGenerationFlags: 0
|
||||||
|
maximumMeshLod: -1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
normalCalculationMode: 4
|
||||||
|
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||||
|
blendShapeNormalImportMode: 1
|
||||||
|
normalSmoothingSource: 0
|
||||||
|
referencedClips: []
|
||||||
|
importAnimation: 1
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 3
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
globalScale: 0.1
|
||||||
|
rootMotionBoneName:
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
|
animationType: 2
|
||||||
|
humanoidOversampling: 1
|
||||||
|
avatarSetup: 0
|
||||||
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 1
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,110 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c2e1b6c2c306436489863f44c1a446ef
|
||||||
|
ModelImporter:
|
||||||
|
serializedVersion: 24200
|
||||||
|
internalIDToNameTable: []
|
||||||
|
externalObjects: {}
|
||||||
|
materials:
|
||||||
|
materialImportMode: 2
|
||||||
|
materialName: 0
|
||||||
|
materialSearch: 1
|
||||||
|
materialLocation: 1
|
||||||
|
animations:
|
||||||
|
legacyGenerateAnimations: 4
|
||||||
|
bakeSimulation: 0
|
||||||
|
resampleCurves: 1
|
||||||
|
optimizeGameObjects: 0
|
||||||
|
removeConstantScaleCurves: 0
|
||||||
|
motionNodeName:
|
||||||
|
animationImportErrors:
|
||||||
|
animationImportWarnings:
|
||||||
|
animationRetargetingWarnings:
|
||||||
|
animationDoRetargetingWarnings: 0
|
||||||
|
importAnimatedCustomProperties: 0
|
||||||
|
importConstraints: 0
|
||||||
|
animationCompression: 1
|
||||||
|
animationRotationError: 0.5
|
||||||
|
animationPositionError: 0.5
|
||||||
|
animationScaleError: 0.5
|
||||||
|
animationWrapMode: 0
|
||||||
|
extraExposedTransformPaths: []
|
||||||
|
extraUserProperties: []
|
||||||
|
clipAnimations: []
|
||||||
|
isReadable: 0
|
||||||
|
meshes:
|
||||||
|
lODScreenPercentages: []
|
||||||
|
globalScale: 0.1
|
||||||
|
meshCompression: 0
|
||||||
|
addColliders: 0
|
||||||
|
useSRGBMaterialColor: 1
|
||||||
|
sortHierarchyByName: 1
|
||||||
|
importPhysicalCameras: 1
|
||||||
|
importVisibility: 1
|
||||||
|
importBlendShapes: 1
|
||||||
|
importCameras: 1
|
||||||
|
importLights: 1
|
||||||
|
nodeNameCollisionStrategy: 1
|
||||||
|
fileIdsGeneration: 2
|
||||||
|
swapUVChannels: 0
|
||||||
|
generateSecondaryUV: 0
|
||||||
|
useFileUnits: 1
|
||||||
|
keepQuads: 0
|
||||||
|
weldVertices: 1
|
||||||
|
bakeAxisConversion: 0
|
||||||
|
preserveHierarchy: 0
|
||||||
|
skinWeightsMode: 0
|
||||||
|
maxBonesPerVertex: 4
|
||||||
|
minBoneWeight: 0.001
|
||||||
|
optimizeBones: 1
|
||||||
|
generateMeshLods: 0
|
||||||
|
meshLodGenerationFlags: 0
|
||||||
|
maximumMeshLod: -1
|
||||||
|
meshOptimizationFlags: -1
|
||||||
|
indexFormat: 0
|
||||||
|
secondaryUVAngleDistortion: 8
|
||||||
|
secondaryUVAreaDistortion: 15.000001
|
||||||
|
secondaryUVHardAngle: 88
|
||||||
|
secondaryUVMarginMethod: 1
|
||||||
|
secondaryUVMinLightmapResolution: 40
|
||||||
|
secondaryUVMinObjectScale: 1
|
||||||
|
secondaryUVPackMargin: 4
|
||||||
|
useFileScale: 1
|
||||||
|
strictVertexDataChecks: 0
|
||||||
|
tangentSpace:
|
||||||
|
normalSmoothAngle: 60
|
||||||
|
normalImportMode: 0
|
||||||
|
tangentImportMode: 3
|
||||||
|
normalCalculationMode: 4
|
||||||
|
legacyComputeAllNormalsFromSmoothingGroupsWhenMeshHasBlendShapes: 0
|
||||||
|
blendShapeNormalImportMode: 1
|
||||||
|
normalSmoothingSource: 0
|
||||||
|
referencedClips: []
|
||||||
|
importAnimation: 1
|
||||||
|
humanDescription:
|
||||||
|
serializedVersion: 3
|
||||||
|
human: []
|
||||||
|
skeleton: []
|
||||||
|
armTwist: 0.5
|
||||||
|
foreArmTwist: 0.5
|
||||||
|
upperLegTwist: 0.5
|
||||||
|
legTwist: 0.5
|
||||||
|
armStretch: 0.05
|
||||||
|
legStretch: 0.05
|
||||||
|
feetSpacing: 0
|
||||||
|
globalScale: 0.1
|
||||||
|
rootMotionBoneName:
|
||||||
|
hasTranslationDoF: 0
|
||||||
|
hasExtraRoot: 0
|
||||||
|
skeletonHasParents: 1
|
||||||
|
lastHumanDescriptionAvatarSource: {instanceID: 0}
|
||||||
|
autoGenerateAvatarMappingIfUnspecified: 1
|
||||||
|
animationType: 2
|
||||||
|
humanoidOversampling: 1
|
||||||
|
avatarSetup: 0
|
||||||
|
addHumanoidExtraRootOnlyWhenUsingAvatar: 1
|
||||||
|
importBlendShapeDeformPercent: 1
|
||||||
|
remapMaterialsIfMaterialImportModeIsNone: 0
|
||||||
|
additionalBone: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -194,6 +194,15 @@
|
|||||||
"processors": "",
|
"processors": "",
|
||||||
"interactions": "",
|
"interactions": "",
|
||||||
"initialStateCheck": false
|
"initialStateCheck": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "BuildRotate",
|
||||||
|
"type": "Button",
|
||||||
|
"id": "c1d2e3f4-0004-4004-8004-000000000004",
|
||||||
|
"expectedControlType": "Button",
|
||||||
|
"processors": "",
|
||||||
|
"interactions": "",
|
||||||
|
"initialStateCheck": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"bindings": [
|
"bindings": [
|
||||||
@@ -450,6 +459,17 @@
|
|||||||
"isComposite": false,
|
"isComposite": false,
|
||||||
"isPartOfComposite": false
|
"isPartOfComposite": false
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "c1d2e3f4-0005-4005-8005-000000000005",
|
||||||
|
"path": "<Keyboard>/r",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": ";Keyboard&Mouse",
|
||||||
|
"action": "BuildRotate",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"name": "",
|
"name": "",
|
||||||
"id": "b1b01001-0001-0001-0001-000000000001",
|
"id": "b1b01001-0001-0001-0001-000000000001",
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 367980bc97781344e98f52a1bb6b43c3
|
guid: 90713256b1707c340ad52edc4c1289fd
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
--- !u!114 &-200618253821946804
|
--- !u!114 &-4675547191748498746
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
@@ -20,14 +20,12 @@ Material:
|
|||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_Name: Wood_Sword
|
m_Name: Bed
|
||||||
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
||||||
m_Parent: {fileID: 0}
|
m_Parent: {fileID: 0}
|
||||||
m_ModifiedSerializedProperties: 0
|
m_ModifiedSerializedProperties: 0
|
||||||
m_ValidKeywords:
|
m_ValidKeywords:
|
||||||
- _METALLICSPECGLOSSMAP
|
|
||||||
- _NORMALMAP
|
- _NORMALMAP
|
||||||
- _OCCLUSIONMAP
|
|
||||||
m_InvalidKeywords: []
|
m_InvalidKeywords: []
|
||||||
m_LightmapFlags: 4
|
m_LightmapFlags: 4
|
||||||
m_EnableInstancingVariants: 0
|
m_EnableInstancingVariants: 0
|
||||||
@@ -42,11 +40,11 @@ Material:
|
|||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TexEnvs:
|
m_TexEnvs:
|
||||||
- _BaseMap:
|
- _BaseMap:
|
||||||
m_Texture: {fileID: 2800000, guid: 99b8d68c864ce0149b77d3f6257e874a, type: 3}
|
m_Texture: {fileID: 2800000, guid: 403ddb2ad9f2a674e8fcf7bc1a929a05, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _BumpMap:
|
- _BumpMap:
|
||||||
m_Texture: {fileID: 2800000, guid: eeedad52fa3659347b733aee8790befb, type: 3}
|
m_Texture: {fileID: 2800000, guid: 2c8f8a61394edf54f8d4924ea5cad791, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _DetailAlbedoMap:
|
- _DetailAlbedoMap:
|
||||||
@@ -66,15 +64,15 @@ Material:
|
|||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MainTex:
|
- _MainTex:
|
||||||
m_Texture: {fileID: 2800000, guid: 99b8d68c864ce0149b77d3f6257e874a, type: 3}
|
m_Texture: {fileID: 2800000, guid: 403ddb2ad9f2a674e8fcf7bc1a929a05, type: 3}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _MetallicGlossMap:
|
- _MetallicGlossMap:
|
||||||
m_Texture: {fileID: 2800000, guid: 74f1a2c6632a7934485a7f6bf60e71b5, type: 3}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _OcclusionMap:
|
- _OcclusionMap:
|
||||||
m_Texture: {fileID: 2800000, guid: 48c1b4010937a8c429694f7c97f8899d, type: 3}
|
m_Texture: {fileID: 0}
|
||||||
m_Scale: {x: 1, y: 1}
|
m_Scale: {x: 1, y: 1}
|
||||||
m_Offset: {x: 0, y: 0}
|
m_Offset: {x: 0, y: 0}
|
||||||
- _ParallaxMap:
|
- _ParallaxMap:
|
||||||
@@ -122,7 +120,7 @@ Material:
|
|||||||
- _Parallax: 0.005
|
- _Parallax: 0.005
|
||||||
- _QueueOffset: 0
|
- _QueueOffset: 0
|
||||||
- _ReceiveShadows: 1
|
- _ReceiveShadows: 1
|
||||||
- _Smoothness: 1
|
- _Smoothness: 0
|
||||||
- _SmoothnessTextureChannel: 0
|
- _SmoothnessTextureChannel: 0
|
||||||
- _SpecularHighlights: 1
|
- _SpecularHighlights: 1
|
||||||
- _SrcBlend: 1
|
- _SrcBlend: 1
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: f066455c9b1b5644d9684ada3f210715
|
guid: 123e30390bfadba49a381ecd9775b93f
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 2100000
|
mainObjectFileID: 2100000
|
||||||
@@ -1,140 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!114 &-5129662474584914909
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 11
|
|
||||||
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
|
||||||
version: 10
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 8
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: Wood_Pickaxe_mat
|
|
||||||
m_Shader: {fileID: 4800000, guid: 933532a4fcc9baf4fa0491de14d08ed7, type: 3}
|
|
||||||
m_Parent: {fileID: 0}
|
|
||||||
m_ModifiedSerializedProperties: 0
|
|
||||||
m_ValidKeywords:
|
|
||||||
- _METALLICSPECGLOSSMAP
|
|
||||||
- _NORMALMAP
|
|
||||||
- _OCCLUSIONMAP
|
|
||||||
m_InvalidKeywords: []
|
|
||||||
m_LightmapFlags: 4
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap:
|
|
||||||
RenderType: Opaque
|
|
||||||
disabledShaderPasses:
|
|
||||||
- MOTIONVECTORS
|
|
||||||
m_LockedProperties:
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BaseMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: ed3a180c3723ad04887dab81ae8ef4af, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: 3253f09a2195f3a46bf1f1ce72663871, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 2800000, guid: ed3a180c3723ad04887dab81ae8ef4af, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: a386090fb7578c0479fca4dfe0406e32, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _OcclusionMap:
|
|
||||||
m_Texture: {fileID: 2800000, guid: e64752a1e81f4fd459423cafa20d8e40, type: 3}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _ParallaxMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _SpecGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_Lightmaps:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_LightmapsInd:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_ShadowMasks:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
m_Ints: []
|
|
||||||
m_Floats:
|
|
||||||
- _AddPrecomputedVelocity: 0
|
|
||||||
- _AlphaClip: 0
|
|
||||||
- _AlphaToMask: 0
|
|
||||||
- _Blend: 0
|
|
||||||
- _BlendModePreserveSpecular: 1
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _ClearCoatMask: 0
|
|
||||||
- _ClearCoatSmoothness: 0
|
|
||||||
- _Cull: 2
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailAlbedoMapScale: 1
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _DstBlendAlpha: 0
|
|
||||||
- _EnvironmentReflections: 1
|
|
||||||
- _GlossMapScale: 0
|
|
||||||
- _Glossiness: 0
|
|
||||||
- _GlossyReflections: 0
|
|
||||||
- _Metallic: 0
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.005
|
|
||||||
- _QueueOffset: 0
|
|
||||||
- _ReceiveShadows: 1
|
|
||||||
- _Smoothness: 1
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _SrcBlendAlpha: 1
|
|
||||||
- _Surface: 0
|
|
||||||
- _WorkflowMode: 1
|
|
||||||
- _XRMotionVectorsPass: 1
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
|
||||||
m_BuildTextureStacks: []
|
|
||||||
m_AllowLocking: 1
|
|
||||||
@@ -1,204 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!21 &2100000
|
|
||||||
Material:
|
|
||||||
serializedVersion: 8
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_Name: New Material
|
|
||||||
m_Shader: {fileID: 4800000, guid: 69c1f799e772cb6438f56c23efccb782, type: 3}
|
|
||||||
m_Parent: {fileID: 0}
|
|
||||||
m_ModifiedSerializedProperties: 0
|
|
||||||
m_ValidKeywords: []
|
|
||||||
m_InvalidKeywords: []
|
|
||||||
m_LightmapFlags: 4
|
|
||||||
m_EnableInstancingVariants: 0
|
|
||||||
m_DoubleSidedGI: 0
|
|
||||||
m_CustomRenderQueue: -1
|
|
||||||
stringTagMap: {}
|
|
||||||
disabledShaderPasses:
|
|
||||||
- MOTIONVECTORS
|
|
||||||
m_LockedProperties:
|
|
||||||
m_SavedProperties:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TexEnvs:
|
|
||||||
- _BaseMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _BumpMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Control:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailAlbedoMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailMask:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _DetailNormalMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _EmissionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MainTex:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Mask0:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Mask1:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Mask2:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Mask3:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _MetallicGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Normal0:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Normal1:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Normal2:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Normal3:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _OcclusionMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _ParallaxMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _SpecGlossMap:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Splat0:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Splat1:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Splat2:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _Splat3:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- _TerrainHolesTexture:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_Lightmaps:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_LightmapsInd:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
- unity_ShadowMasks:
|
|
||||||
m_Texture: {fileID: 0}
|
|
||||||
m_Scale: {x: 1, y: 1}
|
|
||||||
m_Offset: {x: 0, y: 0}
|
|
||||||
m_Ints: []
|
|
||||||
m_Floats:
|
|
||||||
- _AddPrecomputedVelocity: 0
|
|
||||||
- _AlphaClip: 0
|
|
||||||
- _AlphaToMask: 0
|
|
||||||
- _Blend: 0
|
|
||||||
- _BlendModePreserveSpecular: 1
|
|
||||||
- _BumpScale: 1
|
|
||||||
- _ClearCoatMask: 0
|
|
||||||
- _ClearCoatSmoothness: 0
|
|
||||||
- _Cull: 2
|
|
||||||
- _Cutoff: 0.5
|
|
||||||
- _DetailAlbedoMapScale: 1
|
|
||||||
- _DetailNormalMapScale: 1
|
|
||||||
- _DstBlend: 0
|
|
||||||
- _DstBlendAlpha: 0
|
|
||||||
- _EnableHeightBlend: 0
|
|
||||||
- _EnableInstancedPerPixelNormal: 1
|
|
||||||
- _EnvironmentReflections: 1
|
|
||||||
- _GlossMapScale: 0
|
|
||||||
- _Glossiness: 0
|
|
||||||
- _GlossyReflections: 0
|
|
||||||
- _HeightTransition: 0
|
|
||||||
- _Metallic: 0
|
|
||||||
- _Metallic0: 0
|
|
||||||
- _Metallic1: 0
|
|
||||||
- _Metallic2: 0
|
|
||||||
- _Metallic3: 0
|
|
||||||
- _NumLayersCount: 1
|
|
||||||
- _OcclusionStrength: 1
|
|
||||||
- _Parallax: 0.005
|
|
||||||
- _QueueOffset: 0
|
|
||||||
- _ReceiveShadows: 1
|
|
||||||
- _Smoothness: 0.5
|
|
||||||
- _Smoothness0: 0.5
|
|
||||||
- _Smoothness1: 0.5
|
|
||||||
- _Smoothness2: 0.5
|
|
||||||
- _Smoothness3: 0.5
|
|
||||||
- _SmoothnessTextureChannel: 0
|
|
||||||
- _SpecularHighlights: 1
|
|
||||||
- _SrcBlend: 1
|
|
||||||
- _SrcBlendAlpha: 1
|
|
||||||
- _Surface: 0
|
|
||||||
- _WorkflowMode: 1
|
|
||||||
- _XRMotionVectorsPass: 1
|
|
||||||
- _ZWrite: 1
|
|
||||||
m_Colors:
|
|
||||||
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _Color: {r: 1, g: 1, b: 1, a: 1}
|
|
||||||
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
|
|
||||||
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
|
|
||||||
m_BuildTextureStacks: []
|
|
||||||
m_AllowLocking: 1
|
|
||||||
--- !u!114 &200115796970648388
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 11
|
|
||||||
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Editor::UnityEditor.Rendering.Universal.AssetVersion
|
|
||||||
version: 10
|
|
||||||
@@ -430,6 +430,7 @@ GameObject:
|
|||||||
- component: {fileID: 4782095384616423459}
|
- component: {fileID: 4782095384616423459}
|
||||||
- component: {fileID: 1509526206074017255}
|
- component: {fileID: 1509526206074017255}
|
||||||
- component: {fileID: 1890885114087150018}
|
- component: {fileID: 1890885114087150018}
|
||||||
|
- component: {fileID: -4423719270533760289}
|
||||||
- component: {fileID: 656527942023048284}
|
- component: {fileID: 656527942023048284}
|
||||||
- component: {fileID: 4969709554801488359}
|
- component: {fileID: 4969709554801488359}
|
||||||
m_Layer: 10
|
m_Layer: 10
|
||||||
@@ -919,6 +920,7 @@ MonoBehaviour:
|
|||||||
- {fileID: 4232943699575871128}
|
- {fileID: 4232943699575871128}
|
||||||
- {fileID: 7331404443355966726}
|
- {fileID: 7331404443355966726}
|
||||||
- {fileID: 3026700730577618004}
|
- {fileID: 3026700730577618004}
|
||||||
|
- {fileID: -4423719270533760289}
|
||||||
ownerOnlyObjects:
|
ownerOnlyObjects:
|
||||||
- {fileID: 3016760143010852029}
|
- {fileID: 3016760143010852029}
|
||||||
- {fileID: 5457574158965716017}
|
- {fileID: 5457574158965716017}
|
||||||
@@ -1040,6 +1042,21 @@ MonoBehaviour:
|
|||||||
nameLabel: {fileID: 7210073718532933207}
|
nameLabel: {fileID: 7210073718532933207}
|
||||||
faceCamera: 1
|
faceCamera: 1
|
||||||
flipHorizontal: 0
|
flipHorizontal: 0
|
||||||
|
--- !u!114 &-4423719270533760289
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 5167716622245296089}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: fabb912832c44b945a26c8ef03db222a, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Crafting.CraftDiscovery
|
||||||
|
_componentIndexCache: 255
|
||||||
|
_addedNetworkObject: {fileID: -5889822588553870904}
|
||||||
|
_networkObjectCache: {fileID: 0}
|
||||||
--- !u!114 &656527942023048284
|
--- !u!114 &656527942023048284
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 49606536bf4437446ac884b2cc2b5636
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,203 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1238521633607646317
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 525373661776312631}
|
||||||
|
- component: {fileID: 4990764154519191519}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: WoodChest
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &525373661776312631
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1238521633607646317}
|
||||||
|
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: 0.9999999, z: 0.9999999}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 7408694083014735}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!137 &4990764154519191519
|
||||||
|
SkinnedMeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1238521633607646317}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 1
|
||||||
|
m_ReceiveShadows: 1
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 3
|
||||||
|
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: 0e771690fad43914fb256fd021ff1796, 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: 0
|
||||||
|
m_SelectedEditorRenderState: 3
|
||||||
|
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_MaskInteraction: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Quality: 0
|
||||||
|
m_UpdateWhenOffscreen: 0
|
||||||
|
m_SkinnedMotionVectors: 1
|
||||||
|
m_Mesh: {fileID: 4300000, guid: 1cc6cc20abc7a464a9dec49ee02361cf, type: 3}
|
||||||
|
m_Bones: []
|
||||||
|
m_BlendShapeWeights: []
|
||||||
|
m_RootBone: {fileID: 0}
|
||||||
|
m_AABB:
|
||||||
|
m_Center: {x: -0.00000011920929, y: 0.9934905, z: 0.046147406}
|
||||||
|
m_Extent: {x: 1.4447958, y: 0.99102205, z: 0.86538196}
|
||||||
|
m_DirtyAABB: 0
|
||||||
|
--- !u!1 &8724245919954373429
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1140867685286266164}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Base
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1140867685286266164
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 8724245919954373429}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0.000000067179414, y: -0, z: -0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: -0.0022011993, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 7408694083014735}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &9108319890109776348
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 7408694083014735}
|
||||||
|
- component: {fileID: 5167602068127165240}
|
||||||
|
- component: {fileID: 4639091196094287924}
|
||||||
|
m_Layer: 0
|
||||||
|
m_Name: Chest
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &7408694083014735
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 607.9671, y: 470.98746, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 1140867685286266164}
|
||||||
|
- {fileID: 525373661776312631}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!95 &5167602068127165240
|
||||||
|
Animator:
|
||||||
|
serializedVersion: 7
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_Avatar: {fileID: 9000000, guid: 1cc6cc20abc7a464a9dec49ee02361cf, type: 3}
|
||||||
|
m_Controller: {fileID: 0}
|
||||||
|
m_CullingMode: 1
|
||||||
|
m_UpdateMode: 0
|
||||||
|
m_ApplyRootMotion: 0
|
||||||
|
m_LinearVelocityBlending: 0
|
||||||
|
m_StabilizeFeet: 0
|
||||||
|
m_AnimatePhysics: 0
|
||||||
|
m_WarningMessage:
|
||||||
|
m_HasTransformHierarchy: 0
|
||||||
|
m_AllowConstantClipSamplingOptimization: 1
|
||||||
|
m_KeepAnimatorStateOnDisable: 0
|
||||||
|
m_WriteDefaultValuesOnDisable: 0
|
||||||
|
--- !u!65 &4639091196094287924
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.8880982, y: 2.0247374, z: 1.8538849}
|
||||||
|
m_Center: {x: 0, y: 1.0007629, z: 0.01897195}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 396074f30895cad4e9784aa30405b3c1
|
guid: 041dab0de12a5854898716d7eecf3a38
|
||||||
PrefabImporter:
|
PrefabImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
@@ -0,0 +1,181 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &80555091247393707
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 5155531265051259965}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Respanw Point
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &5155531265051259965
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 80555091247393707}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 1.185}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1974791568506913495}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &1410034494400494434
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1974791568506913495}
|
||||||
|
- component: {fileID: 7121555757307145449}
|
||||||
|
- component: {fileID: 8025352644449905843}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Dual Bed
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1974791568506913495
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 38.80009, y: 0, z: 37.555004}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 2750452856085184630}
|
||||||
|
- {fileID: 5155531265051259965}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!65 &7121555757307145449
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.1684494, y: 0.7840714, z: 1.781552}
|
||||||
|
m_Center: {x: -0.06585312, y: 0.40030995, z: 0}
|
||||||
|
--- !u!114 &8025352644449905843
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5b64acb9b3e11a6408744a646644c073, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.Bed
|
||||||
|
respawnAnchor: {fileID: 5155531265051259965}
|
||||||
|
interactionPrompt: "D\xE9finir le point de r\xE9veil"
|
||||||
|
--- !u!1001 &2423265566855260061
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 1974791568506913495}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalScale.y
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalScale.z
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: 0.00000006717942
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -7511558181221131132, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: 'm_Materials.Array.data[0]'
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2100000, guid: 123e30390bfadba49a381ecd9775b93f, type: 2}
|
||||||
|
- target: {fileID: 919132149155446097, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: dual bed
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 919132149155446097, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 9
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_RemovedGameObjects: []
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents: []
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
--- !u!4 &2750452856085184630 stripped
|
||||||
|
Transform:
|
||||||
|
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 2423265566855260061}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: c00bd91003bf1774f8fedd4f0d12e8c9
|
guid: 75709898450916748958db6a8ae2a48f
|
||||||
PrefabImporter:
|
PrefabImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
@@ -0,0 +1,431 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &480736328517298862
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1942471322536217356}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Snap
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1942471322536217356
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 480736328517298862}
|
||||||
|
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:
|
||||||
|
- {fileID: 6870778831223154685}
|
||||||
|
- {fileID: 2524477793229890458}
|
||||||
|
- {fileID: 2131578201294031463}
|
||||||
|
- {fileID: 8179181624519070060}
|
||||||
|
m_Father: {fileID: 2140759467227372249}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &1660908140604244018
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6870778831223154685}
|
||||||
|
- component: {fileID: 6877881682430573567}
|
||||||
|
- component: {fileID: 612144715090567965}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_North
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &6870778831223154685
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1660908140604244018}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: -1, z: -0, w: 0.0000029504295}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: -1.2409973}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1942471322536217356}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: -180, z: 0}
|
||||||
|
--- !u!114 &6877881682430573567
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1660908140604244018}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &612144715090567965
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1660908140604244018}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 1
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &3209735075952564995
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2140759467227372249}
|
||||||
|
- component: {fileID: 6877544168227861141}
|
||||||
|
- component: {fileID: 4884403491460680490}
|
||||||
|
- component: {fileID: 1774354476493266722}
|
||||||
|
- component: {fileID: 6057546317908917559}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: WoodCelling_Prefab
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &2140759467227372249
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3209735075952564995}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 72.18446, y: -0.55225, z: 91.49081}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 1942471322536217356}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!33 &6877544168227861141
|
||||||
|
MeshFilter:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3209735075952564995}
|
||||||
|
m_Mesh: {fileID: -2092554398656258221, guid: 1b42665a080463144a6dbfce1200feba, type: 3}
|
||||||
|
--- !u!23 &4884403491460680490
|
||||||
|
MeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3209735075952564995}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 1
|
||||||
|
m_ReceiveShadows: 1
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 2
|
||||||
|
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: 9f0520b2b2583b244b0e2c767593a214, 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: 3
|
||||||
|
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_MaskInteraction: 0
|
||||||
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
|
--- !u!65 &1774354476493266722
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3209735075952564995}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.4893725, y: 0.279638, z: 2.4685874}
|
||||||
|
m_Center: {x: 0.0011386871, y: -0.07322356, z: -0.012834609}
|
||||||
|
--- !u!114 &6057546317908917559
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3209735075952564995}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 3239767b01eb17642a9aa5c614618ae7, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.GrassClearer.ClearGrassOnPlace
|
||||||
|
--- !u!1 &4650471915439996732
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2524477793229890458}
|
||||||
|
- component: {fileID: 8255092423828011360}
|
||||||
|
- component: {fileID: 1179469570671982705}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_South
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &2524477793229890458
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4650471915439996732}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.7071079}
|
||||||
|
m_LocalPosition: {x: 1.2409973, y: 0, z: 0.0000076293945}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1942471322536217356}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
|
||||||
|
--- !u!114 &8255092423828011360
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4650471915439996732}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &1179469570671982705
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4650471915439996732}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 1
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &4799995118589501802
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2131578201294031463}
|
||||||
|
- component: {fileID: 3584398175655418314}
|
||||||
|
- component: {fileID: 7190310931469936734}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_East
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &2131578201294031463
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4799995118589501802}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 1.241}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1942471322536217356}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &3584398175655418314
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4799995118589501802}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &7190310931469936734
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4799995118589501802}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 1
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &9051056320518420532
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 8179181624519070060}
|
||||||
|
- component: {fileID: 1268498989253368643}
|
||||||
|
- component: {fileID: 5138841435529898872}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_West
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &8179181624519070060
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9051056320518420532}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: -0.7933523, z: -0, w: 0.60876286}
|
||||||
|
m_LocalPosition: {x: -1.2409973, y: 0, z: -0.0000076293945}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1942471322536217356}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: -105, z: 0}
|
||||||
|
--- !u!114 &1268498989253368643
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9051056320518420532}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &5138841435529898872
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9051056320518420532}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 1
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: adbf0247d50ef68409136335af276fc1
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a484d4e341e6d034cb7acbdcd0a886c9
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,295 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &1238521633607646317
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 525373661776312631}
|
||||||
|
- component: {fileID: 4990764154519191519}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: WoodChest
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &525373661776312631
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1238521633607646317}
|
||||||
|
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: 0.9999999, z: 0.9999999}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 7408694083014735}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!137 &4990764154519191519
|
||||||
|
SkinnedMeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1238521633607646317}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 1
|
||||||
|
m_ReceiveShadows: 1
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 3
|
||||||
|
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: 0e771690fad43914fb256fd021ff1796, 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: 0
|
||||||
|
m_SelectedEditorRenderState: 3
|
||||||
|
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_MaskInteraction: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Quality: 0
|
||||||
|
m_UpdateWhenOffscreen: 0
|
||||||
|
m_SkinnedMotionVectors: 1
|
||||||
|
m_Mesh: {fileID: 4300000, guid: 1cc6cc20abc7a464a9dec49ee02361cf, type: 3}
|
||||||
|
m_Bones: []
|
||||||
|
m_BlendShapeWeights: []
|
||||||
|
m_RootBone: {fileID: 0}
|
||||||
|
m_AABB:
|
||||||
|
m_Center: {x: -0.00000011920929, y: 0.9934905, z: 0.046147406}
|
||||||
|
m_Extent: {x: 1.4447958, y: 0.99102205, z: 0.86538196}
|
||||||
|
m_DirtyAABB: 0
|
||||||
|
--- !u!1 &9108319890109776348
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 7408694083014735}
|
||||||
|
- component: {fileID: 5167602068127165240}
|
||||||
|
- component: {fileID: -2412342725436568620}
|
||||||
|
- component: {fileID: 2400817911942652581}
|
||||||
|
- component: {fileID: -1698316822263000860}
|
||||||
|
- component: {fileID: 1293470452171110175}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Chest_Ghost
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &7408694083014735
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 607.9671, y: 470.98746, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 525373661776312631}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!95 &5167602068127165240
|
||||||
|
Animator:
|
||||||
|
serializedVersion: 7
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_Avatar: {fileID: 9000000, guid: 1cc6cc20abc7a464a9dec49ee02361cf, type: 3}
|
||||||
|
m_Controller: {fileID: 0}
|
||||||
|
m_CullingMode: 1
|
||||||
|
m_UpdateMode: 0
|
||||||
|
m_ApplyRootMotion: 0
|
||||||
|
m_LinearVelocityBlending: 0
|
||||||
|
m_StabilizeFeet: 0
|
||||||
|
m_AnimatePhysics: 0
|
||||||
|
m_WarningMessage:
|
||||||
|
m_HasTransformHierarchy: 0
|
||||||
|
m_AllowConstantClipSamplingOptimization: 1
|
||||||
|
m_KeepAnimatorStateOnDisable: 0
|
||||||
|
m_WriteDefaultValuesOnDisable: 0
|
||||||
|
--- !u!114 &-2412342725436568620
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 3da63aae88fc0f547b84e1d74e927e39, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildGhost
|
||||||
|
footprint: {fileID: 2400817911942652581}
|
||||||
|
renderers:
|
||||||
|
- {fileID: 4990764154519191519}
|
||||||
|
validOverlay: {fileID: 2100000, guid: 0e580295bcb9d8e4ab68d1a7f11efa63, type: 2}
|
||||||
|
invalidOverlay: {fileID: 2100000, guid: 0a594aa41ef0d7e428398c2c32772c64, type: 2}
|
||||||
|
--- !u!65 &2400817911942652581
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.9945784, y: 2.2094421, z: 1.9498258}
|
||||||
|
m_Center: {x: 0.014221191, y: 1.0410919, z: 0}
|
||||||
|
--- !u!114 &-1698316822263000860
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: FishNet.Runtime::FishNet.Component.Transforming.NetworkTransform
|
||||||
|
_componentIndexCache: 0
|
||||||
|
_addedNetworkObject: {fileID: 1293470452171110175}
|
||||||
|
_networkObjectCache: {fileID: 1293470452171110175}
|
||||||
|
_componentConfiguration: 0
|
||||||
|
_synchronizeParent: 0
|
||||||
|
_packing:
|
||||||
|
Position: 1
|
||||||
|
Rotation: 1
|
||||||
|
Scale: 0
|
||||||
|
_useScaledTime: 1
|
||||||
|
_interpolation: 2
|
||||||
|
_extrapolation: 2
|
||||||
|
_enableTeleport: 0
|
||||||
|
_teleportThreshold: 1
|
||||||
|
_clientAuthoritative: 1
|
||||||
|
_sendToOwner: 1
|
||||||
|
_interval: 1
|
||||||
|
_synchronizePosition: 1
|
||||||
|
_positionSensitivity: 0.001
|
||||||
|
_positionSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
_synchronizeRotation: 1
|
||||||
|
_rotationSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
_synchronizeScale: 1
|
||||||
|
_scaleSensitivity: 0.001
|
||||||
|
_scaleSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
--- !u!114 &1293470452171110175
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 9108319890109776348}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 26b716c41e9b56b4baafaf13a523ba2e, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: FishNet.Runtime::FishNet.Object.NetworkObject
|
||||||
|
_localLevelOfDetailCalculationType: 0
|
||||||
|
_useLevelOfDetail: 0
|
||||||
|
_useRootLevelOfDetail: 1
|
||||||
|
NetworkObserver: {fileID: 0}
|
||||||
|
_enablePrediction: 0
|
||||||
|
_predictionType: 0
|
||||||
|
_localReconcileCorrectionType: 2
|
||||||
|
_graphicalObject: {fileID: 0}
|
||||||
|
_detachGraphicalObject: 0
|
||||||
|
_enableStateForwarding: 1
|
||||||
|
_networkTransform: {fileID: 0}
|
||||||
|
_ownerInterpolation: 1
|
||||||
|
_ownerSmoothedProperties: 255
|
||||||
|
_adaptiveInterpolation: 3
|
||||||
|
_spectatorSmoothedProperties: 255
|
||||||
|
_spectatorInterpolation: 2
|
||||||
|
_enableTeleport: 0
|
||||||
|
_teleportThreshold: 1
|
||||||
|
<PrefabId>k__BackingField: 6
|
||||||
|
<SpawnableCollectionId>k__BackingField: 0
|
||||||
|
<AssetPathHash>k__BackingField: 5141669014942263323
|
||||||
|
SceneId: 0
|
||||||
|
SerializedTransformProperties:
|
||||||
|
Position: {x: 607.9671, y: 470.98746, z: 0}
|
||||||
|
Rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsValid: 1
|
||||||
|
<IsNested>k__BackingField: 0
|
||||||
|
WasActiveDuringEdit: 0
|
||||||
|
WasActiveDuringEdit_Set1: 1
|
||||||
|
<ComponentIndex>k__BackingField: 0
|
||||||
|
<PredictedSpawn>k__BackingField: {fileID: 0}
|
||||||
|
<PredictedOwner>k__BackingField: {fileID: 0}
|
||||||
|
NetworkBehaviours:
|
||||||
|
- {fileID: -1698316822263000860}
|
||||||
|
InitializedParentNetworkBehaviour: {fileID: 0}
|
||||||
|
InitializedNestedNetworkObjects: []
|
||||||
|
RuntimeParentNetworkBehaviour: {fileID: 0}
|
||||||
|
RuntimeChildNetworkBehaviours: []
|
||||||
|
_isNetworked: 1
|
||||||
|
_isSpawnable: 1
|
||||||
|
_isGlobal: 0
|
||||||
|
_initializeOrder: 0
|
||||||
|
_preventDespawnOnDisconnect: 0
|
||||||
|
_defaultDespawnType: 0
|
||||||
|
_initializedTimestamp: -8584181721604556210
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d2b6fea7c913fb844a1939788445af18
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,181 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &80555091247393707
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 5155531265051259965}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Respanw Point
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &5155531265051259965
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 80555091247393707}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 1.185}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 1974791568506913495}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &1410034494400494434
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1974791568506913495}
|
||||||
|
- component: {fileID: 7121555757307145449}
|
||||||
|
- component: {fileID: 8025352644449905843}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Dual Bed
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1974791568506913495
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 38.80009, y: 0, z: 37.555004}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 2750452856085184630}
|
||||||
|
- {fileID: 5155531265051259965}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!65 &7121555757307145449
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.1684494, y: 0.7840714, z: 1.781552}
|
||||||
|
m_Center: {x: -0.06585312, y: 0.40030995, z: 0}
|
||||||
|
--- !u!114 &8025352644449905843
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1410034494400494434}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 5b64acb9b3e11a6408744a646644c073, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.Bed
|
||||||
|
respawnAnchor: {fileID: 5155531265051259965}
|
||||||
|
interactionPrompt: "D\xE9finir le point de r\xE9veil"
|
||||||
|
--- !u!1001 &2423265566855260061
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 1974791568506913495}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalScale.y
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalScale.z
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: 0.00000006717942
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -7511558181221131132, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: 'm_Materials.Array.data[0]'
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 2100000, guid: 123e30390bfadba49a381ecd9775b93f, type: 2}
|
||||||
|
- target: {fileID: 919132149155446097, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: dual bed
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 919132149155446097, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 9
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_RemovedGameObjects: []
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents: []
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
--- !u!4 &2750452856085184630 stripped
|
||||||
|
Transform:
|
||||||
|
m_CorrespondingSourceObject: {fileID: -8679921383154817045, guid: daccda73d2db7124db470c2a2f478fcf, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 2423265566855260061}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5c68533f146c47b41a98668662ffd375
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,542 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &380923795967029798
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 7491935721759441242}
|
||||||
|
- component: {fileID: 4486794573903890}
|
||||||
|
- component: {fileID: 7387562695430027898}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_South
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &7491935721759441242
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 380923795967029798}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: 0.70710576, z: -0, w: 0.70710784}
|
||||||
|
m_LocalPosition: {x: 1.25, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 5468624895545680116}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 90, z: 0}
|
||||||
|
--- !u!114 &4486794573903890
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 380923795967029798}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &7387562695430027898
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 380923795967029798}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &689960121515206631
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 5468624895545680116}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Snap
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &5468624895545680116
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 689960121515206631}
|
||||||
|
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:
|
||||||
|
- {fileID: 6339924542167595468}
|
||||||
|
- {fileID: 7491935721759441242}
|
||||||
|
- {fileID: 1464325717056940001}
|
||||||
|
- {fileID: 1042469317699432837}
|
||||||
|
m_Father: {fileID: 5800237873906906435}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &1656609586749578753
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1464325717056940001}
|
||||||
|
- component: {fileID: 4974477594321398962}
|
||||||
|
- component: {fileID: 2800629085843272837}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_East
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1464325717056940001
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1656609586749578753}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 1.241}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 5468624895545680116}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &4974477594321398962
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1656609586749578753}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &2800629085843272837
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1656609586749578753}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &3305094920675404345
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 5800237873906906435}
|
||||||
|
- component: {fileID: 6597156952845105633}
|
||||||
|
- component: {fileID: 4116859313712376113}
|
||||||
|
- component: {fileID: 7915026797655516421}
|
||||||
|
- component: {fileID: 8958413773651828551}
|
||||||
|
- component: {fileID: 6514514229620551208}
|
||||||
|
- component: {fileID: 4978678982628191274}
|
||||||
|
m_Layer: 9
|
||||||
|
m_Name: Ghost_WoodCelling
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &5800237873906906435
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 72.18446, y: -0.55225, z: 91.49081}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 5468624895545680116}
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!33 &6597156952845105633
|
||||||
|
MeshFilter:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Mesh: {fileID: -2092554398656258221, guid: 1b42665a080463144a6dbfce1200feba, type: 3}
|
||||||
|
--- !u!23 &4116859313712376113
|
||||||
|
MeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_CastShadows: 1
|
||||||
|
m_ReceiveShadows: 1
|
||||||
|
m_DynamicOccludee: 1
|
||||||
|
m_StaticShadowCaster: 0
|
||||||
|
m_MotionVectors: 1
|
||||||
|
m_LightProbeUsage: 1
|
||||||
|
m_ReflectionProbeUsage: 1
|
||||||
|
m_RayTracingMode: 2
|
||||||
|
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: 9f0520b2b2583b244b0e2c767593a214, 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: 3
|
||||||
|
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_MaskInteraction: 0
|
||||||
|
m_AdditionalVertexStreams: {fileID: 0}
|
||||||
|
--- !u!65 &7915026797655516421
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.4893725, y: 0.279638, z: 2.4685874}
|
||||||
|
m_Center: {x: 0.0011386871, y: -0.07322356, z: -0.012834609}
|
||||||
|
--- !u!114 &8958413773651828551
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: a2836e36774ca1c4bbbee976e17b649c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: FishNet.Runtime::FishNet.Component.Transforming.NetworkTransform
|
||||||
|
_componentIndexCache: 0
|
||||||
|
_addedNetworkObject: {fileID: 6514514229620551208}
|
||||||
|
_networkObjectCache: {fileID: 6514514229620551208}
|
||||||
|
_componentConfiguration: 0
|
||||||
|
_synchronizeParent: 0
|
||||||
|
_packing:
|
||||||
|
Position: 1
|
||||||
|
Rotation: 1
|
||||||
|
Scale: 0
|
||||||
|
_useScaledTime: 1
|
||||||
|
_interpolation: 2
|
||||||
|
_extrapolation: 2
|
||||||
|
_enableTeleport: 0
|
||||||
|
_teleportThreshold: 1
|
||||||
|
_clientAuthoritative: 1
|
||||||
|
_sendToOwner: 1
|
||||||
|
_interval: 1
|
||||||
|
_synchronizePosition: 1
|
||||||
|
_positionSensitivity: 0.001
|
||||||
|
_positionSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
_synchronizeRotation: 1
|
||||||
|
_rotationSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
_synchronizeScale: 1
|
||||||
|
_scaleSensitivity: 0.001
|
||||||
|
_scaleSnapping:
|
||||||
|
X: 0
|
||||||
|
Y: 0
|
||||||
|
Z: 0
|
||||||
|
--- !u!114 &6514514229620551208
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 26b716c41e9b56b4baafaf13a523ba2e, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: FishNet.Runtime::FishNet.Object.NetworkObject
|
||||||
|
_localLevelOfDetailCalculationType: 0
|
||||||
|
_useLevelOfDetail: 0
|
||||||
|
_useRootLevelOfDetail: 1
|
||||||
|
NetworkObserver: {fileID: 0}
|
||||||
|
_enablePrediction: 0
|
||||||
|
_predictionType: 0
|
||||||
|
_localReconcileCorrectionType: 2
|
||||||
|
_graphicalObject: {fileID: 0}
|
||||||
|
_detachGraphicalObject: 0
|
||||||
|
_enableStateForwarding: 1
|
||||||
|
_networkTransform: {fileID: 0}
|
||||||
|
_ownerInterpolation: 1
|
||||||
|
_ownerSmoothedProperties: 255
|
||||||
|
_adaptiveInterpolation: 3
|
||||||
|
_spectatorSmoothedProperties: 255
|
||||||
|
_spectatorInterpolation: 2
|
||||||
|
_enableTeleport: 0
|
||||||
|
_teleportThreshold: 1
|
||||||
|
<PrefabId>k__BackingField: 0
|
||||||
|
<SpawnableCollectionId>k__BackingField: 0
|
||||||
|
<AssetPathHash>k__BackingField: 12948973730721088167
|
||||||
|
SceneId: 0
|
||||||
|
SerializedTransformProperties:
|
||||||
|
Position: {x: 72.18446, y: -0.55225, z: 91.49081}
|
||||||
|
Rotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
Scale: {x: 1, y: 1, z: 1}
|
||||||
|
IsValid: 1
|
||||||
|
<IsNested>k__BackingField: 0
|
||||||
|
WasActiveDuringEdit: 0
|
||||||
|
WasActiveDuringEdit_Set1: 1
|
||||||
|
<ComponentIndex>k__BackingField: 0
|
||||||
|
<PredictedSpawn>k__BackingField: {fileID: 0}
|
||||||
|
<PredictedOwner>k__BackingField: {fileID: 0}
|
||||||
|
NetworkBehaviours:
|
||||||
|
- {fileID: 8958413773651828551}
|
||||||
|
InitializedParentNetworkBehaviour: {fileID: 0}
|
||||||
|
InitializedNestedNetworkObjects: []
|
||||||
|
RuntimeParentNetworkBehaviour: {fileID: 0}
|
||||||
|
RuntimeChildNetworkBehaviours: []
|
||||||
|
_isNetworked: 1
|
||||||
|
_isSpawnable: 1
|
||||||
|
_isGlobal: 0
|
||||||
|
_initializeOrder: 0
|
||||||
|
_preventDespawnOnDisconnect: 0
|
||||||
|
_defaultDespawnType: 0
|
||||||
|
_initializedTimestamp: -8584181721604556210
|
||||||
|
--- !u!114 &4978678982628191274
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3305094920675404345}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 3da63aae88fc0f547b84e1d74e927e39, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildGhost
|
||||||
|
footprint: {fileID: 7915026797655516421}
|
||||||
|
renderers:
|
||||||
|
- {fileID: 4116859313712376113}
|
||||||
|
validOverlay: {fileID: 2100000, guid: 0e580295bcb9d8e4ab68d1a7f11efa63, type: 2}
|
||||||
|
invalidOverlay: {fileID: 2100000, guid: 0a594aa41ef0d7e428398c2c32772c64, type: 2}
|
||||||
|
--- !u!1 &3743132779249447582
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1042469317699432837}
|
||||||
|
- component: {fileID: 2008333350179210541}
|
||||||
|
- component: {fileID: 3028437067479239787}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_West
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1042469317699432837
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3743132779249447582}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: -0.70710576, z: -0, w: 0.70710784}
|
||||||
|
m_LocalPosition: {x: -1.25, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 5468624895545680116}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: -90, z: 0}
|
||||||
|
--- !u!114 &2008333350179210541
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3743132779249447582}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &3028437067479239787
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 3743132779249447582}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &4899989921195697127
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 6339924542167595468}
|
||||||
|
- component: {fileID: 1765004770665976975}
|
||||||
|
- component: {fileID: 5073057946224045579}
|
||||||
|
m_Layer: 13
|
||||||
|
m_Name: Edge_North
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &6339924542167595468
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4899989921195697127}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: -0, y: -1, z: -0, w: 0.0000029504295}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: -1.2409973}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 5468624895545680116}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: -180, z: 0}
|
||||||
|
--- !u!114 &1765004770665976975
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4899989921195697127}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 977546eeac153c04c9a08997c2a8609c, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: Assembly-CSharp::Ashwild.Building.BuildSnapPoint
|
||||||
|
category: 0
|
||||||
|
--- !u!135 &5073057946224045579
|
||||||
|
SphereCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4899989921195697127}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 0
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Radius: 0.5
|
||||||
|
m_Center: {x: 0, y: 0, z: 0}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 39b04625f47cbc24a93966c3eb0194d2
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!1001 &9137850018353647552
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransformParent: {fileID: 0}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: -0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: -0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: -0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -7511558181221131132, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: 'm_Materials.Array.data[0]'
|
|
||||||
value:
|
|
||||||
objectReference: {fileID: 2100000, guid: f066455c9b1b5644d9684ada3f210715, type: 2}
|
|
||||||
- target: {fileID: 919132149155446097, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Wood_Pickaxe
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_RemovedGameObjects: []
|
|
||||||
m_AddedGameObjects: []
|
|
||||||
m_AddedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 9bf264414994db540866bf91890392c5, type: 3}
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!1001 &2001326534543080563
|
|
||||||
PrefabInstance:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Modification:
|
|
||||||
serializedVersion: 3
|
|
||||||
m_TransformParent: {fileID: 0}
|
|
||||||
m_Modifications:
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalPosition.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.w
|
|
||||||
value: 1
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.y
|
|
||||||
value: -0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalRotation.z
|
|
||||||
value: -0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -8679921383154817045, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: -7511558181221131132, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: 'm_Materials.Array.data[0]'
|
|
||||||
value:
|
|
||||||
objectReference: {fileID: 2100000, guid: 8d2599e48f9a729418dedd73c2657b0a, type: 2}
|
|
||||||
- target: {fileID: 919132149155446097, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
propertyPath: m_Name
|
|
||||||
value: Wood_Sword
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
m_RemovedComponents: []
|
|
||||||
m_RemovedGameObjects: []
|
|
||||||
m_AddedGameObjects: []
|
|
||||||
m_AddedComponents: []
|
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: da281ef2071b2e144a17cf0ab83f1f82, type: 3}
|
|
||||||
@@ -1,5 +1,69 @@
|
|||||||
%YAML 1.1
|
%YAML 1.1
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &4431250198828445795
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 4036155841356705039}
|
||||||
|
- component: {fileID: 6008748456738279482}
|
||||||
|
m_Layer: 5
|
||||||
|
m_Name: GameObject
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!224 &4036155841356705039
|
||||||
|
RectTransform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4431250198828445795}
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children:
|
||||||
|
- {fileID: 7818010301368158588}
|
||||||
|
- {fileID: 3950729247332657127}
|
||||||
|
m_Father: {fileID: 2991053326735533102}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
|
m_AnchorMax: {x: 1, y: 1}
|
||||||
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
|
m_SizeDelta: {x: -20.8044, y: -20.8044}
|
||||||
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
|
--- !u!114 &6008748456738279482
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 4431250198828445795}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 59f8146938fff824cb5fd77236b75775, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.VerticalLayoutGroup
|
||||||
|
m_Padding:
|
||||||
|
m_Left: 0
|
||||||
|
m_Right: 0
|
||||||
|
m_Top: 0
|
||||||
|
m_Bottom: 0
|
||||||
|
m_ChildAlignment: 4
|
||||||
|
m_Spacing: 0
|
||||||
|
m_ChildForceExpandWidth: 1
|
||||||
|
m_ChildForceExpandHeight: 1
|
||||||
|
m_ChildControlWidth: 1
|
||||||
|
m_ChildControlHeight: 0
|
||||||
|
m_ChildScaleWidth: 1
|
||||||
|
m_ChildScaleHeight: 1
|
||||||
|
m_ReverseArrangement: 0
|
||||||
--- !u!1 &4933178774466085049
|
--- !u!1 &4933178774466085049
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -25,17 +89,17 @@ RectTransform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 4933178774466085049}
|
m_GameObject: {fileID: 4933178774466085049}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 2991053326735533102}
|
m_Father: {fileID: 4036155841356705039}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 1}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
m_AnchorMax: {x: 0.5, y: 1}
|
m_AnchorMax: {x: 0, y: 0}
|
||||||
m_AnchoredPosition: {x: 0, y: -10.6}
|
m_AnchoredPosition: {x: 0, y: 0}
|
||||||
m_SizeDelta: {x: 126.0229, y: 126.0229}
|
m_SizeDelta: {x: 0, y: 128}
|
||||||
m_Pivot: {x: 0.5, y: 1}
|
m_Pivot: {x: 0.5, y: 1}
|
||||||
--- !u!222 &8806915406871817360
|
--- !u!222 &8806915406871817360
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
@@ -101,17 +165,17 @@ RectTransform:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 5498742472193566416}
|
m_GameObject: {fileID: 5498742472193566416}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 2991053326735533102}
|
m_Father: {fileID: 4036155841356705039}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0}
|
m_AnchorMin: {x: 0, y: 1}
|
||||||
m_AnchorMax: {x: 0.5, y: 0}
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
m_AnchoredPosition: {x: 0, y: 13.2}
|
m_AnchoredPosition: {x: 89.5978, y: -180.48}
|
||||||
m_SizeDelta: {x: 0, y: 0}
|
m_SizeDelta: {x: 66.59, y: 0}
|
||||||
m_Pivot: {x: 0.5, y: 0}
|
m_Pivot: {x: 0.5, y: 0}
|
||||||
--- !u!222 &4058813637582350659
|
--- !u!222 &4058813637582350659
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
@@ -258,8 +322,7 @@ RectTransform:
|
|||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 7818010301368158588}
|
- {fileID: 4036155841356705039}
|
||||||
- {fileID: 3950729247332657127}
|
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
@@ -319,5 +382,6 @@ MonoBehaviour:
|
|||||||
m_EditorClassIdentifier: Assembly-CSharp::IngredientSlotUI
|
m_EditorClassIdentifier: Assembly-CSharp::IngredientSlotUI
|
||||||
iconImage: {fileID: 6656192589770360378}
|
iconImage: {fileID: 6656192589770360378}
|
||||||
quantityText: {fileID: 2097148993551982845}
|
quantityText: {fileID: 2097148993551982845}
|
||||||
|
mysteryIcon: {fileID: 21300000, guid: 674a34f9888b21f4f9e8fe295f753065, type: 3}
|
||||||
enoughColor: {r: 1, g: 1, b: 1, a: 1}
|
enoughColor: {r: 1, g: 1, b: 1, a: 1}
|
||||||
missingColor: {r: 1, g: 0.3, b: 0.3, a: 1}
|
missingColor: {r: 1, g: 0.3, b: 0.3, a: 1}
|
||||||
|
|||||||
@@ -191,7 +191,7 @@ RectTransform:
|
|||||||
m_AnchorMin: {x: 0, y: 1}
|
m_AnchorMin: {x: 0, y: 1}
|
||||||
m_AnchorMax: {x: 0, y: 1}
|
m_AnchorMax: {x: 0, y: 1}
|
||||||
m_AnchoredPosition: {x: 26.81, y: -30.848938}
|
m_AnchoredPosition: {x: 26.81, y: -30.848938}
|
||||||
m_SizeDelta: {x: 0, y: 0}
|
m_SizeDelta: {x: 26.81, y: 0}
|
||||||
m_Pivot: {x: 1, y: 0.5}
|
m_Pivot: {x: 1, y: 0.5}
|
||||||
--- !u!222 &4956121116561260591
|
--- !u!222 &4956121116561260591
|
||||||
CanvasRenderer:
|
CanvasRenderer:
|
||||||
|
|||||||
@@ -338,6 +338,51 @@ Transform:
|
|||||||
m_CorrespondingSourceObject: {fileID: 1783983360075517884, guid: 83c988e2d587e02489ba1dffd32d1dbc, type: 3}
|
m_CorrespondingSourceObject: {fileID: 1783983360075517884, guid: 83c988e2d587e02489ba1dffd32d1dbc, type: 3}
|
||||||
m_PrefabInstance: {fileID: 25543340}
|
m_PrefabInstance: {fileID: 25543340}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678918 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 5158597572884001758, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678919 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 2899509862561618229, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678920 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 5175506847435012150, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678921 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 6218829446984784645, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678922 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 4525802775991890810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678923 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 3170185415313623352, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678924 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 8518248039573098604, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678925 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 1233530907938768311, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1 &30678926 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 5286856348858392856, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &36585774
|
--- !u!1 &36585774
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -2472,6 +2517,10 @@ MonoBehaviour:
|
|||||||
obstructionMask:
|
obstructionMask:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Bits: 512
|
m_Bits: 512
|
||||||
|
buildMask:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 512
|
||||||
|
demolitionMaterial: {fileID: 2100000, guid: 0a594aa41ef0d7e428398c2c32772c64, type: 2}
|
||||||
--- !u!1001 &298545449
|
--- !u!1001 &298545449
|
||||||
PrefabInstance:
|
PrefabInstance:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -3568,6 +3617,54 @@ PrefabInstance:
|
|||||||
serializedVersion: 3
|
serializedVersion: 3
|
||||||
m_TransformParent: {fileID: 0}
|
m_TransformParent: {fileID: 0}
|
||||||
m_Modifications:
|
m_Modifications:
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 297657202941871783, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 568192060015859370, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1186468498263274989, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 1186468498263274989, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -3592,6 +3689,30 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 1356354077196086504, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 1
|
value: 1
|
||||||
@@ -3602,7 +3723,7 @@ PrefabInstance:
|
|||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 220.96
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 1596723111164776776, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
@@ -3640,42 +3761,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1849167517038047984, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1939883068432312819, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1939883068432312819, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1939883068432312819, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 1941997771569907896, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 1941997771569907896, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -3712,30 +3797,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3226925600871503742, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3377263676762350218, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 3377263676762350218, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -3760,30 +3821,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3503290130582284305, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4014361105730054076, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4014361105730054076, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -3884,47 +3921,47 @@ PrefabInstance:
|
|||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMin.y
|
propertyPath: m_AnchorMin.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4607533971479604522, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 4396142908343982629, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4496900584355022368, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
@@ -3976,30 +4013,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5573126629909300102, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 5742798646486547188, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 5742798646486547188, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -4048,22 +4061,34 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6497207758712590334, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6497569042931321444, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 6497569042931321444, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 6833578882137197355, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 6833578882137197355, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 6833578882137197355, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 6867355596058546005, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 6867355596058546005, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -4076,10 +4101,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7140770579932618209, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7256465966015357316, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7256465966015357316, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
@@ -4092,53 +4113,49 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMin.y
|
propertyPath: m_AnchorMin.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchoredPosition.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMax.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_AnchorMin.y
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.x
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7449215217693878810, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7296661163330043530, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7525940299773702526, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMax.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchorMin.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_SizeDelta.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 12.930176
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7397267002628408428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
|
propertyPath: m_AnchoredPosition.y
|
||||||
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7539092694025391897, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7539092694025391897, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
@@ -4160,51 +4177,51 @@ PrefabInstance:
|
|||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMin.y
|
propertyPath: m_AnchorMin.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7627783045134606663, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7749384703976975436, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMin.y
|
propertyPath: m_AnchorMin.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 7844201269316197265, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 7768504243390179236, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
@@ -4220,27 +4237,27 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Canvas
|
value: Canvas
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMax.y
|
propertyPath: m_AnchorMax.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchorMin.y
|
propertyPath: m_AnchorMin.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.x
|
propertyPath: m_SizeDelta.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_SizeDelta.y
|
propertyPath: m_SizeDelta.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.x
|
propertyPath: m_AnchoredPosition.x
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 8617322283791076056, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
- target: {fileID: 8814077816998036631, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
propertyPath: m_AnchoredPosition.y
|
propertyPath: m_AnchoredPosition.y
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
@@ -5401,6 +5418,100 @@ Transform:
|
|||||||
m_CorrespondingSourceObject: {fileID: 8499178216258465, guid: e9894ffe485f7d5448260fd9338ebd0e, type: 3}
|
m_CorrespondingSourceObject: {fileID: 8499178216258465, guid: e9894ffe485f7d5448260fd9338ebd0e, type: 3}
|
||||||
m_PrefabInstance: {fileID: 663482573}
|
m_PrefabInstance: {fileID: 663482573}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!1001 &668733573
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 0}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: 781270504346949712, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: Stations_5
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 781270504346949712, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 6
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 985001107293900664, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: 'm_Materials.Array.data[0]'
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 1537286330038668216, guid: 73f5d288fb608fb4e9959cf5e9655783, type: 3}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 49.20204
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: -0.005176544
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 55.359283
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 0.70710784
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: -0.70710576
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: -0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: -90
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 8601272150287418368, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_RemovedGameObjects: []
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents:
|
||||||
|
- targetCorrespondingSourceObject: {fileID: 781270504346949712, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
insertIndex: -1
|
||||||
|
addedObject: {fileID: 668733575}
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
--- !u!1 &668733574 stripped
|
||||||
|
GameObject:
|
||||||
|
m_CorrespondingSourceObject: {fileID: 781270504346949712, guid: 8b0c536290aeb0b4caafd67bc736e9d2, type: 3}
|
||||||
|
m_PrefabInstance: {fileID: 668733573}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
--- !u!65 &668733575
|
||||||
|
BoxCollider:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 668733574}
|
||||||
|
m_Material: {fileID: 0}
|
||||||
|
m_IncludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_ExcludeLayers:
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Bits: 0
|
||||||
|
m_LayerOverridePriority: 0
|
||||||
|
m_IsTrigger: 0
|
||||||
|
m_ProvidesContacts: 0
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 3
|
||||||
|
m_Size: {x: 2.7156103, y: 1.8032616, z: 1.15291}
|
||||||
|
m_Center: {x: 0.3753096, y: 0.90680677, z: 0.050604135}
|
||||||
--- !u!1 &713085368
|
--- !u!1 &713085368
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -5932,23 +6043,23 @@ MonoBehaviour:
|
|||||||
_prefab: Assets/GAME/Prefabs/UI/Button.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Button.prefab
|
||||||
- _gameObject: {fileID: 1983421470}
|
- _gameObject: {fileID: 1983421470}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421469}
|
- _gameObject: {fileID: 30678926}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421468}
|
- _gameObject: {fileID: 30678925}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421467}
|
- _gameObject: {fileID: 30678924}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421466}
|
- _gameObject: {fileID: 30678923}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421465}
|
- _gameObject: {fileID: 30678922}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421464}
|
- _gameObject: {fileID: 30678921}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421463}
|
- _gameObject: {fileID: 30678920}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421462}
|
- _gameObject: {fileID: 30678919}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421461}
|
- _gameObject: {fileID: 30678918}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Slot Ui.prefab
|
||||||
- _gameObject: {fileID: 1983421460}
|
- _gameObject: {fileID: 1983421460}
|
||||||
_prefab: Assets/GAME/Prefabs/UI/Setting/SettingsPanel.prefab
|
_prefab: Assets/GAME/Prefabs/UI/Setting/SettingsPanel.prefab
|
||||||
@@ -6196,6 +6307,8 @@ MonoBehaviour:
|
|||||||
_prefab: Assets/GAME/Prefabs/Structure/Cookingpot_Campfire.prefab
|
_prefab: Assets/GAME/Prefabs/Structure/Cookingpot_Campfire.prefab
|
||||||
- _gameObject: {fileID: 245990655}
|
- _gameObject: {fileID: 245990655}
|
||||||
_prefab: Assets/External/VFXPACK_FIRE_WALLCOEUR/Prefab/VFX_Fire.prefab
|
_prefab: Assets/External/VFXPACK_FIRE_WALLCOEUR/Prefab/VFX_Fire.prefab
|
||||||
|
- _gameObject: {fileID: 668733574}
|
||||||
|
_prefab: Assets/External/Static Soul Studio/Crafting Statinos/Built-in/Prefabs/Stations_5.prefab
|
||||||
--- !u!4 &740572252
|
--- !u!4 &740572252
|
||||||
Transform:
|
Transform:
|
||||||
m_ObjectHideFlags: 11
|
m_ObjectHideFlags: 11
|
||||||
@@ -7048,7 +7161,7 @@ MonoBehaviour:
|
|||||||
biomes: []
|
biomes: []
|
||||||
weight: 1
|
weight: 1
|
||||||
totalSystemWeight: 0
|
totalSystemWeight: 0
|
||||||
cumulus: 0
|
cumulus: 0.2
|
||||||
cirrus: 0
|
cirrus: 0
|
||||||
altocumulus: 0
|
altocumulus: 0
|
||||||
cirrostratus: 0
|
cirrostratus: 0
|
||||||
@@ -22058,152 +22171,6 @@ GameObject:
|
|||||||
m_CorrespondingSourceObject: {fileID: 5263385035876967886, guid: 7d11390e8f41d214396bc57f3c34e265, type: 3}
|
m_CorrespondingSourceObject: {fileID: 5263385035876967886, guid: 7d11390e8f41d214396bc57f3c34e265, type: 3}
|
||||||
m_PrefabInstance: {fileID: 1839004781}
|
m_PrefabInstance: {fileID: 1839004781}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &1841668124
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 1841668128}
|
|
||||||
- component: {fileID: 1841668127}
|
|
||||||
- component: {fileID: 1841668126}
|
|
||||||
- component: {fileID: 1841668125}
|
|
||||||
- component: {fileID: 1841668129}
|
|
||||||
m_Layer: 0
|
|
||||||
m_Name: Camera
|
|
||||||
m_TagString: MainCamera
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!114 &1841668125
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1841668124}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier: Unity.RenderPipelines.Universal.Runtime::UnityEngine.Rendering.Universal.UniversalAdditionalCameraData
|
|
||||||
m_RenderShadows: 1
|
|
||||||
m_RequiresDepthTextureOption: 2
|
|
||||||
m_RequiresOpaqueTextureOption: 2
|
|
||||||
m_CameraType: 0
|
|
||||||
m_Cameras: []
|
|
||||||
m_RendererIndex: -1
|
|
||||||
m_VolumeLayerMask:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 1
|
|
||||||
m_VolumeTrigger: {fileID: 0}
|
|
||||||
m_VolumeFrameworkUpdateModeOption: 2
|
|
||||||
m_RenderPostProcessing: 0
|
|
||||||
m_Antialiasing: 0
|
|
||||||
m_AntialiasingQuality: 2
|
|
||||||
m_StopNaN: 0
|
|
||||||
m_Dithering: 0
|
|
||||||
m_ClearDepth: 1
|
|
||||||
m_AllowXRRendering: 1
|
|
||||||
m_AllowHDROutput: 1
|
|
||||||
m_UseScreenCoordOverride: 0
|
|
||||||
m_ScreenSizeOverride: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
m_ScreenCoordScaleBias: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
m_RequiresDepthTexture: 0
|
|
||||||
m_RequiresColorTexture: 0
|
|
||||||
m_TaaSettings:
|
|
||||||
m_Quality: 3
|
|
||||||
m_FrameInfluence: 0.1
|
|
||||||
m_JitterScale: 1
|
|
||||||
m_MipBias: 0
|
|
||||||
m_VarianceClampScale: 0.9
|
|
||||||
m_ContrastAdaptiveSharpening: 0
|
|
||||||
m_Version: 2
|
|
||||||
--- !u!81 &1841668126
|
|
||||||
AudioListener:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1841668124}
|
|
||||||
m_Enabled: 1
|
|
||||||
--- !u!20 &1841668127
|
|
||||||
Camera:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1841668124}
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_ClearFlags: 1
|
|
||||||
m_BackGroundColor: {r: 0.19215687, g: 0.3019608, b: 0.4745098, a: 0}
|
|
||||||
m_projectionMatrixMode: 1
|
|
||||||
m_GateFitMode: 2
|
|
||||||
m_FOVAxisMode: 0
|
|
||||||
m_Iso: 200
|
|
||||||
m_ShutterSpeed: 0.005
|
|
||||||
m_Aperture: 16
|
|
||||||
m_FocusDistance: 10
|
|
||||||
m_FocalLength: 50
|
|
||||||
m_BladeCount: 5
|
|
||||||
m_Curvature: {x: 2, y: 11}
|
|
||||||
m_BarrelClipping: 0.25
|
|
||||||
m_Anamorphism: 0
|
|
||||||
m_SensorSize: {x: 36, y: 24}
|
|
||||||
m_LensShift: {x: 0, y: 0}
|
|
||||||
m_NormalizedViewPortRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1
|
|
||||||
height: 1
|
|
||||||
near clip plane: 0.3
|
|
||||||
far clip plane: 1000
|
|
||||||
field of view: 60
|
|
||||||
orthographic: 0
|
|
||||||
orthographic size: 5
|
|
||||||
m_Depth: 0
|
|
||||||
m_CullingMask:
|
|
||||||
serializedVersion: 2
|
|
||||||
m_Bits: 4294967295
|
|
||||||
m_RenderingPath: -1
|
|
||||||
m_TargetTexture: {fileID: 0}
|
|
||||||
m_TargetDisplay: 0
|
|
||||||
m_TargetEye: 3
|
|
||||||
m_HDR: 1
|
|
||||||
m_AllowMSAA: 1
|
|
||||||
m_AllowDynamicResolution: 0
|
|
||||||
m_ForceIntoRT: 0
|
|
||||||
m_OcclusionCulling: 1
|
|
||||||
m_StereoConvergence: 10
|
|
||||||
m_StereoSeparation: 0.022
|
|
||||||
--- !u!4 &1841668128
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1841668124}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0.0539138, y: -0.32359526, z: 0.018405443, w: 0.9444791}
|
|
||||||
m_LocalPosition: {x: 41.794834, y: 2.7130861, z: 36.093773}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 0}
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!124 &1841668129
|
|
||||||
Behaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1841668124}
|
|
||||||
m_Enabled: 1
|
|
||||||
--- !u!1001 &1857051558
|
--- !u!1001 &1857051558
|
||||||
PrefabInstance:
|
PrefabInstance:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -22686,7 +22653,7 @@ MonoBehaviour:
|
|||||||
cloudMesh: {fileID: 1984529954}
|
cloudMesh: {fileID: 1984529954}
|
||||||
skyMesh: {fileID: 2077672492}
|
skyMesh: {fileID: 2077672492}
|
||||||
fogMesh: {fileID: 1190104842}
|
fogMesh: {fileID: 1190104842}
|
||||||
cozyCamera: {fileID: 1841668127}
|
cozyCamera: {fileID: 0}
|
||||||
sunLensFlare: {fileID: 718668190}
|
sunLensFlare: {fileID: 718668190}
|
||||||
interactionsModule: {fileID: 0}
|
interactionsModule: {fileID: 0}
|
||||||
climateModule: {fileID: 823589502}
|
climateModule: {fileID: 823589502}
|
||||||
@@ -22732,7 +22699,7 @@ Transform:
|
|||||||
m_GameObject: {fileID: 1902801752}
|
m_GameObject: {fileID: 1902801752}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_LocalRotation: {x: 0.0000000037252899, y: -0, z: -0.0000000074505797, w: 1}
|
m_LocalRotation: {x: 0.0000000037252899, y: -0, z: -0.0000000074505797, w: 1}
|
||||||
m_LocalPosition: {x: 49.187275, y: 5.800807, z: 41.7612}
|
m_LocalPosition: {x: 527.57916, y: 373.94745, z: -969.73535}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
@@ -23044,7 +23011,7 @@ Light:
|
|||||||
m_PrefabInstance: {fileID: 0}
|
m_PrefabInstance: {fileID: 0}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 1946037640}
|
m_GameObject: {fileID: 1946037640}
|
||||||
m_Enabled: 1
|
m_Enabled: 0
|
||||||
serializedVersion: 12
|
serializedVersion: 12
|
||||||
m_Type: 1
|
m_Type: 1
|
||||||
m_Color: {r: 0, g: 0, b: 0, a: 0}
|
m_Color: {r: 0, g: 0, b: 0, a: 0}
|
||||||
@@ -23246,51 +23213,6 @@ GameObject:
|
|||||||
m_CorrespondingSourceObject: {fileID: 4168497792683761917, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
m_CorrespondingSourceObject: {fileID: 4168497792683761917, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
m_PrefabInstance: {fileID: 515615923}
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
--- !u!1 &1983421461 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 1435912439651889848, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421462 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 3870225346547395938, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421463 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 4665850176590005251, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421464 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 5439416756030813576, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421465 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 5027997652594933461, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421466 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 59684519612680428, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421467 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 6596292997576987978, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421468 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 2054330470357333891, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421469 stripped
|
|
||||||
GameObject:
|
|
||||||
m_CorrespondingSourceObject: {fileID: 7010948319502818324, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
|
||||||
m_PrefabInstance: {fileID: 515615923}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
--- !u!1 &1983421470 stripped
|
--- !u!1 &1983421470 stripped
|
||||||
GameObject:
|
GameObject:
|
||||||
m_CorrespondingSourceObject: {fileID: 198772005928582424, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
m_CorrespondingSourceObject: {fileID: 198772005928582424, guid: fc052529108a2854aa09a1d295778ef4, type: 3}
|
||||||
@@ -29692,6 +29614,6 @@ SceneRoots:
|
|||||||
- {fileID: 1085183888}
|
- {fileID: 1085183888}
|
||||||
- {fileID: 740572252}
|
- {fileID: 740572252}
|
||||||
- {fileID: 1836939580}
|
- {fileID: 1836939580}
|
||||||
- {fileID: 1841668128}
|
|
||||||
- {fileID: 1902801754}
|
- {fileID: 1902801754}
|
||||||
- {fileID: 1957565059}
|
- {fileID: 1957565059}
|
||||||
|
- {fileID: 668733573}
|
||||||
|
|||||||
@@ -0,0 +1,51 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using Ashwild.Interaction;
|
||||||
|
using Ashwild.Player;
|
||||||
|
|
||||||
|
namespace Ashwild.Building
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// A placed bed the local player interacts with to make it their respawn point (Valheim-style
|
||||||
|
/// claim). Interacting pushes the bed's pose onto the bus, where the local PlayerLifecycle adopts
|
||||||
|
/// it — so the respawn point is per-player and never networked: one bed at the base can serve as
|
||||||
|
/// everyone's spawn, yet each teammate only rebinds their own by interacting, and a bed placed
|
||||||
|
/// far away changes nobody else's. The bed itself is an ordinary built structure (instantiated
|
||||||
|
/// locally on every client from the BuildRegistry), never a NetworkObject — so there is nothing
|
||||||
|
/// to add on the build side: dropping this component on a buildable's BuiltPrefab is enough.
|
||||||
|
/// </summary>
|
||||||
|
[DisallowMultipleComponent]
|
||||||
|
[RequireComponent(typeof(Collider))]
|
||||||
|
public class Bed : MonoBehaviour, IInteractable
|
||||||
|
{
|
||||||
|
#region Serialized Fields
|
||||||
|
|
||||||
|
[Header("Respawn")]
|
||||||
|
[Tooltip("Where the player reappears when respawning here — a child placed beside the bed, facing away from it. Falls back to the bed's own transform when left empty.")]
|
||||||
|
[SerializeField] private Transform respawnAnchor;
|
||||||
|
|
||||||
|
[Tooltip("Label shown under the crosshair while aiming at the bed.")]
|
||||||
|
[SerializeField] private string interactionPrompt = "Définir le point de réveil";
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region IInteractable
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Label shown under the crosshair while aiming at the bed.
|
||||||
|
/// </summary>
|
||||||
|
public string InteractionPrompt => interactionPrompt;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Claims this bed as the local player's respawn point by broadcasting its pose over the bus.
|
||||||
|
/// Called by PlayerInteractor on the interacting client only (it is owner-gated), so only that
|
||||||
|
/// player rebinds — teammates are untouched.
|
||||||
|
/// </summary>
|
||||||
|
public void Interact()
|
||||||
|
{
|
||||||
|
Transform anchor = respawnAnchor != null ? respawnAnchor : transform;
|
||||||
|
PlayerEvents.RaiseRespawnPointChanged(anchor.position, anchor.rotation);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5b64acb9b3e11a6408744a646644c073
|
||||||
@@ -62,6 +62,13 @@ namespace Ashwild.Building
|
|||||||
[Tooltip("Layers that block a build (structures, props, players). Must NOT include the ground.")]
|
[Tooltip("Layers that block a build (structures, props, players). Must NOT include the ground.")]
|
||||||
[SerializeField] private LayerMask obstructionMask;
|
[SerializeField] private LayerMask obstructionMask;
|
||||||
|
|
||||||
|
[Header("Demolition")]
|
||||||
|
[Tooltip("Layers the demolition aim can hit to target a committed structure. Narrow this to the structures' layer so walls, roofs, etc. are the only demolishable hits.")]
|
||||||
|
[SerializeField] private LayerMask buildMask = ~0;
|
||||||
|
|
||||||
|
[Tooltip("Overlay material added on top of the aimed build while it is the demolition target (e.g. a translucent red 'about to break' pass). Should be a transparent/additive material since it draws over the model.")]
|
||||||
|
[SerializeField] private Material demolitionMaterial;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region State
|
#region State
|
||||||
@@ -95,10 +102,16 @@ namespace Ashwild.Building
|
|||||||
private float yaw;
|
private float yaw;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// The local player's aim transform (camera), resolved when the ghost is attached.
|
/// The local player's aim transform (camera), resolved lazily and shared by placement and
|
||||||
|
/// demolition.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private Transform aim;
|
private Transform aim;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The committed build currently under the demolition aim, or null when none is targeted.
|
||||||
|
/// </summary>
|
||||||
|
private BuiltStructure demoTarget;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Frame the ghost was attached, so a click landing that frame never confirms instantly.
|
/// Frame the ghost was attached, so a click landing that frame never confirms instantly.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -141,6 +154,8 @@ namespace Ashwild.Building
|
|||||||
PlayerEvents.AttackPressed += HandleConfirm;
|
PlayerEvents.AttackPressed += HandleConfirm;
|
||||||
PlayerEvents.SecondaryUsePressed += HandleCancel;
|
PlayerEvents.SecondaryUsePressed += HandleCancel;
|
||||||
PlayerEvents.HotbarScroll += HandleRotate;
|
PlayerEvents.HotbarScroll += HandleRotate;
|
||||||
|
PlayerEvents.BuildRotatePressed += HandleRotateKey;
|
||||||
|
PlayerEvents.DemolishModeChanged += HandleDemolishModeChanged;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -152,16 +167,27 @@ namespace Ashwild.Building
|
|||||||
PlayerEvents.AttackPressed -= HandleConfirm;
|
PlayerEvents.AttackPressed -= HandleConfirm;
|
||||||
PlayerEvents.SecondaryUsePressed -= HandleCancel;
|
PlayerEvents.SecondaryUsePressed -= HandleCancel;
|
||||||
PlayerEvents.HotbarScroll -= HandleRotate;
|
PlayerEvents.HotbarScroll -= HandleRotate;
|
||||||
|
PlayerEvents.BuildRotatePressed -= HandleRotateKey;
|
||||||
|
PlayerEvents.DemolishModeChanged -= HandleDemolishModeChanged;
|
||||||
|
|
||||||
EndPlacement();
|
EndPlacement();
|
||||||
|
ClearDemoTarget();
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Drives the owned ghost along the aim each frame; frozen while input is locked (e.g. the
|
/// Each frame, in exactly one mode: in demolition mode it tracks which build the player aims
|
||||||
/// menu was reopened over an active placement).
|
/// at; otherwise it drives the owned ghost along the aim. Both are frozen while input is locked
|
||||||
|
/// (e.g. the menu reopened over a placement), and leaving demolition mode clears the target.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void Update()
|
private void Update()
|
||||||
{
|
{
|
||||||
|
if (PlayerEvents.IsDemolishing && !PlayerEvents.InputLocked)
|
||||||
|
{
|
||||||
|
UpdateDemolitionTarget();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ClearDemoTarget();
|
||||||
|
|
||||||
if (ghost == null) return;
|
if (ghost == null) return;
|
||||||
if (PlayerEvents.InputLocked) return;
|
if (PlayerEvents.InputLocked) return;
|
||||||
|
|
||||||
@@ -268,9 +294,7 @@ namespace Ashwild.Building
|
|||||||
ghost = go;
|
ghost = go;
|
||||||
ghostValidity = go.GetComponentInChildren<BuildGhost>(true);
|
ghostValidity = go.GetComponentInChildren<BuildGhost>(true);
|
||||||
ghostSnaps = go.GetComponentsInChildren<BuildSnapPoint>(true);
|
ghostSnaps = go.GetComponentsInChildren<BuildSnapPoint>(true);
|
||||||
aim = aimCamera != null ? aimCamera.transform : (Camera.main != null ? Camera.main.transform : null);
|
ResolveAim();
|
||||||
if (aim == null)
|
|
||||||
Debug.LogError("[BuildManager] Pas de caméra d'aim (Camera.main introuvable — la caméra du joueur est-elle taguée MainCamera ?).", this);
|
|
||||||
|
|
||||||
placementBeganFrame = Time.frameCount;
|
placementBeganFrame = Time.frameCount;
|
||||||
UpdateGhostPose();
|
UpdateGhostPose();
|
||||||
@@ -278,11 +302,18 @@ namespace Ashwild.Building
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Left-click: commits the ghost's pose to the registry (spawned for everyone) and ends the
|
/// Left-click: demolishes the aimed build while in demolition mode, otherwise commits the
|
||||||
/// placement. Blocked on an invalid spot and on the very frame the ghost was attached.
|
/// ghost's pose to the registry (spawned for everyone) and ends the placement. Placement is
|
||||||
|
/// blocked on an invalid spot and on the very frame the ghost was attached.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void HandleConfirm()
|
private void HandleConfirm()
|
||||||
{
|
{
|
||||||
|
if (PlayerEvents.IsDemolishing)
|
||||||
|
{
|
||||||
|
TryDemolish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (ghost == null) return;
|
if (ghost == null) return;
|
||||||
if (PlayerEvents.InputLocked) return;
|
if (PlayerEvents.InputLocked) return;
|
||||||
if (Time.frameCount == placementBeganFrame) return;
|
if (Time.frameCount == placementBeganFrame) return;
|
||||||
@@ -316,6 +347,18 @@ namespace Ashwild.Building
|
|||||||
else if (scroll < 0f) yaw -= rotationStep;
|
else if (scroll < 0f) yaw -= rotationStep;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// R key: yaws the ghost by one rotation step in the same direction as a scroll-up, so the
|
||||||
|
/// build can be turned without the mouse wheel. Ignored when no ghost is being placed.
|
||||||
|
/// </summary>
|
||||||
|
private void HandleRotateKey()
|
||||||
|
{
|
||||||
|
if (ghost == null) return;
|
||||||
|
if (PlayerEvents.InputLocked) return;
|
||||||
|
|
||||||
|
yaw += rotationStep;
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Poses the ghost each frame: quantise the aim hit to the grid with the current yaw, then
|
/// Poses the ghost each frame: quantise the aim hit to the grid with the current yaw, then
|
||||||
/// let a nearby matching socket pull it into an exact connection (sockets win over the grid).
|
/// let a nearby matching socket pull it into an exact connection (sockets win over the grid).
|
||||||
@@ -410,6 +453,76 @@ namespace Ashwild.Building
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Resolves and caches the local player's aim transform — the assigned camera, else the
|
||||||
|
/// runtime Camera.main (the FPS camera). Logs once when neither is found.
|
||||||
|
/// </summary>
|
||||||
|
private Transform ResolveAim()
|
||||||
|
{
|
||||||
|
if (aim != null) return aim;
|
||||||
|
|
||||||
|
aim = aimCamera != null ? aimCamera.transform : (Camera.main != null ? Camera.main.transform : null);
|
||||||
|
if (aim == null)
|
||||||
|
Debug.LogError("[BuildManager] Pas de caméra d'aim (Camera.main introuvable — la caméra du joueur est-elle taguée MainCamera ?).", this);
|
||||||
|
return aim;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Demolition
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Leaving demolition mode drops any current target so the crosshair returns to normal; entering
|
||||||
|
/// it needs nothing here — Update starts tracking on the next frame.
|
||||||
|
/// </summary>
|
||||||
|
private void HandleDemolishModeChanged(bool on)
|
||||||
|
{
|
||||||
|
if (!on) ClearDemoTarget();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Casts the aim ray for a committed build and moves the demolition highlight when the target
|
||||||
|
/// changes: the previous build removes its overlay and the new one gets the demolition material
|
||||||
|
/// added on top, so exactly the aimed build reads as "about to break".
|
||||||
|
/// </summary>
|
||||||
|
private void UpdateDemolitionTarget()
|
||||||
|
{
|
||||||
|
Transform a = ResolveAim();
|
||||||
|
if (a == null) { ClearDemoTarget(); return; }
|
||||||
|
|
||||||
|
BuiltStructure hit = null;
|
||||||
|
if (Physics.Raycast(a.position, a.forward, out RaycastHit info, placeRange, buildMask, QueryTriggerInteraction.Ignore))
|
||||||
|
hit = info.collider.GetComponentInParent<BuiltStructure>();
|
||||||
|
|
||||||
|
if (hit == demoTarget) return;
|
||||||
|
|
||||||
|
if (demoTarget != null) demoTarget.ClearHighlight();
|
||||||
|
demoTarget = hit;
|
||||||
|
if (demoTarget != null) demoTarget.Highlight(demolitionMaterial);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Left-click while demolishing: asks the registry to remove the aimed build for everyone. The
|
||||||
|
/// target stays until the next frame re-evaluates, so a miss simply retargets.
|
||||||
|
/// </summary>
|
||||||
|
private void TryDemolish()
|
||||||
|
{
|
||||||
|
if (demoTarget == null) return;
|
||||||
|
if (BuildRegistry.Instance != null)
|
||||||
|
BuildRegistry.Instance.RequestDemolish(demoTarget.gameObject);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Drops the current demolition target, restoring its authored materials. Safe to call when
|
||||||
|
/// nothing is targeted.
|
||||||
|
/// </summary>
|
||||||
|
private void ClearDemoTarget()
|
||||||
|
{
|
||||||
|
if (demoTarget == null) return;
|
||||||
|
demoTarget.ClearHighlight();
|
||||||
|
demoTarget = null;
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -99,6 +99,43 @@ namespace Ashwild.Building
|
|||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Demolish Build
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Called by BuildManager when the local player demolishes a build they aimed at: resolves the
|
||||||
|
/// hit instance to its index in the replicated list and asks the server to remove it. The index
|
||||||
|
/// is a valid shared key because <see cref="spawned"/> stays aligned with <see cref="builds"/>
|
||||||
|
/// on every machine. No-op when the object is not one of our committed builds.
|
||||||
|
/// </summary>
|
||||||
|
public void RequestDemolish(GameObject builtInstance)
|
||||||
|
{
|
||||||
|
if (builtInstance == null) return;
|
||||||
|
|
||||||
|
int index = spawned.IndexOf(builtInstance);
|
||||||
|
if (index < 0)
|
||||||
|
{
|
||||||
|
Debug.LogWarning($"[BuildRegistry] '{builtInstance.name}' is not a committed build — nothing to demolish.", this);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
RequestDemolishServerRpc(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Server-side: removes the record at this index, which replicates the removal (and the local
|
||||||
|
/// teardown + occupancy refresh) to every client. Range-guarded against a stale index from a
|
||||||
|
/// build that another player demolished during the round-trip.
|
||||||
|
/// </summary>
|
||||||
|
[ServerRpc(RequireOwnership = false)]
|
||||||
|
private void RequestDemolishServerRpc(int index, NetworkConnection conn = null)
|
||||||
|
{
|
||||||
|
if (index < 0 || index >= builds.Count) return;
|
||||||
|
|
||||||
|
// TODO: refund the builder's resources (conn → PlayerInventory) once build cost lands.
|
||||||
|
builds.RemoveAt(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
#region Networked Ghost Preview
|
#region Networked Ghost Preview
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -187,6 +224,7 @@ namespace Ashwild.Building
|
|||||||
case SyncListOperation.RemoveAt:
|
case SyncListOperation.RemoveAt:
|
||||||
DestroyAt(index);
|
DestroyAt(index);
|
||||||
spawned.RemoveAt(index);
|
spawned.RemoveAt(index);
|
||||||
|
RecomputeOccupancy();
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SyncListOperation.Clear:
|
case SyncListOperation.Clear:
|
||||||
@@ -210,7 +248,10 @@ namespace Ashwild.Building
|
|||||||
Debug.LogWarning($"[BuildRegistry] Buildable id {record.buildableId} introuvable ou sans BuiltPrefab — rien de spawné.", this);
|
Debug.LogWarning($"[BuildRegistry] Buildable id {record.buildableId} introuvable ou sans BuiltPrefab — rien de spawné.", this);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return Instantiate(data.BuiltPrefab, record.position, record.rotation);
|
|
||||||
|
GameObject go = Instantiate(data.BuiltPrefab, record.position, record.rotation);
|
||||||
|
if (go.GetComponent<BuiltStructure>() == null) go.AddComponent<BuiltStructure>();
|
||||||
|
return go;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -246,6 +287,24 @@ namespace Ashwild.Building
|
|||||||
MarkOccupancy(go);
|
MarkOccupancy(go);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Recomputes occupancy from scratch after a removal: clears every socket, then re-marks the
|
||||||
|
/// connected pairs across what remains. Without this a demolished piece would leave its former
|
||||||
|
/// neighbours' sockets stuck "occupied", so nothing could ever be snapped back into the gap.
|
||||||
|
/// </summary>
|
||||||
|
private void RecomputeOccupancy()
|
||||||
|
{
|
||||||
|
foreach (GameObject go in spawned)
|
||||||
|
{
|
||||||
|
if (go == null) continue;
|
||||||
|
foreach (BuildSnapPoint sp in go.GetComponentsInChildren<BuildSnapPoint>(true))
|
||||||
|
sp.SetOccupied(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (GameObject go in spawned)
|
||||||
|
MarkOccupancy(go);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Marks the sockets a piece shares a position with — and the matching sockets on the pieces
|
/// Marks the sockets a piece shares a position with — and the matching sockets on the pieces
|
||||||
/// it touches — as occupied, so placement snapping skips them. Occupancy is derived purely
|
/// it touches — as occupied, so placement snapping skips them. Occupancy is derived purely
|
||||||
|
|||||||
@@ -0,0 +1,91 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Ashwild.Building
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Runtime marker added to every committed structure instance the BuildRegistry spawns, so the
|
||||||
|
/// demolition aim can recognise a build from a raycast hit (GetComponentInParent) and hand its
|
||||||
|
/// root back to the registry to remove. It also owns the demolition highlight: while it is the
|
||||||
|
/// hammer's target the demolition material is added on top of every renderer (an extra overlay
|
||||||
|
/// pass, like the ghost), and removed again when the aim leaves — so the player sees exactly which
|
||||||
|
/// build will break. Pure local visual + a pure tag: nothing about it ever crosses the wire.
|
||||||
|
/// </summary>
|
||||||
|
[DisallowMultipleComponent]
|
||||||
|
public class BuiltStructure : MonoBehaviour
|
||||||
|
{
|
||||||
|
#region State
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Every child renderer, cached so the highlight can swap and restore their materials.
|
||||||
|
/// </summary>
|
||||||
|
private Renderer[] renderers;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Each renderer's original materials, kept so the swap is fully reversible.
|
||||||
|
/// </summary>
|
||||||
|
private Material[][] baseMaterials;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether the demolition material is currently applied, so swaps stay idempotent.
|
||||||
|
/// </summary>
|
||||||
|
private bool highlighted;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Unity Lifecycle
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Caches every child renderer and its authored materials up front so highlighting is a cheap
|
||||||
|
/// array assignment with no per-frame allocation of the base look.
|
||||||
|
/// </summary>
|
||||||
|
private void Awake()
|
||||||
|
{
|
||||||
|
renderers = GetComponentsInChildren<Renderer>(true);
|
||||||
|
baseMaterials = new Material[renderers.Length][];
|
||||||
|
for (int i = 0; i < renderers.Length; i++)
|
||||||
|
baseMaterials[i] = renderers[i] != null ? renderers[i].sharedMaterials : new Material[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Public API
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Adds the demolition material on top of each renderer's authored materials (an extra draw
|
||||||
|
/// pass), marking this build as the hammer's current target without hiding the model. Mirrors
|
||||||
|
/// the ghost overlay. No-op when already highlighted or no material was provided.
|
||||||
|
/// </summary>
|
||||||
|
public void Highlight(Material demolitionMaterial)
|
||||||
|
{
|
||||||
|
if (highlighted || demolitionMaterial == null) return;
|
||||||
|
highlighted = true;
|
||||||
|
|
||||||
|
for (int i = 0; i < renderers.Length; i++)
|
||||||
|
{
|
||||||
|
Renderer r = renderers[i];
|
||||||
|
if (r == null) continue;
|
||||||
|
|
||||||
|
Material[] baseMats = baseMaterials[i];
|
||||||
|
Material[] combined = new Material[baseMats.Length + 1];
|
||||||
|
for (int j = 0; j < baseMats.Length; j++) combined[j] = baseMats[j];
|
||||||
|
combined[baseMats.Length] = demolitionMaterial;
|
||||||
|
|
||||||
|
r.materials = combined;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Restores each renderer's authored materials. No-op when not highlighted.
|
||||||
|
/// </summary>
|
||||||
|
public void ClearHighlight()
|
||||||
|
{
|
||||||
|
if (!highlighted) return;
|
||||||
|
highlighted = false;
|
||||||
|
|
||||||
|
for (int i = 0; i < renderers.Length; i++)
|
||||||
|
if (renderers[i] != null) renderers[i].materials = baseMaterials[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: fe38331f524a7db4cb3d53381b9ea244
|
||||||
@@ -0,0 +1,119 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using UnityEngine;
|
||||||
|
using FishNet.Object;
|
||||||
|
using Ashwild.Inventory;
|
||||||
|
using Ashwild.Player;
|
||||||
|
|
||||||
|
namespace Ashwild.Crafting
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The local player's craft-discovery knowledge: the set of items it has ever acquired.
|
||||||
|
/// A recipe is only revealed (and only craftable) once its ingredients have been discovered,
|
||||||
|
/// so the player uncovers crafts by gathering resources rather than seeing the whole catalog
|
||||||
|
/// at once. Discovery is triggered the first time an item enters the inventory — pickups,
|
||||||
|
/// harvest drops AND craft results all count, which lets crafting chains reveal step by step.
|
||||||
|
///
|
||||||
|
/// This is owner-only local state: each player keeps its own knowledge, and it is never
|
||||||
|
/// replicated over the wire (no one else needs to read it). It mirrors PlayerInventory's
|
||||||
|
/// singleton pattern purely for reliable owner gating — set the Instance for the owning
|
||||||
|
/// client in OnStartNetwork, and gate the component off on remotes via ownerOnlyBehaviours.
|
||||||
|
/// </summary>
|
||||||
|
[DisallowMultipleComponent]
|
||||||
|
public class CraftDiscovery : NetworkBehaviour
|
||||||
|
{
|
||||||
|
#region Singleton
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The local player's discovery knowledge (set only on the owning client).
|
||||||
|
/// </summary>
|
||||||
|
public static CraftDiscovery Instance { get; private set; }
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region State
|
||||||
|
|
||||||
|
private readonly HashSet<ItemData> discovered = new HashSet<ItemData>();
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Network Lifecycle
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Registers the singleton on the owning client only (before LocalPlayerSpawned fires).
|
||||||
|
/// </summary>
|
||||||
|
public override void OnStartNetwork()
|
||||||
|
{
|
||||||
|
base.OnStartNetwork();
|
||||||
|
if (base.Owner.IsLocalClient) Instance = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Clears the singleton when this player leaves the network.
|
||||||
|
/// </summary>
|
||||||
|
public override void OnStopNetwork()
|
||||||
|
{
|
||||||
|
base.OnStopNetwork();
|
||||||
|
if (Instance == this) Instance = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Unity Lifecycle
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Starts tracking every item the local player acquires.
|
||||||
|
/// </summary>
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
PlayerEvents.ItemAdded += HandleItemAdded;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Stops tracking — mirrors OnEnable exactly.
|
||||||
|
/// </summary>
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
PlayerEvents.ItemAdded -= HandleItemAdded;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Event Handlers
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Marks an acquired item as discovered. Guarded to the owning instance so a remote puppet
|
||||||
|
/// that briefly subscribed before being gated off can never drive discovery on the wrong copy.
|
||||||
|
/// </summary>
|
||||||
|
private void HandleItemAdded(ItemData item, int quantity)
|
||||||
|
{
|
||||||
|
if (Instance != this) return;
|
||||||
|
Discover(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Public API
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether the local player has ever acquired this item (and therefore knows it).
|
||||||
|
/// </summary>
|
||||||
|
public bool IsDiscovered(ItemData item) => item != null && discovered.Contains(item);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Internal Helpers
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Adds an item to the discovered set the first time it is seen and announces it on the bus
|
||||||
|
/// so the crafting view can reveal any recipe the item unlocks.
|
||||||
|
/// </summary>
|
||||||
|
private void Discover(ItemData item)
|
||||||
|
{
|
||||||
|
if (item == null) return;
|
||||||
|
if (discovered.Add(item))
|
||||||
|
PlayerEvents.RaiseItemDiscovered(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: fabb912832c44b945a26c8ef03db222a
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.Events;
|
using UnityEngine.Events;
|
||||||
using Ashwild.Inventory;
|
using Ashwild.Inventory;
|
||||||
@@ -31,6 +32,7 @@ namespace Ashwild.Crafting
|
|||||||
|
|
||||||
private PlayerInventory inventory;
|
private PlayerInventory inventory;
|
||||||
private bool bound;
|
private bool bound;
|
||||||
|
private readonly HashSet<CraftingRecipe> unlockedRecipes = new HashSet<CraftingRecipe>();
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
@@ -43,19 +45,25 @@ namespace Ashwild.Crafting
|
|||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns whether the local player can currently craft the recipe the given number of times.
|
/// Returns whether the local player can currently craft the recipe the given number of times.
|
||||||
|
/// A recipe is only craftable once every ingredient has been discovered, on top of the usual
|
||||||
|
/// inventory check — an ingredient still shown as a mystery ("?") blocks the craft.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool CanCraft(CraftingRecipe recipe, int count = 1)
|
public bool CanCraft(CraftingRecipe recipe, int count = 1)
|
||||||
{
|
{
|
||||||
return PlayerInventory.Instance != null && recipe.CanCraft(PlayerInventory.Instance, count);
|
return PlayerInventory.Instance != null
|
||||||
|
&& IsFullyDiscovered(recipe)
|
||||||
|
&& recipe.CanCraft(PlayerInventory.Instance, count);
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Consumes the ingredients and produces the result if the local player can afford it.
|
/// Consumes the ingredients and produces the result if the local player can afford it and has
|
||||||
|
/// discovered every ingredient. The result item is added through the inventory, which in turn
|
||||||
|
/// discovers it — so crafting an intermediate result reveals the recipes further down the chain.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool TryCraft(CraftingRecipe recipe, int count = 1)
|
public bool TryCraft(CraftingRecipe recipe, int count = 1)
|
||||||
{
|
{
|
||||||
PlayerInventory inv = PlayerInventory.Instance;
|
PlayerInventory inv = PlayerInventory.Instance;
|
||||||
if (inv == null || !recipe.CanCraft(inv, count))
|
if (inv == null || !IsFullyDiscovered(recipe) || !recipe.CanCraft(inv, count))
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
// Consume ingredients
|
// Consume ingredients
|
||||||
@@ -82,6 +90,7 @@ namespace Ashwild.Crafting
|
|||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
{
|
{
|
||||||
PlayerEvents.LocalPlayerSpawned += HandleLocalPlayerSpawned;
|
PlayerEvents.LocalPlayerSpawned += HandleLocalPlayerSpawned;
|
||||||
|
PlayerEvents.ItemDiscovered += HandleItemDiscovered;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -90,6 +99,7 @@ namespace Ashwild.Crafting
|
|||||||
private void OnDisable()
|
private void OnDisable()
|
||||||
{
|
{
|
||||||
PlayerEvents.LocalPlayerSpawned -= HandleLocalPlayerSpawned;
|
PlayerEvents.LocalPlayerSpawned -= HandleLocalPlayerSpawned;
|
||||||
|
PlayerEvents.ItemDiscovered -= HandleItemDiscovered;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -98,7 +108,7 @@ namespace Ashwild.Crafting
|
|||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
if (craftingUI != null)
|
if (craftingUI != null)
|
||||||
craftingUI.Build(recipes, CanCraft, CountItem, TryCraft);
|
craftingUI.Build(recipes, CanCraft, CountItem, TryCraft, IsDiscovered, IsRecipeVisible);
|
||||||
else
|
else
|
||||||
Debug.LogError("[CraftingManager] No CraftingUI assigned — the crafting panel will not populate.", this);
|
Debug.LogError("[CraftingManager] No CraftingUI assigned — the crafting panel will not populate.", this);
|
||||||
|
|
||||||
@@ -134,6 +144,19 @@ namespace Ashwild.Crafting
|
|||||||
craftingUI.Refresh();
|
craftingUI.Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Reacts to a newly discovered item: announces any recipe it just unlocked (for the "NEW"
|
||||||
|
/// craft notification), then refreshes the view so those recipes appear and their once-mystery
|
||||||
|
/// ingredients are shown.
|
||||||
|
/// </summary>
|
||||||
|
private void HandleItemDiscovered(ItemData item)
|
||||||
|
{
|
||||||
|
NotifyNewlyUnlockedRecipes();
|
||||||
|
|
||||||
|
if (craftingUI != null)
|
||||||
|
craftingUI.Refresh();
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Internal Helpers
|
#region Internal Helpers
|
||||||
@@ -150,10 +173,41 @@ namespace Ashwild.Crafting
|
|||||||
|
|
||||||
inventory.onSlotChanged.AddListener(HandleInventoryChanged);
|
inventory.onSlotChanged.AddListener(HandleInventoryChanged);
|
||||||
|
|
||||||
|
SeedUnlockedRecipes();
|
||||||
|
|
||||||
if (craftingUI != null)
|
if (craftingUI != null)
|
||||||
craftingUI.Refresh();
|
craftingUI.Refresh();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Records the recipes already revealed at bind time (e.g. from restored discoveries) so they
|
||||||
|
/// are treated as known and never fire a spurious "NEW" notification. With a fresh player this
|
||||||
|
/// is empty since discovery starts at zero.
|
||||||
|
/// </summary>
|
||||||
|
private void SeedUnlockedRecipes()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < recipes.Length; i++)
|
||||||
|
if (IsRecipeVisible(recipes[i]))
|
||||||
|
unlockedRecipes.Add(recipes[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Raises a "NEW" notification for every recipe that has just become visible (its first
|
||||||
|
/// discovered ingredient), each announced once. Called after an item is discovered.
|
||||||
|
/// </summary>
|
||||||
|
private void NotifyNewlyUnlockedRecipes()
|
||||||
|
{
|
||||||
|
for (int i = 0; i < recipes.Length; i++)
|
||||||
|
{
|
||||||
|
CraftingRecipe recipe = recipes[i];
|
||||||
|
if (unlockedRecipes.Contains(recipe)) continue;
|
||||||
|
if (!IsRecipeVisible(recipe)) continue;
|
||||||
|
|
||||||
|
unlockedRecipes.Add(recipe);
|
||||||
|
PlayerEvents.RaiseRecipeDiscovered(recipe.Icon, recipe.RecipeName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// How many of an item the local player currently holds (0 when offline).
|
/// How many of an item the local player currently holds (0 when offline).
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@@ -162,6 +216,37 @@ namespace Ashwild.Crafting
|
|||||||
return PlayerInventory.Instance != null ? PlayerInventory.Instance.CountItem(item) : 0;
|
return PlayerInventory.Instance != null ? PlayerInventory.Instance.CountItem(item) : 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether the local player has discovered the item (false when the discovery tracker isn't ready).
|
||||||
|
/// </summary>
|
||||||
|
private bool IsDiscovered(ItemData item)
|
||||||
|
{
|
||||||
|
return CraftDiscovery.Instance != null && CraftDiscovery.Instance.IsDiscovered(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether the recipe should appear at all: revealed as soon as at least one of its ingredients
|
||||||
|
/// has been discovered. Undiscovered ingredients then show as a mystery until found.
|
||||||
|
/// </summary>
|
||||||
|
private bool IsRecipeVisible(CraftingRecipe recipe)
|
||||||
|
{
|
||||||
|
CraftingIngredient[] ingredients = recipe.Ingredients;
|
||||||
|
for (int i = 0; i < ingredients.Length; i++)
|
||||||
|
if (IsDiscovered(ingredients[i].item)) return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether every ingredient of the recipe has been discovered — the gate for actually crafting it.
|
||||||
|
/// </summary>
|
||||||
|
private bool IsFullyDiscovered(CraftingRecipe recipe)
|
||||||
|
{
|
||||||
|
CraftingIngredient[] ingredients = recipe.Ingredients;
|
||||||
|
for (int i = 0; i < ingredients.Length; i++)
|
||||||
|
if (!IsDiscovered(ingredients[i].item)) return false;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -42,6 +42,8 @@ namespace Ashwild.Crafting
|
|||||||
private Func<CraftingRecipe, int, bool> canCraftQuery;
|
private Func<CraftingRecipe, int, bool> canCraftQuery;
|
||||||
private Func<ItemData, int> countItemQuery;
|
private Func<ItemData, int> countItemQuery;
|
||||||
private Func<CraftingRecipe, int, bool> craftRequest;
|
private Func<CraftingRecipe, int, bool> craftRequest;
|
||||||
|
private Func<ItemData, bool> isDiscoveredQuery;
|
||||||
|
private Func<CraftingRecipe, bool> isRecipeVisibleQuery;
|
||||||
private readonly List<RecipeButtonUI> recipeButtons = new List<RecipeButtonUI>();
|
private readonly List<RecipeButtonUI> recipeButtons = new List<RecipeButtonUI>();
|
||||||
private readonly List<GameObject> ingredientInstances = new List<GameObject>();
|
private readonly List<GameObject> ingredientInstances = new List<GameObject>();
|
||||||
private RecipeButtonUI selectedButton;
|
private RecipeButtonUI selectedButton;
|
||||||
@@ -55,12 +57,15 @@ namespace Ashwild.Crafting
|
|||||||
/// <summary>
|
/// <summary>
|
||||||
/// Builds the recipe buttons (once) and wires the manager-owned queries/action. Safe to
|
/// Builds the recipe buttons (once) and wires the manager-owned queries/action. Safe to
|
||||||
/// call again later to re-point the delegates; it then simply refreshes the display.
|
/// call again later to re-point the delegates; it then simply refreshes the display.
|
||||||
|
/// The discovery queries decide which recipes are shown and which ingredients are still a mystery.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Build(CraftingRecipe[] recipes, Func<CraftingRecipe, int, bool> canCraft, Func<ItemData, int> countItem, Func<CraftingRecipe, int, bool> craft)
|
public void Build(CraftingRecipe[] recipes, Func<CraftingRecipe, int, bool> canCraft, Func<ItemData, int> countItem, Func<CraftingRecipe, int, bool> craft, Func<ItemData, bool> isDiscovered, Func<CraftingRecipe, bool> isRecipeVisible)
|
||||||
{
|
{
|
||||||
canCraftQuery = canCraft;
|
canCraftQuery = canCraft;
|
||||||
countItemQuery = countItem;
|
countItemQuery = countItem;
|
||||||
craftRequest = craft;
|
craftRequest = craft;
|
||||||
|
isDiscoveredQuery = isDiscovered;
|
||||||
|
isRecipeVisibleQuery = isRecipeVisible;
|
||||||
|
|
||||||
if (!built)
|
if (!built)
|
||||||
{
|
{
|
||||||
@@ -81,8 +86,9 @@ namespace Ashwild.Crafting
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Recomputes craftability for every recipe button and refreshes the open detail.
|
/// Recomputes each recipe button's visibility (revealed once an ingredient is discovered) and
|
||||||
/// Called by the manager whenever the local player's inventory changes.
|
/// its craftability, then refreshes the open detail. Called by the manager whenever the local
|
||||||
|
/// player's inventory changes or a new item is discovered.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Refresh()
|
public void Refresh()
|
||||||
{
|
{
|
||||||
@@ -91,6 +97,9 @@ namespace Ashwild.Crafting
|
|||||||
for (int i = 0; i < recipeButtons.Count; i++)
|
for (int i = 0; i < recipeButtons.Count; i++)
|
||||||
{
|
{
|
||||||
RecipeButtonUI btn = recipeButtons[i];
|
RecipeButtonUI btn = recipeButtons[i];
|
||||||
|
bool visible = isRecipeVisibleQuery == null || isRecipeVisibleQuery(btn.Recipe);
|
||||||
|
btn.gameObject.SetActive(visible);
|
||||||
|
|
||||||
bool canCraft = canCraftQuery != null && canCraftQuery(btn.Recipe, btn.CraftCount);
|
bool canCraft = canCraftQuery != null && canCraftQuery(btn.Recipe, btn.CraftCount);
|
||||||
btn.UpdateCraftability(canCraft);
|
btn.UpdateCraftability(canCraft);
|
||||||
}
|
}
|
||||||
@@ -193,12 +202,21 @@ namespace Ashwild.Crafting
|
|||||||
GameObject slotGO = Instantiate(ingredientSlotPrefab, ingredientContainer);
|
GameObject slotGO = Instantiate(ingredientSlotPrefab, ingredientContainer);
|
||||||
IngredientSlotUI slotUI = slotGO.GetComponent<IngredientSlotUI>();
|
IngredientSlotUI slotUI = slotGO.GetComponent<IngredientSlotUI>();
|
||||||
|
|
||||||
|
bool discovered = isDiscoveredQuery == null || isDiscoveredQuery(ingredients[i].item);
|
||||||
|
if (!discovered)
|
||||||
|
{
|
||||||
|
slotUI.SetupMystery();
|
||||||
|
canCraft = false;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
int required = ingredients[i].quantity * count;
|
int required = ingredients[i].quantity * count;
|
||||||
int playerHas = countItemQuery != null ? countItemQuery(ingredients[i].item) : 0;
|
int playerHas = countItemQuery != null ? countItemQuery(ingredients[i].item) : 0;
|
||||||
slotUI.Setup(ingredients[i].item, required, playerHas);
|
slotUI.Setup(ingredients[i].item, required, playerHas);
|
||||||
|
|
||||||
if (playerHas < required)
|
if (playerHas < required)
|
||||||
canCraft = false;
|
canCraft = false;
|
||||||
|
}
|
||||||
|
|
||||||
ingredientInstances.Add(slotGO);
|
ingredientInstances.Add(slotGO);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,21 +5,45 @@ using Ashwild.Inventory;
|
|||||||
|
|
||||||
namespace Ashwild.Crafting
|
namespace Ashwild.Crafting
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// A single ingredient cell in the crafting detail panel. Renders either a known ingredient
|
||||||
|
/// (icon + required quantity, tinted by whether the player has enough) or a mystery placeholder
|
||||||
|
/// ("?") for an ingredient the player has not discovered yet.
|
||||||
|
/// </summary>
|
||||||
public class IngredientSlotUI : MonoBehaviour
|
public class IngredientSlotUI : MonoBehaviour
|
||||||
{
|
{
|
||||||
[SerializeField] private Image iconImage;
|
[SerializeField] private Image iconImage;
|
||||||
[SerializeField] private TextMeshProUGUI quantityText;
|
[SerializeField] private TextMeshProUGUI quantityText;
|
||||||
|
|
||||||
|
[Header("Mystery (undiscovered ingredient)")]
|
||||||
|
[Tooltip("Icon shown for an ingredient the player hasn't discovered yet (a question mark).")]
|
||||||
|
[SerializeField] private Sprite mysteryIcon;
|
||||||
|
|
||||||
[Header("Colors")]
|
[Header("Colors")]
|
||||||
[SerializeField] private Color enoughColor = Color.white;
|
[SerializeField] private Color enoughColor = Color.white;
|
||||||
[SerializeField] private Color missingColor = new Color(1f, 0.3f, 0.3f, 1f);
|
[SerializeField] private Color missingColor = new Color(1f, 0.3f, 0.3f, 1f);
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Renders a known ingredient: its icon and required amount, dimmed/red when the player lacks it.
|
||||||
|
/// </summary>
|
||||||
public void Setup(ItemData item, int required, int playerHas)
|
public void Setup(ItemData item, int required, int playerHas)
|
||||||
{
|
{
|
||||||
|
quantityText.gameObject.SetActive(true);
|
||||||
iconImage.sprite = item.Icon;
|
iconImage.sprite = item.Icon;
|
||||||
quantityText.text = "x" + required;
|
quantityText.text = "x" + required;
|
||||||
quantityText.color = playerHas >= required ? enoughColor : missingColor;
|
quantityText.color = playerHas >= required ? enoughColor : missingColor;
|
||||||
iconImage.color = playerHas >= required ? Color.white : new Color(1f, 1f, 1f, 0.5f);
|
iconImage.color = playerHas >= required ? Color.white : new Color(1f, 1f, 1f, 0.5f);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Renders an undiscovered ingredient as a mystery: the "?" icon with no quantity text, so the
|
||||||
|
/// player knows a craft exists but must still find what it needs and how much.
|
||||||
|
/// </summary>
|
||||||
|
public void SetupMystery()
|
||||||
|
{
|
||||||
|
iconImage.sprite = mysteryIcon;
|
||||||
|
iconImage.color = new Color(1f, 1f, 1f, 0.5f);
|
||||||
|
quantityText.gameObject.SetActive(false);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -24,6 +24,10 @@ namespace Ashwild.Inventory
|
|||||||
[Header("Context Menu")]
|
[Header("Context Menu")]
|
||||||
[SerializeField] private SlotContextMenu contextMenu;
|
[SerializeField] private SlotContextMenu contextMenu;
|
||||||
|
|
||||||
|
[Header("Hover Description")]
|
||||||
|
[Tooltip("Same panel used by the inventory — assign the shared HoverDescriptionUI here too.")]
|
||||||
|
[SerializeField] private HoverDescriptionUI hoverDescription;
|
||||||
|
|
||||||
private PlayerInventory inventory;
|
private PlayerInventory inventory;
|
||||||
private Tweener scaleTween;
|
private Tweener scaleTween;
|
||||||
private Tweener alphaTween;
|
private Tweener alphaTween;
|
||||||
@@ -51,7 +55,7 @@ namespace Ashwild.Inventory
|
|||||||
{
|
{
|
||||||
// Visual setup that does not need the player.
|
// Visual setup that does not need the player.
|
||||||
for (int i = 0; i < hotbarSlot.Length; i++)
|
for (int i = 0; i < hotbarSlot.Length; i++)
|
||||||
hotbarSlot[i].Initialize(i, InventoryUI.OnSwapRequested, OnSlotClicked);
|
hotbarSlot[i].Initialize(i, InventoryUI.OnSwapRequested, OnSlotClicked, OnSlotHoverEnter, OnSlotHoverExit);
|
||||||
|
|
||||||
transform.localScale = Vector3.one * idleScale;
|
transform.localScale = Vector3.one * idleScale;
|
||||||
if (canvasGroup != null)
|
if (canvasGroup != null)
|
||||||
@@ -167,6 +171,40 @@ namespace Ashwild.Inventory
|
|||||||
hotbarSlot[index].UpdateVisual(inventory.GetSlot(index));
|
hotbarSlot[index].UpdateVisual(inventory.GetSlot(index));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Shows the shared description panel for a hovered hotbar slot, but only while the inventory
|
||||||
|
/// is open — during normal play the hotbar must not pop a description. The duration bar
|
||||||
|
/// reflects the item's remaining uses/durability.
|
||||||
|
/// </summary>
|
||||||
|
private void OnSlotHoverEnter(int index)
|
||||||
|
{
|
||||||
|
if (hoverDescription == null || inventory == null || !PlayerEvents.IsInventoryOpen) return;
|
||||||
|
|
||||||
|
InventorySlot slot = inventory.GetSlot(index);
|
||||||
|
if (slot == null || slot.IsEmpty)
|
||||||
|
{
|
||||||
|
hoverDescription.Hide();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ItemData item = slot.ItemData;
|
||||||
|
bool hasDuration = item.HasUses;
|
||||||
|
float fill = hasDuration ? (float)slot.CurrentUses / item.MaxUses : 0f;
|
||||||
|
string durationText = hasDuration ? $"{slot.CurrentUses} / {item.MaxUses}" : string.Empty;
|
||||||
|
|
||||||
|
hoverDescription.Show(new ItemDescriptionView(
|
||||||
|
item.Icon, item.ItemName, item.Description, hasDuration, fill, durationText));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Hides the description panel when the pointer leaves a hotbar slot.
|
||||||
|
/// </summary>
|
||||||
|
private void OnSlotHoverExit()
|
||||||
|
{
|
||||||
|
if (hoverDescription != null)
|
||||||
|
hoverDescription.Hide();
|
||||||
|
}
|
||||||
|
|
||||||
private void UpdateSelection(int selectedIndex)
|
private void UpdateSelection(int selectedIndex)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < hotbarSlot.Length; i++)
|
for (int i = 0; i < hotbarSlot.Length; i++)
|
||||||
|
|||||||
@@ -0,0 +1,110 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UI;
|
||||||
|
using TMPro;
|
||||||
|
using DG.Tweening;
|
||||||
|
|
||||||
|
namespace Ashwild.Inventory
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The fixed description panel shown beside the inventory — a pure view. When the pointer
|
||||||
|
/// enters a filled slot the inventory manager hands it an <see cref="ItemDescriptionView"/> and
|
||||||
|
/// it fades its CanvasGroup in, drawing the icon, name, description and (for uses-tracked items)
|
||||||
|
/// the duration bar. It never reads ItemData or the inventory itself; it renders what it is given.
|
||||||
|
/// </summary>
|
||||||
|
[DisallowMultipleComponent]
|
||||||
|
public class HoverDescriptionUI : MonoBehaviour
|
||||||
|
{
|
||||||
|
#region Serialized Fields
|
||||||
|
|
||||||
|
[Header("References")]
|
||||||
|
[SerializeField] private CanvasGroup canvasGroup;
|
||||||
|
[SerializeField] private Image iconImage;
|
||||||
|
[SerializeField] private TextMeshProUGUI nameText;
|
||||||
|
[SerializeField] private TextMeshProUGUI descriptionText;
|
||||||
|
|
||||||
|
[Header("Duration Bar")]
|
||||||
|
[Tooltip("Root object of the duration/uses bar — shown only for items that track uses.")]
|
||||||
|
[SerializeField] private GameObject durationBarRoot;
|
||||||
|
[Tooltip("Filled image whose fillAmount maps to the remaining uses (Image Type = Filled).")]
|
||||||
|
[SerializeField] private Image durationBarFill;
|
||||||
|
[Tooltip("Label drawn over the bar, e.g. \"3 / 5\".")]
|
||||||
|
[SerializeField] private TextMeshProUGUI durationText;
|
||||||
|
|
||||||
|
[Header("Animation")]
|
||||||
|
[SerializeField] private float fadeDuration = 0.15f;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region State
|
||||||
|
|
||||||
|
private Tweener fadeTween;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Unity Lifecycle
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Starts hidden so the panel only appears once a slot is actually hovered.
|
||||||
|
/// </summary>
|
||||||
|
private void Awake() => SetHidden();
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Kills the fade tween so it never targets the CanvasGroup after teardown.
|
||||||
|
/// </summary>
|
||||||
|
private void OnDestroy() => fadeTween?.Kill();
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Public API
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Draws the payload and fades the panel in. Called by the inventory manager on hover enter.
|
||||||
|
/// </summary>
|
||||||
|
public void Show(ItemDescriptionView view)
|
||||||
|
{
|
||||||
|
if (iconImage != null)
|
||||||
|
{
|
||||||
|
iconImage.sprite = view.Icon;
|
||||||
|
iconImage.enabled = view.Icon != null;
|
||||||
|
}
|
||||||
|
if (nameText != null)
|
||||||
|
nameText.text = view.Name;
|
||||||
|
if (descriptionText != null)
|
||||||
|
descriptionText.text = view.Description;
|
||||||
|
|
||||||
|
if (durationBarRoot != null)
|
||||||
|
durationBarRoot.SetActive(view.HasDuration);
|
||||||
|
if (view.HasDuration)
|
||||||
|
{
|
||||||
|
if (durationBarFill != null)
|
||||||
|
durationBarFill.fillAmount = view.DurationFill;
|
||||||
|
if (durationText != null)
|
||||||
|
durationText.text = view.DurationText;
|
||||||
|
}
|
||||||
|
|
||||||
|
fadeTween?.Kill();
|
||||||
|
fadeTween = canvasGroup.DOFade(1f, fadeDuration).SetUpdate(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Fades the panel out via its CanvasGroup only — the GameObject stays active so it can be
|
||||||
|
/// shown again instantly. Called on hover exit / inventory close.
|
||||||
|
/// </summary>
|
||||||
|
public void Hide()
|
||||||
|
{
|
||||||
|
fadeTween?.Kill();
|
||||||
|
fadeTween = canvasGroup.DOFade(0f, fadeDuration).SetUpdate(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Internal Helpers
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Instantly parks the panel invisible via the CanvasGroup, without deactivating it.
|
||||||
|
/// </summary>
|
||||||
|
private void SetHidden() => canvasGroup.alpha = 0f;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 40050a905c9108244901dadab24daa28
|
||||||
@@ -33,6 +33,9 @@ namespace Ashwild.Inventory
|
|||||||
[Header("Context Menu")]
|
[Header("Context Menu")]
|
||||||
[SerializeField] private SlotContextMenu contextMenu;
|
[SerializeField] private SlotContextMenu contextMenu;
|
||||||
|
|
||||||
|
[Header("Hover Description")]
|
||||||
|
[SerializeField] private HoverDescriptionUI hoverDescription;
|
||||||
|
|
||||||
[Header("Categories")]
|
[Header("Categories")]
|
||||||
[SerializeField] private InventoryCategoryManager categoryManager;
|
[SerializeField] private InventoryCategoryManager categoryManager;
|
||||||
|
|
||||||
@@ -93,7 +96,7 @@ namespace Ashwild.Inventory
|
|||||||
int slotIndex = inventory.HotbarSize + i;
|
int slotIndex = inventory.HotbarSize + i;
|
||||||
GameObject slotGO = Instantiate(slotPrefab, slotContainer);
|
GameObject slotGO = Instantiate(slotPrefab, slotContainer);
|
||||||
SlotUI slotUI = slotGO.GetComponent<SlotUI>();
|
SlotUI slotUI = slotGO.GetComponent<SlotUI>();
|
||||||
slotUI.Initialize(slotIndex, OnSwapRequested, OnSlotClicked);
|
slotUI.Initialize(slotIndex, OnSwapRequested, OnSlotClicked, OnSlotHoverEnter, OnSlotHoverExit);
|
||||||
slotUIs[i] = slotUI;
|
slotUIs[i] = slotUI;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -133,6 +136,9 @@ namespace Ashwild.Inventory
|
|||||||
if (contextMenu != null)
|
if (contextMenu != null)
|
||||||
contextMenu.Hide();
|
contextMenu.Hide();
|
||||||
|
|
||||||
|
if (hoverDescription != null)
|
||||||
|
hoverDescription.Hide();
|
||||||
|
|
||||||
if (categoryManager != null)
|
if (categoryManager != null)
|
||||||
categoryManager.Close();
|
categoryManager.Close();
|
||||||
|
|
||||||
@@ -192,6 +198,39 @@ namespace Ashwild.Inventory
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Builds the description payload for the hovered slot and shows the side panel. Empty slots
|
||||||
|
/// keep the panel hidden. The duration bar reflects the item's remaining uses/durability.
|
||||||
|
/// </summary>
|
||||||
|
private void OnSlotHoverEnter(int index)
|
||||||
|
{
|
||||||
|
if (hoverDescription == null || inventory == null) return;
|
||||||
|
|
||||||
|
InventorySlot slot = inventory.GetSlot(index);
|
||||||
|
if (slot == null || slot.IsEmpty)
|
||||||
|
{
|
||||||
|
hoverDescription.Hide();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
ItemData item = slot.ItemData;
|
||||||
|
bool hasDuration = item.HasUses;
|
||||||
|
float fill = hasDuration ? (float)slot.CurrentUses / item.MaxUses : 0f;
|
||||||
|
string durationText = hasDuration ? $"{slot.CurrentUses} / {item.MaxUses}" : string.Empty;
|
||||||
|
|
||||||
|
hoverDescription.Show(new ItemDescriptionView(
|
||||||
|
item.Icon, item.ItemName, item.Description, hasDuration, fill, durationText));
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Hides the description panel when the pointer leaves a slot.
|
||||||
|
/// </summary>
|
||||||
|
private void OnSlotHoverExit()
|
||||||
|
{
|
||||||
|
if (hoverDescription != null)
|
||||||
|
hoverDescription.Hide();
|
||||||
|
}
|
||||||
|
|
||||||
private void RefreshSlot(int index)
|
private void RefreshSlot(int index)
|
||||||
{
|
{
|
||||||
if (slotUIs == null) return;
|
if (slotUIs == null) return;
|
||||||
|
|||||||
@@ -0,0 +1,43 @@
|
|||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace Ashwild.Inventory
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// The view payload for the hover description panel: exactly what the panel renders (icon,
|
||||||
|
/// name, description, and an optional duration/uses bar), nothing more. The inventory manager
|
||||||
|
/// builds one of these from a hovered slot and pushes it into the view, so the panel never
|
||||||
|
/// touches ItemData or the inventory model — it just draws what it is handed.
|
||||||
|
/// </summary>
|
||||||
|
public readonly struct ItemDescriptionView
|
||||||
|
{
|
||||||
|
public readonly Sprite Icon;
|
||||||
|
public readonly string Name;
|
||||||
|
public readonly string Description;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Whether the hovered item tracks uses/durability and should show its duration bar.
|
||||||
|
/// </summary>
|
||||||
|
public readonly bool HasDuration;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Remaining uses as a 0..1 fill for the bar's Filled image.
|
||||||
|
/// </summary>
|
||||||
|
public readonly float DurationFill;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// The remaining/max label drawn over the bar, e.g. "3 / 5".
|
||||||
|
/// </summary>
|
||||||
|
public readonly string DurationText;
|
||||||
|
|
||||||
|
public ItemDescriptionView(Sprite icon, string name, string description,
|
||||||
|
bool hasDuration, float durationFill, string durationText)
|
||||||
|
{
|
||||||
|
Icon = icon;
|
||||||
|
Name = name;
|
||||||
|
Description = description;
|
||||||
|
HasDuration = hasDuration;
|
||||||
|
DurationFill = durationFill;
|
||||||
|
DurationText = durationText;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b901ece22e48ee344837ad720d6f2e18
|
||||||
@@ -6,7 +6,7 @@ using System;
|
|||||||
|
|
||||||
namespace Ashwild.Inventory
|
namespace Ashwild.Inventory
|
||||||
{
|
{
|
||||||
public class SlotUI : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IDropHandler, IPointerClickHandler
|
public class SlotUI : MonoBehaviour, IBeginDragHandler, IDragHandler, IEndDragHandler, IDropHandler, IPointerClickHandler, IPointerEnterHandler, IPointerExitHandler
|
||||||
{
|
{
|
||||||
[Header("References")]
|
[Header("References")]
|
||||||
[SerializeField] private Image iconImage;
|
[SerializeField] private Image iconImage;
|
||||||
@@ -26,6 +26,8 @@ namespace Ashwild.Inventory
|
|||||||
private int slotIndex;
|
private int slotIndex;
|
||||||
private Action<int, int> onSwapRequested;
|
private Action<int, int> onSwapRequested;
|
||||||
private Action<int, bool> onClicked;
|
private Action<int, bool> onClicked;
|
||||||
|
private Action<int> onHoverEnter;
|
||||||
|
private Action onHoverExit;
|
||||||
|
|
||||||
public int SlotIndex => slotIndex;
|
public int SlotIndex => slotIndex;
|
||||||
|
|
||||||
@@ -43,11 +45,14 @@ namespace Ashwild.Inventory
|
|||||||
ghostObject.SetActive(false);
|
ghostObject.SetActive(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Initialize(int index, Action<int, int> swapCallback, Action<int, bool> clickCallback)
|
public void Initialize(int index, Action<int, int> swapCallback, Action<int, bool> clickCallback,
|
||||||
|
Action<int> hoverEnterCallback = null, Action hoverExitCallback = null)
|
||||||
{
|
{
|
||||||
slotIndex = index;
|
slotIndex = index;
|
||||||
onSwapRequested = swapCallback;
|
onSwapRequested = swapCallback;
|
||||||
onClicked = clickCallback;
|
onClicked = clickCallback;
|
||||||
|
onHoverEnter = hoverEnterCallback;
|
||||||
|
onHoverExit = hoverExitCallback;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
@@ -170,5 +175,23 @@ namespace Ashwild.Inventory
|
|||||||
if (eventData.button == PointerEventData.InputButton.Right)
|
if (eventData.button == PointerEventData.InputButton.Right)
|
||||||
onClicked?.Invoke(slotIndex, true);
|
onClicked?.Invoke(slotIndex, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Reports the hovered slot index so the manager can show its description panel. Suppressed
|
||||||
|
/// while a drag is in progress, where the panel would only get in the way.
|
||||||
|
/// </summary>
|
||||||
|
public void OnPointerEnter(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
if (draggedSlot != null) return;
|
||||||
|
onHoverEnter?.Invoke(slotIndex);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Reports that the pointer left the slot so the manager can hide the description panel.
|
||||||
|
/// </summary>
|
||||||
|
public void OnPointerExit(PointerEventData eventData)
|
||||||
|
{
|
||||||
|
onHoverExit?.Invoke();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -25,6 +25,8 @@ namespace Ashwild.Player
|
|||||||
public static bool IsBuildMenuOpen { get; private set; }
|
public static bool IsBuildMenuOpen { get; private set; }
|
||||||
// True while a build ghost is being positioned in the world (menu closed, no structure placed yet).
|
// True while a build ghost is being positioned in the world (menu closed, no structure placed yet).
|
||||||
public static bool IsPlacingBuild { get; private set; }
|
public static bool IsPlacingBuild { get; private set; }
|
||||||
|
// True while the build hammer is in demolition mode (right-click held, menu closed, not placing).
|
||||||
|
public static bool IsDemolishing { get; private set; }
|
||||||
public static bool IsPaused { get; private set; }
|
public static bool IsPaused { get; private set; }
|
||||||
|
|
||||||
// True when a networked session is live (host or client).
|
// True when a networked session is live (host or client).
|
||||||
@@ -52,11 +54,13 @@ namespace Ashwild.Player
|
|||||||
public static event Action CrouchPressed;
|
public static event Action CrouchPressed;
|
||||||
public static event Action AttackPressed;
|
public static event Action AttackPressed;
|
||||||
public static event Action SecondaryUsePressed; // right-click / secondary use (build menu, aim, block, ...)
|
public static event Action SecondaryUsePressed; // right-click / secondary use (build menu, aim, block, ...)
|
||||||
|
public static event Action<bool> SecondaryUseHeld; // right-click pressed (true) / released (false) — for tap-vs-hold gestures
|
||||||
public static event Action InteractPressed;
|
public static event Action InteractPressed;
|
||||||
public static event Action DropPressed;
|
public static event Action DropPressed;
|
||||||
public static event Action InventoryTogglePressed;
|
public static event Action InventoryTogglePressed;
|
||||||
public static event Action<int> HotbarSlotPressed;
|
public static event Action<int> HotbarSlotPressed;
|
||||||
public static event Action<float> HotbarScroll;
|
public static event Action<float> HotbarScroll;
|
||||||
|
public static event Action BuildRotatePressed; // rotate the build ghost one step (R key) while placing
|
||||||
public static event Action CancelPressed; // UI "Cancel" (Escape) — back / pause / close
|
public static event Action CancelPressed; // UI "Cancel" (Escape) — back / pause / close
|
||||||
|
|
||||||
// ============================================================
|
// ============================================================
|
||||||
@@ -101,6 +105,8 @@ namespace Ashwild.Player
|
|||||||
public static event Action<ItemData, int> ItemDropped;
|
public static event Action<ItemData, int> ItemDropped;
|
||||||
public static event Action<ItemData> ItemConsumed;
|
public static event Action<ItemData> ItemConsumed;
|
||||||
public static event Action<ItemData, int> ItemPickedUp;
|
public static event Action<ItemData, int> ItemPickedUp;
|
||||||
|
public static event Action<ItemData> ItemDiscovered; // an item entered the inventory for the first time (unlocks recipes)
|
||||||
|
public static event Action<Sprite, string> RecipeDiscovered; // a recipe was just revealed (icon, name) — for the "NEW" craft notification
|
||||||
public static event Action<ItemData> HeldItemChanged;
|
public static event Action<ItemData> HeldItemChanged;
|
||||||
public static event Action<bool> InventoryOpenChanged;
|
public static event Action<bool> InventoryOpenChanged;
|
||||||
public static event Action<bool> ChestOpenChanged;
|
public static event Action<bool> ChestOpenChanged;
|
||||||
@@ -128,6 +134,7 @@ namespace Ashwild.Player
|
|||||||
public static event Action BuildMenuToggleRequested; // the build hammer asks to open/close the construction menu
|
public static event Action BuildMenuToggleRequested; // the build hammer asks to open/close the construction menu
|
||||||
public static event Action<bool> BuildMenuOpenChanged; // the construction menu opened (true) or closed (false)
|
public static event Action<bool> BuildMenuOpenChanged; // the construction menu opened (true) or closed (false)
|
||||||
public static event Action<bool> BuildPlacingChanged; // a build ghost started (true) / stopped (false) being positioned
|
public static event Action<bool> BuildPlacingChanged; // a build ghost started (true) / stopped (false) being positioned
|
||||||
|
public static event Action<bool> DemolishModeChanged; // the hammer entered (true) / left (false) demolition mode (right-click held)
|
||||||
|
|
||||||
// ============================================================
|
// ============================================================
|
||||||
// Cooking events
|
// Cooking events
|
||||||
@@ -151,6 +158,7 @@ namespace Ashwild.Player
|
|||||||
public static event Action Died;
|
public static event Action Died;
|
||||||
public static event Action Respawned;
|
public static event Action Respawned;
|
||||||
public static event Action<bool> DeathChanged;
|
public static event Action<bool> DeathChanged;
|
||||||
|
public static event Action<Vector3, Quaternion> RespawnPointChanged; // the local player's respawn pose was reassigned (e.g. claimed a bed)
|
||||||
|
|
||||||
// ============================================================
|
// ============================================================
|
||||||
// Network / session events
|
// Network / session events
|
||||||
@@ -181,11 +189,13 @@ namespace Ashwild.Player
|
|||||||
public static void RaiseCrouchPressed() { Log(nameof(CrouchPressed)); CrouchPressed?.Invoke(); }
|
public static void RaiseCrouchPressed() { Log(nameof(CrouchPressed)); CrouchPressed?.Invoke(); }
|
||||||
public static void RaiseAttackPressed() { Log(nameof(AttackPressed)); AttackPressed?.Invoke(); }
|
public static void RaiseAttackPressed() { Log(nameof(AttackPressed)); AttackPressed?.Invoke(); }
|
||||||
public static void RaiseSecondaryUsePressed() { Log(nameof(SecondaryUsePressed)); SecondaryUsePressed?.Invoke(); }
|
public static void RaiseSecondaryUsePressed() { Log(nameof(SecondaryUsePressed)); SecondaryUsePressed?.Invoke(); }
|
||||||
|
public static void RaiseSecondaryUseHeld(bool held) { Log(nameof(SecondaryUseHeld)); SecondaryUseHeld?.Invoke(held); }
|
||||||
public static void RaiseInteractPressed() { Log(nameof(InteractPressed)); InteractPressed?.Invoke(); }
|
public static void RaiseInteractPressed() { Log(nameof(InteractPressed)); InteractPressed?.Invoke(); }
|
||||||
public static void RaiseDropPressed() { Log(nameof(DropPressed)); DropPressed?.Invoke(); }
|
public static void RaiseDropPressed() { Log(nameof(DropPressed)); DropPressed?.Invoke(); }
|
||||||
public static void RaiseInventoryTogglePressed() { Log(nameof(InventoryTogglePressed)); InventoryTogglePressed?.Invoke(); }
|
public static void RaiseInventoryTogglePressed() { Log(nameof(InventoryTogglePressed)); InventoryTogglePressed?.Invoke(); }
|
||||||
public static void RaiseHotbarSlotPressed(int i) { Log(nameof(HotbarSlotPressed)); HotbarSlotPressed?.Invoke(i); }
|
public static void RaiseHotbarSlotPressed(int i) { Log(nameof(HotbarSlotPressed)); HotbarSlotPressed?.Invoke(i); }
|
||||||
public static void RaiseHotbarScroll(float f) { HotbarScroll?.Invoke(f); }
|
public static void RaiseHotbarScroll(float f) { HotbarScroll?.Invoke(f); }
|
||||||
|
public static void RaiseBuildRotatePressed() { Log(nameof(BuildRotatePressed)); BuildRotatePressed?.Invoke(); }
|
||||||
public static void RaiseCancelPressed() { Log(nameof(CancelPressed)); CancelPressed?.Invoke(); }
|
public static void RaiseCancelPressed() { Log(nameof(CancelPressed)); CancelPressed?.Invoke(); }
|
||||||
|
|
||||||
public static void RaiseGroundedChanged(bool grounded, float impactSpeed)
|
public static void RaiseGroundedChanged(bool grounded, float impactSpeed)
|
||||||
@@ -247,6 +257,8 @@ namespace Ashwild.Player
|
|||||||
public static void RaiseItemDropped(ItemData d, int q) { Log(nameof(ItemDropped)); ItemDropped?.Invoke(d, q); }
|
public static void RaiseItemDropped(ItemData d, int q) { Log(nameof(ItemDropped)); ItemDropped?.Invoke(d, q); }
|
||||||
public static void RaiseItemConsumed(ItemData d) { Log(nameof(ItemConsumed)); ItemConsumed?.Invoke(d); }
|
public static void RaiseItemConsumed(ItemData d) { Log(nameof(ItemConsumed)); ItemConsumed?.Invoke(d); }
|
||||||
public static void RaiseItemPickedUp(ItemData d, int q) { Log(nameof(ItemPickedUp)); ItemPickedUp?.Invoke(d, q); }
|
public static void RaiseItemPickedUp(ItemData d, int q) { Log(nameof(ItemPickedUp)); ItemPickedUp?.Invoke(d, q); }
|
||||||
|
public static void RaiseItemDiscovered(ItemData d) { Log(nameof(ItemDiscovered)); ItemDiscovered?.Invoke(d); }
|
||||||
|
public static void RaiseRecipeDiscovered(Sprite icon, string recipeName) { Log(nameof(RecipeDiscovered)); RecipeDiscovered?.Invoke(icon, recipeName); }
|
||||||
public static void RaiseHeldItemChanged(ItemData d) { Log(nameof(HeldItemChanged)); HeldItemChanged?.Invoke(d); }
|
public static void RaiseHeldItemChanged(ItemData d) { Log(nameof(HeldItemChanged)); HeldItemChanged?.Invoke(d); }
|
||||||
public static void RaiseInventoryOpenChanged(bool b)
|
public static void RaiseInventoryOpenChanged(bool b)
|
||||||
{
|
{
|
||||||
@@ -293,6 +305,17 @@ namespace Ashwild.Player
|
|||||||
BuildPlacingChanged?.Invoke(placing);
|
BuildPlacingChanged?.Invoke(placing);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Toggles demolition mode (right-click held with the hammer out). Owner-side only; the
|
||||||
|
/// hammer raises it and BuildManager drives the world-facing targeting/destroy from it.
|
||||||
|
/// </summary>
|
||||||
|
public static void RaiseDemolishModeChanged(bool on)
|
||||||
|
{
|
||||||
|
IsDemolishing = on;
|
||||||
|
Log(nameof(DemolishModeChanged));
|
||||||
|
DemolishModeChanged?.Invoke(on);
|
||||||
|
}
|
||||||
|
|
||||||
public static void RaiseFoodPlacedToCook(ItemData raw) { Log(nameof(FoodPlacedToCook)); FoodPlacedToCook?.Invoke(raw); }
|
public static void RaiseFoodPlacedToCook(ItemData raw) { Log(nameof(FoodPlacedToCook)); FoodPlacedToCook?.Invoke(raw); }
|
||||||
public static void RaiseFoodCookedReady(ItemData cooked) { Log(nameof(FoodCookedReady)); FoodCookedReady?.Invoke(cooked); }
|
public static void RaiseFoodCookedReady(ItemData cooked) { Log(nameof(FoodCookedReady)); FoodCookedReady?.Invoke(cooked); }
|
||||||
public static void RaiseFuelAdded(ItemData fuel) { Log(nameof(FuelAdded)); FuelAdded?.Invoke(fuel); }
|
public static void RaiseFuelAdded(ItemData fuel) { Log(nameof(FuelAdded)); FuelAdded?.Invoke(fuel); }
|
||||||
@@ -318,6 +341,16 @@ namespace Ashwild.Player
|
|||||||
DeathChanged?.Invoke(false);
|
DeathChanged?.Invoke(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Reassigns the local player's respawn pose (e.g. after claiming a bed). Owner-side only;
|
||||||
|
/// the pose is pure local state and is never networked — each client keeps its own.
|
||||||
|
/// </summary>
|
||||||
|
public static void RaiseRespawnPointChanged(Vector3 position, Quaternion rotation)
|
||||||
|
{
|
||||||
|
Log(nameof(RespawnPointChanged));
|
||||||
|
RespawnPointChanged?.Invoke(position, rotation);
|
||||||
|
}
|
||||||
|
|
||||||
public static void RaiseSessionStarting() { Log(nameof(SessionStarting)); SessionStarting?.Invoke(); }
|
public static void RaiseSessionStarting() { Log(nameof(SessionStarting)); SessionStarting?.Invoke(); }
|
||||||
public static void RaiseSessionStarted(string code)
|
public static void RaiseSessionStarted(string code)
|
||||||
{
|
{
|
||||||
@@ -365,6 +398,7 @@ namespace Ashwild.Player
|
|||||||
IsChestOpen = false;
|
IsChestOpen = false;
|
||||||
IsBuildMenuOpen = false;
|
IsBuildMenuOpen = false;
|
||||||
IsPlacingBuild = false;
|
IsPlacingBuild = false;
|
||||||
|
IsDemolishing = false;
|
||||||
IsPaused = false;
|
IsPaused = false;
|
||||||
HoveredInteractable = null;
|
HoveredInteractable = null;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,21 +4,28 @@ using Ashwild.Inventory;
|
|||||||
namespace Ashwild.Player
|
namespace Ashwild.Player
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Held-item logic for the build hammer, placed on its hand prefab. While equipped it
|
/// Held-item logic for the build hammer, placed on its hand prefab. It turns the single
|
||||||
/// listens to the secondary-use input (right-click) and asks the construction UI to
|
/// right-click into two gestures without any extra keybind: a quick <b>tap</b> opens/closes the
|
||||||
/// open/close through the bus — it never reaches for the menu itself, so the hammer
|
/// construction menu through the bus, while <b>holding</b> right-click past a short threshold puts
|
||||||
/// stays a pure input source and the UI owns its own state. Left-click placement will
|
/// the hammer into demolition mode for as long as it is held (releasing leaves it). The hammer
|
||||||
/// be added on top of this once the build menu exists.
|
/// stays a pure input source — it only raises bus requests; BuildManager owns the menu and the
|
||||||
|
/// world-facing targeting/destroy, so this never reaches for either.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[DisallowMultipleComponent]
|
[DisallowMultipleComponent]
|
||||||
public class BuildHammerBehaviour : MonoBehaviour, IHeldItemBehaviour
|
public class BuildHammerBehaviour : MonoBehaviour, IHeldItemBehaviour
|
||||||
{
|
{
|
||||||
#region Serialized Fields
|
#region Serialized Fields
|
||||||
|
|
||||||
[Header("Cooldown")]
|
[Header("Gestures")]
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Minimum time, in seconds, between two menu toggles so a held right-click
|
/// How long, in seconds, right-click must stay held before it counts as a demolition hold
|
||||||
/// does not flicker the menu open and shut.
|
/// instead of a menu tap. A release before this opens/closes the menu.
|
||||||
|
/// </summary>
|
||||||
|
[SerializeField] private float holdThreshold = 0.2f;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Minimum time, in seconds, between two menu toggles so a burst of taps does not flicker the
|
||||||
|
/// menu open and shut.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
[SerializeField] private float toggleCooldown = 0.25f;
|
[SerializeField] private float toggleCooldown = 0.25f;
|
||||||
|
|
||||||
@@ -31,24 +38,58 @@ namespace Ashwild.Player
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
private float nextToggleTime;
|
private float nextToggleTime;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// True between an accepted press and its release. A press ignored at the gate (input locked
|
||||||
|
/// or already placing) never sets this, so its release is ignored too.
|
||||||
|
/// </summary>
|
||||||
|
private bool secondaryDown;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Time, in seconds, the current accepted press began — measured against <see cref="holdThreshold"/>.
|
||||||
|
/// </summary>
|
||||||
|
private float secondaryDownTime;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// True while the hold has crossed into demolition mode, so the release ends the mode rather
|
||||||
|
/// than toggling the menu.
|
||||||
|
/// </summary>
|
||||||
|
private bool demoActive;
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Unity Lifecycle
|
#region Unity Lifecycle
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Subscribes to the secondary-use input for as long as the hammer is held.
|
/// Subscribes to the right-click hold stream for as long as the hammer is held.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
{
|
{
|
||||||
PlayerEvents.SecondaryUsePressed += HandleSecondaryUse;
|
PlayerEvents.SecondaryUseHeld += HandleSecondaryUse;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Unsubscribes when the hammer is put away (the prefab is destroyed).
|
/// Unsubscribes and leaves demolition mode cleanly when the hammer is put away (its prefab is
|
||||||
|
/// destroyed mid-hold), so the mode never sticks on with no hammer to release it.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void OnDisable()
|
private void OnDisable()
|
||||||
{
|
{
|
||||||
PlayerEvents.SecondaryUsePressed -= HandleSecondaryUse;
|
PlayerEvents.SecondaryUseHeld -= HandleSecondaryUse;
|
||||||
|
if (demoActive) ExitDemolition();
|
||||||
|
secondaryDown = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Promotes a sustained press into demolition mode once it outlasts the tap threshold. Held
|
||||||
|
/// out of Update (not a timer) so the mode drops instantly if input locks or a placement
|
||||||
|
/// begins mid-hold.
|
||||||
|
/// </summary>
|
||||||
|
private void Update()
|
||||||
|
{
|
||||||
|
if (!secondaryDown || demoActive) return;
|
||||||
|
if (PlayerEvents.InputLocked || PlayerEvents.IsPlacingBuild) return;
|
||||||
|
if (Time.time - secondaryDownTime < holdThreshold) return;
|
||||||
|
|
||||||
|
EnterDemolition();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
@@ -56,8 +97,8 @@ namespace Ashwild.Player
|
|||||||
#region IHeldItemBehaviour
|
#region IHeldItemBehaviour
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Nothing to link yet: toggling the menu needs no player refs. Present to satisfy
|
/// Nothing to link: the hammer only raises bus requests. Present to satisfy the held-item
|
||||||
/// the held-item contract; placement logic added later will use the context.
|
/// contract; BuildManager holds the player/world refs the build UX needs.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public void Setup(HeldItemContext context, ItemData item)
|
public void Setup(HeldItemContext context, ItemData item)
|
||||||
{
|
{
|
||||||
@@ -68,20 +109,60 @@ namespace Ashwild.Player
|
|||||||
#region Event Handlers
|
#region Event Handlers
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Requests the construction menu to open/close on right-click, gated by lock and
|
/// The single right-click gesture, split by press and release: a press is tracked (unless
|
||||||
/// cooldown. While a ghost is being positioned, right-click cancels the placement instead
|
/// input is locked or a ghost is being placed, where right-click means "cancel" and is left to
|
||||||
/// (handled by the placement controller), so the menu is left alone here.
|
/// BuildManager); its release either ends demolition mode (if the hold engaged it) or, for a
|
||||||
|
/// quick tap, toggles the construction menu under the cooldown.
|
||||||
/// </summary>
|
/// </summary>
|
||||||
private void HandleSecondaryUse()
|
private void HandleSecondaryUse(bool held)
|
||||||
{
|
{
|
||||||
if (PlayerEvents.InputLocked) return;
|
if (held)
|
||||||
if (PlayerEvents.IsPlacingBuild) return;
|
{
|
||||||
if (Time.time < nextToggleTime) return;
|
if (PlayerEvents.InputLocked || PlayerEvents.IsPlacingBuild) return;
|
||||||
|
secondaryDown = true;
|
||||||
|
secondaryDownTime = Time.time;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!secondaryDown) return;
|
||||||
|
secondaryDown = false;
|
||||||
|
|
||||||
|
if (demoActive) ExitDemolition();
|
||||||
|
else ToggleMenu();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Internal Helpers
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Requests the construction menu to open/close, gated by the toggle cooldown.
|
||||||
|
/// </summary>
|
||||||
|
private void ToggleMenu()
|
||||||
|
{
|
||||||
|
if (Time.time < nextToggleTime) return;
|
||||||
nextToggleTime = Time.time + toggleCooldown;
|
nextToggleTime = Time.time + toggleCooldown;
|
||||||
PlayerEvents.RaiseBuildMenuToggleRequested();
|
PlayerEvents.RaiseBuildMenuToggleRequested();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Enters demolition mode and announces it on the bus.
|
||||||
|
/// </summary>
|
||||||
|
private void EnterDemolition()
|
||||||
|
{
|
||||||
|
demoActive = true;
|
||||||
|
PlayerEvents.RaiseDemolishModeChanged(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Leaves demolition mode and announces it on the bus.
|
||||||
|
/// </summary>
|
||||||
|
private void ExitDemolition()
|
||||||
|
{
|
||||||
|
demoActive = false;
|
||||||
|
PlayerEvents.RaiseDemolishModeChanged(false);
|
||||||
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -200,10 +200,12 @@ namespace Ashwild.Player
|
|||||||
WireButton(playerMap, "Crouch", PlayerEvents.RaiseCrouchPressed);
|
WireButton(playerMap, "Crouch", PlayerEvents.RaiseCrouchPressed);
|
||||||
WireButton(playerMap, "Attack", PlayerEvents.RaiseAttackPressed);
|
WireButton(playerMap, "Attack", PlayerEvents.RaiseAttackPressed);
|
||||||
WireButton(playerMap, "SecondaryUse", PlayerEvents.RaiseSecondaryUsePressed);
|
WireButton(playerMap, "SecondaryUse", PlayerEvents.RaiseSecondaryUsePressed);
|
||||||
|
WireHold(playerMap, "SecondaryUse", PlayerEvents.RaiseSecondaryUseHeld);
|
||||||
WireButton(playerMap, "Interact", PlayerEvents.RaiseInteractPressed);
|
WireButton(playerMap, "Interact", PlayerEvents.RaiseInteractPressed);
|
||||||
WireButton(playerMap, "Drop", PlayerEvents.RaiseDropPressed);
|
WireButton(playerMap, "Drop", PlayerEvents.RaiseDropPressed);
|
||||||
WireButton(playerMap, "Inventory", PlayerEvents.RaiseInventoryTogglePressed);
|
WireButton(playerMap, "Inventory", PlayerEvents.RaiseInventoryTogglePressed);
|
||||||
WireScrollY(playerMap, "HotbarScroll", PlayerEvents.RaiseHotbarScroll);
|
WireScrollY(playerMap, "HotbarScroll", PlayerEvents.RaiseHotbarScroll);
|
||||||
|
WireButton(playerMap, "BuildRotate", PlayerEvents.RaiseBuildRotatePressed);
|
||||||
|
|
||||||
for (int i = 0; i < 10; i++)
|
for (int i = 0; i < 10; i++)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -2,12 +2,25 @@ using UnityEngine;
|
|||||||
|
|
||||||
namespace Ashwild.Player
|
namespace Ashwild.Player
|
||||||
{
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// Owns the local player's death-and-return. It flips locomotion into its dead state when the
|
||||||
|
/// player dies, and on <see cref="Respawn"/> teleports the body back to the current respawn pose,
|
||||||
|
/// revives the stats and clears the dead state. The respawn pose starts at the assigned spawn
|
||||||
|
/// point (or wherever the player begins) and is reassigned live when the player claims a bed —
|
||||||
|
/// pushed in over the bus, so it stays pure local state that never crosses the wire (§3).
|
||||||
|
/// </summary>
|
||||||
[DisallowMultipleComponent]
|
[DisallowMultipleComponent]
|
||||||
public class PlayerLifecycle : MonoBehaviour
|
public class PlayerLifecycle : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
#region Serialized Fields
|
||||||
|
|
||||||
[Header("Spawn point (auto-captured at scene start if left empty)")]
|
[Header("Spawn point (auto-captured at scene start if left empty)")]
|
||||||
[SerializeField] private Transform spawnPoint;
|
[SerializeField] private Transform spawnPoint;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region State
|
||||||
|
|
||||||
private PlayerLocomotion locomotion;
|
private PlayerLocomotion locomotion;
|
||||||
private Rigidbody rb;
|
private Rigidbody rb;
|
||||||
|
|
||||||
@@ -15,12 +28,23 @@ namespace Ashwild.Player
|
|||||||
private Quaternion spawnRotation;
|
private Quaternion spawnRotation;
|
||||||
private bool isDead;
|
private bool isDead;
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Unity Lifecycle
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Caches the sibling components the respawn drives.
|
||||||
|
/// </summary>
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
locomotion = GetComponent<PlayerLocomotion>();
|
locomotion = GetComponent<PlayerLocomotion>();
|
||||||
rb = GetComponent<Rigidbody>();
|
rb = GetComponent<Rigidbody>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Seeds the respawn pose from the assigned spawn point, or the player's starting pose when
|
||||||
|
/// none is set, so a death before any bed is claimed still returns somewhere valid.
|
||||||
|
/// </summary>
|
||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
if (spawnPoint != null)
|
if (spawnPoint != null)
|
||||||
@@ -35,9 +59,31 @@ namespace Ashwild.Player
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void OnEnable() { PlayerEvents.Died += OnDied; }
|
/// <summary>
|
||||||
private void OnDisable() { PlayerEvents.Died -= OnDied; }
|
/// Subscribes to death and to respawn-point reassignments (claiming a bed).
|
||||||
|
/// </summary>
|
||||||
|
private void OnEnable()
|
||||||
|
{
|
||||||
|
PlayerEvents.Died += OnDied;
|
||||||
|
PlayerEvents.RespawnPointChanged += HandleRespawnPointChanged;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Unsubscribes — mirrors OnEnable exactly.
|
||||||
|
/// </summary>
|
||||||
|
private void OnDisable()
|
||||||
|
{
|
||||||
|
PlayerEvents.Died -= OnDied;
|
||||||
|
PlayerEvents.RespawnPointChanged -= HandleRespawnPointChanged;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Event Handlers
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Freezes the player into its dead state once, ignoring repeat death events.
|
||||||
|
/// </summary>
|
||||||
private void OnDied()
|
private void OnDied()
|
||||||
{
|
{
|
||||||
if (isDead) return;
|
if (isDead) return;
|
||||||
@@ -45,6 +91,21 @@ namespace Ashwild.Player
|
|||||||
if (locomotion != null) locomotion.SetDead(true);
|
if (locomotion != null) locomotion.SetDead(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Adopts a new respawn pose pushed over the bus (the player claimed a bed). Local state
|
||||||
|
/// only — the respawn location is never networked, so each client keeps its own.
|
||||||
|
/// </summary>
|
||||||
|
private void HandleRespawnPointChanged(Vector3 position, Quaternion rotation)
|
||||||
|
=> SetSpawnPoint(position, rotation);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region Public API
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns the player to the current respawn pose: zeroes momentum, teleports the body,
|
||||||
|
/// revives the stats and clears the dead state.
|
||||||
|
/// </summary>
|
||||||
public void Respawn()
|
public void Respawn()
|
||||||
{
|
{
|
||||||
if (rb != null)
|
if (rb != null)
|
||||||
@@ -52,8 +113,7 @@ namespace Ashwild.Player
|
|||||||
rb.linearVelocity = Vector3.zero;
|
rb.linearVelocity = Vector3.zero;
|
||||||
rb.angularVelocity = Vector3.zero;
|
rb.angularVelocity = Vector3.zero;
|
||||||
}
|
}
|
||||||
transform.position = spawnPosition;
|
transform.SetPositionAndRotation(spawnPosition, spawnRotation);
|
||||||
transform.rotation = spawnRotation;
|
|
||||||
|
|
||||||
if (PlayerStats.Instance != null) PlayerStats.Instance.Revive();
|
if (PlayerStats.Instance != null) PlayerStats.Instance.Revive();
|
||||||
if (locomotion != null) locomotion.SetDead(false);
|
if (locomotion != null) locomotion.SetDead(false);
|
||||||
@@ -61,18 +121,15 @@ namespace Ashwild.Player
|
|||||||
isDead = false;
|
isDead = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Overrides the respawn pose directly with a world position and rotation.
|
||||||
|
/// </summary>
|
||||||
public void SetSpawnPoint(Vector3 position, Quaternion rotation)
|
public void SetSpawnPoint(Vector3 position, Quaternion rotation)
|
||||||
{
|
{
|
||||||
spawnPosition = position;
|
spawnPosition = position;
|
||||||
spawnRotation = rotation;
|
spawnRotation = rotation;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetSpawnPoint(Transform t)
|
#endregion
|
||||||
{
|
|
||||||
if (t == null) return;
|
|
||||||
spawnPoint = t;
|
|
||||||
spawnPosition = t.position;
|
|
||||||
spawnRotation = t.rotation;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ namespace Ashwild.UI
|
|||||||
private int totalQuantity;
|
private int totalQuantity;
|
||||||
private float hideTimer;
|
private float hideTimer;
|
||||||
private bool isHiding;
|
private bool isHiding;
|
||||||
|
private bool isDiscovery;
|
||||||
|
|
||||||
private Tweener fadeTween;
|
private Tweener fadeTween;
|
||||||
private Tweener slideTween;
|
private Tweener slideTween;
|
||||||
@@ -30,6 +31,9 @@ namespace Ashwild.UI
|
|||||||
// A notification is either a gain (+) or a loss (-); merging only happens within the same direction.
|
// A notification is either a gain (+) or a loss (-); merging only happens within the same direction.
|
||||||
public bool IsGain => totalQuantity >= 0;
|
public bool IsGain => totalQuantity >= 0;
|
||||||
|
|
||||||
|
// A discovery notification (icon + name + "NEW" badge) never merges with a gain/loss one.
|
||||||
|
public bool IsDiscovery => isDiscovery;
|
||||||
|
|
||||||
public void Initialize(ItemData item, int signedQuantity, Color numberColor, float displayDuration, float slideInDuration, Ease slideInEase)
|
public void Initialize(ItemData item, int signedQuantity, Color numberColor, float displayDuration, float slideInDuration, Ease slideInEase)
|
||||||
{
|
{
|
||||||
itemData = item;
|
itemData = item;
|
||||||
@@ -49,6 +53,34 @@ namespace Ashwild.UI
|
|||||||
fadeTween = canvasGroup.DOFade(1f, slideInDuration).SetEase(Ease.OutQuad);
|
fadeTween = canvasGroup.DOFade(1f, slideInDuration).SetEase(Ease.OutQuad);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Sets up a discovery notification: an icon and name (of the unlocked recipe) with a fixed
|
||||||
|
/// badge (e.g. "NEW") in the number slot, tinted with the caller-chosen colour. It carries no
|
||||||
|
/// quantity and never merges, so it reads as a one-time "recipe unlocked" cue.
|
||||||
|
/// </summary>
|
||||||
|
public void InitializeDiscovery(Sprite icon, string displayName, string badgeText, Color badgeColor, float displayDuration, float slideInDuration)
|
||||||
|
{
|
||||||
|
itemData = null;
|
||||||
|
isDiscovery = true;
|
||||||
|
hideTimer = displayDuration;
|
||||||
|
isHiding = false;
|
||||||
|
|
||||||
|
if (iconImage != null)
|
||||||
|
iconImage.sprite = icon;
|
||||||
|
|
||||||
|
if (labelText != null)
|
||||||
|
labelText.text = displayName;
|
||||||
|
|
||||||
|
if (numberText != null)
|
||||||
|
{
|
||||||
|
numberText.text = badgeText;
|
||||||
|
numberText.color = badgeColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
canvasGroup.alpha = 0f;
|
||||||
|
fadeTween = canvasGroup.DOFade(1f, slideInDuration).SetEase(Ease.OutQuad);
|
||||||
|
}
|
||||||
|
|
||||||
public void AddQuantity(int signedAmount, float displayDuration)
|
public void AddQuantity(int signedAmount, float displayDuration)
|
||||||
{
|
{
|
||||||
totalQuantity += signedAmount;
|
totalQuantity += signedAmount;
|
||||||
|
|||||||
@@ -30,6 +30,11 @@ namespace Ashwild.UI
|
|||||||
[SerializeField] private Color gainColor = new Color(0.45f, 1f, 0.45f); // picked up / added
|
[SerializeField] private Color gainColor = new Color(0.45f, 1f, 0.45f); // picked up / added
|
||||||
[SerializeField] private Color lossColor = new Color(1f, 0.45f, 0.45f); // dropped / consumed
|
[SerializeField] private Color lossColor = new Color(1f, 0.45f, 0.45f); // dropped / consumed
|
||||||
|
|
||||||
|
[Header("Discovery")]
|
||||||
|
[Tooltip("Badge shown in the number slot when a new item/recipe is discovered.")]
|
||||||
|
[SerializeField] private string discoveryLabel = "NEW";
|
||||||
|
[SerializeField] private Color discoveryColor = new Color(1f, 0.85f, 0.3f);
|
||||||
|
|
||||||
private readonly List<NotificationItemUI> activeNotifications = new List<NotificationItemUI>();
|
private readonly List<NotificationItemUI> activeNotifications = new List<NotificationItemUI>();
|
||||||
|
|
||||||
private void OnEnable()
|
private void OnEnable()
|
||||||
@@ -37,6 +42,7 @@ namespace Ashwild.UI
|
|||||||
PlayerEvents.ItemAdded += OnItemAdded;
|
PlayerEvents.ItemAdded += OnItemAdded;
|
||||||
PlayerEvents.ItemDropped += OnItemDropped;
|
PlayerEvents.ItemDropped += OnItemDropped;
|
||||||
PlayerEvents.ItemConsumed += OnItemConsumed;
|
PlayerEvents.ItemConsumed += OnItemConsumed;
|
||||||
|
PlayerEvents.RecipeDiscovered += OnRecipeDiscovered;
|
||||||
PlayerEvents.FoodPlacedToCook += OnItemSpent;
|
PlayerEvents.FoodPlacedToCook += OnItemSpent;
|
||||||
PlayerEvents.FuelAdded += OnItemSpent;
|
PlayerEvents.FuelAdded += OnItemSpent;
|
||||||
}
|
}
|
||||||
@@ -46,6 +52,7 @@ namespace Ashwild.UI
|
|||||||
PlayerEvents.ItemAdded -= OnItemAdded;
|
PlayerEvents.ItemAdded -= OnItemAdded;
|
||||||
PlayerEvents.ItemDropped -= OnItemDropped;
|
PlayerEvents.ItemDropped -= OnItemDropped;
|
||||||
PlayerEvents.ItemConsumed -= OnItemConsumed;
|
PlayerEvents.ItemConsumed -= OnItemConsumed;
|
||||||
|
PlayerEvents.RecipeDiscovered -= OnRecipeDiscovered;
|
||||||
PlayerEvents.FoodPlacedToCook -= OnItemSpent;
|
PlayerEvents.FoodPlacedToCook -= OnItemSpent;
|
||||||
PlayerEvents.FuelAdded -= OnItemSpent;
|
PlayerEvents.FuelAdded -= OnItemSpent;
|
||||||
}
|
}
|
||||||
@@ -53,6 +60,7 @@ namespace Ashwild.UI
|
|||||||
private void OnItemAdded(ItemData item, int quantity) => Push(item, quantity);
|
private void OnItemAdded(ItemData item, int quantity) => Push(item, quantity);
|
||||||
private void OnItemDropped(ItemData item, int quantity) => Push(item, -quantity);
|
private void OnItemDropped(ItemData item, int quantity) => Push(item, -quantity);
|
||||||
private void OnItemConsumed(ItemData item) => Push(item, -1);
|
private void OnItemConsumed(ItemData item) => Push(item, -1);
|
||||||
|
private void OnRecipeDiscovered(Sprite icon, string recipeName) => PushDiscovery(icon, recipeName);
|
||||||
|
|
||||||
// Food placed on a cooking station or fuel fed to it both leave the inventory by one.
|
// Food placed on a cooking station or fuel fed to it both leave the inventory by one.
|
||||||
private void OnItemSpent(ItemData item) => Push(item, -1);
|
private void OnItemSpent(ItemData item) => Push(item, -1);
|
||||||
@@ -69,7 +77,8 @@ namespace Ashwild.UI
|
|||||||
// Merge only with a notification for the same item AND same direction
|
// Merge only with a notification for the same item AND same direction
|
||||||
for (int i = 0; i < activeNotifications.Count; i++)
|
for (int i = 0; i < activeNotifications.Count; i++)
|
||||||
{
|
{
|
||||||
if (activeNotifications[i] != null && activeNotifications[i].ItemData == item
|
if (activeNotifications[i] != null && !activeNotifications[i].IsDiscovery
|
||||||
|
&& activeNotifications[i].ItemData == item
|
||||||
&& activeNotifications[i].IsGain == gain)
|
&& activeNotifications[i].IsGain == gain)
|
||||||
{
|
{
|
||||||
activeNotifications[i].AddQuantity(signedQuantity, displayDuration);
|
activeNotifications[i].AddQuantity(signedQuantity, displayDuration);
|
||||||
@@ -94,6 +103,29 @@ namespace Ashwild.UI
|
|||||||
activeNotifications.Add(notification);
|
activeNotifications.Add(notification);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Pushes a one-time "NEW" notification for a newly unlocked recipe: its result icon and name
|
||||||
|
/// with the configured badge in the discovery colour. Never merges with anything.
|
||||||
|
/// </summary>
|
||||||
|
private void PushDiscovery(Sprite icon, string recipeName)
|
||||||
|
{
|
||||||
|
activeNotifications.RemoveAll(n => n == null);
|
||||||
|
|
||||||
|
GameObject go = Instantiate(notificationPrefab, container);
|
||||||
|
NotificationItemUI notification = go.GetComponent<NotificationItemUI>();
|
||||||
|
|
||||||
|
float targetY = startOffsetY + activeNotifications.Count * (notificationHeight + spacing);
|
||||||
|
|
||||||
|
RectTransform rt = notification.RectTransform;
|
||||||
|
rt.anchoredPosition = new Vector2(0f, targetY - 30f);
|
||||||
|
|
||||||
|
notification.InitializeDiscovery(icon, recipeName, discoveryLabel, discoveryColor, displayDuration, slideInDuration);
|
||||||
|
|
||||||
|
rt.DOAnchorPosY(targetY, slideInDuration).SetEase(slideInEase);
|
||||||
|
|
||||||
|
activeNotifications.Add(notification);
|
||||||
|
}
|
||||||
|
|
||||||
private void LateUpdate()
|
private void LateUpdate()
|
||||||
{
|
{
|
||||||
// Clean up destroyed notifications and reposition remaining ones
|
// Clean up destroyed notifications and reposition remaining ones
|
||||||
|
|||||||
@@ -0,0 +1,129 @@
|
|||||||
|
Shader "GAME/BuildGhost"
|
||||||
|
{
|
||||||
|
Properties
|
||||||
|
{
|
||||||
|
[Header(Ghost Tint set to green when placeable red when blocked)][Space]
|
||||||
|
[HDR] _BaseColor("Ghost Color", Color) = (0.2, 1.0, 0.35, 1)
|
||||||
|
_FillOpacity("Fill Opacity (body see through amount)", Range(0,1)) = 0.15
|
||||||
|
|
||||||
|
[Header(Fresnel Rim glowing silhouette edge)][Space]
|
||||||
|
_RimPower("Rim Power (higher = thinner edge)", Range(0.5,12)) = 2.5
|
||||||
|
_RimIntensity("Rim Intensity", Range(0,8)) = 2.5
|
||||||
|
|
||||||
|
[Header(Scan Pulse gentle breathing glow)][Space]
|
||||||
|
_PulseSpeed("Pulse Speed", Float) = 2.5
|
||||||
|
_PulseMin("Pulse Min", Range(0,2)) = 0.7
|
||||||
|
_PulseMax("Pulse Max", Range(0,2)) = 1.15
|
||||||
|
|
||||||
|
[Header(Rendering)][Space]
|
||||||
|
[Enum(UnityEngine.Rendering.CullMode)] _Cull("Cull", Float) = 2
|
||||||
|
}
|
||||||
|
|
||||||
|
SubShader
|
||||||
|
{
|
||||||
|
Tags
|
||||||
|
{
|
||||||
|
"RenderType" = "Transparent"
|
||||||
|
"RenderPipeline" = "UniversalPipeline"
|
||||||
|
"Queue" = "Transparent"
|
||||||
|
"IgnoreProjector" = "True"
|
||||||
|
}
|
||||||
|
|
||||||
|
// Shared declarations for every pass.
|
||||||
|
HLSLINCLUDE
|
||||||
|
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
|
||||||
|
|
||||||
|
CBUFFER_START(UnityPerMaterial)
|
||||||
|
half4 _BaseColor;
|
||||||
|
half _FillOpacity;
|
||||||
|
half _RimPower;
|
||||||
|
half _RimIntensity;
|
||||||
|
float _PulseSpeed;
|
||||||
|
half _PulseMin;
|
||||||
|
half _PulseMax;
|
||||||
|
CBUFFER_END
|
||||||
|
ENDHLSL
|
||||||
|
|
||||||
|
// =====================================================================
|
||||||
|
// Ghost — unlit, additive-ish transparent body with a bright fresnel
|
||||||
|
// rim so the silhouette reads clearly. The whole look is driven by the
|
||||||
|
// single _BaseColor tint, so placement code just swaps green <-> red.
|
||||||
|
// =====================================================================
|
||||||
|
Pass
|
||||||
|
{
|
||||||
|
Name "Ghost"
|
||||||
|
Tags { "LightMode" = "UniversalForward" }
|
||||||
|
|
||||||
|
Blend SrcAlpha OneMinusSrcAlpha
|
||||||
|
ZWrite Off
|
||||||
|
ZTest LEqual
|
||||||
|
Cull [_Cull]
|
||||||
|
|
||||||
|
HLSLPROGRAM
|
||||||
|
#pragma target 3.0
|
||||||
|
#pragma vertex GhostVertex
|
||||||
|
#pragma fragment GhostFragment
|
||||||
|
#pragma multi_compile_instancing
|
||||||
|
#pragma multi_compile_fog
|
||||||
|
|
||||||
|
struct Attributes
|
||||||
|
{
|
||||||
|
float4 positionOS : POSITION;
|
||||||
|
float3 normalOS : NORMAL;
|
||||||
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||||
|
};
|
||||||
|
|
||||||
|
struct Varyings
|
||||||
|
{
|
||||||
|
float4 positionCS : SV_POSITION;
|
||||||
|
float3 positionWS : TEXCOORD0;
|
||||||
|
half3 normalWS : TEXCOORD1;
|
||||||
|
float fogFactor : TEXCOORD2;
|
||||||
|
UNITY_VERTEX_INPUT_INSTANCE_ID
|
||||||
|
UNITY_VERTEX_OUTPUT_STEREO
|
||||||
|
};
|
||||||
|
|
||||||
|
Varyings GhostVertex(Attributes IN)
|
||||||
|
{
|
||||||
|
Varyings OUT = (Varyings)0;
|
||||||
|
UNITY_SETUP_INSTANCE_ID(IN);
|
||||||
|
UNITY_TRANSFER_INSTANCE_ID(IN, OUT);
|
||||||
|
UNITY_INITIALIZE_VERTEX_OUTPUT_STEREO(OUT);
|
||||||
|
|
||||||
|
VertexPositionInputs posInput = GetVertexPositionInputs(IN.positionOS.xyz);
|
||||||
|
VertexNormalInputs normalInput = GetVertexNormalInputs(IN.normalOS);
|
||||||
|
|
||||||
|
OUT.positionCS = posInput.positionCS;
|
||||||
|
OUT.positionWS = posInput.positionWS;
|
||||||
|
OUT.normalWS = normalInput.normalWS;
|
||||||
|
OUT.fogFactor = ComputeFogFactor(posInput.positionCS.z);
|
||||||
|
return OUT;
|
||||||
|
}
|
||||||
|
|
||||||
|
half4 GhostFragment(Varyings IN) : SV_Target
|
||||||
|
{
|
||||||
|
UNITY_SETUP_INSTANCE_ID(IN);
|
||||||
|
UNITY_SETUP_STEREO_EYE_INDEX_POST_VERTEX(IN);
|
||||||
|
|
||||||
|
half3 normalWS = normalize(IN.normalWS);
|
||||||
|
half3 viewDirWS = normalize(GetWorldSpaceViewDir(IN.positionWS));
|
||||||
|
|
||||||
|
// Fresnel rim: bright on grazing angles so the edge glows.
|
||||||
|
half fresnel = pow(1.0 - saturate(dot(normalWS, viewDirWS)), _RimPower);
|
||||||
|
half rim = fresnel * _RimIntensity;
|
||||||
|
|
||||||
|
// Breathing pulse so the ghost feels alive without moving.
|
||||||
|
half pulse = lerp(_PulseMin, _PulseMax, sin(_Time.y * _PulseSpeed) * 0.5 + 0.5);
|
||||||
|
|
||||||
|
half3 color = _BaseColor.rgb * pulse;
|
||||||
|
half alpha = saturate(_FillOpacity + rim) * pulse * _BaseColor.a;
|
||||||
|
|
||||||
|
color = MixFog(color, IN.fogFactor);
|
||||||
|
return half4(color, saturate(alpha));
|
||||||
|
}
|
||||||
|
ENDHLSL
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
FallBack Off
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 01ec73b09ab24074aa14384a8ae4ec7e
|
||||||
|
ShaderImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
defaultTextures: []
|
||||||
|
nonModifiableTextures: []
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: GAME_BuildGhost_Good
|
||||||
|
m_Shader: {fileID: 4800000, guid: 01ec73b09ab24074aa14384a8ae4ec7e, type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords: []
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs: []
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _Cull: 2
|
||||||
|
- _FillOpacity: 0.15
|
||||||
|
- _PulseMax: 1.15
|
||||||
|
- _PulseMin: 0.7
|
||||||
|
- _PulseSpeed: 2.5
|
||||||
|
- _RimIntensity: 2.5
|
||||||
|
- _RimPower: 2.5
|
||||||
|
m_Colors:
|
||||||
|
- _BaseColor: {r: 0.2, g: 1, b: 0.35, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 8d2599e48f9a729418dedd73c2657b0a
|
guid: 0e580295bcb9d8e4ab68d1a7f11efa63
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 2100000
|
mainObjectFileID: 2100000
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!21 &2100000
|
||||||
|
Material:
|
||||||
|
serializedVersion: 8
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_Name: GAME_BuildGhost_Not
|
||||||
|
m_Shader: {fileID: 4800000, guid: 01ec73b09ab24074aa14384a8ae4ec7e, type: 3}
|
||||||
|
m_Parent: {fileID: 0}
|
||||||
|
m_ModifiedSerializedProperties: 0
|
||||||
|
m_ValidKeywords: []
|
||||||
|
m_InvalidKeywords: []
|
||||||
|
m_LightmapFlags: 4
|
||||||
|
m_EnableInstancingVariants: 0
|
||||||
|
m_DoubleSidedGI: 0
|
||||||
|
m_CustomRenderQueue: -1
|
||||||
|
stringTagMap: {}
|
||||||
|
disabledShaderPasses: []
|
||||||
|
m_LockedProperties:
|
||||||
|
m_SavedProperties:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TexEnvs: []
|
||||||
|
m_Ints: []
|
||||||
|
m_Floats:
|
||||||
|
- _Cull: 2
|
||||||
|
- _FillOpacity: 0.15
|
||||||
|
- _PulseMax: 1.15
|
||||||
|
- _PulseMin: 0.7
|
||||||
|
- _PulseSpeed: 2.5
|
||||||
|
- _RimIntensity: 2.5
|
||||||
|
- _RimPower: 2.5
|
||||||
|
m_Colors:
|
||||||
|
- _BaseColor: {r: 1, g: 0, b: 0, a: 1}
|
||||||
|
m_BuildTextureStacks: []
|
||||||
|
m_AllowLocking: 1
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: d804f7d018e008f4db0ea774eeaadda6
|
guid: 0a594aa41ef0d7e428398c2c32772c64
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 2100000
|
mainObjectFileID: 2100000
|
||||||
|
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
|
After Width: | Height: | Size: 497 KiB |
@@ -1,12 +1,12 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: a386090fb7578c0479fca4dfe0406e32
|
guid: affd700d57fac7e43961d44bc3574044
|
||||||
TextureImporter:
|
TextureImporter:
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 13
|
serializedVersion: 13
|
||||||
mipmaps:
|
mipmaps:
|
||||||
mipMapMode: 0
|
mipMapMode: 0
|
||||||
enableMipMap: 1
|
enableMipMap: 0
|
||||||
sRGBTexture: 1
|
sRGBTexture: 1
|
||||||
linearTexture: 0
|
linearTexture: 0
|
||||||
fadeOut: 0
|
fadeOut: 0
|
||||||
@@ -37,13 +37,13 @@ TextureImporter:
|
|||||||
filterMode: 1
|
filterMode: 1
|
||||||
aniso: 1
|
aniso: 1
|
||||||
mipBias: 0
|
mipBias: 0
|
||||||
wrapU: 0
|
wrapU: 1
|
||||||
wrapV: 0
|
wrapV: 1
|
||||||
wrapW: 0
|
wrapW: 0
|
||||||
nPOTScale: 1
|
nPOTScale: 0
|
||||||
lightmap: 0
|
lightmap: 0
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
spriteMode: 0
|
spriteMode: 1
|
||||||
spriteExtrude: 1
|
spriteExtrude: 1
|
||||||
spriteMeshType: 1
|
spriteMeshType: 1
|
||||||
alignment: 0
|
alignment: 0
|
||||||
@@ -52,9 +52,9 @@ TextureImporter:
|
|||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
alphaUsage: 1
|
alphaUsage: 1
|
||||||
alphaIsTransparency: 0
|
alphaIsTransparency: 1
|
||||||
spriteTessellationDetail: -1
|
spriteTessellationDetail: -1
|
||||||
textureType: 0
|
textureType: 8
|
||||||
textureShape: 1
|
textureShape: 1
|
||||||
singleChannelComponent: 0
|
singleChannelComponent: 0
|
||||||
flipbookRows: 1
|
flipbookRows: 1
|
||||||
@@ -100,7 +100,7 @@ TextureImporter:
|
|||||||
customData:
|
customData:
|
||||||
physicsShape: []
|
physicsShape: []
|
||||||
bones: []
|
bones: []
|
||||||
spriteID:
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
internalID: 0
|
internalID: 0
|
||||||
vertices: []
|
vertices: []
|
||||||
indices:
|
indices:
|
||||||
|
After Width: | Height: | Size: 180 KiB |
@@ -1,12 +1,12 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ed3a180c3723ad04887dab81ae8ef4af
|
guid: c79713d48c8820743901a10b673a103c
|
||||||
TextureImporter:
|
TextureImporter:
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 13
|
serializedVersion: 13
|
||||||
mipmaps:
|
mipmaps:
|
||||||
mipMapMode: 0
|
mipMapMode: 0
|
||||||
enableMipMap: 1
|
enableMipMap: 0
|
||||||
sRGBTexture: 1
|
sRGBTexture: 1
|
||||||
linearTexture: 0
|
linearTexture: 0
|
||||||
fadeOut: 0
|
fadeOut: 0
|
||||||
@@ -37,13 +37,13 @@ TextureImporter:
|
|||||||
filterMode: 1
|
filterMode: 1
|
||||||
aniso: 1
|
aniso: 1
|
||||||
mipBias: 0
|
mipBias: 0
|
||||||
wrapU: 0
|
wrapU: 1
|
||||||
wrapV: 0
|
wrapV: 1
|
||||||
wrapW: 0
|
wrapW: 0
|
||||||
nPOTScale: 1
|
nPOTScale: 0
|
||||||
lightmap: 0
|
lightmap: 0
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
spriteMode: 0
|
spriteMode: 1
|
||||||
spriteExtrude: 1
|
spriteExtrude: 1
|
||||||
spriteMeshType: 1
|
spriteMeshType: 1
|
||||||
alignment: 0
|
alignment: 0
|
||||||
@@ -52,9 +52,9 @@ TextureImporter:
|
|||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
alphaUsage: 1
|
alphaUsage: 1
|
||||||
alphaIsTransparency: 0
|
alphaIsTransparency: 1
|
||||||
spriteTessellationDetail: -1
|
spriteTessellationDetail: -1
|
||||||
textureType: 0
|
textureType: 8
|
||||||
textureShape: 1
|
textureShape: 1
|
||||||
singleChannelComponent: 0
|
singleChannelComponent: 0
|
||||||
flipbookRows: 1
|
flipbookRows: 1
|
||||||
@@ -100,7 +100,7 @@ TextureImporter:
|
|||||||
customData:
|
customData:
|
||||||
physicsShape: []
|
physicsShape: []
|
||||||
bones: []
|
bones: []
|
||||||
spriteID:
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
internalID: 0
|
internalID: 0
|
||||||
vertices: []
|
vertices: []
|
||||||
indices:
|
indices:
|
||||||
|
After Width: | Height: | Size: 214 KiB |
@@ -1,12 +1,12 @@
|
|||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 48c1b4010937a8c429694f7c97f8899d
|
guid: b20503e223b2a0b44a8f721427f9ccee
|
||||||
TextureImporter:
|
TextureImporter:
|
||||||
internalIDToNameTable: []
|
internalIDToNameTable: []
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
serializedVersion: 13
|
serializedVersion: 13
|
||||||
mipmaps:
|
mipmaps:
|
||||||
mipMapMode: 0
|
mipMapMode: 0
|
||||||
enableMipMap: 1
|
enableMipMap: 0
|
||||||
sRGBTexture: 1
|
sRGBTexture: 1
|
||||||
linearTexture: 0
|
linearTexture: 0
|
||||||
fadeOut: 0
|
fadeOut: 0
|
||||||
@@ -37,13 +37,13 @@ TextureImporter:
|
|||||||
filterMode: 1
|
filterMode: 1
|
||||||
aniso: 1
|
aniso: 1
|
||||||
mipBias: 0
|
mipBias: 0
|
||||||
wrapU: 0
|
wrapU: 1
|
||||||
wrapV: 0
|
wrapV: 1
|
||||||
wrapW: 0
|
wrapW: 0
|
||||||
nPOTScale: 1
|
nPOTScale: 0
|
||||||
lightmap: 0
|
lightmap: 0
|
||||||
compressionQuality: 50
|
compressionQuality: 50
|
||||||
spriteMode: 0
|
spriteMode: 1
|
||||||
spriteExtrude: 1
|
spriteExtrude: 1
|
||||||
spriteMeshType: 1
|
spriteMeshType: 1
|
||||||
alignment: 0
|
alignment: 0
|
||||||
@@ -52,9 +52,9 @@ TextureImporter:
|
|||||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
spriteGenerateFallbackPhysicsShape: 1
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
alphaUsage: 1
|
alphaUsage: 1
|
||||||
alphaIsTransparency: 0
|
alphaIsTransparency: 1
|
||||||
spriteTessellationDetail: -1
|
spriteTessellationDetail: -1
|
||||||
textureType: 0
|
textureType: 8
|
||||||
textureShape: 1
|
textureShape: 1
|
||||||
singleChannelComponent: 0
|
singleChannelComponent: 0
|
||||||
flipbookRows: 1
|
flipbookRows: 1
|
||||||
@@ -100,7 +100,7 @@ TextureImporter:
|
|||||||
customData:
|
customData:
|
||||||
physicsShape: []
|
physicsShape: []
|
||||||
bones: []
|
bones: []
|
||||||
spriteID:
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
internalID: 0
|
internalID: 0
|
||||||
vertices: []
|
vertices: []
|
||||||
indices:
|
indices:
|
||||||
|
After Width: | Height: | Size: 301 KiB |
@@ -0,0 +1,117 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d262dbf52c18eaf48b9417a11914c3f1
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 166 KiB |
@@ -0,0 +1,117 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 03d196667ce69ce4cbef3a2f4745c5a5
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 236 KiB |
@@ -0,0 +1,117 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 34ee129f25c7e1b46beaea3616f5373a
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
After Width: | Height: | Size: 273 KiB |
@@ -0,0 +1,117 @@
|
|||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b419a163845e6494da7a5597d56678af
|
||||||
|
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: 0
|
||||||
|
nPOTScale: 0
|
||||||
|
lightmap: 0
|
||||||
|
compressionQuality: 50
|
||||||
|
spriteMode: 1
|
||||||
|
spriteExtrude: 1
|
||||||
|
spriteMeshType: 1
|
||||||
|
alignment: 0
|
||||||
|
spritePivot: {x: 0.5, y: 0.5}
|
||||||
|
spritePixelsToUnits: 100
|
||||||
|
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||||
|
spriteGenerateFallbackPhysicsShape: 1
|
||||||
|
alphaUsage: 1
|
||||||
|
alphaIsTransparency: 1
|
||||||
|
spriteTessellationDetail: -1
|
||||||
|
textureType: 8
|
||||||
|
textureShape: 1
|
||||||
|
singleChannelComponent: 0
|
||||||
|
flipbookRows: 1
|
||||||
|
flipbookColumns: 1
|
||||||
|
maxTextureSizeSet: 0
|
||||||
|
compressionQualitySet: 0
|
||||||
|
textureFormatSet: 0
|
||||||
|
ignorePngGamma: 0
|
||||||
|
applyGammaDecoding: 0
|
||||||
|
swizzle: 50462976
|
||||||
|
cookieLightType: 0
|
||||||
|
platformSettings:
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: DefaultTexturePlatform
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
- serializedVersion: 4
|
||||||
|
buildTarget: Standalone
|
||||||
|
maxTextureSize: 2048
|
||||||
|
resizeAlgorithm: 0
|
||||||
|
textureFormat: -1
|
||||||
|
textureCompression: 1
|
||||||
|
compressionQuality: 50
|
||||||
|
crunchedCompression: 0
|
||||||
|
allowsAlphaSplitting: 0
|
||||||
|
overridden: 0
|
||||||
|
ignorePlatformSupport: 0
|
||||||
|
androidETC2FallbackOverride: 0
|
||||||
|
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||||
|
spriteSheet:
|
||||||
|
serializedVersion: 2
|
||||||
|
sprites: []
|
||||||
|
outline: []
|
||||||
|
customData:
|
||||||
|
physicsShape: []
|
||||||
|
bones: []
|
||||||
|
spriteID: 5e97eb03825dee720800000000000000
|
||||||
|
internalID: 0
|
||||||
|
vertices: []
|
||||||
|
indices:
|
||||||
|
edges: []
|
||||||
|
weights: []
|
||||||
|
secondaryTextures: []
|
||||||
|
spriteCustomMetadata:
|
||||||
|
entries: []
|
||||||
|
nameFileIdTable: {}
|
||||||
|
mipmapLimitGroupName:
|
||||||
|
pSDRemoveMatte: 0
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
||||||
|
Before Width: | Height: | Size: 1.4 MiB After Width: | Height: | Size: 1.4 MiB |
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 3.8 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 388 KiB After Width: | Height: | Size: 388 KiB |
|
Before Width: | Height: | Size: 300 KiB After Width: | Height: | Size: 300 KiB |