Merge remote-tracking branch 'origin/develop' into feature/cook_system
This commit is contained in:
commit
752d9b7f2d
28
.gitattributes
vendored
28
.gitattributes
vendored
@ -10,20 +10,20 @@
|
||||
*.uss text
|
||||
# --- Unity YAML 형식 에셋 (텍스트 기반) ---
|
||||
# 병합 품질 향상을 위해 Unity Smart Merge 드라이버 사용
|
||||
*.meta text merge=unityyamlmerge eol=lf
|
||||
*.unity text merge=unityyamlmerge eol=lf
|
||||
*.prefab text merge=unityyamlmerge eol=lf
|
||||
*.asset filter=lfs diff=lfs merge=lfs -text
|
||||
*.mat text merge=unityyamlmerge eol=lf
|
||||
*.anim text merge=unityyamlmerge eol=lf
|
||||
*.controller text merge=unityyamlmerge eol=lf
|
||||
*.overrideController text merge=unityyamlmerge eol=lf
|
||||
*.mask text merge=unityyamlmerge eol=lf
|
||||
*.lighting text merge=unityyamlmerge eol=lf
|
||||
*.renderTexture text merge=unityyamlmerge eol=lf
|
||||
*.timeline text merge=unityyamlmerge eol=lf
|
||||
*.playable text merge=unityyamlmerge eol=lf
|
||||
*.spriteatlasv2 text merge=unityyamlmerge eol=lf
|
||||
*.meta text merge=unityyamlmerge eol=lf -diff
|
||||
*.unity text merge=unityyamlmerge eol=lf -diff
|
||||
*.prefab text merge=unityyamlmerge eol=lf -diff
|
||||
*.asset filter=lfs diff=lfs merge=lfs -text -diff
|
||||
*.mat text merge=unityyamlmerge eol=lf -diff
|
||||
*.anim text merge=unityyamlmerge eol=lf -diff
|
||||
*.controller text merge=unityyamlmerge eol=lf -diff
|
||||
*.overrideController text merge=unityyamlmerge eol=lf -diff
|
||||
*.mask text merge=unityyamlmerge eol=lf -diff
|
||||
*.lighting text merge=unityyamlmerge eol=lf -diff
|
||||
*.renderTexture text merge=unityyamlmerge eol=lf -diff
|
||||
*.timeline text merge=unityyamlmerge eol=lf -diff
|
||||
*.playable text merge=unityyamlmerge eol=lf -diff
|
||||
*.spriteatlasv2 text merge=unityyamlmerge eol=lf -diff
|
||||
# 참고: 각자 로컬 Git에 merge.unityyamlmerge.driver를 등록해야 실제로 동작합니다.
|
||||
# --- Git LFS 관리 대상 바이너리 파일들 ---
|
||||
# 이미지
|
||||
|
BIN
Assets/_DDD/_Addressables/AI/Customer/Subtree/CustomerDefault.asset
(Stored with Git LFS)
BIN
Assets/_DDD/_Addressables/AI/Customer/Subtree/CustomerDefault.asset
(Stored with Git LFS)
Binary file not shown.
BIN
Assets/_DDD/_Addressables/AI/Customer/Subtree/OrderSubtree.asset
(Stored with Git LFS)
BIN
Assets/_DDD/_Addressables/AI/Customer/Subtree/OrderSubtree.asset
(Stored with Git LFS)
Binary file not shown.
@ -18,7 +18,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_UniqueID
|
||||
value: -154127738
|
||||
value: -363672009
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_TaskData.Array.size
|
||||
@ -30,7 +30,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.size
|
||||
value: 3
|
||||
value: 0
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_TaskData.Array.data[0].m_Version
|
||||
@ -74,8 +74,8 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.data[0].m_ObjectType
|
||||
value: 'Opsive.GraphDesigner.Runtime.Variables.SharedVariable`1[[System.String,
|
||||
mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]'
|
||||
value: 'Opsive.GraphDesigner.Runtime.Variables.SharedVariable`1[[UnityEngine.GameObject,
|
||||
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]'
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.data[1].m_ObjectType
|
||||
@ -426,11 +426,11 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.data[0].m_Values.Array.size
|
||||
value: 15
|
||||
value: 29
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.data[1].m_Values.Array.size
|
||||
value: 19
|
||||
value: 29
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: m_Data.m_SharedVariableData.Array.data[2].m_Values.Array.size
|
||||
@ -558,75 +558,75 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[2]'
|
||||
value: 115
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[3]'
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[4]'
|
||||
value: 111
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[5]'
|
||||
value: 109
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[6]'
|
||||
value: 101
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[7]'
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[3]'
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[4]'
|
||||
value: 101
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[5]'
|
||||
value: 110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[6]'
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[7]'
|
||||
value: 73
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[8]'
|
||||
value: 68
|
||||
value: 110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[9]'
|
||||
value: 97
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[0]'
|
||||
value: 83
|
||||
value: 67
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[1]'
|
||||
value: 101
|
||||
value: 117
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[2]'
|
||||
value: 108
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[3]'
|
||||
value: 102
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[4]'
|
||||
value: 71
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[5]'
|
||||
value: 97
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[6]'
|
||||
value: 109
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[7]'
|
||||
value: 101
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[5]'
|
||||
value: 110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[6]'
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[7]'
|
||||
value: 73
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[8]'
|
||||
value: 79
|
||||
value: 110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[9]'
|
||||
value: 98
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[2].m_Values.Array.data[0]'
|
||||
@ -742,23 +742,23 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[10]'
|
||||
value: 116
|
||||
value: 101
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[11]'
|
||||
value: 97
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[12]'
|
||||
value: 73
|
||||
value: 97
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[13]'
|
||||
value: 100
|
||||
value: 99
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[14]'
|
||||
value: 2
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_Values.Array.data[15]'
|
||||
@ -818,39 +818,39 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[10]'
|
||||
value: 106
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[11]'
|
||||
value: 101
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[11]'
|
||||
value: 114
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[12]'
|
||||
value: 99
|
||||
value: 97
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[13]'
|
||||
value: 116
|
||||
value: 99
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[14]'
|
||||
value: 2
|
||||
value: 116
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[15]'
|
||||
value: 255
|
||||
value: 105
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[16]'
|
||||
value: 255
|
||||
value: 111
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[17]'
|
||||
value: 255
|
||||
value: 110
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[18]'
|
||||
value: 255
|
||||
value: 84
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_Values.Array.data[19]'
|
||||
@ -1374,27 +1374,27 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_ValuePositions.Array.data[1]'
|
||||
value: 14
|
||||
value: 24
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_ValuePositions.Array.data[2]'
|
||||
value: 14
|
||||
value: 24
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_ValuePositions.Array.data[3]'
|
||||
value: 15
|
||||
value: 25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_ValuePositions.Array.data[1]'
|
||||
value: 14
|
||||
value: 24
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_ValuePositions.Array.data[2]'
|
||||
value: 14
|
||||
value: 24
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_ValuePositions.Array.data[3]'
|
||||
value: 15
|
||||
value: 25
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[2].m_ValuePositions.Array.data[1]'
|
||||
@ -1422,7 +1422,7 @@ PrefabInstance:
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[0].m_LongValueHashes.Array.data[3]'
|
||||
value: 2962117259711222017
|
||||
value: 3253260240476711
|
||||
objectReference: {fileID: 0}
|
||||
- target: {fileID: 3854744934792897056, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
propertyPath: 'm_Data.m_SharedVariableData.Array.data[1].m_LongValueHashes.Array.data[0]'
|
||||
@ -1782,9 +1782,6 @@ PrefabInstance:
|
||||
- targetCorrespondingSourceObject: {fileID: 7462519206451630147, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: 3825874317044733320}
|
||||
- targetCorrespondingSourceObject: {fileID: 7462519206451630147, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
insertIndex: -1
|
||||
addedObject: {fileID: -2762894235068769830}
|
||||
m_SourcePrefab: {fileID: 100100000, guid: ceeea618d8ee23642a0e56b3f963448c, type: 3}
|
||||
--- !u!1 &4266090516809920735 stripped
|
||||
GameObject:
|
||||
@ -1827,41 +1824,3 @@ MonoBehaviour:
|
||||
m_Script: {fileID: 11500000, guid: af69e82818254bfa9cabb2dbf9430850, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!114 &-2762894235068769830
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 4266090516809920735}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 0b02b4aaf7aa44843b836f6e31da7d39, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_SharedVariableData:
|
||||
- m_ObjectType: 'Opsive.GraphDesigner.Runtime.Variables.SharedVariable`1[[System.String,
|
||||
mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]'
|
||||
m_ValueHashes:
|
||||
m_LongValueHashes: 0d00eb254f8d1b29baa620a07799d549a996976a4a64278901112428f48d1b29
|
||||
m_ValuePositions: 000000000e0000000e0000000f000000
|
||||
m_Values: 437573746f6d657244617461496403
|
||||
m_UnityObjects: []
|
||||
m_Version: 3.4
|
||||
- m_ObjectType: 'Opsive.GraphDesigner.Runtime.Variables.SharedVariable`1[[UnityEngine.GameObject,
|
||||
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]'
|
||||
m_ValueHashes:
|
||||
m_LongValueHashes: 0d00eb254f8d1b29baa620a07799d549a996976a4a64278927dafeacd28e0b00
|
||||
m_ValuePositions: 000000000e0000000e0000000f000000
|
||||
m_Values: 53656c6647616d654f626a65637403ffffffff
|
||||
m_UnityObjects: []
|
||||
m_Version: 3.4
|
||||
- m_ObjectType: 'Opsive.GraphDesigner.Runtime.Variables.SharedVariable`1[[UnityEngine.GameObject,
|
||||
UnityEngine.CoreModule, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]]'
|
||||
m_ValueHashes:
|
||||
m_LongValueHashes: 0d00eb254f8d1b29baa620a07799d549a996976a4a64278927dafeacd28e0b00
|
||||
m_ValuePositions: 00000000180000001800000019000000
|
||||
m_Values: 43757272656e74496e746572616374696f6e54617267657403ffffffff
|
||||
m_UnityObjects: []
|
||||
m_Version: 3.4
|
||||
m_UniqueID: -846296488
|
||||
|
@ -9,7 +9,9 @@ namespace DDD
|
||||
/// </summary>
|
||||
public interface IAISharedBlackboard
|
||||
{
|
||||
void SetBlackboardGameObject(string key, GameObject inGameObject);
|
||||
GameObject GetBlackboardGameObject(string key);
|
||||
|
||||
void SetBlackboardValue<T>(string key, T inValue);
|
||||
|
||||
T GetBlackboardValue<T>(string key);
|
||||
}
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ public override void OnStart()
|
||||
_isLooking = false;
|
||||
|
||||
var blackboard = gameObject.GetComponent<IAISharedBlackboard>();
|
||||
_cachedTarget = blackboard.GetBlackboardGameObject(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
_cachedTarget = blackboard.GetBlackboardValue<GameObject>(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
}
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
|
@ -41,7 +41,7 @@ public override void OnStart()
|
||||
_isMoving = false;
|
||||
|
||||
var blackboard = gameObject.GetComponent<IAISharedBlackboard>();
|
||||
_target = blackboard.GetBlackboardGameObject(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
_target = blackboard.GetBlackboardValue<GameObject>(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
}
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
|
@ -3,6 +3,7 @@
|
||||
using Opsive.BehaviorDesigner.Runtime.Tasks;
|
||||
using Opsive.BehaviorDesigner.Runtime.Tasks.Decorators;
|
||||
using Opsive.GraphDesigner.Runtime;
|
||||
using Opsive.GraphDesigner.Runtime.Variables;
|
||||
using Opsive.Shared.Utility;
|
||||
using Unity.Burst;
|
||||
using Unity.Entities;
|
||||
@ -140,7 +141,9 @@ public struct TimeLimiterComponent : IBufferElementData
|
||||
public TaskStatus TimeoutStatus;
|
||||
}
|
||||
|
||||
public struct TimeLimiterTag : IComponentData, IEnableableComponent { }
|
||||
public struct TimeLimiterTag : IComponentData, IEnableableComponent
|
||||
{
|
||||
}
|
||||
|
||||
[DisableAutoCreation]
|
||||
public partial struct TimeLimiterTaskSystem : ISystem
|
||||
@ -148,18 +151,19 @@ public partial struct TimeLimiterTaskSystem : ISystem
|
||||
[BurstCompile]
|
||||
private void OnUpdate(ref SystemState state)
|
||||
{
|
||||
var query = SystemAPI.QueryBuilder().WithAllRW<BranchComponent>().WithAllRW<TaskComponent>().WithAllRW<TimeLimiterComponent>().WithAll<TimeLimiterTag, EvaluationComponent>().Build();
|
||||
var query = SystemAPI.QueryBuilder().WithAllRW<BranchComponent>().WithAllRW<TaskComponent>()
|
||||
.WithAllRW<TimeLimiterComponent>().WithAll<TimeLimiterTag, EvaluationComponent>().Build();
|
||||
state.Dependency = new TimeLimiterJob()
|
||||
{
|
||||
CurrentTime = (float)SystemAPI.Time.ElapsedTime
|
||||
}.ScheduleParallel(query, state.Dependency);
|
||||
}
|
||||
|
||||
|
||||
[BurstCompile]
|
||||
private partial struct TimeLimiterJob : IJobEntity
|
||||
{
|
||||
public float CurrentTime;
|
||||
|
||||
|
||||
[BurstCompile]
|
||||
public void Execute(ref DynamicBuffer<BranchComponent> branchComponents,
|
||||
ref DynamicBuffer<TaskComponent> taskComponents,
|
||||
@ -188,21 +192,24 @@ public void Execute(ref DynamicBuffer<BranchComponent> branchComponents,
|
||||
branchComponents[taskComponent.BranchIndex] = branchComponent;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (taskComponent.Status != TaskStatus.Running)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (timeLimiterComponent.StartTime >= 0f &&
|
||||
CurrentTime - timeLimiterComponent.StartTime >= timeLimiterComponent.TimeLimit) {
|
||||
|
||||
if (timeLimiterComponent.StartTime >= 0f &&
|
||||
CurrentTime - timeLimiterComponent.StartTime >= timeLimiterComponent.TimeLimit)
|
||||
{
|
||||
// 시간 초과
|
||||
taskComponent.Status = timeLimiterComponent.TimeoutStatus;
|
||||
taskComponents[taskComponent.Index] = taskComponent;
|
||||
|
||||
// 자식 태스크가 실행 중이면 중단
|
||||
childTaskComponent = taskComponents[taskComponent.Index + 1];
|
||||
if (childTaskComponent.Status == TaskStatus.Running ||
|
||||
childTaskComponent.Status == TaskStatus.Queued) {
|
||||
if (childTaskComponent.Status == TaskStatus.Running ||
|
||||
childTaskComponent.Status == TaskStatus.Queued)
|
||||
{
|
||||
childTaskComponent.Status = timeLimiterComponent.TimeoutStatus;
|
||||
taskComponents[taskComponent.Index + 1] = childTaskComponent;
|
||||
}
|
||||
@ -211,14 +218,15 @@ public void Execute(ref DynamicBuffer<BranchComponent> branchComponents,
|
||||
branchComponents[taskComponent.BranchIndex] = branchComponent;
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
childTaskComponent = taskComponents[taskComponent.Index + 1];
|
||||
if (childTaskComponent.Status == TaskStatus.Queued ||
|
||||
childTaskComponent.Status == TaskStatus.Running) {
|
||||
if (childTaskComponent.Status == TaskStatus.Queued ||
|
||||
childTaskComponent.Status == TaskStatus.Running)
|
||||
{
|
||||
// The child should keep running.
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
taskComponent.Status = childTaskComponent.Status;
|
||||
taskComponents[taskComponent.Index] = taskComponent;
|
||||
|
||||
@ -228,4 +236,94 @@ public void Execute(ref DynamicBuffer<BranchComponent> branchComponents,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[NodeDescription("자식 태스크의 실행 시간을 제한합니다 (GameObject 워크플로우)")]
|
||||
public class SharedTimeLimiter : DecoratorNode
|
||||
{
|
||||
[Tooltip("최대 실행 시간(초)")]
|
||||
[SerializeField] protected SharedVariable<float> _timeLimit = 30f;
|
||||
|
||||
[Tooltip("시간 초과 시 반환할 상태")]
|
||||
[SerializeField] protected TaskStatus _timeoutStatus = TaskStatus.Failure;
|
||||
|
||||
[Tooltip("하단 블랙보드 키에 현재 시간을 저장할 지")]
|
||||
[SerializeField] protected bool _isBlackboardWriteEnabled = false;
|
||||
[SerializeField] protected string _blackboardKey = "CurrentTime";
|
||||
|
||||
public SharedVariable<float> TimeLimit
|
||||
{
|
||||
get => _timeLimit;
|
||||
set => _timeLimit = value;
|
||||
}
|
||||
|
||||
public TaskStatus TimeoutStatus
|
||||
{
|
||||
get => _timeoutStatus;
|
||||
set => _timeoutStatus = value;
|
||||
}
|
||||
|
||||
protected float _startTime;
|
||||
private float _pauseTime = -1f;
|
||||
|
||||
public override void OnStart()
|
||||
{
|
||||
base.OnStart();
|
||||
_startTime = Time.time;
|
||||
}
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
{
|
||||
var taskComponents = m_BehaviorTree.World.EntityManager.GetBuffer<TaskComponent>(m_BehaviorTree.Entity);
|
||||
ref var child = ref taskComponents.ElementAt(Index + 1);
|
||||
|
||||
if (Time.time - _startTime >= _timeLimit.Value)
|
||||
{
|
||||
if (child.Status == TaskStatus.Running || child.Status == TaskStatus.Queued)
|
||||
{
|
||||
child.Status = _timeoutStatus;
|
||||
taskComponents[Index + 1] = child;
|
||||
}
|
||||
|
||||
return _timeoutStatus;
|
||||
}
|
||||
|
||||
if (child.Status == TaskStatus.Success || child.Status == TaskStatus.Failure)
|
||||
{
|
||||
return child.Status;
|
||||
}
|
||||
|
||||
return TaskStatus.Running;
|
||||
}
|
||||
|
||||
public override void OnBehaviorTreeStopped(bool paused)
|
||||
{
|
||||
base.OnBehaviorTreeStopped(paused);
|
||||
if (paused) _pauseTime = Time.time;
|
||||
}
|
||||
|
||||
public override void OnBehaviorTreeStarted()
|
||||
{
|
||||
base.OnBehaviorTreeStarted();
|
||||
if (_pauseTime >= 0f)
|
||||
{
|
||||
_startTime += (Time.time - _pauseTime);
|
||||
_pauseTime = -1f;
|
||||
}
|
||||
}
|
||||
|
||||
public override MemberVisibility GetSaveReflectionType(int index) => MemberVisibility.None;
|
||||
|
||||
public override object Save(World world, Entity entity)
|
||||
{
|
||||
// [제한 시간, 경과 시간] 저장
|
||||
return new object[] { _timeLimit.Value, Time.time - _startTime };
|
||||
}
|
||||
|
||||
public override void Load(object saveData, World world, Entity entity)
|
||||
{
|
||||
var data = (object[])saveData;
|
||||
_timeLimit.Value = (float)data[0];
|
||||
_startTime = Time.time - (float)data[1];
|
||||
}
|
||||
}
|
||||
}
|
@ -23,7 +23,7 @@ public override void OnStart()
|
||||
public override TaskStatus OnUpdate()
|
||||
{
|
||||
var blackboard = gameObject.GetComponent<IAISharedBlackboard>();
|
||||
var target = blackboard?.GetBlackboardGameObject(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
var target = blackboard?.GetBlackboardValue<GameObject>(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
IInteractable currentInteractable = target?.GetComponent<IInteractable>();
|
||||
if (_targetOrderType == RestaurantOrderType.Wait)
|
||||
{
|
||||
@ -34,7 +34,7 @@ public override TaskStatus OnUpdate()
|
||||
return TaskStatus.Failure;
|
||||
}
|
||||
var customerBlackboard = gameObject.GetComponent<IAISharedBlackboard>();
|
||||
customerBlackboard?.SetBlackboardGameObject(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget), currentInteractable.GetInteractableGameObject());
|
||||
customerBlackboard?.SetBlackboardValue(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget), currentInteractable.GetInteractableGameObject());
|
||||
}
|
||||
|
||||
// Check order type of the current interactable
|
||||
@ -71,7 +71,7 @@ public override TaskStatus OnUpdate()
|
||||
if (_targetOrderType == RestaurantOrderType.Busy)
|
||||
{
|
||||
var customerBlackboard = gameObject.GetComponent<IAISharedBlackboard>();
|
||||
customerBlackboard?.SetBlackboardGameObject(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget), null);
|
||||
customerBlackboard?.SetBlackboardValue<GameObject>(nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget), null);
|
||||
}
|
||||
|
||||
return TaskStatus.Success;
|
||||
|
@ -18,7 +18,7 @@ public override void OnStart()
|
||||
GameObject interactionTarget = null;
|
||||
if (!gameObject.TryGetComponent<IAISharedBlackboard>(out var sharedBlackboard)) return;
|
||||
interactionTarget =
|
||||
sharedBlackboard.GetBlackboardGameObject(
|
||||
sharedBlackboard.GetBlackboardValue<GameObject>(
|
||||
nameof(RestaurantCustomerBlackboardKey.CurrentInteractionTarget));
|
||||
|
||||
if (interactionTarget == null)
|
||||
|
@ -7,36 +7,30 @@ namespace DDD
|
||||
public class CustomerBlackboardComponent : MonoBehaviour, ICustomerBlackboard, IAISharedBlackboard
|
||||
{
|
||||
private BehaviorTree _behaviorTree;
|
||||
//private GameObjectSharedVariables _sharedVariables;
|
||||
|
||||
public void InitializeWithBehaviorTree(BehaviorTree inBehaviorTree)
|
||||
{
|
||||
//_sharedVariables = GetComponent<GameObjectSharedVariables>();
|
||||
_behaviorTree = inBehaviorTree;
|
||||
if (!_behaviorTree) return;
|
||||
//_sharedVariables.SetVariableValue(nameof(RestaurantCustomerBlackboardKey.SelfGameObject), gameObject);
|
||||
_behaviorTree.SetVariableValue(nameof(RestaurantCustomerBlackboardKey.SelfGameObject), gameObject, SharedVariable.SharingScope.GameObject);
|
||||
SetBlackboardValue(nameof(RestaurantCustomerBlackboardKey.SelfGameObject), gameObject);
|
||||
}
|
||||
|
||||
public void SetCustomerData(string inCustomerDataId)
|
||||
{
|
||||
if (!_behaviorTree) return;
|
||||
//_sharedVariables.SetVariableValue(nameof(RestaurantCustomerBlackboardKey.SelfGameObject), gameObject);
|
||||
_behaviorTree.SetVariableValue(nameof(RestaurantCustomerBlackboardKey.CustomerDataId), inCustomerDataId, SharedVariable.SharingScope.GameObject);
|
||||
}
|
||||
|
||||
public void SetBlackboardGameObject(string key, GameObject inGameObject)
|
||||
{
|
||||
if (!_behaviorTree) return;
|
||||
//_sharedVariables.SetVariableValue(nameof(RestaurantCustomerBlackboardKey.SelfGameObject), gameObject);
|
||||
_behaviorTree.SetVariableValue(key, inGameObject, SharedVariable.SharingScope.GameObject);
|
||||
SetBlackboardValue(nameof(RestaurantCustomerBlackboardKey.CustomerDataId), inCustomerDataId);
|
||||
}
|
||||
|
||||
public GameObject GetBlackboardGameObject(string key)
|
||||
public void SetBlackboardValue<T>(string key, T inValue)
|
||||
{
|
||||
if (!_behaviorTree) return null;
|
||||
//return _sharedVariables.GetVariable<GameObject>(key).Value;
|
||||
return _behaviorTree.GetVariable<GameObject>(key, SharedVariable.SharingScope.GameObject)?.Value;
|
||||
if (!_behaviorTree) return;
|
||||
_behaviorTree.SetVariableValue(key, inValue);
|
||||
}
|
||||
|
||||
public T GetBlackboardValue<T>(string key)
|
||||
{
|
||||
if (!_behaviorTree) return default;
|
||||
SharedVariable<T> blackboardValue = _behaviorTree.GetVariable<T>(key);
|
||||
|
||||
return blackboardValue != null ? blackboardValue.Value : default;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dd35b9ad54934727805aa8a9e232cffd
|
||||
timeCreated: 1756440681
|
@ -0,0 +1,29 @@
|
||||
using Opsive.BehaviorDesigner.Runtime.Tasks;
|
||||
using UnityEngine;
|
||||
|
||||
namespace DDD.Restaurant
|
||||
{
|
||||
public class CustomerTimeLimiter : SharedTimeLimiter
|
||||
{
|
||||
private IAISharedBlackboard _blackboard;
|
||||
public override void OnStart()
|
||||
{
|
||||
base.OnStart();
|
||||
if (!_isBlackboardWriteEnabled) return;
|
||||
if (!gameObject.TryGetComponent(out _blackboard))
|
||||
{
|
||||
Debug.LogError($"[{GetType().Name}] 블랙보드를 찾을 수 없습니다. 게임오브젝트 해시코드: {gameObject.GetHashCode()}");
|
||||
}
|
||||
}
|
||||
|
||||
public override TaskStatus OnUpdate()
|
||||
{
|
||||
if (_isBlackboardWriteEnabled && _blackboard != null)
|
||||
{
|
||||
_blackboard.SetBlackboardValue(_blackboardKey, Time.time - _startTime);
|
||||
}
|
||||
|
||||
return base.OnUpdate();
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 546f038ee64e401fb67a4ba7d8717b7f
|
||||
timeCreated: 1756440694
|
BIN
ProjectSettings/EditorBuildSettings.asset
(Stored with Git LFS)
BIN
ProjectSettings/EditorBuildSettings.asset
(Stored with Git LFS)
Binary file not shown.
Loading…
Reference in New Issue
Block a user