good enough #33
This commit is contained in:
parent
5f99039a69
commit
9f1ebe05a1
89 changed files with 4311 additions and 2425 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -100,3 +100,6 @@ InitTestScene*.unity*
|
||||||
|
|
||||||
# Auto-generated scenes by play mode tests
|
# Auto-generated scenes by play mode tests
|
||||||
/[Aa]ssets/[Ii]nit[Tt]est[Ss]cene*.unity*
|
/[Aa]ssets/[Ii]nit[Tt]est[Ss]cene*.unity*
|
||||||
|
|
||||||
|
/[Aa]ssets/[Ss]amples/
|
||||||
|
/[Aa]ssets/[Ss]amples.meta
|
||||||
|
|
|
@ -113,6 +113,15 @@
|
||||||
"processors": "",
|
"processors": "",
|
||||||
"interactions": "",
|
"interactions": "",
|
||||||
"initialStateCheck": false
|
"initialStateCheck": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Inventory",
|
||||||
|
"type": "Button",
|
||||||
|
"id": "bf48e9be-890c-46e9-80a2-1d7ecc85e20b",
|
||||||
|
"expectedControlType": "",
|
||||||
|
"processors": "",
|
||||||
|
"interactions": "",
|
||||||
|
"initialStateCheck": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"bindings": [
|
"bindings": [
|
||||||
|
@ -577,6 +586,28 @@
|
||||||
"action": "Reload",
|
"action": "Reload",
|
||||||
"isComposite": false,
|
"isComposite": false,
|
||||||
"isPartOfComposite": false
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "7da2a8fd-741d-4e7c-86dc-64678b958e39",
|
||||||
|
"path": "<Keyboard>/tab",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": ";Keyboard&Mouse",
|
||||||
|
"action": "Inventory",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "87ba6bee-8062-426f-87c4-7fad35da459b",
|
||||||
|
"path": "<Gamepad>/buttonEast",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": ";Gamepad",
|
||||||
|
"action": "Inventory",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@ -673,6 +704,15 @@
|
||||||
"processors": "",
|
"processors": "",
|
||||||
"interactions": "",
|
"interactions": "",
|
||||||
"initialStateCheck": false
|
"initialStateCheck": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Inventory",
|
||||||
|
"type": "Button",
|
||||||
|
"id": "8234c274-3165-4e2e-8d1c-74103faafd8a",
|
||||||
|
"expectedControlType": "",
|
||||||
|
"processors": "",
|
||||||
|
"interactions": "",
|
||||||
|
"initialStateCheck": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"bindings": [
|
"bindings": [
|
||||||
|
@ -1093,6 +1133,28 @@
|
||||||
"action": "TrackedDeviceOrientation",
|
"action": "TrackedDeviceOrientation",
|
||||||
"isComposite": false,
|
"isComposite": false,
|
||||||
"isPartOfComposite": false
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "be1028c2-a4be-44d9-8a8a-31172540440c",
|
||||||
|
"path": "<Gamepad>/buttonEast",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": ";Gamepad",
|
||||||
|
"action": "Inventory",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "3b96fa74-9d2b-473b-8125-6467d3e39870",
|
||||||
|
"path": "<Keyboard>/tab",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": ";Keyboard&Mouse",
|
||||||
|
"action": "Inventory",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ Transform:
|
||||||
m_GameObject: {fileID: 2892703864492016621}
|
m_GameObject: {fileID: 2892703864492016621}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_LocalRotation: {x: 0, y: 0.38268343, z: 0, w: 0.92387956}
|
m_LocalRotation: {x: 0, y: 0.38268343, z: 0, w: 0.92387956}
|
||||||
m_LocalPosition: {x: -2, y: 0.005, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 0.4, y: 0.01, z: 0.2}
|
m_LocalScale: {x: 0.4, y: 0.01, z: 0.2}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
|
@ -123,6 +123,12 @@ MonoBehaviour:
|
||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
oneTimeUse: 0
|
oneTimeUse: 0
|
||||||
|
onSelected:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
|
onDeselected:
|
||||||
|
m_PersistentCalls:
|
||||||
|
m_Calls: []
|
||||||
onInteracted:
|
onInteracted:
|
||||||
m_PersistentCalls:
|
m_PersistentCalls:
|
||||||
m_Calls:
|
m_Calls:
|
||||||
|
|
88
Assets/Prefabs/KeyPreview.prefab
Normal file
88
Assets/Prefabs/KeyPreview.prefab
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1 &2892703864492016621
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 2368094401510200604}
|
||||||
|
- component: {fileID: 3721857971285848745}
|
||||||
|
- component: {fileID: 4840302974988827429}
|
||||||
|
m_Layer: 8
|
||||||
|
m_Name: KeyPreview
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &2368094401510200604
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2892703864492016621}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0.6830128, y: -0.18301234, z: -0.18301241, w: 0.68301284}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 2, y: 0.02, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 60, y: -90, z: -90}
|
||||||
|
--- !u!33 &3721857971285848745
|
||||||
|
MeshFilter:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2892703864492016621}
|
||||||
|
m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
|
||||||
|
--- !u!23 &4840302974988827429
|
||||||
|
MeshRenderer:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 2892703864492016621}
|
||||||
|
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_RenderingLayerMask: 1
|
||||||
|
m_RendererPriority: 0
|
||||||
|
m_Materials:
|
||||||
|
- {fileID: 2100000, guid: be8072c6f51e356f8a8c5affbe22973f, 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_SortingLayerID: 0
|
||||||
|
m_SortingLayer: 0
|
||||||
|
m_SortingOrder: 0
|
||||||
|
m_AdditionalVertexStreams: {fileID: 0}
|
7
Assets/Prefabs/KeyPreview.prefab.meta
Normal file
7
Assets/Prefabs/KeyPreview.prefab.meta
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cbffd5b6d954099a491f8a2a744b6d01
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -1,5 +1,5 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: ba062aa6c92b140379dbc06b43dd3b9b
|
guid: 9d57b977e58d1b58c90a05d6247ee000
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
|
@ -24,7 +24,7 @@ Transform:
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
m_GameObject: {fileID: 3189041518118701393}
|
m_GameObject: {fileID: 3189041518118701393}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_LocalRotation: {x: 0, y: 1, z: 0, w: 0}
|
m_LocalRotation: {x: 0.0017443874, y: -0.9994323, z: 0.033643518, w: 0.000058764297}
|
||||||
m_LocalPosition: {x: 0, y: 0.375, z: -1.2}
|
m_LocalPosition: {x: 0, y: 0.375, z: -1.2}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
|
@ -91,12 +91,65 @@ PrefabInstance:
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 272
|
value: 272
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -5922622823359544968, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -5568371526223589888, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -3898791185525528228, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -2059808378567916338, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1967758284531576944, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1919110505097373512, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1374039232608429058, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 236216658851537685, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
- target: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: Glock17Equipped
|
value: Glock17Equipped
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 5232627393660835655, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6619225641134156614, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7202271454713460447, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7556193500268387829, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
m_RemovedComponents: []
|
m_RemovedComponents: []
|
||||||
m_RemovedGameObjects: []
|
m_RemovedGameObjects:
|
||||||
|
- {fileID: -2407699025559542186, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
m_AddedGameObjects:
|
m_AddedGameObjects:
|
||||||
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
- targetCorrespondingSourceObject: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
insertIndex: -1
|
insertIndex: -1
|
112
Assets/Resources/Glock17/Glock17Preview.prefab
Normal file
112
Assets/Resources/Glock17/Glock17Preview.prefab
Normal file
|
@ -0,0 +1,112 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!1001 &3538664591492219717
|
||||||
|
PrefabInstance:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
serializedVersion: 2
|
||||||
|
m_Modification:
|
||||||
|
serializedVersion: 3
|
||||||
|
m_TransformParent: {fileID: 0}
|
||||||
|
m_Modifications:
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.x
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.y
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalPosition.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.w
|
||||||
|
value: 0.65328145
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.x
|
||||||
|
value: -0.2705982
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.y
|
||||||
|
value: -0.65328145
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalRotation.z
|
||||||
|
value: -0.2705982
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.x
|
||||||
|
value: 315
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.y
|
||||||
|
value: 270
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -8679921383154817045, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
|
value: 0
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -5922622823359544968, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -5568371526223589888, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -3898791185525528228, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -2059808378567916338, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1967758284531576944, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1919110505097373512, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: -1374039232608429058, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 236216658851537685, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Name
|
||||||
|
value: Glock17Preview
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 5232627393660835655, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 6619225641134156614, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7202271454713460447, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_RenderingLayerMask
|
||||||
|
value: 2
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 7556193500268387829, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
propertyPath: m_Layer
|
||||||
|
value: 8
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
m_RemovedComponents: []
|
||||||
|
m_RemovedGameObjects:
|
||||||
|
- {fileID: -2407699025559542186, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
|
m_AddedGameObjects: []
|
||||||
|
m_AddedComponents: []
|
||||||
|
m_SourcePrefab: {fileID: 100100000, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
7
Assets/Resources/Glock17/Glock17Preview.prefab.meta
Normal file
7
Assets/Resources/Glock17/Glock17Preview.prefab.meta
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f853e5887a27c240d90ca5c19cc270e1
|
||||||
|
PrefabImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
21
Assets/SOAP/Input/InventoryInput.asset
Normal file
21
Assets/SOAP/Input/InventoryInput.asset
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 6c481c42e360ed2b89fb1f5fc4558fdb, type: 3}
|
||||||
|
m_Name: InventoryInput
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
started: {fileID: 0}
|
||||||
|
performed: {fileID: 11400000, guid: 05ac93739cc1d1796b9403f2421c056b, type: 2}
|
||||||
|
canceled: {fileID: 0}
|
||||||
|
waiting: {fileID: 0}
|
||||||
|
disabled: {fileID: 0}
|
||||||
|
reactiveValue: {fileID: 0}
|
||||||
|
valueAsButton: {fileID: 0}
|
8
Assets/SOAP/Input/InventoryInput.asset.meta
Normal file
8
Assets/SOAP/Input/InventoryInput.asset.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: f168a80804247334e9d8ec837f58c9e1
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
14
Assets/SOAP/Input/InventoryInputEvent.asset
Normal file
14
Assets/SOAP/Input/InventoryInputEvent.asset
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 56805e83aabe387929ad23e06adda5fd, type: 3}
|
||||||
|
m_Name: InventoryInputEvent
|
||||||
|
m_EditorClassIdentifier:
|
8
Assets/SOAP/Input/InventoryInputEvent.asset.meta
Normal file
8
Assets/SOAP/Input/InventoryInputEvent.asset.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 05ac93739cc1d1796b9403f2421c056b
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -15,10 +15,9 @@ MonoBehaviour:
|
||||||
id: 1f650f4d-35fc-412f-b3fc-cf262c9d3e5f
|
id: 1f650f4d-35fc-412f-b3fc-cf262c9d3e5f
|
||||||
displayName: Debug Key
|
displayName: Debug Key
|
||||||
description:
|
description:
|
||||||
|
icon: {fileID: -123325096, guid: b5ca4025143f3c2078e7070eea546959, type: 3}
|
||||||
tags: []
|
tags: []
|
||||||
type: 0
|
worldPrefab: {fileID: 2892703864492016621, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
|
||||||
|
previewPrefab: {fileID: 2892703864492016621, guid: cbffd5b6d954099a491f8a2a744b6d01, type: 3}
|
||||||
stackable: 0
|
stackable: 0
|
||||||
maxStackCount: 10
|
maxStackCount: 10
|
||||||
icon: {fileID: -1304905567622442630, guid: 4e01e0da3979f115d951c3cb798e4313, type: 3}
|
|
||||||
instancePrefab: {fileID: 2892703864492016621, guid: 51202e3c62c3d3e1c9bb0ff9c09a608f, type: 3}
|
|
||||||
previewPrefab: {fileID: 0}
|
|
||||||
|
|
|
@ -14,11 +14,12 @@ MonoBehaviour:
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
id: 3aaccf06-f737-4e9b-9daf-2d99e69a14e7
|
id: 3aaccf06-f737-4e9b-9daf-2d99e69a14e7
|
||||||
displayName: Pistol
|
displayName: Pistol
|
||||||
description:
|
description: A semi-automatic pistol. Fires 10mm ammunition from a 10-round magazine.
|
||||||
|
Easy to use, high rate of fire.
|
||||||
icon: {fileID: -1451803064, guid: acf7be11a7aec869a96fca7c3cb2e6ff, type: 3}
|
icon: {fileID: -1451803064, guid: acf7be11a7aec869a96fca7c3cb2e6ff, type: 3}
|
||||||
tags: []
|
tags: []
|
||||||
worldPrefab: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
worldPrefab: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
||||||
previewPrefab: {fileID: 919132149155446097, guid: bf9d862a19647f28795df2e666425003, type: 3}
|
previewPrefab: {fileID: 4457074219773640212, guid: f853e5887a27c240d90ca5c19cc270e1, type: 3}
|
||||||
stackable: 0
|
stackable: 0
|
||||||
maxStackCount: 1
|
maxStackCount: 1
|
||||||
equippedPrefab: {fileID: 492801038359376716, guid: 34383341362bbd7c59b199a69ed897e4, type: 3}
|
equippedPrefab: {fileID: 492801038359376716, guid: 34383341362bbd7c59b199a69ed897e4, type: 3}
|
||||||
|
|
|
@ -9,15 +9,9 @@ MonoBehaviour:
|
||||||
m_GameObject: {fileID: 0}
|
m_GameObject: {fileID: 0}
|
||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
m_EditorHideFlags: 0
|
m_EditorHideFlags: 0
|
||||||
m_Script: {fileID: 11500000, guid: 1ca5a6e9c022cf971a176095a74df394, type: 3}
|
m_Script: {fileID: 11500000, guid: 267a9c1f4bb280a6a93f4240b8485056, type: 3}
|
||||||
m_Name: SelectedItem
|
m_Name: SelectedItem
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
id: 7602a606-109c-4a58-8786-f4c95fee7a92
|
Description:
|
||||||
displayName:
|
value:
|
||||||
description:
|
value: {fileID: 11400000, guid: 83a7512982c0868bbacfd587c15efbea, type: 2}
|
||||||
icon: {fileID: 0}
|
|
||||||
tags: []
|
|
||||||
worldPrefab: {fileID: 0}
|
|
||||||
previewPrefab: {fileID: 0}
|
|
||||||
stackable: 0
|
|
||||||
maxStackCount: 1
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 0f16091ed7577d3268f2725cf823d4da
|
guid: 37d00232a0bee1e8e923705187ff2187
|
||||||
NativeFormatImporter:
|
NativeFormatImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
mainObjectFileID: 11400000
|
mainObjectFileID: 11400000
|
||||||
|
|
|
@ -12,7 +12,7 @@ MonoBehaviour:
|
||||||
m_Script: {fileID: 11500000, guid: 9702da9b93bb25bf089c54dc37cc44e7, type: 3}
|
m_Script: {fileID: 11500000, guid: 9702da9b93bb25bf089c54dc37cc44e7, type: 3}
|
||||||
m_Name: TestInventory
|
m_Name: TestInventory
|
||||||
m_EditorClassIdentifier:
|
m_EditorClassIdentifier:
|
||||||
serializableItems:
|
items:
|
||||||
- Item: {fileID: 11400000, guid: 3a9b5fc9b523890cf8abd310dbc64940, type: 2}
|
- Item: {fileID: 11400000, guid: 3a9b5fc9b523890cf8abd310dbc64940, type: 2}
|
||||||
count: 1
|
count: 1
|
||||||
- Item: {fileID: 11400000, guid: 83a7512982c0868bbacfd587c15efbea, type: 2}
|
- Item: {fileID: 11400000, guid: 83a7512982c0868bbacfd587c15efbea, type: 2}
|
||||||
|
|
17
Assets/SOAP/UI/ItemPreviewDelta.asset
Normal file
17
Assets/SOAP/UI/ItemPreviewDelta.asset
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 1a85afc7b5f9bc9f386e4f76d3725daf, type: 3}
|
||||||
|
m_Name: ItemPreviewDelta
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
Description:
|
||||||
|
value:
|
||||||
|
value: {x: 0, y: 0}
|
8
Assets/SOAP/UI/ItemPreviewDelta.asset.meta
Normal file
8
Assets/SOAP/UI/ItemPreviewDelta.asset.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 61bec5de28967d14d8027ebd7c009e4e
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
19
Assets/SOAP/UI/ItemPreviewZoom.asset
Normal file
19
Assets/SOAP/UI/ItemPreviewZoom.asset
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 7f5d678d3982081db9d3d4897850cf76, type: 3}
|
||||||
|
m_Name: ItemPreviewZoom
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
Description:
|
||||||
|
value:
|
||||||
|
value: 0
|
||||||
|
clamp: 1
|
||||||
|
minMax: {x: -50, y: 10}
|
8
Assets/SOAP/UI/ItemPreviewZoom.asset.meta
Normal file
8
Assets/SOAP/UI/ItemPreviewZoom.asset.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: b611ded87bd3825d7bf45e43eaea670d
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -1,9 +1,8 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 8a0c9218a650547d98138cd835033977
|
guid: eccfcb5811706e3efba1ef8e033b5dda
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
timeCreated: 1484670163
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
Binary file not shown.
|
@ -0,0 +1,7 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 12ee09150bce8c611a562640b944ff62
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
Binary file not shown.
|
@ -0,0 +1,7 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 6dca14e3027067463143efe5eee5b62c
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -1,9 +1,8 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 5a9bcd70e6a4b4b05badaa72e827d8e0
|
guid: f0ff03fa9c3fb660eb36c1516f071f88
|
||||||
folderAsset: yes
|
folderAsset: yes
|
||||||
timeCreated: 1475835190
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
||||||
assetBundleName:
|
assetBundleName:
|
||||||
assetBundleVariant:
|
assetBundleVariant:
|
File diff suppressed because it is too large
Load diff
|
@ -119,7 +119,7 @@ NavMeshSettings:
|
||||||
debug:
|
debug:
|
||||||
m_Flags: 0
|
m_Flags: 0
|
||||||
m_NavMeshData: {fileID: 0}
|
m_NavMeshData: {fileID: 0}
|
||||||
--- !u!1 &1223357529
|
--- !u!1 &341000910
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
@ -127,76 +127,9 @@ GameObject:
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
m_Component:
|
m_Component:
|
||||||
- component: {fileID: 1223357531}
|
- component: {fileID: 341000913}
|
||||||
- component: {fileID: 1223357530}
|
- component: {fileID: 341000912}
|
||||||
- component: {fileID: 1223357532}
|
- component: {fileID: 341000911}
|
||||||
m_Layer: 5
|
|
||||||
m_Name: UIDocument
|
|
||||||
m_TagString: Untagged
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_NavMeshLayer: 0
|
|
||||||
m_StaticEditorFlags: 0
|
|
||||||
m_IsActive: 1
|
|
||||||
--- !u!114 &1223357530
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1223357529}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 19102, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_PanelSettings: {fileID: 11400000, guid: d8894ba51a816c451b072d957a1cfe45, type: 2}
|
|
||||||
m_ParentUI: {fileID: 0}
|
|
||||||
sourceAsset: {fileID: 9197481963319205126, guid: 8cea95d71232d8469b296ca7eb59e0a1, type: 3}
|
|
||||||
m_SortingOrder: 0
|
|
||||||
m_WorldSpaceSizeMode: 1
|
|
||||||
m_WorldSpaceWidth: 1920
|
|
||||||
m_WorldSpaceHeight: 1080
|
|
||||||
--- !u!4 &1223357531
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1223357529}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
|
||||||
m_ConstrainProportionsScale: 0
|
|
||||||
m_Children: []
|
|
||||||
m_Father: {fileID: 0}
|
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
|
||||||
--- !u!114 &1223357532
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1223357529}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: b37256e37c5968be89fa34dd8344744f, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
doc: {fileID: 1223357530}
|
|
||||||
inventory: {fileID: 11400000, guid: cd3f9ac2afa71f8b6acb3fb0cacfe441, type: 2}
|
|
||||||
template: {fileID: 9197481963319205126, guid: 01b74a9c8f3685fb2880379892a17e46, type: 3}
|
|
||||||
--- !u!1 &1411077289
|
|
||||||
GameObject:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
serializedVersion: 6
|
|
||||||
m_Component:
|
|
||||||
- component: {fileID: 1411077291}
|
|
||||||
- component: {fileID: 1411077290}
|
|
||||||
- component: {fileID: 1411077292}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Directional Light
|
m_Name: Directional Light
|
||||||
m_TagString: Untagged
|
m_TagString: Untagged
|
||||||
|
@ -204,24 +137,47 @@ GameObject:
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 1
|
||||||
--- !u!108 &1411077290
|
--- !u!114 &341000911
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 341000910}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
m_Version: 3
|
||||||
|
m_UsePipelineSettings: 1
|
||||||
|
m_AdditionalLightsShadowResolutionTier: 2
|
||||||
|
m_LightLayerMask: 1
|
||||||
|
m_RenderingLayers: 2
|
||||||
|
m_CustomShadowLayers: 0
|
||||||
|
m_ShadowLayerMask: 1
|
||||||
|
m_ShadowRenderingLayers: 1
|
||||||
|
m_LightCookieSize: {x: 1, y: 1}
|
||||||
|
m_LightCookieOffset: {x: 0, y: 0}
|
||||||
|
m_SoftShadowQuality: 0
|
||||||
|
--- !u!108 &341000912
|
||||||
Light:
|
Light:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
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_GameObject: {fileID: 1411077289}
|
m_GameObject: {fileID: 341000910}
|
||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
serializedVersion: 11
|
serializedVersion: 11
|
||||||
m_Type: 1
|
m_Type: 1
|
||||||
m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1}
|
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||||
m_Intensity: 1
|
m_Intensity: 1
|
||||||
m_Range: 10
|
m_Range: 10
|
||||||
m_SpotAngle: 30
|
m_SpotAngle: 30
|
||||||
m_InnerSpotAngle: 21.80208
|
m_InnerSpotAngle: 21.80208
|
||||||
m_CookieSize: 10
|
m_CookieSize: 10
|
||||||
m_Shadows:
|
m_Shadows:
|
||||||
m_Type: 2
|
m_Type: 0
|
||||||
m_Resolution: -1
|
m_Resolution: -1
|
||||||
m_CustomResolution: -1
|
m_CustomResolution: -1
|
||||||
m_Strength: 1
|
m_Strength: 1
|
||||||
|
@ -253,7 +209,7 @@ Light:
|
||||||
m_CullingMask:
|
m_CullingMask:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Bits: 4294967295
|
m_Bits: 4294967295
|
||||||
m_RenderingLayerMask: 1
|
m_RenderingLayerMask: 2
|
||||||
m_Lightmapping: 4
|
m_Lightmapping: 4
|
||||||
m_LightShadowCasterMode: 0
|
m_LightShadowCasterMode: 0
|
||||||
m_AreaSize: {x: 1, y: 1}
|
m_AreaSize: {x: 1, y: 1}
|
||||||
|
@ -269,45 +225,22 @@ Light:
|
||||||
m_LightUnit: 1
|
m_LightUnit: 1
|
||||||
m_LuxAtDistance: 1
|
m_LuxAtDistance: 1
|
||||||
m_EnableSpotReflector: 1
|
m_EnableSpotReflector: 1
|
||||||
--- !u!4 &1411077291
|
--- !u!4 &341000913
|
||||||
Transform:
|
Transform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
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_GameObject: {fileID: 1411077289}
|
m_GameObject: {fileID: 341000910}
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
|
m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261}
|
||||||
m_LocalPosition: {x: 0, y: 3, 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: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
|
m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0}
|
||||||
--- !u!114 &1411077292
|
--- !u!1 &590341843
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1411077289}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 0
|
|
||||||
m_Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Version: 3
|
|
||||||
m_UsePipelineSettings: 1
|
|
||||||
m_AdditionalLightsShadowResolutionTier: 2
|
|
||||||
m_LightLayerMask: 1
|
|
||||||
m_RenderingLayers: 1
|
|
||||||
m_CustomShadowLayers: 0
|
|
||||||
m_ShadowLayerMask: 1
|
|
||||||
m_ShadowRenderingLayers: 1
|
|
||||||
m_LightCookieSize: {x: 1, y: 1}
|
|
||||||
m_LightCookieOffset: {x: 0, y: 0}
|
|
||||||
m_SoftShadowQuality: 0
|
|
||||||
--- !u!1 &1889780342
|
|
||||||
GameObject:
|
GameObject:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
@ -315,98 +248,23 @@ GameObject:
|
||||||
m_PrefabAsset: {fileID: 0}
|
m_PrefabAsset: {fileID: 0}
|
||||||
serializedVersion: 6
|
serializedVersion: 6
|
||||||
m_Component:
|
m_Component:
|
||||||
- component: {fileID: 1889780345}
|
- component: {fileID: 590341847}
|
||||||
- component: {fileID: 1889780344}
|
- component: {fileID: 590341846}
|
||||||
- component: {fileID: 1889780343}
|
- component: {fileID: 590341844}
|
||||||
- component: {fileID: 1889780346}
|
|
||||||
m_Layer: 0
|
m_Layer: 0
|
||||||
m_Name: Main Camera
|
m_Name: Preview Camera
|
||||||
m_TagString: MainCamera
|
m_TagString: Untagged
|
||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 1
|
||||||
--- !u!81 &1889780343
|
--- !u!114 &590341844
|
||||||
AudioListener:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1889780342}
|
|
||||||
m_Enabled: 1
|
|
||||||
--- !u!20 &1889780344
|
|
||||||
Camera:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1889780342}
|
|
||||||
m_Enabled: 1
|
|
||||||
serializedVersion: 2
|
|
||||||
m_ClearFlags: 2
|
|
||||||
m_BackGroundColor: {r: 1, g: 0.8726415, b: 0.986825, 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: -1
|
|
||||||
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 &1889780345
|
|
||||||
Transform:
|
|
||||||
m_ObjectHideFlags: 0
|
|
||||||
m_CorrespondingSourceObject: {fileID: 0}
|
|
||||||
m_PrefabInstance: {fileID: 0}
|
|
||||||
m_PrefabAsset: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 1889780342}
|
|
||||||
serializedVersion: 2
|
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
|
||||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
|
||||||
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!114 &1889780346
|
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
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_GameObject: {fileID: 1889780342}
|
m_GameObject: {fileID: 590341843}
|
||||||
m_Enabled: 1
|
m_Enabled: 1
|
||||||
m_EditorHideFlags: 0
|
m_EditorHideFlags: 0
|
||||||
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
|
m_Script: {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3}
|
||||||
|
@ -444,10 +302,129 @@ MonoBehaviour:
|
||||||
m_MipBias: 0
|
m_MipBias: 0
|
||||||
m_VarianceClampScale: 0.9
|
m_VarianceClampScale: 0.9
|
||||||
m_ContrastAdaptiveSharpening: 0
|
m_ContrastAdaptiveSharpening: 0
|
||||||
|
--- !u!20 &590341846
|
||||||
|
Camera:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 590341843}
|
||||||
|
m_Enabled: 1
|
||||||
|
serializedVersion: 2
|
||||||
|
m_ClearFlags: 4
|
||||||
|
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: 256
|
||||||
|
m_RenderingPath: -1
|
||||||
|
m_TargetTexture: {fileID: 8400000, guid: fc19a022409ab0d408fa0e78cfeab827, type: 2}
|
||||||
|
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 &590341847
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 590341843}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: -3}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!1 &1153614253
|
||||||
|
GameObject:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
serializedVersion: 6
|
||||||
|
m_Component:
|
||||||
|
- component: {fileID: 1153614255}
|
||||||
|
- component: {fileID: 1153614256}
|
||||||
|
m_Layer: 8
|
||||||
|
m_Name: Item Preview
|
||||||
|
m_TagString: Untagged
|
||||||
|
m_Icon: {fileID: 0}
|
||||||
|
m_NavMeshLayer: 0
|
||||||
|
m_StaticEditorFlags: 0
|
||||||
|
m_IsActive: 1
|
||||||
|
--- !u!4 &1153614255
|
||||||
|
Transform:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1153614253}
|
||||||
|
serializedVersion: 2
|
||||||
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
|
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||||
|
m_ConstrainProportionsScale: 0
|
||||||
|
m_Children: []
|
||||||
|
m_Father: {fileID: 0}
|
||||||
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
--- !u!114 &1153614256
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 1153614253}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: cd025ca0b2f740f7f8356cd3113163a2, type: 3}
|
||||||
|
m_Name:
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
selectedItem: {fileID: 11400000, guid: 37d00232a0bee1e8e923705187ff2187, type: 2}
|
||||||
|
camera: {fileID: 590341847}
|
||||||
|
rotationDelta: {fileID: 11400000, guid: 61bec5de28967d14d8027ebd7c009e4e, type: 2}
|
||||||
|
sensitivity: 25
|
||||||
|
angleSnap: 10
|
||||||
|
zoom: {fileID: 11400000, guid: b611ded87bd3825d7bf45e43eaea670d, type: 2}
|
||||||
|
zoomSensitivity: 0.025
|
||||||
|
previewLayer:
|
||||||
|
index: 8
|
||||||
--- !u!1660057539 &9223372036854775807
|
--- !u!1660057539 &9223372036854775807
|
||||||
SceneRoots:
|
SceneRoots:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
m_Roots:
|
m_Roots:
|
||||||
- {fileID: 1889780345}
|
- {fileID: 590341847}
|
||||||
- {fileID: 1411077291}
|
- {fileID: 341000913}
|
||||||
- {fileID: 1223357531}
|
- {fileID: 1153614255}
|
|
@ -1,5 +1,5 @@
|
||||||
fileFormatVersion: 2
|
fileFormatVersion: 2
|
||||||
guid: 374b635465e0bf8888b5381eb4a6d9b6
|
guid: 4a31ffa7a4feefc509c20ec6e65133f0
|
||||||
DefaultImporter:
|
DefaultImporter:
|
||||||
externalObjects: {}
|
externalObjects: {}
|
||||||
userData:
|
userData:
|
20
Assets/Scripts/Editor/PropertyDrawers/LayerPropertyDrawer.cs
Normal file
20
Assets/Scripts/Editor/PropertyDrawers/LayerPropertyDrawer.cs
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
using KitsuneCafe.Sys;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEditor.UIElements;
|
||||||
|
using UnityEngine.UIElements;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.Editor
|
||||||
|
{
|
||||||
|
[CustomPropertyDrawer(typeof(Layer))]
|
||||||
|
public class LayerPropertyDrawer : PropertyDrawer
|
||||||
|
{
|
||||||
|
public override VisualElement CreatePropertyGUI(SerializedProperty property)
|
||||||
|
{
|
||||||
|
var field = new LayerField(ObjectNames.NicifyVariableName(property.name));
|
||||||
|
|
||||||
|
field.Bind(property.serializedObject);
|
||||||
|
field.bindingPath = "index";
|
||||||
|
return field;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 94cf5c15477490054ac75b400651436d
|
|
@ -0,0 +1,14 @@
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.Editor
|
||||||
|
{
|
||||||
|
// [CustomPropertyDrawer(typeof(SceneAsset))]
|
||||||
|
public class SceneAssetPropertyDrawer : PropertyDrawer
|
||||||
|
{
|
||||||
|
public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
|
||||||
|
{
|
||||||
|
EditorGUI.ObjectField(position, property, typeof(SceneAsset), label);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: a83d0e4d07a8192a597646d11504b235
|
|
@ -6,7 +6,7 @@ using KitsuneCafe.SOAP;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class AimFeature : MonoBehaviour
|
public class AimFeature : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class BoneAttachment : MonoBehaviour
|
public class BoneAttachment : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class DamageSource : MonoBehaviour, IDamaging
|
public class DamageSource : MonoBehaviour, IDamaging
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,7 +2,7 @@ using KitsuneCafe.Sys.Attributes;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class DummyAnimator : MonoBehaviour
|
public class DummyAnimator : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -5,7 +5,7 @@ using KitsuneCafe.Sys.Attributes;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class EntityAnimator : MonoBehaviour
|
public class EntityAnimator : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,7 +2,7 @@ using System;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public record HealthChanged(int Previous, int Current)
|
public record HealthChanged(int Previous, int Current)
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
using KitsuneCafe.Sys;
|
using KitsuneCafe.Sys;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public interface IDamageable : IGameObject
|
public interface IDamageable : IGameObject
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
using KitsuneCafe.Sys;
|
using KitsuneCafe.Sys;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public interface IDamaging : IGameObject
|
public interface IDamaging : IGameObject
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,15 +2,15 @@ using UnityEngine;
|
||||||
using UnityEngine.Events;
|
using UnityEngine.Events;
|
||||||
using static UnityEngine.InputSystem.InputAction;
|
using static UnityEngine.InputSystem.InputAction;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public interface IInputProvider
|
public interface IInputProvider
|
||||||
{
|
{
|
||||||
Vector2 MovementDirection { get; }
|
Vector2 MovementDirection { get; }
|
||||||
bool Sprinting { get; }
|
bool Sprinting { get; }
|
||||||
bool Interacting { get; }
|
bool Interacting { get; }
|
||||||
}
|
}
|
||||||
|
|
||||||
public class Input : MonoBehaviour
|
public class Input : MonoBehaviour
|
||||||
{
|
{
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
|
|
|
@ -4,7 +4,7 @@ using KitsuneCafe.SOAP;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class Motor : MonoBehaviour
|
public class Motor : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class Spring : MonoBehaviour
|
public class Spring : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -2,7 +2,7 @@ using KitsuneCafe.SOAP;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.Entity
|
namespace KitsuneCafe.Entities
|
||||||
{
|
{
|
||||||
public class SprintFeature : MonoBehaviour
|
public class SprintFeature : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
using System;
|
using System;
|
||||||
using KitsuneCafe.Entity;
|
using KitsuneCafe.Entities;
|
||||||
using KitsuneCafe.SOAP;
|
using KitsuneCafe.SOAP;
|
||||||
using R3;
|
using R3;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
using System;
|
using System;
|
||||||
using KitsuneCafe.Entity;
|
using KitsuneCafe.Entities;
|
||||||
using KitsuneCafe.Extension;
|
using KitsuneCafe.Extension;
|
||||||
using KitsuneCafe.SOAP;
|
using KitsuneCafe.SOAP;
|
||||||
using R3;
|
using R3;
|
||||||
|
|
|
@ -84,99 +84,42 @@ namespace KitsuneCafe.ItemSystem
|
||||||
}
|
}
|
||||||
|
|
||||||
[CreateAssetMenu(menuName = KitsuneCafeMenu.Item + "Inventory")]
|
[CreateAssetMenu(menuName = KitsuneCafeMenu.Item + "Inventory")]
|
||||||
public class Inventory : ScriptableObject, IList, IInventory<InventoryItem>, IEnumerable<InventoryItem>, IObservableCollection<InventoryItem>, ISerializationCallbackReceiver
|
public class Inventory : ScriptableObject, IList, IInventory<InventoryItem>, IEnumerable<InventoryItem>
|
||||||
{
|
{
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private List<InventoryItem> serializableItems = new();
|
private List<InventoryItem> items = new();
|
||||||
|
|
||||||
private ObservableList<InventoryItem> runtimeItems;
|
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private int capacity = 8;
|
private int capacity = 8;
|
||||||
|
|
||||||
public event NotifyCollectionChangedEventHandler<InventoryItem> CollectionChanged = default;
|
|
||||||
|
|
||||||
public int Capacity => capacity;
|
public int Capacity => capacity;
|
||||||
|
|
||||||
public int Count => runtimeItems?.Count ?? 0;
|
public int Count => items.Count;
|
||||||
|
|
||||||
public bool IsEmpty => Count == 0;
|
public bool IsEmpty => Count == 0;
|
||||||
public bool IsFull => Count == Capacity;
|
public bool IsFull => Count == Capacity;
|
||||||
|
|
||||||
public object SyncRoot => runtimeItems.SyncRoot;
|
public object SyncRoot => ((IList)items).SyncRoot;
|
||||||
|
|
||||||
public bool IsFixedSize => ((IList)runtimeItems).IsFixedSize;
|
public bool IsFixedSize => ((IList)items).IsFixedSize;
|
||||||
|
|
||||||
public bool IsReadOnly => ((IList)runtimeItems).IsReadOnly;
|
public bool IsReadOnly => ((IList)items).IsReadOnly;
|
||||||
|
|
||||||
public bool IsSynchronized => ((ICollection)runtimeItems).IsSynchronized;
|
public bool IsSynchronized => ((ICollection)items).IsSynchronized;
|
||||||
|
|
||||||
object IList.this[int index] { get => runtimeItems[index]; set => runtimeItems[index] = (InventoryItem)value; }
|
object IList.this[int index] { get => items[index]; set => items[index] = (InventoryItem)value; }
|
||||||
|
|
||||||
public InventoryItem this[int index]
|
public InventoryItem this[int index]
|
||||||
{
|
{
|
||||||
get => runtimeItems[index];
|
get => items[index];
|
||||||
set => runtimeItems[index] = value;
|
set => items[index] = value;
|
||||||
}
|
|
||||||
|
|
||||||
private void OnEnable()
|
|
||||||
{
|
|
||||||
if (runtimeItems == null)
|
|
||||||
{
|
|
||||||
runtimeItems = new ObservableList<InventoryItem>();
|
|
||||||
}
|
|
||||||
|
|
||||||
runtimeItems.CollectionChanged -= OnCollectionChanged;
|
|
||||||
runtimeItems.CollectionChanged += OnCollectionChanged;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnDisable()
|
|
||||||
{
|
|
||||||
if (runtimeItems != null)
|
|
||||||
{
|
|
||||||
runtimeItems.CollectionChanged -= OnCollectionChanged;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void OnCollectionChanged(in NotifyCollectionChangedEventArgs<InventoryItem> e)
|
|
||||||
{
|
|
||||||
CollectionChanged?.Invoke(e);
|
|
||||||
}
|
|
||||||
|
|
||||||
public void OnBeforeSerialize()
|
|
||||||
{
|
|
||||||
if (runtimeItems != null)
|
|
||||||
{
|
|
||||||
serializableItems.Clear();
|
|
||||||
foreach (var item in runtimeItems)
|
|
||||||
{
|
|
||||||
serializableItems.Add(item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public void OnAfterDeserialize()
|
|
||||||
{
|
|
||||||
if (runtimeItems == null)
|
|
||||||
{
|
|
||||||
runtimeItems = new ObservableList<InventoryItem>();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
runtimeItems.Clear();
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (var item in serializableItems)
|
|
||||||
{
|
|
||||||
runtimeItems.Add(item);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEnumerable<InventoryItem> Find(Func<InventoryItem, bool> predicate)
|
public IEnumerable<InventoryItem> Find(Func<InventoryItem, bool> predicate)
|
||||||
{
|
{
|
||||||
for (int i = 0; i < Count; i++)
|
for (int i = 0; i < Count; i++)
|
||||||
{
|
{
|
||||||
var item = runtimeItems[i];
|
var item = items[i];
|
||||||
|
|
||||||
if (predicate(item))
|
if (predicate(item))
|
||||||
{
|
{
|
||||||
|
@ -194,7 +137,7 @@ namespace KitsuneCafe.ItemSystem
|
||||||
|
|
||||||
for (int i = 0; i < Count; i++)
|
for (int i = 0; i < Count; i++)
|
||||||
{
|
{
|
||||||
var existingItem = runtimeItems[i];
|
var existingItem = items[i];
|
||||||
|
|
||||||
if (existingItem.Equals(item))
|
if (existingItem.Equals(item))
|
||||||
{
|
{
|
||||||
|
@ -204,7 +147,7 @@ namespace KitsuneCafe.ItemSystem
|
||||||
}
|
}
|
||||||
|
|
||||||
var consumedAmount = existingItem.IncreaseCount(count, out var updatedItem);
|
var consumedAmount = existingItem.IncreaseCount(count, out var updatedItem);
|
||||||
runtimeItems[i] = updatedItem.Value;
|
items[i] = updatedItem.Value;
|
||||||
|
|
||||||
count -= consumedAmount;
|
count -= consumedAmount;
|
||||||
if (count <= 0)
|
if (count <= 0)
|
||||||
|
@ -227,7 +170,7 @@ namespace KitsuneCafe.ItemSystem
|
||||||
}
|
}
|
||||||
|
|
||||||
count -= InventoryItem.Create(item, count, out var newItem);
|
count -= InventoryItem.Create(item, count, out var newItem);
|
||||||
runtimeItems.Add(newItem.Value);
|
items.Add(newItem.Value);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -253,22 +196,22 @@ namespace KitsuneCafe.ItemSystem
|
||||||
return Result.Err<Unit, InventoryError>(InventoryError.InvalidQuantity);
|
return Result.Err<Unit, InventoryError>(InventoryError.InvalidQuantity);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = runtimeItems.Count - 1; i >= 0; i--)
|
for (int i = items.Count - 1; i >= 0; i--)
|
||||||
{
|
{
|
||||||
var existingItem = runtimeItems[i];
|
var existingItem = items[i];
|
||||||
|
|
||||||
if (existingItem.Item == item)
|
if (existingItem.Item == item)
|
||||||
{
|
{
|
||||||
if (existingItem.Count > count)
|
if (existingItem.Count > count)
|
||||||
{
|
{
|
||||||
existingItem.ReduceCount(count, out var updatedItem);
|
existingItem.ReduceCount(count, out var updatedItem);
|
||||||
runtimeItems[i] = updatedItem.Value;
|
items[i] = updatedItem.Value;
|
||||||
return Result.Ok<Unit, InventoryError>(Unit.Default);
|
return Result.Ok<Unit, InventoryError>(Unit.Default);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
count -= existingItem.Count;
|
count -= existingItem.Count;
|
||||||
runtimeItems.RemoveAt(i);
|
items.RemoveAt(i);
|
||||||
|
|
||||||
if (count == 0)
|
if (count == 0)
|
||||||
{
|
{
|
||||||
|
@ -290,7 +233,7 @@ namespace KitsuneCafe.ItemSystem
|
||||||
{
|
{
|
||||||
for (int i = 0; i < Count; i++)
|
for (int i = 0; i < Count; i++)
|
||||||
{
|
{
|
||||||
if (runtimeItems[i].Equals(item))
|
if (items[i].Equals(item))
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
@ -301,7 +244,7 @@ namespace KitsuneCafe.ItemSystem
|
||||||
|
|
||||||
public IEnumerator<InventoryItem> GetEnumerator()
|
public IEnumerator<InventoryItem> GetEnumerator()
|
||||||
{
|
{
|
||||||
return runtimeItems.GetEnumerator();
|
return items.GetEnumerator();
|
||||||
}
|
}
|
||||||
|
|
||||||
IEnumerator IEnumerable.GetEnumerator()
|
IEnumerator IEnumerable.GetEnumerator()
|
||||||
|
@ -309,49 +252,44 @@ namespace KitsuneCafe.ItemSystem
|
||||||
return GetEnumerator();
|
return GetEnumerator();
|
||||||
}
|
}
|
||||||
|
|
||||||
public ISynchronizedView<InventoryItem, TView> CreateView<TView>(Func<InventoryItem, TView> transform)
|
|
||||||
{
|
|
||||||
return runtimeItems.CreateView(transform);
|
|
||||||
}
|
|
||||||
|
|
||||||
public int Add(object value)
|
public int Add(object value)
|
||||||
{
|
{
|
||||||
return ((IList)runtimeItems).Add(value);
|
return ((IList)items).Add(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Clear()
|
public void Clear()
|
||||||
{
|
{
|
||||||
((IList)runtimeItems).Clear();
|
((IList)items).Clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool Contains(object value)
|
public bool Contains(object value)
|
||||||
{
|
{
|
||||||
return ((IList)runtimeItems).Contains(value);
|
return ((IList)items).Contains(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public int IndexOf(object value)
|
public int IndexOf(object value)
|
||||||
{
|
{
|
||||||
return ((IList)runtimeItems).IndexOf(value);
|
return ((IList)items).IndexOf(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Insert(int index, object value)
|
public void Insert(int index, object value)
|
||||||
{
|
{
|
||||||
((IList)runtimeItems).Insert(index, value);
|
((IList)items).Insert(index, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void Remove(object value)
|
public void Remove(object value)
|
||||||
{
|
{
|
||||||
((IList)runtimeItems).Remove(value);
|
((IList)items).Remove(value);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void RemoveAt(int index)
|
public void RemoveAt(int index)
|
||||||
{
|
{
|
||||||
((IList)runtimeItems).RemoveAt(index);
|
((IList)items).RemoveAt(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void CopyTo(Array array, int index)
|
public void CopyTo(Array array, int index)
|
||||||
{
|
{
|
||||||
((ICollection)runtimeItems).CopyTo(array, index);
|
((ICollection)items).CopyTo(array, index);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,9 +12,9 @@ namespace KitsuneCafe.SOAP
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
protected SerializableReactiveProperty<T> value;
|
protected SerializableReactiveProperty<T> value;
|
||||||
public T Value { get => value.Value; set { this.value.Value = value; } }
|
public virtual T Value { get => value.Value; set { this.value.Value = value; } }
|
||||||
|
|
||||||
public ReadOnlyReactiveProperty<T> AsReactiveProperty() => value;
|
public ReadOnlyReactiveProperty<T> AsReactiveProperty() => value;
|
||||||
public override Observable<T> AsObservable() => value;
|
public override Observable<T> AsObservable() => value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,5 @@
|
||||||
using KitsuneCafe.Sys;
|
using KitsuneCafe.Sys;
|
||||||
|
using KitsuneCafe.Sys.Attributes;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
|
|
||||||
namespace KitsuneCafe.SOAP
|
namespace KitsuneCafe.SOAP
|
||||||
|
@ -6,6 +7,27 @@ namespace KitsuneCafe.SOAP
|
||||||
[CreateAssetMenu(fileName = "FloatValue", menuName = KitsuneCafeMenu.SoapValue + "Float")]
|
[CreateAssetMenu(fileName = "FloatValue", menuName = KitsuneCafeMenu.SoapValue + "Float")]
|
||||||
public class FloatValue : ReactiveValue<float>
|
public class FloatValue : ReactiveValue<float>
|
||||||
{
|
{
|
||||||
|
[SerializeField]
|
||||||
|
private bool clamp = false;
|
||||||
|
public bool Clamped => clamp;
|
||||||
|
|
||||||
|
[SerializeField, ShowIf("clamp")]
|
||||||
|
private Vector2 minMax = Vector2.zero;
|
||||||
|
|
||||||
|
public override float Value
|
||||||
|
{
|
||||||
|
get => base.Value;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (clamp)
|
||||||
|
{
|
||||||
|
base.Value = Mathf.Clamp(value, minMax.x, minMax.y);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.Value = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
12
Assets/Scripts/SOAP/Value/QuaternionValue.cs
Normal file
12
Assets/Scripts/SOAP/Value/QuaternionValue.cs
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
using KitsuneCafe.Sys;
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.SOAP
|
||||||
|
{
|
||||||
|
[CreateAssetMenu(fileName = "QuaternionValue", menuName = KitsuneCafeMenu.SoapValue + "Quaternion")]
|
||||||
|
public class QuaternionValue : ReactiveValue<Quaternion>
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
2
Assets/Scripts/SOAP/Value/QuaternionValue.cs.meta
Normal file
2
Assets/Scripts/SOAP/Value/QuaternionValue.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 8d8c46ebf04914f9f96e5938bb166973
|
8
Assets/Scripts/Scene.meta
Normal file
8
Assets/Scripts/Scene.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 16eef83f26bcaed2caf5029fb2957771
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
103
Assets/Scripts/Scene/Subscene.cs
Normal file
103
Assets/Scripts/Scene/Subscene.cs
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
using System;
|
||||||
|
using Eflatun.SceneReference;
|
||||||
|
using UnityEditor;
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
using UnityEditor.SceneManagement;
|
||||||
|
#endif
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.SceneManagement;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.Scene
|
||||||
|
{
|
||||||
|
[ExecuteInEditMode]
|
||||||
|
public class Subscene : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField]
|
||||||
|
private SceneReference scene;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private bool loadOnStart;
|
||||||
|
|
||||||
|
private AsyncOperation sceneLoadOperation;
|
||||||
|
|
||||||
|
public event Action SceneLoaded = delegate { };
|
||||||
|
private bool isLoading = false;
|
||||||
|
private bool isLoaded = false;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
EditorApplication.playModeStateChanged += OnPlayModeStateChanged;
|
||||||
|
if (!EditorApplication.isPlayingOrWillChangePlaymode)
|
||||||
|
{
|
||||||
|
LoadPreviewScene();
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
|
||||||
|
if (loadOnStart && !isLoading)
|
||||||
|
{
|
||||||
|
Load();
|
||||||
|
isLoading = true;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnPlayModeStateChanged(PlayModeStateChange change)
|
||||||
|
{
|
||||||
|
switch (change)
|
||||||
|
{
|
||||||
|
case PlayModeStateChange.EnteredEditMode:
|
||||||
|
LoadPreviewScene();
|
||||||
|
break;
|
||||||
|
case PlayModeStateChange.ExitingEditMode:
|
||||||
|
UnloadPreviewScene();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#if UNITY_EDITOR
|
||||||
|
private void LoadPreviewScene()
|
||||||
|
{
|
||||||
|
if (scene.Path == null || SceneManager.GetSceneByPath(scene.Path).isLoaded)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
EditorSceneManager.OpenScene(scene.Path, OpenSceneMode.Additive);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void UnloadPreviewScene()
|
||||||
|
{
|
||||||
|
if (scene.LoadedScene != null)
|
||||||
|
{
|
||||||
|
// EditorSceneManager.CloseScene(scene.LoadedScene, false);
|
||||||
|
if (loadOnStart)
|
||||||
|
{
|
||||||
|
Load();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
private void Load()
|
||||||
|
{
|
||||||
|
if (sceneLoadOperation == null)
|
||||||
|
{
|
||||||
|
sceneLoadOperation = SceneManager.LoadSceneAsync(
|
||||||
|
scene.BuildIndex,
|
||||||
|
LoadSceneMode.Additive
|
||||||
|
);
|
||||||
|
|
||||||
|
sceneLoadOperation.completed += OnCompleted;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnCompleted(AsyncOperation _operation)
|
||||||
|
{
|
||||||
|
isLoaded = true;
|
||||||
|
SceneLoaded.Invoke();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
Assets/Scripts/Scene/Subscene.cs.meta
Normal file
2
Assets/Scripts/Scene/Subscene.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: d482f2480cd8a1fac8e1ebd40c5dc94e
|
36
Assets/Scripts/System/Layer.cs
Normal file
36
Assets/Scripts/System/Layer.cs
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
using UnityEngine;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.Sys
|
||||||
|
{
|
||||||
|
[System.Serializable]
|
||||||
|
public class Layer
|
||||||
|
{
|
||||||
|
[SerializeField]
|
||||||
|
private int index = 0;
|
||||||
|
|
||||||
|
public int Index => index;
|
||||||
|
|
||||||
|
public Layer(int index)
|
||||||
|
{
|
||||||
|
this.index = index;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Set(int layerIndex)
|
||||||
|
{
|
||||||
|
if (layerIndex > 0 && layerIndex < 32)
|
||||||
|
{
|
||||||
|
index = layerIndex;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int Mask => 1 << index;
|
||||||
|
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
return $"Layer {{ Index = {index} }}";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static implicit operator int(Layer layer) => layer.Index;
|
||||||
|
public static implicit operator Layer(int index) => new(index);
|
||||||
|
}
|
||||||
|
}
|
2
Assets/Scripts/System/Layer.cs.meta
Normal file
2
Assets/Scripts/System/Layer.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 3d72dddf9bd95c216800328c05dd1f1d
|
138
Assets/Scripts/UI/Elements/Preview.cs
Normal file
138
Assets/Scripts/UI/Elements/Preview.cs
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
using System;
|
||||||
|
using KitsuneCafe.UI.MVVM;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UIElements;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.UI
|
||||||
|
{
|
||||||
|
public class RotateEvent : EventBase<RotateEvent>
|
||||||
|
{
|
||||||
|
public Vector2 Delta { get; set; }
|
||||||
|
|
||||||
|
protected override void Init()
|
||||||
|
{
|
||||||
|
base.Init();
|
||||||
|
bubbles = true;
|
||||||
|
tricklesDown = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ZoomEvent : EventBase<ZoomEvent>
|
||||||
|
{
|
||||||
|
public float Amount { get; set; }
|
||||||
|
|
||||||
|
protected override void Init()
|
||||||
|
{
|
||||||
|
base.Init();
|
||||||
|
bubbles = true;
|
||||||
|
tricklesDown = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[UxmlElement]
|
||||||
|
public partial class PreviewView : VisualElement
|
||||||
|
{
|
||||||
|
public const string BaseClass = "kitsunecafe__preview";
|
||||||
|
|
||||||
|
private readonly PreviewViewModel viewModel = new();
|
||||||
|
|
||||||
|
private readonly DragManipulator drag;
|
||||||
|
|
||||||
|
public PreviewView()
|
||||||
|
{
|
||||||
|
AddToClassList(BaseClass);
|
||||||
|
|
||||||
|
drag = new DragManipulator(this);
|
||||||
|
drag.Started += () => viewModel.EnableRotationCommand.TryExecute(true);
|
||||||
|
drag.Stopped += () => viewModel.EnableRotationCommand.TryExecute(false);
|
||||||
|
drag.Dragged += delta => viewModel.RotateCommand.TryExecute(delta);
|
||||||
|
this.AddManipulator(drag);
|
||||||
|
|
||||||
|
RegisterCallback<AttachToPanelEvent>(OnAttachToPanel);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnAttachToPanel(AttachToPanelEvent evt)
|
||||||
|
{
|
||||||
|
var root = panel.visualTree;
|
||||||
|
root.RegisterCallback<WheelEvent>(OnMouseWheel);
|
||||||
|
|
||||||
|
viewModel.Rotated += OnRotate;
|
||||||
|
viewModel.Zoomed += OnZoom;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnRotate(object sender, PreviewViewModel.RotateEvent e)
|
||||||
|
{
|
||||||
|
using RotateEvent ev = RotateEvent.GetPooled();
|
||||||
|
ev.target = this;
|
||||||
|
ev.Delta = e.Rotation;
|
||||||
|
SendEvent(ev);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnZoom(object sender, PreviewViewModel.ZoomEvent e)
|
||||||
|
{
|
||||||
|
using ZoomEvent ev = ZoomEvent.GetPooled();
|
||||||
|
ev.target = this;
|
||||||
|
ev.Amount = e.Amount;
|
||||||
|
SendEvent(ev);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnMouseWheel(WheelEvent evt)
|
||||||
|
{
|
||||||
|
viewModel.ZoomCommand.TryExecute(evt.delta.y);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public class PreviewViewModel
|
||||||
|
{
|
||||||
|
public record RotateEvent(Vector2 Rotation);
|
||||||
|
public record ZoomEvent(float Amount);
|
||||||
|
|
||||||
|
public readonly ICommand<bool> EnableRotationCommand;
|
||||||
|
public readonly ICommand<Vector2> RotateCommand;
|
||||||
|
public readonly ICommand<float> ZoomCommand;
|
||||||
|
|
||||||
|
private bool isRotating = false;
|
||||||
|
|
||||||
|
public event EventHandler<RotateEvent> Rotated;
|
||||||
|
public event EventHandler<ZoomEvent> Zoomed;
|
||||||
|
|
||||||
|
public PreviewViewModel()
|
||||||
|
{
|
||||||
|
EnableRotationCommand = new RelayCommand<bool>(CanEnableRotation, EnableRotation);
|
||||||
|
RotateCommand = new RelayCommand<Vector2>(CanRotate, Rotate);
|
||||||
|
ZoomCommand = new RelayCommand<float>(CanZoom, Zoom);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void EnableRotation(bool enabled)
|
||||||
|
{
|
||||||
|
isRotating = enabled;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool CanEnableRotation(bool _enabled)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool CanRotate(Vector2 _delta)
|
||||||
|
{
|
||||||
|
return isRotating;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Rotate(Vector2 delta)
|
||||||
|
{
|
||||||
|
Rotated?.Invoke(this, new RotateEvent(delta));
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool CanZoom(float value)
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Zoom(float value)
|
||||||
|
{
|
||||||
|
Zoomed?.Invoke(this, new ZoomEvent(value));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
2
Assets/Scripts/UI/Elements/Preview.cs.meta
Normal file
2
Assets/Scripts/UI/Elements/Preview.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 5af5a3e8b4d2c26c8bee10329f0bf21b
|
276
Assets/Scripts/UI/Elements/Recycler.cs
Normal file
276
Assets/Scripts/UI/Elements/Recycler.cs
Normal file
|
@ -0,0 +1,276 @@
|
||||||
|
using System;
|
||||||
|
using System.Collections;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using KitsuneCafe.UI.MVVM;
|
||||||
|
using Unity.Properties;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UIElements;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.UI
|
||||||
|
{
|
||||||
|
public class RecyclerViewModel
|
||||||
|
{
|
||||||
|
public record RotateEvent(Direction Direction, int FirstIndex);
|
||||||
|
|
||||||
|
public enum Direction
|
||||||
|
{
|
||||||
|
None = 0,
|
||||||
|
Clockwise = -1,
|
||||||
|
CounterClockwise = 1
|
||||||
|
}
|
||||||
|
|
||||||
|
private int displayCount;
|
||||||
|
public int DisplayCount
|
||||||
|
{
|
||||||
|
get => displayCount;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (displayCount != value)
|
||||||
|
{
|
||||||
|
displayCount = value;
|
||||||
|
CreateIndices();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private IList itemSource;
|
||||||
|
public IList ItemSource
|
||||||
|
{
|
||||||
|
get => itemSource;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (itemSource != value)
|
||||||
|
{
|
||||||
|
itemSource = value;
|
||||||
|
CreateIndices();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public int Count => Math.Min(DisplayCount, ItemSource.Count);
|
||||||
|
|
||||||
|
private List<int> indices;
|
||||||
|
public IReadOnlyList<int> Indices => indices;
|
||||||
|
|
||||||
|
public readonly ICommand<Direction> RotateCommand;
|
||||||
|
|
||||||
|
public event EventHandler<RotateEvent> Rotated = delegate { };
|
||||||
|
|
||||||
|
public RecyclerViewModel()
|
||||||
|
{
|
||||||
|
indices = new();
|
||||||
|
RotateCommand = new RelayCommand<Direction>(CanRotate, Rotate);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateIndices()
|
||||||
|
{
|
||||||
|
if (itemSource == null || displayCount == 0) { return; }
|
||||||
|
indices = Enumerable.Range(0, Math.Min(DisplayCount, ItemSource.Count)).ToList();
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool CanRotate(Direction direction)
|
||||||
|
{
|
||||||
|
return direction == Direction.Clockwise || direction == Direction.CounterClockwise;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Rotate(Direction direction)
|
||||||
|
{
|
||||||
|
if (direction == Direction.Clockwise)
|
||||||
|
{
|
||||||
|
indices.RemoveAt(0);
|
||||||
|
var next = indices.Last() + 1;
|
||||||
|
next %= ItemSource.Count;
|
||||||
|
indices.Add(next);
|
||||||
|
Notify(direction);
|
||||||
|
}
|
||||||
|
else if (direction == Direction.CounterClockwise)
|
||||||
|
{
|
||||||
|
indices.RemoveAt(ItemSource.Count - 1);
|
||||||
|
var count = ItemSource.Count;
|
||||||
|
var previous = indices[0] - 1;
|
||||||
|
previous += count % count;
|
||||||
|
indices.Insert(0, previous);
|
||||||
|
Notify(direction);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Notify(Direction direction)
|
||||||
|
{
|
||||||
|
Rotated?.Invoke(this, new RotateEvent(direction, indices.First()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class SelectEvent : EventBase<SelectEvent>
|
||||||
|
{
|
||||||
|
public int ElementIndex { get; set; }
|
||||||
|
public int DataIndex { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
[UxmlElement]
|
||||||
|
public partial class RecyclerView : VisualElement
|
||||||
|
{
|
||||||
|
public const string BaseClass = "kitsunecafe__recycler-view";
|
||||||
|
|
||||||
|
[UxmlAttribute, CreateProperty]
|
||||||
|
public int DisplayCount
|
||||||
|
{
|
||||||
|
get => viewModel.DisplayCount;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
viewModel.DisplayCount = value;
|
||||||
|
CreateItems();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[CreateProperty]
|
||||||
|
public IList ItemSource
|
||||||
|
{
|
||||||
|
get => viewModel.ItemSource;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (ItemSource != value)
|
||||||
|
{
|
||||||
|
viewModel.ItemSource = value;
|
||||||
|
CreateItems();
|
||||||
|
Rebind();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private IBinder binder;
|
||||||
|
|
||||||
|
[CreateProperty]
|
||||||
|
public IBinder Binder
|
||||||
|
{
|
||||||
|
get => binder;
|
||||||
|
set
|
||||||
|
{
|
||||||
|
if (binder != value)
|
||||||
|
{
|
||||||
|
binder = value;
|
||||||
|
CreateItems();
|
||||||
|
Rebind();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private readonly RecyclerViewModel viewModel = new();
|
||||||
|
private readonly DragManipulator drag;
|
||||||
|
|
||||||
|
public RecyclerView()
|
||||||
|
{
|
||||||
|
AddToClassList(BaseClass);
|
||||||
|
|
||||||
|
drag = new DragManipulator(this);
|
||||||
|
drag.Dragged += OnDrag;
|
||||||
|
this.AddManipulator(drag);
|
||||||
|
|
||||||
|
RegisterCallback<NavigationMoveEvent>(OnNavigationMove);
|
||||||
|
viewModel.Rotated += OnRotated;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateItems()
|
||||||
|
{
|
||||||
|
Clear();
|
||||||
|
if (DisplayCount == 0 || binder == null) { return; }
|
||||||
|
for (int i = 0; i < DisplayCount; i++)
|
||||||
|
{
|
||||||
|
Add(binder.CreateItem());
|
||||||
|
}
|
||||||
|
|
||||||
|
FocusFirst();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void Rebind()
|
||||||
|
{
|
||||||
|
if (viewModel == null || ItemSource == null || DisplayCount == 0 || binder == null) { return; }
|
||||||
|
|
||||||
|
for (int i = 0; i < DisplayCount; i++)
|
||||||
|
{
|
||||||
|
TryBindItem(this[i], i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool HasItem(int index)
|
||||||
|
{
|
||||||
|
return 0 <= index && index < ItemSource.Count;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnRotated(object sender, RecyclerViewModel.RotateEvent e)
|
||||||
|
{
|
||||||
|
VisualElement recycled;
|
||||||
|
switch (e.Direction)
|
||||||
|
{
|
||||||
|
case RecyclerViewModel.Direction.Clockwise:
|
||||||
|
recycled = this[0];
|
||||||
|
RemoveAt(0);
|
||||||
|
Insert(DisplayCount - 1, recycled);
|
||||||
|
TryBindItem(recycled, DisplayCount - 1);
|
||||||
|
NotifySelection();
|
||||||
|
break;
|
||||||
|
case RecyclerViewModel.Direction.CounterClockwise:
|
||||||
|
recycled = this[DisplayCount - 1];
|
||||||
|
RemoveAt(DisplayCount - 1);
|
||||||
|
Insert(0, recycled);
|
||||||
|
TryBindItem(recycled, 0);
|
||||||
|
NotifySelection();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
FocusFirst();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void NotifySelection()
|
||||||
|
{
|
||||||
|
using SelectEvent evt = SelectEvent.GetPooled();
|
||||||
|
evt.target = this[0];
|
||||||
|
evt.ElementIndex = 0;
|
||||||
|
evt.DataIndex = viewModel.Indices[0];
|
||||||
|
SendEvent(evt);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void FocusFirst()
|
||||||
|
{
|
||||||
|
if (childCount > 0)
|
||||||
|
{
|
||||||
|
this[0].Focus();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void TryBindItem(VisualElement element, int index)
|
||||||
|
{
|
||||||
|
if (HasItem(index))
|
||||||
|
{
|
||||||
|
var idx = viewModel.Indices[index];
|
||||||
|
if (0 <= idx && idx < ItemSource.Count)
|
||||||
|
{
|
||||||
|
binder.BindItem(element, idx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
binder.UnbindItem(element);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnDrag(Vector2 vector)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnNavigationMove(NavigationMoveEvent evt)
|
||||||
|
{
|
||||||
|
var direction = evt.direction switch
|
||||||
|
{
|
||||||
|
NavigationMoveEvent.Direction.Left => RecyclerViewModel.Direction.CounterClockwise,
|
||||||
|
NavigationMoveEvent.Direction.Right => RecyclerViewModel.Direction.Clockwise,
|
||||||
|
NavigationMoveEvent.Direction.Next => RecyclerViewModel.Direction.Clockwise,
|
||||||
|
NavigationMoveEvent.Direction.Previous => RecyclerViewModel.Direction.CounterClockwise,
|
||||||
|
_ => RecyclerViewModel.Direction.None
|
||||||
|
};
|
||||||
|
|
||||||
|
viewModel.RotateCommand.TryExecute(direction);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
Assets/Scripts/UI/Elements/Recycler.cs.meta
Normal file
2
Assets/Scripts/UI/Elements/Recycler.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 684cef7995e35a12d8793b920c61ac8e
|
133
Assets/Scripts/UI/ItemPreview.cs
Normal file
133
Assets/Scripts/UI/ItemPreview.cs
Normal file
|
@ -0,0 +1,133 @@
|
||||||
|
using System;
|
||||||
|
using KitsuneCafe.ItemSystem;
|
||||||
|
using KitsuneCafe.SOAP;
|
||||||
|
using KitsuneCafe.Sys;
|
||||||
|
using R3;
|
||||||
|
using UnityEngine;
|
||||||
|
using Wacs.Core.Instructions;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.UI
|
||||||
|
{
|
||||||
|
public class ItemPreview : MonoBehaviour
|
||||||
|
{
|
||||||
|
[SerializeField]
|
||||||
|
private ItemValue selectedItem;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private new Transform camera;
|
||||||
|
|
||||||
|
[Header("Rotation")]
|
||||||
|
[SerializeField]
|
||||||
|
private Vector2Value rotationDelta;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float sensitivity = 20;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float angleSnap = 10;
|
||||||
|
|
||||||
|
[Header("Zoom")]
|
||||||
|
[SerializeField]
|
||||||
|
private FloatValue zoom;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float zoomSensitivity = 0.5f;
|
||||||
|
|
||||||
|
private Vector3 initialPosition;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private Layer previewLayer;
|
||||||
|
|
||||||
|
private GameObject instance;
|
||||||
|
|
||||||
|
private void Start()
|
||||||
|
{
|
||||||
|
if (selectedItem.Value != null)
|
||||||
|
{
|
||||||
|
ChangeItemPreview(selectedItem.Value);
|
||||||
|
}
|
||||||
|
|
||||||
|
var d = Disposable.CreateBuilder();
|
||||||
|
|
||||||
|
selectedItem.AsObservable()
|
||||||
|
.Subscribe(ChangeItemPreview)
|
||||||
|
.AddTo(ref d);
|
||||||
|
|
||||||
|
rotationDelta.AsObservable()
|
||||||
|
.Where(_ => instance != null)
|
||||||
|
.Subscribe(RotatePreview)
|
||||||
|
.AddTo(ref d);
|
||||||
|
|
||||||
|
zoom.AsObservable()
|
||||||
|
.Where(_ => instance != null)
|
||||||
|
.Subscribe(ZoomPreview)
|
||||||
|
.AddTo(ref d);
|
||||||
|
|
||||||
|
d.RegisterTo(destroyCancellationToken);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ZoomPreview(float amount)
|
||||||
|
{
|
||||||
|
if (instance == null) { return; }
|
||||||
|
|
||||||
|
var position = initialPosition;
|
||||||
|
position.z += amount * zoomSensitivity;
|
||||||
|
instance.transform.position = position;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ChangeItemPreview(Item item)
|
||||||
|
{
|
||||||
|
if (instance != null)
|
||||||
|
{
|
||||||
|
Destroy(instance);
|
||||||
|
instance = null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (item != null)
|
||||||
|
{
|
||||||
|
instance = item.CreatePreview();
|
||||||
|
instance.layer = previewLayer;
|
||||||
|
instance.transform.SetParent(transform);
|
||||||
|
initialPosition = instance.transform.position;
|
||||||
|
|
||||||
|
ResetPreviewValues();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ResetPreviewValues()
|
||||||
|
{
|
||||||
|
zoom.Value = 0;
|
||||||
|
rotationDelta.Value = Vector2.zero;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void RotatePreview(Vector2 delta)
|
||||||
|
{
|
||||||
|
if (instance == null || camera == null) { return; }
|
||||||
|
|
||||||
|
var yawAngle = -delta.x * sensitivity * Time.deltaTime;
|
||||||
|
var yawRotation = Quaternion.AngleAxis(yawAngle, camera.up);
|
||||||
|
var pitchAngle = -delta.y * sensitivity * Time.deltaTime;
|
||||||
|
|
||||||
|
var pitchRotation = Quaternion.AngleAxis(pitchAngle, camera.right);
|
||||||
|
var combinedRotation = pitchRotation * yawRotation;
|
||||||
|
instance.transform.rotation = combinedRotation * instance.transform.rotation;
|
||||||
|
|
||||||
|
ApplyAngleSnapping();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ApplyAngleSnapping()
|
||||||
|
{
|
||||||
|
if (instance == null) return;
|
||||||
|
|
||||||
|
Vector3 euler = instance.transform.rotation.eulerAngles;
|
||||||
|
|
||||||
|
Quaternion rotation = Quaternion.Euler(
|
||||||
|
Mathf.Round(euler.x / angleSnap) * angleSnap,
|
||||||
|
Mathf.Round(euler.y / angleSnap) * angleSnap,
|
||||||
|
Mathf.Round(euler.z / angleSnap) * angleSnap
|
||||||
|
);
|
||||||
|
|
||||||
|
instance.transform.rotation = rotation;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
Assets/Scripts/UI/ItemPreview.cs.meta
Normal file
2
Assets/Scripts/UI/ItemPreview.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: cd025ca0b2f740f7f8356cd3113163a2
|
8
Assets/Scripts/UI/Manipulator.meta
Normal file
8
Assets/Scripts/UI/Manipulator.meta
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0b72eac1e69a2d32f85746763e1b1d64
|
||||||
|
folderAsset: yes
|
||||||
|
DefaultImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
66
Assets/Scripts/UI/Manipulator/DragManipulator.cs
Normal file
66
Assets/Scripts/UI/Manipulator/DragManipulator.cs
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
using System;
|
||||||
|
using UnityEditor;
|
||||||
|
using UnityEngine;
|
||||||
|
using UnityEngine.UIElements;
|
||||||
|
|
||||||
|
namespace KitsuneCafe.UI
|
||||||
|
{
|
||||||
|
public class DragManipulator : PointerManipulator
|
||||||
|
{
|
||||||
|
public event Action Started = delegate { };
|
||||||
|
public event Action Stopped = delegate { };
|
||||||
|
public event Action<Vector2> Dragged = delegate { };
|
||||||
|
|
||||||
|
private bool isDragging = false;
|
||||||
|
private bool globalDrag = true;
|
||||||
|
|
||||||
|
private VisualElement releaseTarget;
|
||||||
|
|
||||||
|
public DragManipulator(VisualElement element, bool globalDrag = true)
|
||||||
|
{
|
||||||
|
target = element;
|
||||||
|
this.globalDrag = globalDrag;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void RegisterCallbacksOnTarget()
|
||||||
|
{
|
||||||
|
target.RegisterCallback<AttachToPanelEvent>(OnAttachToPanel);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnAttachToPanel(AttachToPanelEvent evt)
|
||||||
|
{
|
||||||
|
releaseTarget = globalDrag ? target.panel.visualTree : target;
|
||||||
|
target.RegisterCallback<PointerDownEvent>(OnPointerDown);
|
||||||
|
releaseTarget.RegisterCallback<PointerMoveEvent>(OnPointerMove);
|
||||||
|
releaseTarget.RegisterCallback<PointerUpEvent>(OnPointerUp);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected override void UnregisterCallbacksFromTarget()
|
||||||
|
{
|
||||||
|
target.UnregisterCallback<AttachToPanelEvent>(OnAttachToPanel);
|
||||||
|
target.UnregisterCallback<PointerDownEvent>(OnPointerDown);
|
||||||
|
releaseTarget?.UnregisterCallback<PointerMoveEvent>(OnPointerMove);
|
||||||
|
releaseTarget?.UnregisterCallback<PointerUpEvent>(OnPointerUp);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnPointerDown(PointerDownEvent _)
|
||||||
|
{
|
||||||
|
isDragging = true;
|
||||||
|
Started?.Invoke();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnPointerMove(PointerMoveEvent evt)
|
||||||
|
{
|
||||||
|
if (isDragging)
|
||||||
|
{
|
||||||
|
Dragged?.Invoke(evt.deltaPosition);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnPointerUp(PointerUpEvent evt)
|
||||||
|
{
|
||||||
|
isDragging = false;
|
||||||
|
Stopped?.Invoke();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
2
Assets/Scripts/UI/Manipulator/DragManipulator.cs.meta
Normal file
2
Assets/Scripts/UI/Manipulator/DragManipulator.cs.meta
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: e2d8f2b2cf8c00d9e9c1e89d5e0fb121
|
|
@ -1,6 +1,9 @@
|
||||||
using System.Collections;
|
using System;
|
||||||
using KitsuneCafe.ItemSystem;
|
using KitsuneCafe.ItemSystem;
|
||||||
|
using KitsuneCafe.SOAP;
|
||||||
using KitsuneCafe.UI.MVVM;
|
using KitsuneCafe.UI.MVVM;
|
||||||
|
using R3;
|
||||||
|
using UnityEditor.UIElements;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using UnityEngine.UIElements;
|
using UnityEngine.UIElements;
|
||||||
|
|
||||||
|
@ -8,13 +11,14 @@ namespace KitsuneCafe.UI
|
||||||
{
|
{
|
||||||
public class InventoryScreen : MonoBehaviour
|
public class InventoryScreen : MonoBehaviour
|
||||||
{
|
{
|
||||||
public const string ItemListIndicators = "item-list-indicator";
|
public const string ItemListIndicatorsName = "item-list-indicator";
|
||||||
public const string ItemList = "item-list";
|
public const string ItemListName = "item-list";
|
||||||
|
|
||||||
|
public const string ItemPreviewName = "item-preview";
|
||||||
|
|
||||||
|
|
||||||
|
public const string ItemDetailsTitleName = "item-details-title-label";
|
||||||
public const string ItemDetailsTitle = "item-details-title-label";
|
public const string ItemDetailsContentName = "item-details-content-label";
|
||||||
public const string ItemDetailsContent = "item-details-content-label";
|
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private UIDocument doc;
|
private UIDocument doc;
|
||||||
|
@ -25,12 +29,28 @@ namespace KitsuneCafe.UI
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private VisualTreeAsset template;
|
private VisualTreeAsset template;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private int displayCount = 5;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private ItemValue selectedItem;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private FloatEvent inventoryInput;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private Vector2Value itemPreviewDelta;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private FloatValue itemZoom;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private ActionMapValue actionMap;
|
||||||
|
|
||||||
private VisualElement root => doc.rootVisualElement;
|
private VisualElement root => doc.rootVisualElement;
|
||||||
|
|
||||||
private VisualElement indicators;
|
private VisualElement indicators;
|
||||||
private VisualElement itemList;
|
private VisualElement itemPreview;
|
||||||
private VisualElement detailsTitle;
|
|
||||||
private VisualElement detailsContent;
|
|
||||||
|
|
||||||
private void OnValidate()
|
private void OnValidate()
|
||||||
{
|
{
|
||||||
|
@ -47,7 +67,54 @@ namespace KitsuneCafe.UI
|
||||||
|
|
||||||
private void Start()
|
private void Start()
|
||||||
{
|
{
|
||||||
|
root.visible = false;
|
||||||
|
|
||||||
|
inventoryInput.AsObservable()
|
||||||
|
.Subscribe(_ =>
|
||||||
|
{
|
||||||
|
root.visible = !root.visible;
|
||||||
|
actionMap.Value = root.visible ? Input.ActionMap.UI : Input.ActionMap.Player;
|
||||||
|
});
|
||||||
|
|
||||||
|
CreateItemList();
|
||||||
|
var preview = root.Q<PreviewView>();
|
||||||
|
|
||||||
|
preview.RegisterCallback<RotateEvent>(evt =>
|
||||||
|
{
|
||||||
|
itemPreviewDelta.Value = evt.Delta;
|
||||||
|
});
|
||||||
|
|
||||||
|
preview.RegisterCallback<ZoomEvent>(evt =>
|
||||||
|
{
|
||||||
|
itemZoom.Value += evt.Amount;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
private void CreateItemList()
|
||||||
|
{
|
||||||
|
var itemList = root.Q<RecyclerView>();
|
||||||
|
itemList.ItemSource = inventory;
|
||||||
|
itemList.Binder = new AdHocBinder(
|
||||||
|
() =>
|
||||||
|
{
|
||||||
|
var instance = template.CloneTree();
|
||||||
|
instance.focusable = true;
|
||||||
|
return instance;
|
||||||
|
},
|
||||||
|
(el, i) =>
|
||||||
|
{
|
||||||
|
el.dataSource = inventory[i];
|
||||||
|
},
|
||||||
|
el =>
|
||||||
|
{
|
||||||
|
el.dataSource = null;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
itemList.RegisterCallback<SelectEvent>(evt =>
|
||||||
|
{
|
||||||
|
Debug.Log($"Selected {evt.DataIndex}");
|
||||||
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Before Width: | Height: | Size: 24 KiB |
|
@ -1,134 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: 727a75301c3d24613a3ebcec4a24c2c8
|
|
||||||
TextureImporter:
|
|
||||||
internalIDToNameTable: []
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 11
|
|
||||||
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
|
|
||||||
isReadable: 0
|
|
||||||
streamingMipmaps: 0
|
|
||||||
streamingMipmapsPriority: 0
|
|
||||||
vTOnly: 0
|
|
||||||
ignoreMasterTextureLimit: 0
|
|
||||||
grayScaleToAlpha: 0
|
|
||||||
generateCubemap: 6
|
|
||||||
cubemapConvolution: 0
|
|
||||||
seamlessCubemap: 0
|
|
||||||
textureFormat: 1
|
|
||||||
maxTextureSize: 2048
|
|
||||||
textureSettings:
|
|
||||||
serializedVersion: 2
|
|
||||||
filterMode: 0
|
|
||||||
aniso: 1
|
|
||||||
mipBias: 0
|
|
||||||
wrapU: 1
|
|
||||||
wrapV: 1
|
|
||||||
wrapW: 0
|
|
||||||
nPOTScale: 0
|
|
||||||
lightmap: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
spriteMode: 0
|
|
||||||
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: 2
|
|
||||||
textureShape: 1
|
|
||||||
singleChannelComponent: 0
|
|
||||||
flipbookRows: 1
|
|
||||||
flipbookColumns: 1
|
|
||||||
maxTextureSizeSet: 0
|
|
||||||
compressionQualitySet: 0
|
|
||||||
textureFormatSet: 0
|
|
||||||
ignorePngGamma: 0
|
|
||||||
applyGammaDecoding: 0
|
|
||||||
platformSettings:
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: DefaultTexturePlatform
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 0
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: Standalone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: Android
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
- serializedVersion: 3
|
|
||||||
buildTarget: iPhone
|
|
||||||
maxTextureSize: 2048
|
|
||||||
resizeAlgorithm: 0
|
|
||||||
textureFormat: -1
|
|
||||||
textureCompression: 1
|
|
||||||
compressionQuality: 50
|
|
||||||
crunchedCompression: 0
|
|
||||||
allowsAlphaSplitting: 0
|
|
||||||
overridden: 0
|
|
||||||
androidETC2FallbackOverride: 0
|
|
||||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
|
||||||
spriteSheet:
|
|
||||||
serializedVersion: 2
|
|
||||||
sprites: []
|
|
||||||
outline: []
|
|
||||||
physicsShape: []
|
|
||||||
bones: []
|
|
||||||
spriteID:
|
|
||||||
internalID: 0
|
|
||||||
vertices: []
|
|
||||||
indices:
|
|
||||||
edges: []
|
|
||||||
weights: []
|
|
||||||
secondaryTextures: []
|
|
||||||
nameFileIdTable: {}
|
|
||||||
spritePackingTag:
|
|
||||||
pSDRemoveMatte: 0
|
|
||||||
pSDShowRemoveMatteOption: 0
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,654 +0,0 @@
|
||||||
%YAML 1.1
|
|
||||||
%TAG !u! tag:unity3d.com,2011:
|
|
||||||
--- !u!114 &1
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12004, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_PixelRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 45
|
|
||||||
width: 1666
|
|
||||||
height: 958
|
|
||||||
m_ShowMode: 4
|
|
||||||
m_Title:
|
|
||||||
m_RootView: {fileID: 6}
|
|
||||||
m_MinSize: {x: 950, y: 542}
|
|
||||||
m_MaxSize: {x: 10000, y: 10000}
|
|
||||||
--- !u!114 &2
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 466
|
|
||||||
width: 290
|
|
||||||
height: 442
|
|
||||||
m_MinSize: {x: 234, y: 271}
|
|
||||||
m_MaxSize: {x: 10004, y: 10021}
|
|
||||||
m_ActualView: {fileID: 14}
|
|
||||||
m_Panes:
|
|
||||||
- {fileID: 14}
|
|
||||||
m_Selected: 0
|
|
||||||
m_LastSelected: 0
|
|
||||||
--- !u!114 &3
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children:
|
|
||||||
- {fileID: 4}
|
|
||||||
- {fileID: 2}
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 973
|
|
||||||
y: 0
|
|
||||||
width: 290
|
|
||||||
height: 908
|
|
||||||
m_MinSize: {x: 234, y: 492}
|
|
||||||
m_MaxSize: {x: 10004, y: 14042}
|
|
||||||
vertical: 1
|
|
||||||
controlID: 226
|
|
||||||
--- !u!114 &4
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 290
|
|
||||||
height: 466
|
|
||||||
m_MinSize: {x: 204, y: 221}
|
|
||||||
m_MaxSize: {x: 4004, y: 4021}
|
|
||||||
m_ActualView: {fileID: 17}
|
|
||||||
m_Panes:
|
|
||||||
- {fileID: 17}
|
|
||||||
m_Selected: 0
|
|
||||||
m_LastSelected: 0
|
|
||||||
--- !u!114 &5
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 466
|
|
||||||
width: 973
|
|
||||||
height: 442
|
|
||||||
m_MinSize: {x: 202, y: 221}
|
|
||||||
m_MaxSize: {x: 4002, y: 4021}
|
|
||||||
m_ActualView: {fileID: 15}
|
|
||||||
m_Panes:
|
|
||||||
- {fileID: 15}
|
|
||||||
m_Selected: 0
|
|
||||||
m_LastSelected: 0
|
|
||||||
--- !u!114 &6
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12008, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children:
|
|
||||||
- {fileID: 7}
|
|
||||||
- {fileID: 8}
|
|
||||||
- {fileID: 9}
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1666
|
|
||||||
height: 958
|
|
||||||
m_MinSize: {x: 950, y: 542}
|
|
||||||
m_MaxSize: {x: 10000, y: 10000}
|
|
||||||
--- !u!114 &7
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12011, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 1666
|
|
||||||
height: 30
|
|
||||||
m_MinSize: {x: 0, y: 0}
|
|
||||||
m_MaxSize: {x: 0, y: 0}
|
|
||||||
m_LastLoadedLayoutName: Tutorial
|
|
||||||
--- !u!114 &8
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children:
|
|
||||||
- {fileID: 10}
|
|
||||||
- {fileID: 3}
|
|
||||||
- {fileID: 11}
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 30
|
|
||||||
width: 1666
|
|
||||||
height: 908
|
|
||||||
m_MinSize: {x: 713, y: 492}
|
|
||||||
m_MaxSize: {x: 18008, y: 14042}
|
|
||||||
vertical: 0
|
|
||||||
controlID: 74
|
|
||||||
--- !u!114 &9
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12042, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 938
|
|
||||||
width: 1666
|
|
||||||
height: 20
|
|
||||||
m_MinSize: {x: 0, y: 0}
|
|
||||||
m_MaxSize: {x: 0, y: 0}
|
|
||||||
--- !u!114 &10
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12010, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children:
|
|
||||||
- {fileID: 12}
|
|
||||||
- {fileID: 5}
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 973
|
|
||||||
height: 908
|
|
||||||
m_MinSize: {x: 202, y: 442}
|
|
||||||
m_MaxSize: {x: 4002, y: 8042}
|
|
||||||
vertical: 1
|
|
||||||
controlID: 75
|
|
||||||
--- !u!114 &11
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 1263
|
|
||||||
y: 0
|
|
||||||
width: 403
|
|
||||||
height: 908
|
|
||||||
m_MinSize: {x: 277, y: 71}
|
|
||||||
m_MaxSize: {x: 4002, y: 4021}
|
|
||||||
m_ActualView: {fileID: 13}
|
|
||||||
m_Panes:
|
|
||||||
- {fileID: 13}
|
|
||||||
m_Selected: 0
|
|
||||||
m_LastSelected: 0
|
|
||||||
--- !u!114 &12
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12006, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_Children: []
|
|
||||||
m_Position:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 973
|
|
||||||
height: 466
|
|
||||||
m_MinSize: {x: 202, y: 221}
|
|
||||||
m_MaxSize: {x: 4002, y: 4021}
|
|
||||||
m_ActualView: {fileID: 16}
|
|
||||||
m_Panes:
|
|
||||||
- {fileID: 16}
|
|
||||||
m_Selected: 0
|
|
||||||
m_LastSelected: 0
|
|
||||||
--- !u!114 &13
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12019, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_AutoRepaintOnSceneChange: 0
|
|
||||||
m_MinSize: {x: 275, y: 50}
|
|
||||||
m_MaxSize: {x: 4000, y: 4000}
|
|
||||||
m_TitleContent:
|
|
||||||
m_Text: Inspector
|
|
||||||
m_Image: {fileID: -6905738622615590433, guid: 0000000000000000d000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_Tooltip:
|
|
||||||
m_DepthBufferBits: 0
|
|
||||||
m_Pos:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 2
|
|
||||||
y: 19
|
|
||||||
width: 401
|
|
||||||
height: 887
|
|
||||||
m_ScrollPosition: {x: 0, y: 0}
|
|
||||||
m_InspectorMode: 0
|
|
||||||
m_PreviewResizer:
|
|
||||||
m_CachedPref: -160
|
|
||||||
m_ControlHash: -371814159
|
|
||||||
m_PrefName: Preview_InspectorPreview
|
|
||||||
m_PreviewWindow: {fileID: 0}
|
|
||||||
--- !u!114 &14
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12014, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_AutoRepaintOnSceneChange: 0
|
|
||||||
m_MinSize: {x: 230, y: 250}
|
|
||||||
m_MaxSize: {x: 10000, y: 10000}
|
|
||||||
m_TitleContent:
|
|
||||||
m_Text: Project
|
|
||||||
m_Image: {fileID: -7501376956915960154, guid: 0000000000000000d000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_Tooltip:
|
|
||||||
m_DepthBufferBits: 0
|
|
||||||
m_Pos:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 2
|
|
||||||
y: 19
|
|
||||||
width: 286
|
|
||||||
height: 421
|
|
||||||
m_SearchFilter:
|
|
||||||
m_NameFilter:
|
|
||||||
m_ClassNames: []
|
|
||||||
m_AssetLabels: []
|
|
||||||
m_AssetBundleNames: []
|
|
||||||
m_VersionControlStates: []
|
|
||||||
m_ReferencingInstanceIDs:
|
|
||||||
m_ScenePaths: []
|
|
||||||
m_ShowAllHits: 0
|
|
||||||
m_SearchArea: 0
|
|
||||||
m_Folders:
|
|
||||||
- Assets
|
|
||||||
m_ViewMode: 0
|
|
||||||
m_StartGridSize: 64
|
|
||||||
m_LastFolders:
|
|
||||||
- Assets
|
|
||||||
m_LastFoldersGridSize: -1
|
|
||||||
m_LastProjectPath: /Users/danielbrauer/Unity Projects/New Unity Project 47
|
|
||||||
m_IsLocked: 0
|
|
||||||
m_FolderTreeState:
|
|
||||||
scrollPos: {x: 0, y: 0}
|
|
||||||
m_SelectedIDs: ee240000
|
|
||||||
m_LastClickedID: 9454
|
|
||||||
m_ExpandedIDs: ee24000000ca9a3bffffff7f
|
|
||||||
m_RenameOverlay:
|
|
||||||
m_UserAcceptedRename: 0
|
|
||||||
m_Name:
|
|
||||||
m_OriginalName:
|
|
||||||
m_EditFieldRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 0
|
|
||||||
height: 0
|
|
||||||
m_UserData: 0
|
|
||||||
m_IsWaitingForDelay: 0
|
|
||||||
m_IsRenaming: 0
|
|
||||||
m_OriginalEventType: 11
|
|
||||||
m_IsRenamingFilename: 1
|
|
||||||
m_ClientGUIView: {fileID: 0}
|
|
||||||
m_SearchString:
|
|
||||||
m_CreateAssetUtility:
|
|
||||||
m_EndAction: {fileID: 0}
|
|
||||||
m_InstanceID: 0
|
|
||||||
m_Path:
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_ResourceFile:
|
|
||||||
m_AssetTreeState:
|
|
||||||
scrollPos: {x: 0, y: 0}
|
|
||||||
m_SelectedIDs: 68fbffff
|
|
||||||
m_LastClickedID: 0
|
|
||||||
m_ExpandedIDs: ee240000
|
|
||||||
m_RenameOverlay:
|
|
||||||
m_UserAcceptedRename: 0
|
|
||||||
m_Name:
|
|
||||||
m_OriginalName:
|
|
||||||
m_EditFieldRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 0
|
|
||||||
height: 0
|
|
||||||
m_UserData: 0
|
|
||||||
m_IsWaitingForDelay: 0
|
|
||||||
m_IsRenaming: 0
|
|
||||||
m_OriginalEventType: 11
|
|
||||||
m_IsRenamingFilename: 1
|
|
||||||
m_ClientGUIView: {fileID: 0}
|
|
||||||
m_SearchString:
|
|
||||||
m_CreateAssetUtility:
|
|
||||||
m_EndAction: {fileID: 0}
|
|
||||||
m_InstanceID: 0
|
|
||||||
m_Path:
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_ResourceFile:
|
|
||||||
m_ListAreaState:
|
|
||||||
m_SelectedInstanceIDs: 68fbffff
|
|
||||||
m_LastClickedInstanceID: -1176
|
|
||||||
m_HadKeyboardFocusLastEvent: 0
|
|
||||||
m_ExpandedInstanceIDs: c6230000
|
|
||||||
m_RenameOverlay:
|
|
||||||
m_UserAcceptedRename: 0
|
|
||||||
m_Name:
|
|
||||||
m_OriginalName:
|
|
||||||
m_EditFieldRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 0
|
|
||||||
height: 0
|
|
||||||
m_UserData: 0
|
|
||||||
m_IsWaitingForDelay: 0
|
|
||||||
m_IsRenaming: 0
|
|
||||||
m_OriginalEventType: 11
|
|
||||||
m_IsRenamingFilename: 1
|
|
||||||
m_ClientGUIView: {fileID: 0}
|
|
||||||
m_CreateAssetUtility:
|
|
||||||
m_EndAction: {fileID: 0}
|
|
||||||
m_InstanceID: 0
|
|
||||||
m_Path:
|
|
||||||
m_Icon: {fileID: 0}
|
|
||||||
m_ResourceFile:
|
|
||||||
m_NewAssetIndexInList: -1
|
|
||||||
m_ScrollPosition: {x: 0, y: 0}
|
|
||||||
m_GridSize: 64
|
|
||||||
m_DirectoriesAreaWidth: 110
|
|
||||||
--- !u!114 &15
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12015, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_AutoRepaintOnSceneChange: 1
|
|
||||||
m_MinSize: {x: 200, y: 200}
|
|
||||||
m_MaxSize: {x: 4000, y: 4000}
|
|
||||||
m_TitleContent:
|
|
||||||
m_Text: Game
|
|
||||||
m_Image: {fileID: -2087823869225018852, guid: 0000000000000000d000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_Tooltip:
|
|
||||||
m_DepthBufferBits: 32
|
|
||||||
m_Pos:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 19
|
|
||||||
width: 971
|
|
||||||
height: 421
|
|
||||||
m_MaximizeOnPlay: 0
|
|
||||||
m_Gizmos: 0
|
|
||||||
m_Stats: 0
|
|
||||||
m_SelectedSizes: 00000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
m_TargetDisplay: 0
|
|
||||||
m_ZoomArea:
|
|
||||||
m_HRangeLocked: 0
|
|
||||||
m_VRangeLocked: 0
|
|
||||||
m_HBaseRangeMin: -242.75
|
|
||||||
m_HBaseRangeMax: 242.75
|
|
||||||
m_VBaseRangeMin: -101
|
|
||||||
m_VBaseRangeMax: 101
|
|
||||||
m_HAllowExceedBaseRangeMin: 1
|
|
||||||
m_HAllowExceedBaseRangeMax: 1
|
|
||||||
m_VAllowExceedBaseRangeMin: 1
|
|
||||||
m_VAllowExceedBaseRangeMax: 1
|
|
||||||
m_ScaleWithWindow: 0
|
|
||||||
m_HSlider: 0
|
|
||||||
m_VSlider: 0
|
|
||||||
m_IgnoreScrollWheelUntilClicked: 0
|
|
||||||
m_EnableMouseInput: 1
|
|
||||||
m_EnableSliderZoom: 0
|
|
||||||
m_UniformScale: 1
|
|
||||||
m_UpDirection: 1
|
|
||||||
m_DrawArea:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 17
|
|
||||||
width: 971
|
|
||||||
height: 404
|
|
||||||
m_Scale: {x: 2, y: 2}
|
|
||||||
m_Translation: {x: 485.5, y: 202}
|
|
||||||
m_MarginLeft: 0
|
|
||||||
m_MarginRight: 0
|
|
||||||
m_MarginTop: 0
|
|
||||||
m_MarginBottom: 0
|
|
||||||
m_LastShownAreaInsideMargins:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: -242.75
|
|
||||||
y: -101
|
|
||||||
width: 485.5
|
|
||||||
height: 202
|
|
||||||
m_MinimalGUI: 1
|
|
||||||
m_defaultScale: 2
|
|
||||||
m_TargetTexture: {fileID: 0}
|
|
||||||
m_CurrentColorSpace: 0
|
|
||||||
m_LastWindowPixelSize: {x: 1942, y: 842}
|
|
||||||
m_ClearInEditMode: 1
|
|
||||||
m_NoCameraWarning: 1
|
|
||||||
m_LowResolutionForAspectRatios: 01000000000100000100
|
|
||||||
--- !u!114 &16
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12013, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_AutoRepaintOnSceneChange: 1
|
|
||||||
m_MinSize: {x: 200, y: 200}
|
|
||||||
m_MaxSize: {x: 4000, y: 4000}
|
|
||||||
m_TitleContent:
|
|
||||||
m_Text: Scene
|
|
||||||
m_Image: {fileID: 2318424515335265636, guid: 0000000000000000d000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_Tooltip:
|
|
||||||
m_DepthBufferBits: 32
|
|
||||||
m_Pos:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 19
|
|
||||||
width: 971
|
|
||||||
height: 445
|
|
||||||
m_SceneLighting: 1
|
|
||||||
lastFramingTime: 0
|
|
||||||
m_2DMode: 0
|
|
||||||
m_isRotationLocked: 0
|
|
||||||
m_AudioPlay: 0
|
|
||||||
m_Position:
|
|
||||||
m_Target: {x: 0, y: 0, z: 0}
|
|
||||||
speed: 2
|
|
||||||
m_Value: {x: 0, y: 0, z: 0}
|
|
||||||
m_RenderMode: 0
|
|
||||||
m_ValidateTrueMetals: 0
|
|
||||||
m_SceneViewState:
|
|
||||||
showFog: 1
|
|
||||||
showMaterialUpdate: 0
|
|
||||||
showSkybox: 1
|
|
||||||
showFlares: 1
|
|
||||||
showImageEffects: 1
|
|
||||||
grid:
|
|
||||||
xGrid:
|
|
||||||
m_Target: 0
|
|
||||||
speed: 2
|
|
||||||
m_Value: 0
|
|
||||||
yGrid:
|
|
||||||
m_Target: 1
|
|
||||||
speed: 2
|
|
||||||
m_Value: 1
|
|
||||||
zGrid:
|
|
||||||
m_Target: 0
|
|
||||||
speed: 2
|
|
||||||
m_Value: 0
|
|
||||||
m_Rotation:
|
|
||||||
m_Target: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226}
|
|
||||||
speed: 2
|
|
||||||
m_Value: {x: -0.08717229, y: 0.89959055, z: -0.21045254, w: -0.3726226}
|
|
||||||
m_Size:
|
|
||||||
m_Target: 10
|
|
||||||
speed: 2
|
|
||||||
m_Value: 10
|
|
||||||
m_Ortho:
|
|
||||||
m_Target: 0
|
|
||||||
speed: 2
|
|
||||||
m_Value: 0
|
|
||||||
m_LastSceneViewRotation: {x: 0, y: 0, z: 0, w: 0}
|
|
||||||
m_LastSceneViewOrtho: 0
|
|
||||||
m_ReplacementShader: {fileID: 0}
|
|
||||||
m_ReplacementString:
|
|
||||||
m_LastLockedObject: {fileID: 0}
|
|
||||||
m_ViewIsLockedToObject: 0
|
|
||||||
--- !u!114 &17
|
|
||||||
MonoBehaviour:
|
|
||||||
m_ObjectHideFlags: 52
|
|
||||||
m_PrefabParentObject: {fileID: 0}
|
|
||||||
m_PrefabInternal: {fileID: 0}
|
|
||||||
m_GameObject: {fileID: 0}
|
|
||||||
m_Enabled: 1
|
|
||||||
m_EditorHideFlags: 1
|
|
||||||
m_Script: {fileID: 12061, guid: 0000000000000000e000000000000000, type: 0}
|
|
||||||
m_Name:
|
|
||||||
m_EditorClassIdentifier:
|
|
||||||
m_AutoRepaintOnSceneChange: 0
|
|
||||||
m_MinSize: {x: 200, y: 200}
|
|
||||||
m_MaxSize: {x: 4000, y: 4000}
|
|
||||||
m_TitleContent:
|
|
||||||
m_Text: Hierarchy
|
|
||||||
m_Image: {fileID: -590624980919486359, guid: 0000000000000000d000000000000000,
|
|
||||||
type: 0}
|
|
||||||
m_Tooltip:
|
|
||||||
m_DepthBufferBits: 0
|
|
||||||
m_Pos:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 2
|
|
||||||
y: 19
|
|
||||||
width: 286
|
|
||||||
height: 445
|
|
||||||
m_TreeViewState:
|
|
||||||
scrollPos: {x: 0, y: 0}
|
|
||||||
m_SelectedIDs: 68fbffff
|
|
||||||
m_LastClickedID: -1176
|
|
||||||
m_ExpandedIDs: 7efbffff00000000
|
|
||||||
m_RenameOverlay:
|
|
||||||
m_UserAcceptedRename: 0
|
|
||||||
m_Name:
|
|
||||||
m_OriginalName:
|
|
||||||
m_EditFieldRect:
|
|
||||||
serializedVersion: 2
|
|
||||||
x: 0
|
|
||||||
y: 0
|
|
||||||
width: 0
|
|
||||||
height: 0
|
|
||||||
m_UserData: 0
|
|
||||||
m_IsWaitingForDelay: 0
|
|
||||||
m_IsRenaming: 0
|
|
||||||
m_OriginalEventType: 11
|
|
||||||
m_IsRenamingFilename: 0
|
|
||||||
m_ClientGUIView: {fileID: 0}
|
|
||||||
m_SearchString:
|
|
||||||
m_ExpandedScenes:
|
|
||||||
-
|
|
||||||
m_CurrenRootInstanceID: 0
|
|
||||||
m_Locked: 0
|
|
||||||
m_CurrentSortingName: TransformSorting
|
|
|
@ -1,8 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: eabc9546105bf4accac1fd62a63e88e6
|
|
||||||
timeCreated: 1487337779
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,9 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: 3ad9b87dffba344c89909c6d1b1c17e1
|
|
||||||
folderAsset: yes
|
|
||||||
timeCreated: 1475593892
|
|
||||||
licenseType: Store
|
|
||||||
DefaultImporter:
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,242 +0,0 @@
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using UnityEngine;
|
|
||||||
using UnityEditor;
|
|
||||||
using System;
|
|
||||||
using System.IO;
|
|
||||||
using System.Reflection;
|
|
||||||
|
|
||||||
[CustomEditor(typeof(Readme))]
|
|
||||||
[InitializeOnLoad]
|
|
||||||
public class ReadmeEditor : Editor
|
|
||||||
{
|
|
||||||
static string s_ShowedReadmeSessionStateName = "ReadmeEditor.showedReadme";
|
|
||||||
|
|
||||||
static string s_ReadmeSourceDirectory = "Assets/TutorialInfo";
|
|
||||||
|
|
||||||
const float k_Space = 16f;
|
|
||||||
|
|
||||||
static ReadmeEditor()
|
|
||||||
{
|
|
||||||
EditorApplication.delayCall += SelectReadmeAutomatically;
|
|
||||||
}
|
|
||||||
|
|
||||||
static void RemoveTutorial()
|
|
||||||
{
|
|
||||||
if (EditorUtility.DisplayDialog("Remove Readme Assets",
|
|
||||||
|
|
||||||
$"All contents under {s_ReadmeSourceDirectory} will be removed, are you sure you want to proceed?",
|
|
||||||
"Proceed",
|
|
||||||
"Cancel"))
|
|
||||||
{
|
|
||||||
if (Directory.Exists(s_ReadmeSourceDirectory))
|
|
||||||
{
|
|
||||||
FileUtil.DeleteFileOrDirectory(s_ReadmeSourceDirectory);
|
|
||||||
FileUtil.DeleteFileOrDirectory(s_ReadmeSourceDirectory + ".meta");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Debug.Log($"Could not find the Readme folder at {s_ReadmeSourceDirectory}");
|
|
||||||
}
|
|
||||||
|
|
||||||
var readmeAsset = SelectReadme();
|
|
||||||
if (readmeAsset != null)
|
|
||||||
{
|
|
||||||
var path = AssetDatabase.GetAssetPath(readmeAsset);
|
|
||||||
FileUtil.DeleteFileOrDirectory(path + ".meta");
|
|
||||||
FileUtil.DeleteFileOrDirectory(path);
|
|
||||||
}
|
|
||||||
|
|
||||||
AssetDatabase.Refresh();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void SelectReadmeAutomatically()
|
|
||||||
{
|
|
||||||
if (!SessionState.GetBool(s_ShowedReadmeSessionStateName, false))
|
|
||||||
{
|
|
||||||
var readme = SelectReadme();
|
|
||||||
SessionState.SetBool(s_ShowedReadmeSessionStateName, true);
|
|
||||||
|
|
||||||
if (readme && !readme.loadedLayout)
|
|
||||||
{
|
|
||||||
LoadLayout();
|
|
||||||
readme.loadedLayout = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void LoadLayout()
|
|
||||||
{
|
|
||||||
var assembly = typeof(EditorApplication).Assembly;
|
|
||||||
var windowLayoutType = assembly.GetType("UnityEditor.WindowLayout", true);
|
|
||||||
var method = windowLayoutType.GetMethod("LoadWindowLayout", BindingFlags.Public | BindingFlags.Static);
|
|
||||||
method.Invoke(null, new object[] { Path.Combine(Application.dataPath, "TutorialInfo/Layout.wlt"), false });
|
|
||||||
}
|
|
||||||
|
|
||||||
static Readme SelectReadme()
|
|
||||||
{
|
|
||||||
var ids = AssetDatabase.FindAssets("Readme t:Readme");
|
|
||||||
if (ids.Length == 1)
|
|
||||||
{
|
|
||||||
var readmeObject = AssetDatabase.LoadMainAssetAtPath(AssetDatabase.GUIDToAssetPath(ids[0]));
|
|
||||||
|
|
||||||
Selection.objects = new UnityEngine.Object[] { readmeObject };
|
|
||||||
|
|
||||||
return (Readme)readmeObject;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Debug.Log("Couldn't find a readme");
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
protected override void OnHeaderGUI()
|
|
||||||
{
|
|
||||||
var readme = (Readme)target;
|
|
||||||
Init();
|
|
||||||
|
|
||||||
var iconWidth = Mathf.Min(EditorGUIUtility.currentViewWidth / 3f - 20f, 128f);
|
|
||||||
|
|
||||||
GUILayout.BeginHorizontal("In BigTitle");
|
|
||||||
{
|
|
||||||
if (readme.icon != null)
|
|
||||||
{
|
|
||||||
GUILayout.Space(k_Space);
|
|
||||||
GUILayout.Label(readme.icon, GUILayout.Width(iconWidth), GUILayout.Height(iconWidth));
|
|
||||||
}
|
|
||||||
GUILayout.Space(k_Space);
|
|
||||||
GUILayout.BeginVertical();
|
|
||||||
{
|
|
||||||
|
|
||||||
GUILayout.FlexibleSpace();
|
|
||||||
GUILayout.Label(readme.title, TitleStyle);
|
|
||||||
GUILayout.FlexibleSpace();
|
|
||||||
}
|
|
||||||
GUILayout.EndVertical();
|
|
||||||
GUILayout.FlexibleSpace();
|
|
||||||
}
|
|
||||||
GUILayout.EndHorizontal();
|
|
||||||
}
|
|
||||||
|
|
||||||
public override void OnInspectorGUI()
|
|
||||||
{
|
|
||||||
var readme = (Readme)target;
|
|
||||||
Init();
|
|
||||||
|
|
||||||
foreach (var section in readme.sections)
|
|
||||||
{
|
|
||||||
if (!string.IsNullOrEmpty(section.heading))
|
|
||||||
{
|
|
||||||
GUILayout.Label(section.heading, HeadingStyle);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(section.text))
|
|
||||||
{
|
|
||||||
GUILayout.Label(section.text, BodyStyle);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!string.IsNullOrEmpty(section.linkText))
|
|
||||||
{
|
|
||||||
if (LinkLabel(new GUIContent(section.linkText)))
|
|
||||||
{
|
|
||||||
Application.OpenURL(section.url);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
GUILayout.Space(k_Space);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (GUILayout.Button("Remove Readme Assets", ButtonStyle))
|
|
||||||
{
|
|
||||||
RemoveTutorial();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool m_Initialized;
|
|
||||||
|
|
||||||
GUIStyle LinkStyle
|
|
||||||
{
|
|
||||||
get { return m_LinkStyle; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[SerializeField]
|
|
||||||
GUIStyle m_LinkStyle;
|
|
||||||
|
|
||||||
GUIStyle TitleStyle
|
|
||||||
{
|
|
||||||
get { return m_TitleStyle; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[SerializeField]
|
|
||||||
GUIStyle m_TitleStyle;
|
|
||||||
|
|
||||||
GUIStyle HeadingStyle
|
|
||||||
{
|
|
||||||
get { return m_HeadingStyle; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[SerializeField]
|
|
||||||
GUIStyle m_HeadingStyle;
|
|
||||||
|
|
||||||
GUIStyle BodyStyle
|
|
||||||
{
|
|
||||||
get { return m_BodyStyle; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[SerializeField]
|
|
||||||
GUIStyle m_BodyStyle;
|
|
||||||
|
|
||||||
GUIStyle ButtonStyle
|
|
||||||
{
|
|
||||||
get { return m_ButtonStyle; }
|
|
||||||
}
|
|
||||||
|
|
||||||
[SerializeField]
|
|
||||||
GUIStyle m_ButtonStyle;
|
|
||||||
|
|
||||||
void Init()
|
|
||||||
{
|
|
||||||
if (m_Initialized)
|
|
||||||
return;
|
|
||||||
m_BodyStyle = new GUIStyle(EditorStyles.label);
|
|
||||||
m_BodyStyle.wordWrap = true;
|
|
||||||
m_BodyStyle.fontSize = 14;
|
|
||||||
m_BodyStyle.richText = true;
|
|
||||||
|
|
||||||
m_TitleStyle = new GUIStyle(m_BodyStyle);
|
|
||||||
m_TitleStyle.fontSize = 26;
|
|
||||||
|
|
||||||
m_HeadingStyle = new GUIStyle(m_BodyStyle);
|
|
||||||
m_HeadingStyle.fontStyle = FontStyle.Bold;
|
|
||||||
m_HeadingStyle.fontSize = 18;
|
|
||||||
|
|
||||||
m_LinkStyle = new GUIStyle(m_BodyStyle);
|
|
||||||
m_LinkStyle.wordWrap = false;
|
|
||||||
|
|
||||||
// Match selection color which works nicely for both light and dark skins
|
|
||||||
m_LinkStyle.normal.textColor = new Color(0x00 / 255f, 0x78 / 255f, 0xDA / 255f, 1f);
|
|
||||||
m_LinkStyle.stretchWidth = false;
|
|
||||||
|
|
||||||
m_ButtonStyle = new GUIStyle(EditorStyles.miniButton);
|
|
||||||
m_ButtonStyle.fontStyle = FontStyle.Bold;
|
|
||||||
|
|
||||||
m_Initialized = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
bool LinkLabel(GUIContent label, params GUILayoutOption[] options)
|
|
||||||
{
|
|
||||||
var position = GUILayoutUtility.GetRect(label, LinkStyle, options);
|
|
||||||
|
|
||||||
Handles.BeginGUI();
|
|
||||||
Handles.color = LinkStyle.normal.textColor;
|
|
||||||
Handles.DrawLine(new Vector3(position.xMin, position.yMax), new Vector3(position.xMax, position.yMax));
|
|
||||||
Handles.color = Color.white;
|
|
||||||
Handles.EndGUI();
|
|
||||||
|
|
||||||
EditorGUIUtility.AddCursorRect(position, MouseCursor.Link);
|
|
||||||
|
|
||||||
return GUI.Button(position, label, LinkStyle);
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: 476cc7d7cd9874016adc216baab94a0a
|
|
||||||
timeCreated: 1484146680
|
|
||||||
licenseType: Store
|
|
||||||
MonoImporter:
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences: []
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {instanceID: 0}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -1,16 +0,0 @@
|
||||||
using System;
|
|
||||||
using UnityEngine;
|
|
||||||
|
|
||||||
public class Readme : ScriptableObject
|
|
||||||
{
|
|
||||||
public Texture2D icon;
|
|
||||||
public string title;
|
|
||||||
public Section[] sections;
|
|
||||||
public bool loadedLayout;
|
|
||||||
|
|
||||||
[Serializable]
|
|
||||||
public class Section
|
|
||||||
{
|
|
||||||
public string heading, text, linkText, url;
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,12 +0,0 @@
|
||||||
fileFormatVersion: 2
|
|
||||||
guid: fcf7219bab7fe46a1ad266029b2fee19
|
|
||||||
MonoImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
serializedVersion: 2
|
|
||||||
defaultReferences:
|
|
||||||
- icon: {instanceID: 0}
|
|
||||||
executionOrder: 0
|
|
||||||
icon: {fileID: 2800000, guid: a186f8a87ca4f4d3aa864638ad5dfb65, type: 3}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
|
@ -10,7 +10,7 @@
|
||||||
<ui:VisualElement name="indicator-five" class="indicator" />
|
<ui:VisualElement name="indicator-five" class="indicator" />
|
||||||
<ui:VisualElement name="indicator-six" class="indicator" />
|
<ui:VisualElement name="indicator-six" class="indicator" />
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
<ui:ScrollView vertical-scroller-visibility="Hidden" name="item-list" style="flex-grow: 1;" />
|
<KitsuneCafe.UI.RecyclerView display-count="5" style="flex-grow: 1; flex-direction: row-reverse;" />
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
<ui:VisualElement name="detail-container" class="spaced-children" style="flex-grow: 1.5; flex-direction: row;">
|
<ui:VisualElement name="detail-container" class="spaced-children" style="flex-grow: 1.5; flex-direction: row;">
|
||||||
<ui:VisualElement name="condition-container" class="container" style="flex-grow: 0.65; flex-basis: 0;">
|
<ui:VisualElement name="condition-container" class="container" style="flex-grow: 0.65; flex-basis: 0;">
|
||||||
|
@ -55,20 +55,20 @@
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
<ui:VisualElement name="item-preview-container" class="container" style="flex-grow: 1.25; flex-basis: 0;">
|
<ui:VisualElement name="item-preview-container" class="container" style="flex-grow: 1.25; flex-basis: 0;">
|
||||||
<ui:VisualElement name="preview-header" class="header" />
|
<ui:VisualElement name="preview-header" class="header" />
|
||||||
<ui:VisualElement name="item-preview" style="flex-grow: 1; background-image: url("project://database/Assets/UI/Item%20Preview.renderTexture?fileID=8400000&guid=fc19a022409ab0d408fa0e78cfeab827&type=2#Item Preview"); -unity-background-scale-mode: scale-to-fit;" />
|
<KitsuneCafe.UI.PreviewView style="background-image: url("project://database/Assets/UI/Item%20Preview.renderTexture?fileID=8400000&guid=fc19a022409ab0d408fa0e78cfeab827&type=2#Item Preview"); -unity-background-scale-mode: scale-to-fit; flex-grow: 1;" />
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
<ui:VisualElement name="item-details-container" data-source="project://database/Assets/SOAP/Items/SelectedItem.asset?fileID=11400000&guid=0f16091ed7577d3268f2725cf823d4da&type=2#SelectedItem" class="container" style="flex-grow: 1; flex-basis: 0;">
|
<ui:VisualElement name="item-details-container" data-source="project://database/Assets/SOAP/Items/SelectedItem.asset?fileID=11400000&guid=37d00232a0bee1e8e923705187ff2187&type=2#SelectedItem" class="container" style="flex-grow: 1; flex-basis: 0;">
|
||||||
<ui:VisualElement name="item-details-header" class="header" />
|
<ui:VisualElement name="item-details-header" class="header" />
|
||||||
<ui:VisualElement name="item-details-content" style="flex-grow: 0;">
|
<ui:VisualElement name="item-details-content" style="flex-grow: 0;">
|
||||||
<ui:VisualElement name="item-details-title-container" style="flex-wrap: nowrap; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px;">
|
<ui:VisualElement name="item-details-title-container" style="flex-wrap: nowrap; padding-top: 4px; padding-right: 4px; padding-bottom: 4px; padding-left: 4px;">
|
||||||
<ui:Label text="ITEM NAME" name="item-details-title-label">
|
<ui:Label text="ITEM NAME" name="item-details-title-label" class="title">
|
||||||
<Bindings>
|
<Bindings>
|
||||||
<ui:DataBinding property="text" data-source-path="displayName" binding-mode="ToTarget" />
|
<ui:DataBinding property="text" data-source-path="value.value.displayName" binding-mode="ToTarget" />
|
||||||
</Bindings>
|
</Bindings>
|
||||||
</ui:Label>
|
</ui:Label>
|
||||||
<ui:Label text="Item description body." name="item-details-content-label" style="flex-wrap: nowrap; white-space: pre-wrap; text-overflow: ellipsis;">
|
<ui:Label text="Item description body." name="item-details-content-label" style="flex-wrap: nowrap; white-space: pre-wrap; text-overflow: ellipsis;">
|
||||||
<Bindings>
|
<Bindings>
|
||||||
<ui:DataBinding property="text" data-source-path="description" binding-mode="ToTarget" />
|
<ui:DataBinding property="text" data-source-path="value.value.description" binding-mode="ToTarget" />
|
||||||
</Bindings>
|
</Bindings>
|
||||||
</ui:Label>
|
</ui:Label>
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
|
|
|
@ -3,9 +3,9 @@
|
||||||
<Style src="project://database/Assets/UI/itemslot.uss?fileID=7433441132597879392&guid=ab2fe9f4942517d359babfd8c160725c&type=3#itemslot" />
|
<Style src="project://database/Assets/UI/itemslot.uss?fileID=7433441132597879392&guid=ab2fe9f4942517d359babfd8c160725c&type=3#itemslot" />
|
||||||
<ui:VisualElement name="container" data-source-type="KitsuneCafe.ItemSystem.InventoryItem, Assembly-CSharp" enabled="true" class="container" style="flex-grow: 1;">
|
<ui:VisualElement name="container" data-source-type="KitsuneCafe.ItemSystem.InventoryItem, Assembly-CSharp" enabled="true" class="container" style="flex-grow: 1;">
|
||||||
<ui:VisualElement name="header" class="header">
|
<ui:VisualElement name="header" class="header">
|
||||||
<ui:Label name="item-name-label" text="Label">
|
<ui:Label name="item-name-label">
|
||||||
<Bindings>
|
<Bindings>
|
||||||
<ui:DataBinding property="text" data-source-path="serializableItems[0].Item.displayName" binding-mode="ToTarget" data-source-type="KitsuneCafe.ItemSystem.Inventory, Assembly-CSharp" />
|
<ui:DataBinding property="text" data-source-path="Item.displayName" binding-mode="ToTarget" />
|
||||||
</Bindings>
|
</Bindings>
|
||||||
</ui:Label>
|
</ui:Label>
|
||||||
</ui:VisualElement>
|
</ui:VisualElement>
|
||||||
|
|
|
@ -71,3 +71,12 @@
|
||||||
color: var(--text);
|
color: var(--text);
|
||||||
--primary: rgb(238, 66, 10);
|
--primary: rgb(238, 66, 10);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TemplateContainer {
|
||||||
|
flex-grow: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
color: var(--primary);
|
||||||
|
text-transform: small-caps;
|
||||||
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
{
|
{
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"com.cysharp.r3": "https://github.com/Cysharp/R3.git?path=src/R3.Unity/Assets/R3.Unity",
|
"com.cysharp.r3": "https://github.com/Cysharp/R3.git?path=src/R3.Unity/Assets/R3.Unity",
|
||||||
|
"com.eflatun.scenereference": "git+https://github.com/starikcetin/Eflatun.SceneReference.git#4.1.1",
|
||||||
"com.github-glitchenzo.nugetforunity": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity",
|
"com.github-glitchenzo.nugetforunity": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity",
|
||||||
"com.kelnishi.wacs": "https://github.com/kelnishi/WACS-Unity.git",
|
"com.kelnishi.wacs": "https://github.com/kelnishi/WACS-Unity.git",
|
||||||
"com.unity.2d.sprite": "1.0.0",
|
"com.unity.2d.sprite": "1.0.0",
|
||||||
|
@ -8,15 +9,16 @@
|
||||||
"com.unity.ai.navigation": "2.0.8",
|
"com.unity.ai.navigation": "2.0.8",
|
||||||
"com.unity.cinemachine": "3.1.4",
|
"com.unity.cinemachine": "3.1.4",
|
||||||
"com.unity.collab-proxy": "2.8.2",
|
"com.unity.collab-proxy": "2.8.2",
|
||||||
|
"com.unity.dt.app-ui": "2.1.1",
|
||||||
"com.unity.entities": "1.3.14",
|
"com.unity.entities": "1.3.14",
|
||||||
"com.unity.entities.graphics": "1.4.12",
|
"com.unity.entities.graphics": "1.4.12",
|
||||||
"com.unity.ide.rider": "3.0.36",
|
"com.unity.ide.rider": "3.0.36",
|
||||||
"com.unity.ide.visualstudio": "2.0.23",
|
"com.unity.ide.visualstudio": "2.0.23",
|
||||||
"com.unity.inputsystem": "1.14.1",
|
"com.unity.inputsystem": "1.14.2",
|
||||||
"com.unity.multiplayer.center": "1.0.0",
|
"com.unity.multiplayer.center": "1.0.0",
|
||||||
"com.unity.render-pipelines.universal": "17.1.0",
|
"com.unity.render-pipelines.universal": "17.1.0",
|
||||||
"com.unity.test-framework": "1.5.1",
|
"com.unity.test-framework": "1.5.1",
|
||||||
"com.unity.timeline": "1.8.8",
|
"com.unity.timeline": "1.8.9",
|
||||||
"com.unity.toolchain.linux-x86_64": "2.0.10",
|
"com.unity.toolchain.linux-x86_64": "2.0.10",
|
||||||
"com.unity.ugui": "2.0.0",
|
"com.unity.ugui": "2.0.0",
|
||||||
"com.unity.modules.accessibility": "1.0.0",
|
"com.unity.modules.accessibility": "1.0.0",
|
||||||
|
|
|
@ -9,6 +9,16 @@
|
||||||
},
|
},
|
||||||
"hash": "fbc12b2c0b6a1ee5ce7d534f9db936bc59069219"
|
"hash": "fbc12b2c0b6a1ee5ce7d534f9db936bc59069219"
|
||||||
},
|
},
|
||||||
|
"com.eflatun.scenereference": {
|
||||||
|
"version": "git+https://github.com/starikcetin/Eflatun.SceneReference.git#4.1.1",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "git",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.settings-manager": "2.0.1",
|
||||||
|
"com.unity.nuget.newtonsoft-json": "3.0.2"
|
||||||
|
},
|
||||||
|
"hash": "b849990020c30ac6ead4e4fb4881428f86dcde0d"
|
||||||
|
},
|
||||||
"com.github-glitchenzo.nugetforunity": {
|
"com.github-glitchenzo.nugetforunity": {
|
||||||
"version": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity",
|
"version": "https://github.com/GlitchEnzo/NuGetForUnity.git?path=/src/NuGetForUnity",
|
||||||
"depth": 0,
|
"depth": 0,
|
||||||
|
@ -94,6 +104,18 @@
|
||||||
},
|
},
|
||||||
"url": "https://packages.unity.com"
|
"url": "https://packages.unity.com"
|
||||||
},
|
},
|
||||||
|
"com.unity.dt.app-ui": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"depth": 0,
|
||||||
|
"source": "registry",
|
||||||
|
"dependencies": {
|
||||||
|
"com.unity.modules.physics": "1.0.0",
|
||||||
|
"com.unity.modules.androidjni": "1.0.0",
|
||||||
|
"com.unity.modules.uielements": "1.0.0",
|
||||||
|
"com.unity.modules.screencapture": "1.0.0"
|
||||||
|
},
|
||||||
|
"url": "https://packages.unity.com"
|
||||||
|
},
|
||||||
"com.unity.entities": {
|
"com.unity.entities": {
|
||||||
"version": "1.3.14",
|
"version": "1.3.14",
|
||||||
"depth": 0,
|
"depth": 0,
|
||||||
|
@ -152,7 +174,7 @@
|
||||||
"url": "https://packages.unity.com"
|
"url": "https://packages.unity.com"
|
||||||
},
|
},
|
||||||
"com.unity.inputsystem": {
|
"com.unity.inputsystem": {
|
||||||
"version": "1.14.1",
|
"version": "1.14.2",
|
||||||
"depth": 0,
|
"depth": 0,
|
||||||
"source": "registry",
|
"source": "registry",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -182,6 +204,13 @@
|
||||||
"dependencies": {},
|
"dependencies": {},
|
||||||
"url": "https://packages.unity.com"
|
"url": "https://packages.unity.com"
|
||||||
},
|
},
|
||||||
|
"com.unity.nuget.newtonsoft-json": {
|
||||||
|
"version": "3.2.1",
|
||||||
|
"depth": 1,
|
||||||
|
"source": "registry",
|
||||||
|
"dependencies": {},
|
||||||
|
"url": "https://packages.unity.com"
|
||||||
|
},
|
||||||
"com.unity.profiling.core": {
|
"com.unity.profiling.core": {
|
||||||
"version": "1.0.2",
|
"version": "1.0.2",
|
||||||
"depth": 1,
|
"depth": 1,
|
||||||
|
@ -261,7 +290,7 @@
|
||||||
},
|
},
|
||||||
"com.unity.settings-manager": {
|
"com.unity.settings-manager": {
|
||||||
"version": "2.1.0",
|
"version": "2.1.0",
|
||||||
"depth": 2,
|
"depth": 1,
|
||||||
"source": "registry",
|
"source": "registry",
|
||||||
"dependencies": {},
|
"dependencies": {},
|
||||||
"url": "https://packages.unity.com"
|
"url": "https://packages.unity.com"
|
||||||
|
@ -323,7 +352,7 @@
|
||||||
"url": "https://packages.unity.com"
|
"url": "https://packages.unity.com"
|
||||||
},
|
},
|
||||||
"com.unity.timeline": {
|
"com.unity.timeline": {
|
||||||
"version": "1.8.8",
|
"version": "1.8.9",
|
||||||
"depth": 0,
|
"depth": 0,
|
||||||
"source": "registry",
|
"source": "registry",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
|
|
@ -6,9 +6,13 @@ EditorBuildSettings:
|
||||||
serializedVersion: 2
|
serializedVersion: 2
|
||||||
m_Scenes:
|
m_Scenes:
|
||||||
- enabled: 1
|
- enabled: 1
|
||||||
path: Assets/Scenes/SampleScene.unity
|
path: Assets/Scenes/DebugScene.unity
|
||||||
guid: 99c9720ab356a0642a771bea13969a05
|
guid: 99c9720ab356a0642a771bea13969a05
|
||||||
|
- enabled: 1
|
||||||
|
path: Assets/Scenes/DebugScene/ItemPreview.unity
|
||||||
|
guid: 4a31ffa7a4feefc509c20ec6e65133f0
|
||||||
m_configObjects:
|
m_configObjects:
|
||||||
com.unity.addressableassets: {fileID: 11400000, guid: 6b84437f9ebfc5f99b364cc4093ae72f, type: 2}
|
com.unity.addressableassets: {fileID: 11400000, guid: 6b84437f9ebfc5f99b364cc4093ae72f, type: 2}
|
||||||
|
com.unity.dt.app-ui: {fileID: 11400000, guid: a31f4400692fc454290231da49768b56, type: 2}
|
||||||
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
|
com.unity.input.settings.actions: {fileID: -944628639613478452, guid: 052faaac586de48259a63d0c4782560b, type: 3}
|
||||||
m_UseUCBPForAssetBundles: 0
|
m_UseUCBPForAssetBundles: 0
|
||||||
|
|
|
@ -0,0 +1,41 @@
|
||||||
|
{
|
||||||
|
"m_Dictionary": {
|
||||||
|
"m_DictionaryValues": [
|
||||||
|
{
|
||||||
|
"type": "Eflatun.SceneReference.Editor.SceneDataMapsGeneratorTriggers, Eflatun.SceneReference.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
|
||||||
|
"key": "SceneDataMaps.GenerationTriggers",
|
||||||
|
"value": "{\"m_Value\":-1}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "Eflatun.SceneReference.LogLevel, Eflatun.SceneReference, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
|
||||||
|
"key": "Logging.EditorLogLevel",
|
||||||
|
"value": "{\"m_Value\":20}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "Newtonsoft.Json.Formatting, Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed",
|
||||||
|
"key": "SceneDataMaps.JsonFormatting",
|
||||||
|
"value": "{\"m_Value\":0}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
|
||||||
|
"key": "UtilityIgnores.ColoringIgnoresPatterns",
|
||||||
|
"value": "{\"m_Value\":\"\"}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
|
||||||
|
"key": "UtilityIgnores.ToolboxIgnoresPatterns",
|
||||||
|
"value": "{\"m_Value\":\"\"}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "Eflatun.SceneReference.Editor.UtilityIgnoreMode, Eflatun.SceneReference.Editor, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null",
|
||||||
|
"key": "UtilityIgnores.ToolboxIgnoreMode",
|
||||||
|
"value": "{\"m_Value\":0}"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089",
|
||||||
|
"key": "PropertyDrawer.ShowInlineToolbox",
|
||||||
|
"value": "{\"m_Value\":true}"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue