Merge branch 'develop' into feature/skill-data

# Conflicts:
#	Assets/Scripts/CECHostPlayer.cs
This commit is contained in:
VDH
2026-01-19 16:22:53 +07:00
181 changed files with 23444 additions and 3260 deletions
@@ -10685,7 +10685,745 @@ AnimationClip:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
genericBindings:
- serializedVersion: 2
path: 2018908708
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2018908708
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
@@ -10697,7 +11435,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@@ -5879,7 +5879,745 @@ AnimationClip:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
genericBindings:
- serializedVersion: 2
path: 2018908708
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2018908708
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
@@ -5891,7 +6629,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@@ -5807,7 +5807,745 @@ AnimationClip:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
genericBindings:
- serializedVersion: 2
path: 2018908708
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2294152019
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1159701105
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2018908708
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2440853979
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 116356734
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3927517603
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1569192055
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3636174899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1751650893
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 873093031
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 805450933
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
@@ -5819,7 +6557,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@@ -3836,7 +3836,637 @@ AnimationClip:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
genericBindings:
- serializedVersion: 2
path: 2018908708
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 4049683447
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 4049683447
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3447873746
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 527377115
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1724170906
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2018908708
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3447873746
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 527377115
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1724170906
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
@@ -3848,7 +4478,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@@ -6077,7 +6077,637 @@ AnimationClip:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings: []
genericBindings:
- serializedVersion: 2
path: 2018908708
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1340948032
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1988792091
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3885673468
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3497741423
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 4049683447
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3447873746
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1724170906
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2116945202
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3473806278
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2956762170
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 933035377
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 5356599
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3146785657
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3499712485
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 429469044
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2839275161
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2128347294
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1101621778
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 785229228
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2169235899
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2469333914
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 4049683447
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3447873746
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 527377115
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1724170906
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2018908708
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3548896427
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 2293061301
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 649084008
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 390191502
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1370950910
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3775421998
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 838263118
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3508646861
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 1190253016
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 661140589
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3769069077
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 3950068453
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 527377115
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
@@ -6089,7 +6719,7 @@ AnimationClip:
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopTime: 1
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
@@ -27,5 +27,5 @@ MonoBehaviour:
prefab: {fileID: 977375840943150650, guid: 51bad2e6d1ec69a4683135ce85288faa, type: 3}
- id: Win_Hpmpxp
prefab: {fileID: 6032603119232429246, guid: 8350aa55906d08448bb47e10a473ca61, type: 3}
- id: DlgMessageBox
prefab: {fileID: 5492547392745930423, guid: 54cccb2c6a758a24183474cd385ccb2c, type: 3}
- id: Win_Produce
prefab: {fileID: 5750242998044155948, guid: ecf0d8daf08db6f4a8d94a4bb07847ec, type: 3}
@@ -42,6 +42,9 @@ namespace BrewMonster
else
{
BMLogger.Log("ElementDataManProvider: Successfully loaded element data");
// Build suite equip tab now that data is loaded
// 数据加载完成后构建套装装备表
BrewMonster.Network.EC_Game.BuildSuiteEquipTab();
}
}
catch (Exception ex)
@@ -0,0 +1,741 @@
using BrewMonster.Network;
using BrewMonster.Scripts.Managers;
using CSNetwork.C2SCommand;
using CSNetwork.Protocols;
using CSNetwork.S2CCommand;
using System;
using System.Collections.Generic;
using UnityEngine;
namespace BrewMonster.Common
{
using CounterTable = Dictionary<int, CECCounter>;
public class CECC2SCmdCache
{
public struct presentInfo
{
public int roleid;
public int mailid;
public int itemid;
public int index;
public int slot;
};
int m_idLastPickUpItem; // ID of picked up item last time
int m_idLastSelTarget; // ID of selected item last time
bool m_bGetExpProps;
bool m_bEnterSanctuary;
CounterTable m_CounterMap = new CounterTable();
CounterTable m_CounterMap2 = new CounterTable();
List<cmd_use_item> m_UseItemCmdList = new List<cmd_use_item>();
List<getplayerbriefinfo> m_GetPlayerBriefInfoList = new List<getplayerbriefinfo>();
List<int> m_PlayerBaseInfoList = new List<int>();
List<int> m_EnterSanctuaryList = new List<int>();
List<presentInfo> m_PresentInfoList = new List<presentInfo>();
public CECC2SCmdCache()
{
m_idLastPickUpItem = 0;
m_idLastSelTarget = 0;
m_bGetExpProps = false;
m_bEnterSanctuary = false;
InitCounters();
}
// Initialize counters
bool InitCounters()
{
// 'Use item' command time counter
CECCounter pCnt = new CECCounter();
pCnt.SetPeriod(200);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.USE_ITEM))
{
m_CounterMap[(int)CommandID.USE_ITEM] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.USE_ITEM, pCnt);
}
// 'Pickup item' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(500);
if (m_CounterMap.ContainsKey((int)CommandID.PICKUP))
{
m_CounterMap[(int)CommandID.PICKUP] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.PICKUP, pCnt);
}
// 'Select target' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(250);
if (m_CounterMap.ContainsKey((int)CommandID.SELECT_TARGET))
{
m_CounterMap[(int)CommandID.SELECT_TARGET] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.SELECT_TARGET, pCnt);
}
// 'Get extend properties' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.GET_EXT_PROP))
{
m_CounterMap[(int)CommandID.GET_EXT_PROP] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.GET_EXT_PROP, pCnt);
}
// 'Cast skill' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(200);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.CAST_SKILL))
{
m_CounterMap[(int)CommandID.CAST_SKILL] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.CAST_SKILL, pCnt);
}
// 'Revive ask' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(500);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.REVIVE_VILLAGE))
{
m_CounterMap[(int)CommandID.REVIVE_VILLAGE] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.REVIVE_VILLAGE, pCnt);
}
// 'Enter sanctuary' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
if (m_CounterMap.ContainsKey((int)CommandID.ENTER_SANCTUARY))
{
m_CounterMap[(int)CommandID.ENTER_SANCTUARY] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.ENTER_SANCTUARY, pCnt);
}
// 'Enter instance' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.ENTER_INSTANCE))
{
m_CounterMap[(int)CommandID.ENTER_INSTANCE] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.ENTER_INSTANCE, pCnt);
}
// 'Rush fly' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(500);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.ACTIVE_RUSH_FLY))
{
m_CounterMap[(int)CommandID.ACTIVE_RUSH_FLY] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.ACTIVE_RUSH_FLY, pCnt);
}
// 'Cancel action' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(200);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.CANCEL_ACTION))
{
m_CounterMap[(int)CommandID.CANCEL_ACTION] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.CANCEL_ACTION, pCnt);
}
// 'Control pet' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(400);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.PET_CTRL))
{
m_CounterMap[(int)CommandID.PET_CTRL] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.PET_CTRL, pCnt);
}
// 'Hello' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.SEVNPC_HELLO))
{
m_CounterMap[(int)CommandID.SEVNPC_HELLO] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.SEVNPC_HELLO, pCnt);
}
// 'Present' command time counter
pCnt = new CECCounter();
pCnt.SetPeriod(1000);
pCnt.Reset(true);
if (m_CounterMap.ContainsKey((int)CommandID.PLAYER_GIVE_PRESENT))
{
m_CounterMap[(int)CommandID.PLAYER_GIVE_PRESENT] = pCnt;
}
else
{
m_CounterMap.Add((int)CommandID.PLAYER_GIVE_PRESENT, pCnt);
}
// 'GetPlayerBriefInfo' time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
pCnt.Reset(true);
if (m_CounterMap2.ContainsKey((int)ProtocolType.PROTOCOL_GETPLAYERBRIEFINFO))
{
m_CounterMap2[(int)ProtocolType.PROTOCOL_GETPLAYERBRIEFINFO] = pCnt;
}
else
{
m_CounterMap2.Add((int)ProtocolType.PROTOCOL_GETPLAYERBRIEFINFO, pCnt);
}
// 'PlayerBaseInfo' time counter
pCnt = new CECCounter();
pCnt.SetPeriod(2000);
pCnt.Reset(true);
if (m_CounterMap2.ContainsKey((int)ProtocolType.PROTOCOL_PLAYERBASEINFO))
{
m_CounterMap2[(int)ProtocolType.PROTOCOL_PLAYERBASEINFO] = pCnt;
}
else
{
m_CounterMap2.Add((int)ProtocolType.PROTOCOL_PLAYERBASEINFO, pCnt);
}
pCnt = new CECCounter();
pCnt.SetPeriod(10 * 1000);
pCnt.Reset(true);
if (m_CounterMap2.ContainsKey((int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETMAP))
{
m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETMAP] = pCnt;
}
else
{
m_CounterMap2.Add((int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETMAP, pCnt);
}
pCnt = new CECCounter();
pCnt.SetPeriod(10 * 1000);
pCnt.Reset(true);
if (m_CounterMap2.ContainsKey((int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETRECORD))
{
m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETRECORD] = pCnt;
}
else
{
m_CounterMap2.Add((int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETRECORD, pCnt);
}
return true;
}
// Remove all un-sent commands in cache
public void RemoveAllCmds()
{
m_UseItemCmdList.Clear();
// 重置 C2S 命令计时器
m_CounterMap[(int)CommandID.USE_ITEM].Reset(true);
m_EnterSanctuaryList.Clear();
m_CounterMap[(int)CommandID.ENTER_SANCTUARY].Reset(true);
m_bEnterSanctuary = false;
m_PresentInfoList.Clear();
m_CounterMap[(int)CommandID.PLAYER_GIVE_PRESENT].Reset(true);
// 重置协议计时器
m_GetPlayerBriefInfoList.Clear();
m_CounterMap2[(int)ProtocolType.PROTOCOL_GETPLAYERBRIEFINFO].Reset(true);
m_PlayerBaseInfoList.Clear();
m_CounterMap2[(int)ProtocolType.PROTOCOL_PLAYERBASEINFO].Reset(true);
m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETMAP].Reset(true);
m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETRECORD].Reset(true);
}
// Tick routine
public bool Tick(float dwDeltaTime)
{
float dwRealTime = Time.fixedUnscaledDeltaTime * 1000;
foreach (var item in m_CounterMap)
{
item.Value.IncCounter(dwRealTime);
}
foreach (var item in m_CounterMap2)
{
item.Value.IncCounter(dwRealTime);
}
// Try to send 'use item' command in cache
SendCachedCmdUseItem();
// Try to send 'get extend properties' command
SendCachedCmdGetExtProp();
// Try to send 'GetPlayerBriefInfo'
SendCachedGetPlayerBriefInfo();
// Try to send 'PlayerBaseInfo'
SendCachedPlayerBaseInfo();
// Try to send 'PresentInfo'
SendCachedPresentInfo();
if (m_bEnterSanctuary)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.ENTER_SANCTUARY];
if (pCnt.IsFull())
{
for (int i = 0; i < m_EnterSanctuaryList.Count; i++)
{
int id = m_EnterSanctuaryList[i];
UnityGameSession.Instance.GameSession.c2s_SendCmdEnterSanctuary(id);
}
m_EnterSanctuaryList.Clear();
m_bEnterSanctuary = false;
}
}
return true;
}
// Send 'use item' command
void SendCachedCmdUseItem()
{
CECCounter pCnt = m_CounterMap[(int)CommandID.USE_ITEM];
if (!pCnt.IsFull() || m_UseItemCmdList.Count == 0)
return;
pCnt.Reset();
// Send the first item
cmd_use_item Cmd = m_UseItemCmdList[0];
UnityGameSession.Instance.GameSession.c2s_SendCmdUseItem(Cmd.where, (byte)Cmd.index, Cmd.item_id, Cmd.byCount);
m_UseItemCmdList.Clear();
}
// Send cached 'get extend properties' command
void SendCachedCmdGetExtProp()
{
CECCounter pCnt = m_CounterMap[(int)CommandID.GET_EXT_PROP];
if (!m_bGetExpProps || !pCnt.IsFull())
return;
pCnt.Reset();
m_bGetExpProps = false;
UnityGameSession.Instance.GameSession.c2s_SendCmdGetExtProps();
}
// Send cached 'GetPlayerBriefInfo' command
void SendCachedGetPlayerBriefInfo()
{
CECCounter pCnt = m_CounterMap2[(int)ProtocolType.PROTOCOL_GETPLAYERBRIEFINFO];
if (!pCnt.IsFull() || m_GetPlayerBriefInfoList.Count == 0)
return;
pCnt.Reset();
getplayerbriefinfo p = m_GetPlayerBriefInfoList[0];
if (p.Playerlist.Count != 0)
{
// 获取第一个玩家id并向服务器发送协议
getplayerbriefinfo temp = p;
temp.Playerlist.Clear();
temp.Playerlist.Add(p.Playerlist[0]);
UnityGameSession.Instance.GameSession.SendProtocol(temp);
// 从列表中清除
p.Playerlist.Remove(p.Playerlist[0]);
}
if (p.Playerlist.Count == 0)
m_GetPlayerBriefInfoList.Remove(p);
}
// Remove the cached 'PlayerBaseInfo' request
public void RemovePlayerBaseInfo(int iRoleID)
{
int pos = m_PlayerBaseInfoList.Find(x => x == iRoleID);
if (pos != 0)
{
m_PlayerBaseInfoList.RemoveAt(pos);
}
}
// Send cached 'PlayerBaseInfo' protocol
void SendCachedPlayerBaseInfo()
{
CECCounter pCnt = m_CounterMap2[(int)ProtocolType.PROTOCOL_PLAYERBASEINFO];
if (!pCnt.IsFull() || m_PlayerBaseInfoList.Count == 0)
return;
pCnt.Reset();
List<int> aRoles = new List<int>();
for (int i = 0; i < m_PlayerBaseInfoList.Count; i++)
{
aRoles.Add(m_PlayerBaseInfoList[i]);
}
UnityGameSession.Instance.GameSession.GetRoleBaseInfo(aRoles.Count, aRoles);
}
void SendCachedPresentInfo()
{
CECCounter pCnt = m_CounterMap[(int)CommandID.PLAYER_GIVE_PRESENT];
if (!pCnt.IsFull() || m_PresentInfoList.Count == 0)
return;
pCnt.Reset();
presentInfo info = m_PresentInfoList[0];
UnityGameSession.Instance.GameSession.c2s_SendCmdGivePresent(info.roleid, info.mailid, info.itemid, info.index, info.slot);
m_PresentInfoList.Remove(info);
}
// Send commands ...
public void SendCmdUseItem(byte byPackage, byte bySlot, int tid, byte byCount)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.USE_ITEM];
if (m_UseItemCmdList.Count == 0 && pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdUseItem(byPackage, bySlot, tid, byCount);
return;
}
cmd_use_item Cmd = new cmd_use_item();
if (m_UseItemCmdList.Count == 0)
{
Cmd.where = byPackage;
Cmd.index = bySlot;
Cmd.item_id = tid;
Cmd.byCount = byCount;
m_UseItemCmdList.Add(Cmd);
return;
}
int idx = -1;
for (int i = 0; i < m_UseItemCmdList.Count; i++)
{
Cmd = m_UseItemCmdList[i];
if (Cmd.where == byPackage && Cmd.index == bySlot)
{
CECHostPlayer pHost = EC_Game.GetGameRun().GetHostPlayer();
EC_Inventory pPack = pHost.GetPack(byPackage);
if (pPack == null) return;
EC_IvtrItem pItem = pPack.GetItem(bySlot);
if (pItem == null || !pItem.CheckUseCondition())
return;
int iTotal = Cmd.byCount + byCount;
if (iTotal >= pItem.GetCount())
iTotal = pItem.GetCount();
AAssist.a_ClampRoof(ref iTotal, 255);
Cmd.byCount = (byte)iTotal;
break;
}
idx++;
}
if (idx < 0)
{
Cmd = new cmd_use_item();
Cmd.where = byPackage;
Cmd.index = bySlot;
Cmd.item_id = tid;
Cmd.byCount = byCount;
m_UseItemCmdList.Add(Cmd);
}
// Try to send command in cache
SendCachedCmdUseItem();
}
/* Send 'pick up item' command
The strategy to send 'pick up item' command:
1. if the item is just the one which was to be picked up, check whether
enough time has passed since last command was sent. If true, send
command again, otherwise just throw command
2. if the item isn't the one which was to be picked up, send command
directly.
*/
public void SendCmdPickUp(int idItem, int tid)
{
//StackChecker::ACTrace(5);
CECCounter pCnt = m_CounterMap[(int)CommandID.PICKUP];
if (m_idLastPickUpItem != idItem || pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.RequestPickupItem(idItem, tid);
m_idLastPickUpItem = idItem;
}
}
// Send 'select target' command
// The strategy to send 'select target' command is like as SendCmdPickUp()
public void SendCmdSelectTarget(int id)
{
// Set selection first before server returns, so as to reduce the player waiting time.
CECHostPlayer pHost = EC_Game.GetGameRun().GetHostPlayer();
pHost.SetSelectedTarget(id);
CECCounter pCnt = m_CounterMap[(int)CommandID.SELECT_TARGET];
if (m_idLastSelTarget != id || pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdSelectTarget(id);
m_idLastSelTarget = id;
}
}
// Send 'get extend properties' command
public void SendCmdExtProps()
{
// If there is already a request waiting, return directly
if (m_bGetExpProps)
return;
CECCounter pCnt = m_CounterMap[(int)CommandID.GET_EXT_PROP];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdGetExtProps();
return;
}
m_bGetExpProps = true;
}
// Send 'revive ask' command
public void SendCmdReviveVillage(int param = 0)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.REVIVE_VILLAGE];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdReviveVillage(param);
}
}
// Send 'revive ask' command
public void SendCmdReviveItem(int param = 0)
{
// This command merge time counter with REVIVE_VILLAGE
CECCounter pCnt = m_CounterMap[(int)CommandID.REVIVE_VILLAGE];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdReviveItem(param);
}
}
// Send 'cast skill' command
public void SendCmdCastSkill(int idSkill, byte byPVPMask, int iNumTarget, int[] aTargets)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.CAST_SKILL];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdCastSkill(idSkill, byPVPMask, iNumTarget, aTargets);
}
}
// Send 'cast instant skill' command
public void SendCmdCastInstantSkill(int idSkill, byte byPVPMask, int iNumTarget, int[] aTargets)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.CAST_SKILL];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdCastInstantSkill(idSkill, byPVPMask, iNumTarget, aTargets);
}
}
// Send 'enter sanctuary' command
void SendCmdEnterSanctuary(int id)
{
for (int i = 0; i < m_EnterSanctuaryList.Count; i++)
{
if (m_EnterSanctuaryList[i] == id) return;
}
// Delay this command some time
m_bEnterSanctuary = true;
CECCounter pCnt = m_CounterMap[(int)CommandID.ENTER_SANCTUARY];
pCnt.Reset();
m_EnterSanctuaryList.Add(id);
}
// Send 'enter instance' commnad
void SendCmdEnterInstance(int iTransIdx, int idInst)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.ENTER_INSTANCE];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdEnterInstance(iTransIdx, idInst);
}
}
void SendCmdActiveRushFly(bool bActive)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.ACTIVE_RUSH_FLY];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdActiveRushFly(bActive);
}
}
public void SendCmdCancelAction()
{
CECCounter pCnt = m_CounterMap[(int)CommandID.CANCEL_ACTION];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdCancelAction();
}
}
void SendCmdPetCtrl(int idTarget, int cmd, byte[] pParamBuf, int iParamLen)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.PET_CTRL];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdPetCtrl(idTarget, cmd, pParamBuf, iParamLen);
}
}
public void SendCmdNPCSevHello(int nid)
{
CECCounter pCnt = m_CounterMap[(int)CommandID.SEVNPC_HELLO];
if (pCnt.IsFull())
{
pCnt.Reset();
UnityGameSession.Instance.GameSession.c2s_SendCmdNPCSevHello(nid);
}
}
void SendCmdFactionPVPQueryInfo(int idFaction)
{
int piMax = -1;
CECHostPlayer pHost = EC_Game.GetGameRun().GetHostPlayer();
if (pHost.GetCoolTime((int)CSNetwork.GPDataType.CoolTimeIndex.GP_CT_QUERY_MAFIA_PVP_INFO, ref piMax) == 0)
{
UnityGameSession.Instance.GameSession.c2s_SendCmdQueryFactionPVPInfo(idFaction);
}
}
// Send protocols ...
void SendGetPlayerBriefInfo(int iNumPlayer, int[] aIDs, int iReason)
{
if (iNumPlayer == 0 || aIDs == null || aIDs.Length == 0)
return;
// 1.合并添加到列表
getplayerbriefinfo p = new getplayerbriefinfo();
p.Roleid = EC_Game.GetGameRun().GetHostPlayer().GetCharacterID();
p.Reason = (byte)iReason;
for (int i = 0; i < iNumPlayer; ++i)
{
if (aIDs[i] != 0)
p.Playerlist.Add(aIDs[i]);
}
if (p.Playerlist.Count > 0)
m_GetPlayerBriefInfoList.Add(p);
// 2.检查并发送
SendCachedGetPlayerBriefInfo();
}
void SendGetPlayerBaseInfo(int iNumRole, int[] aRoleIDs)
{
if (iNumRole == 0 || aRoleIDs == null || aRoleIDs.Length == 0)
return;
for (int i = 0; i < iNumRole; i++)
{
if (aRoleIDs[i] != 0)
m_PlayerBaseInfoList.Add(aRoleIDs[i]);
}
SendCachedPlayerBaseInfo();
}
void SendGivePresentProtocol(int roleid, int mailid, int itemid, int index, int slot)
{
presentInfo info = new presentInfo();
info.roleid = roleid;
info.mailid = mailid;
info.itemid = itemid;
info.index = index;
info.slot = slot;
m_PresentInfoList.Add(info);
}
void SendFactionPVPGetMap()
{
CECCounter pCnt = m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETMAP];
if (pCnt.IsFull())
{
pCnt.Reset();
factionresourcebattlegetmap p = new factionresourcebattlegetmap();
p.Roleid = EC_Game.GetGameRun().GetHostPlayer().GetCharacterID();
UnityGameSession.Instance.GameSession.SendProtocol(p);
}
}
void SendFactionPVPGetRank()
{
CECCounter pCnt = m_CounterMap2[(int)ProtocolType.PROTOCOL_FACTIONRESOURCEBATTLEGETRECORD];
if (pCnt.IsFull())
{
pCnt.Reset();
factionresourcebattlegetrecord p = new factionresourcebattlegetrecord();
p.Roleid = EC_Game.GetGameRun().GetHostPlayer().GetCharacterID();
UnityGameSession.Instance.GameSession.SendProtocol(p);
}
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: a442b391d3e801346ac42d47da8c93b2
@@ -204,3 +204,21 @@ public struct ROLEEXTPROP_DEF
armor = 0;
}
};
// Profession
public enum PROFESSION
{
PROF_WARRIOR = 0, // 0:
PROF_MAGE, // 1:ʦ
PROF_MONK, // 2:ʦ
PROF_HAG, // 3:
PROF_ORC, // 4:
PROF_GHOST, // 5:̿
PROF_ARCHOR, // 6:â
PROF_ANGEL, // 7:
PROF_JIANLING, // 8:
PROF_MEILING, // 9:
PROF_YEYING, // 10:ҹӰ
PROF_YUEXIAN, // 11:
NUM_PROFESSION,
};
@@ -30,6 +30,8 @@ namespace BrewMonster
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public ushort[] name; // Name
public string Name => ByteToStringUtils.UshortArrayToUnicodeString(name);
public int num_params; // Number of parameters
public int param1; // Parameter 1
public int param2; // Parameter 2
@@ -559,6 +561,8 @@ namespace BrewMonster
[MarshalAs(UnmanagedType.ByValArray, SizeConst = 32)]
public ushort[] name; // Suite name, max 15 characters
public string Name => ByteToStringUtils.UshortArrayToUnicodeString(name);
public int max_equips; // Maximum equipment in suite
[StructLayout(LayoutKind.Sequential, Pack = 1)]
@@ -25,6 +25,8 @@ namespace BrewMonster.Network
private static BrewMonster.CECStringTab m_ItemDesc; // Item desciption string table
private static BrewMonster.CECStringTab m_ItemExtDesc; // Item extend description string table
private static BrewMonster.CECStringTab m_ItemExtProp; // Item extend prop string table
private static BrewMonster.CECStringTab ItemColTab; // Item color string table
private static Dictionary<int, int> m_SuiteEquipTab; // Item suite string table
private static BrewMonster.CECStringTab m_SkillDesc = new CECStringTab(); // Skill description string table
private static BrewMonster.CECStringTab m_BuffDesc; // Buff description string table
@@ -76,7 +78,15 @@ namespace BrewMonster.Network
{
return m_ItemExtProp;
}
public static BrewMonster.CECStringTab GetItemColTab()
{
return ItemColTab;
}
public static Dictionary<int, int> GetSuiteEquipTab()
{
Debug.Log("[EC_Game] GetSuiteEquipTab: " + m_SuiteEquipTab.Count);
return m_SuiteEquipTab;
}
public static bool TryGetItemMsg(int templateId, out int messageId, out int displayMode)
{
messageId = 0;
@@ -140,6 +150,8 @@ namespace BrewMonster.Network
m_SkillDesc = new BrewMonster.CECStringTab();
m_BuffDesc = new BrewMonster.CECStringTab();
m_ItemExtProp = new BrewMonster.CECStringTab();
ItemColTab = new BrewMonster.CECStringTab();
m_SuiteEquipTab = new Dictionary<int, int>();
try
{
// Addressables-only loading (no StreamingAssets/configs file IO).
@@ -174,10 +186,17 @@ namespace BrewMonster.Network
{
Debug.LogWarning("[EC_Game] Failed to load item_ext_prop.txt");
}
var itemColTa = Addressables.LoadAssetAsync<TextAsset>("Assets/Addressable/item_col.txt").WaitForCompletion();
if (!ItemColTab.InitFromTextAsset(itemColTa, true))
{
Debug.LogWarning("[EC_Game] Failed to load item_col.txt");
}
// Note: There's no buff_desc.txt file in the configs folder
// You may need to create this file or use a different source for buff descriptions
// (If you add it to Addressables later, load it here.)
// BuildSuiteEquipTab() is now called from ElementDataManProvider after data is loaded
// BuildSuiteEquipTab() 现在在 ElementDataManProvider 数据加载完成后调用
// Load item message map (template -> message id)
LoadItemMsgMap();
@@ -433,6 +452,86 @@ namespace BrewMonster.Network
map = list[0].strMap;
return true;
}
/// <summary>
/// Build suite equip tab mapping. Must be called after m_pElementDataMan is initialized and data is loaded.
/// 构建套装装备表映射。必须在 m_pElementDataMan 初始化且数据加载完成后调用。
/// </summary>
public static void BuildSuiteEquipTab()
{
if (m_pElementDataMan == null)
{
return;
}
// Ensure m_SuiteEquipTab is initialized
// 确保 m_SuiteEquipTab 已初始化
if (m_SuiteEquipTab == null)
{
m_SuiteEquipTab = new Dictionary<int, int>();
}
DATA_TYPE DataType = DATA_TYPE.DT_INVALID;
elementdataman _edm = ElementDataManProvider.GetElementDataMan();
for (int i = 0; i < _edm.essence_id_data_type_map.Count; i++)
{
uint tid = _edm.get_data_id(ID_SPACE.ID_SPACE_ESSENCE, i, ref DataType);
object pData = _edm.get_data_ptr(tid, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
switch (DataType)
{
case DATA_TYPE.DT_SUITE_ESSENCE:
SUITE_ESSENCE pSuiteEss = (SUITE_ESSENCE)pData;
pSuiteEss.max_equips = 0;
for (int j=0; j<12; j++)
{
if( pSuiteEss.equipments[j].id != 0 )
{
pSuiteEss.max_equips ++;
int index = (int)pSuiteEss.equipments[j].id;
m_SuiteEquipTab[index] = (int)tid;
}
}
break;
case DATA_TYPE.DT_POKER_SUITE_ESSENCE:
POKER_SUITE_ESSENCE pPokerSuiteEss = (POKER_SUITE_ESSENCE)pData;
for (int j=0; j<6; j++)
{
if( pPokerSuiteEss.list[j] != 0 )
{
int index = (int)pPokerSuiteEss.list[j];
m_SuiteEquipTab[index] = (int)tid;
}
}
break;
case DATA_TYPE.DT_FASHION_SUITE_ESSENCE:
FASHION_SUITE_ESSENCE pFashionSuiteEss = (FASHION_SUITE_ESSENCE)pData;
for (int j=0; j<6; j++)
{
if( pFashionSuiteEss.list[j] != 0 )
{
int index = (int)pFashionSuiteEss.list[j];
m_SuiteEquipTab[index] = (int)tid;
}
}
break;
}
}
}
public static int GetItemNameColorIdx(int tid, int iDefIndex = 0)
{
int iIndex = iDefIndex;
string color = ItemColTab.GetWideString(tid);
if (!string.IsNullOrEmpty(color))
iIndex = color.GetHashCode();
if (iIndex < 0 || iIndex >= 10)
{
iIndex = 0;
}
return iIndex;
}
#endregion
}
}
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using Unity.VisualScripting;
using UnityEngine;
namespace BrewMonster.Scripts.Managers
@@ -24,13 +25,13 @@ namespace BrewMonster.Scripts.Managers
IVTRTYPE_TRASHBOX2 = 4, // Trash box - material box
IVTRTYPE_TRASHBOX3 = 5, // Trash box - fashion box
IVTRTYPE_ACCOUNT_BOX = 6, // User account box
IVTRTYPE_GENERALCARD_BOX = 7; // 卡牌包裹
IVTRTYPE_GENERALCARD_BOX = 7; // ư
};
// 注意 IVTRTYPE_CLIENT_GENERALCARD_PACK 枚举值不能喝上面的 Inventory type 值重复!!
// ע IVTRTYPE_CLIENT_GENERALCARD_PACK öֵܺ Inventory type ֵظ
public static class IVTRTYPE_PACK_CLIENT_GENERALCAR
{
public const int IVTRTYPE_CLIENT_GENERALCARD_PACK = 1024; // 客户端本地包裹, 由于卡牌图鉴要求对已获得卡牌通过聊天发送。为了统一处理聊天窗口的物品,添加本地包裹。
public const int IVTRTYPE_CLIENT_GENERALCARD_PACK = 1024; // ͻ˱ذ ڿͼҪѻÿͨ͡ΪͳһڵƷӱذ
};
public EC_Inventory()
@@ -168,14 +169,7 @@ namespace BrewMonster.Scripts.Managers
{
return false;
}
var newItem = new EC_IvtrItem(tid, iExpireDate)
{
Slot = firstEmpty,
State = 0,
Crc = 0,
Content = null
};
var newItem = EC_IvtrItem.CreateItem(tid, iExpireDate, iAmount);
newItem.SetCount(iAmount);
m_aItems[firstEmpty] = newItem;
@@ -203,15 +197,7 @@ namespace BrewMonster.Scripts.Managers
if (pDst == null)
{
var clone = new EC_IvtrItem(pSrc.GetTemplateID(), pSrc.GetExpireDate())
{
Slot = iDest,
Package = pSrc.Package,
State = pSrc.State,
Crc = pSrc.Crc,
Content = pSrc.Content != null ? (byte[])pSrc.Content.Clone() : null
};
clone.SetCount(iAmount);
var clone = EC_IvtrItem.CreateItem(pSrc.GetTemplateID(), pSrc.GetExpireDate(), iAmount);
m_aItems[iDest] = clone;
}
else
@@ -85,7 +85,7 @@ namespace BrewMonster.Scripts.Managers
private byte currentSelectedPackage;
private int currentSelectedSlot;
private EC_IvtrItem currentSelectedItem;
private EC_IvtrEquip currentSelectedEquipment;
private EC_IvtrItem currentSelectedEquipment;
private const byte PKG_INVENTORY = 0;
private const byte PKG_EQUIPMENT = 1;
@@ -281,18 +281,12 @@ namespace BrewMonster.Scripts.Managers
/// <summary>
/// Create EC_IvtrEquip object from InventoryItemData
/// </summary>
private EC_IvtrEquip CreateEquipmentFromItemData(EC_IvtrItem itemData)
private EC_IvtrItem CreateEquipmentFromItemData(EC_IvtrItem itemData)
{
if (itemData == null)
return null;
var equipment = new EC_IvtrEquip(itemData.m_tid, itemData.m_expire_date);
// Set basic properties (use default values since InventoryItemData doesn't have these)
equipment.Price = 0;
equipment.Count = itemData.m_iCount;
equipment.PriceScale = 1.0f;
equipment.ScaleType = 0;
var equipment = EC_IvtrItem.CreateItem(itemData.m_tid, itemData.m_expire_date, itemData.m_iCount);
// Parse item info if available (use Content field)
if (itemData.Content != null && itemData.Content.Length > 0)
@@ -856,11 +850,11 @@ namespace BrewMonster.Scripts.Managers
string fullDesc = null;
if (showEquipmentDetails && currentSelectedEquipment != null)
{
fullDesc = currentSelectedEquipment.GetDesc();
fullDesc = currentSelectedEquipment.GetDesc(EC_IvtrItem.DescType.DESC_NORMAL, EC_Game.GetGameRun().GetHostPlayer().GetEquipment());
}
else
{
fullDesc = item.GetDesc();
fullDesc = item.GetDesc(EC_IvtrItem.DescType.DESC_NORMAL, EC_Game.GetGameRun().GetHostPlayer().GetEquipment());
}
if (!string.IsNullOrEmpty(fullDesc))
@@ -880,55 +874,7 @@ namespace BrewMonster.Scripts.Managers
// C++ code doesn't check IsInitialized() - it just calls GetWideString() directly
// 完全按照C++代码获取扩展描述:g_pGame->GetItemExtDesc(m_tid)
// C++代码不检查IsInitialized() - 它直接调用GetWideString()
string szExtDesc = null;
try
{
var itemExtDescTab = EC_Game.GetItemExtDesc();
if (itemExtDescTab != null)
{
// First try to get mapped message ID (like TryGetItemExtDesc does)
// 首先尝试获取映射的消息ID(如TryGetItemExtDesc所做)
if (EC_Game.TryGetItemMsg(item.m_tid, out int messageId, out int displayMode))
{
szExtDesc = itemExtDescTab.GetWideString(messageId);
}
// Fallback: direct lookup using tid (exactly like C++: m_ItemExtDesc.GetWideString(tid))
// 回退:直接使用tid查找(完全像C++m_ItemExtDesc.GetWideString(tid)
if (string.IsNullOrEmpty(szExtDesc))
{
szExtDesc = itemExtDescTab.GetWideString(item.m_tid);
}
}
}
catch (System.Exception ex)
{
// Only log once to avoid spam
// 仅记录一次以避免垃圾日志
if (!m_HasLoggedExtDescError)
{
Debug.LogWarning($"[InventoryUI] Error getting extended description: {ex.Message}");
m_HasLoggedExtDescError = true;
}
}
// Display extended description if found (exactly like C++ checks: if (!szExtDesc || !szExtDesc[0]))
// 如果找到扩展描述则显示(完全像C++检查:if (!szExtDesc || !szExtDesc[0])
string displayText = !string.IsNullOrEmpty(szExtDesc)
? szExtDesc.Replace("\\r", "\n")
: "";
// Debug logging to diagnose issues
// 调试日志以诊断问题
if (string.IsNullOrEmpty(displayText))
{
Debug.Log($"[InventoryUI] Extended description is empty for tid={item.m_tid}. szExtDesc was null/empty.");
}
else
{
Debug.Log($"[InventoryUI] Found extended description for tid={item.m_tid}, length={displayText.Length}");
}
// Setup equip and drop buttons
SetupEquipButton(package, item);
SetupDropButton(package, item);
@@ -937,17 +883,7 @@ namespace BrewMonster.Scripts.Managers
// 先显示面板
ShowDetailPanel(true);
// Set text directly - if this causes rebuild issues, we'll use coroutine
// 直接设置文本 - 如果这导致重建问题,我们将使用协程
if (extendedDescText != null)
{
extendedDescText.Set(displayText);
Debug.Log($"[InventoryUI] Set extended description text, extendedDescText is {(extendedDescText == null ? "null" : "not null")}");
}
else
{
Debug.LogWarning("[InventoryUI] extendedDescText is null! Check Inspector assignment.");
}
}
private void SetupEquipButton(byte package, EC_IvtrItem item)
@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: c94b2c779cdb94d398d4aa10eb44cac6
@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: 50210c0839c503b42843db0237a9c3a8
@@ -1,3 +0,0 @@
fileFormatVersion: 2
guid: 423a6efd71f143f08096d684ca414bba
timeCreated: 1757752654
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: c5535276db3184cac9313d3cc28bca47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -77,7 +77,7 @@ namespace PerfectWorld.Scripts.Managers
public EC_IvtrArmor(int tid, int expire_date) : base(tid, expire_date)
{
m_iCID = ICID_WEAPON;
m_iCID = (int)InventoryClassId.ICID_ARMOR;
elementdataman pDB = ElementDataManProvider.GetElementDataMan();
DATA_TYPE DataType = DATA_TYPE.DT_INVALID;
m_pDBEssence = (ARMOR_ESSENCE)pDB.get_data_ptr((uint)tid, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
@@ -86,7 +86,7 @@ namespace PerfectWorld.Scripts.Managers
m_iPileLimit = m_pDBEssence.pile_num_max;
m_iPrice = m_pDBEssence.price;
m_iShopPrice = m_pDBEssence.shop_price;
m_i64EquipMask = EC_IvtrEquip.ICID_WEAPON;
m_i64EquipMask = m_pDBSubType.equip_mask;
m_iProcType = (int)m_pDBEssence.proc_type;
FixProps = m_pDBEssence.fixed_props;
@@ -499,6 +499,7 @@ namespace PerfectWorld.Scripts.Managers
AddSharpenerDesc();
AddEngravedDesc();
AddMakerDesc();
m_strDesc += "\\r";
AddSuiteDesc();
AddExtDescText();
return m_strDesc;
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 30e9ab67f87a542d59ff94440cb4e78c
@@ -0,0 +1,16 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrArmorrune : EC_IvtrItem
{
public EC_IvtrArmorrune(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrArmorrune(EC_IvtrArmorrune other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: a1e7bdbebb3744fd78b3c9906d93f2ab
@@ -0,0 +1,14 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrArrow : EC_IvtrEquip
{
public EC_IvtrArrow(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrArrow(EC_IvtrArrow other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d252cb1fcb2e946688fd6836548fd0d4
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrAutoHp : EC_IvtrItem
{
public EC_IvtrAutoHp(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrAutoHp(EC_IvtrAutoHp other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 67deebf01a6fc4678a8eb801cae72d0e
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrAutoMp : EC_IvtrItem
{
public EC_IvtrAutoMp(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrAutoMp(EC_IvtrAutoMp other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 5e4aa169619834c7fa8e2421d81b9f36
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrBible : EC_IvtrItem
{
public EC_IvtrBible(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrBible(EC_IvtrBible other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: f352a8dce1daf4a078e5f1df0222d854
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrCertificate : EC_IvtrItem
{
public EC_IvtrCertificate(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrCertificate(EC_IvtrCertificate other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 150298d1bd0fb446a8cc9231d5145cad
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrCongregate : EC_IvtrItem
{
public EC_IvtrCongregate(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrCongregate(EC_IvtrCongregate other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: bf279660c3b2b4027bc9d97e691c1870
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDamagerune : EC_IvtrItem
{
public EC_IvtrDamagerune(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrDamagerune(EC_IvtrDamagerune other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: d2481f9333ffc4852bb83fb78511f6da
@@ -0,0 +1,79 @@
///////////////////////////////////////////////////////////////////////////
//
// Define and Macro
//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// Reference to External variables and functions
//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// Local Types and Variables and Global variables
//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// Local functions
//
///////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////
//
// Implement CECIvtrDecoration
//
///////////////////////////////////////////////////////////////////////////
using BrewMonster;
using ModelRenderer.Scripts.GameData;
using System.Collections.Generic;
using BrewMonster.Network;
using BrewMonster.Scripts.Managers;
using BrewMonster.Scripts;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDecoration : EC_IvtrEquip
{
protected IVTR_ESSENCE_DECORATION m_Essence;
protected DECORATION_MAJOR_TYPE m_pDBMajorType;
protected DECORATION_SUB_TYPE m_pDBSubType;
protected DECORATION_ESSENCE m_pDBEssence;
public EC_IvtrDecoration(int tid, int expire_date) : base(tid, expire_date)
{
m_iCID = (int)InventoryClassId.ICID_DECORATION;
elementdataman pDB = ElementDataManProvider.GetElementDataMan();
DATA_TYPE DataType = DATA_TYPE.DT_INVALID;
m_pDBEssence = (DECORATION_ESSENCE)pDB.get_data_ptr((uint)tid, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
m_pDBMajorType = (DECORATION_MAJOR_TYPE)pDB.get_data_ptr(m_pDBEssence.id_major_type, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
m_pDBSubType = (DECORATION_SUB_TYPE)pDB.get_data_ptr(m_pDBEssence.id_sub_type, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
m_iPileLimit = m_pDBEssence.pile_num_max;
m_iPrice = m_pDBEssence.price;
m_iShopPrice = m_pDBEssence.shop_price;
m_i64EquipMask = m_pDBSubType.equip_mask;
m_iProcType = (int)m_pDBEssence.proc_type;
FixProps = m_pDBEssence.fixed_props;
RepairFee = m_pDBEssence.repairfee;
ReputationReq = m_pDBEssence.require_reputation;
}
public EC_IvtrDecoration(EC_IvtrDecoration other) : base(other)
{
m_pDBEssence = other.m_pDBEssence;
m_pDBMajorType = other.m_pDBMajorType;
m_pDBSubType = other.m_pDBSubType;
m_Essence = other.m_Essence;
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 238a4e2d1554d44b0a9f3f283a9badd7
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDestroyingEssence : EC_IvtrItem
{
public EC_IvtrDestroyingEssence(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrDestroyingEssence(EC_IvtrDestroyingEssence other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 584e97711b3bb4f97a18866bd56ce985
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDoubleExp : EC_IvtrItem
{
public EC_IvtrDoubleExp(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrDoubleExp(EC_IvtrDoubleExp other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 684f0b389343e420dbf9d02a184554b8
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDyeTicket : EC_IvtrItem
{
public EC_IvtrDyeTicket(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrDyeTicket(EC_IvtrDyeTicket other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 2b30a0678c3bb488e8579f6b1cff0847
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrDynSkillEquip : EC_IvtrEquip
{
public EC_IvtrDynSkillEquip(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrDynSkillEquip(EC_IvtrDynSkillEquip other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: a1a5aae82e25b4ce5aeb499cb804f9fa
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrElement : EC_IvtrItem
{
public EC_IvtrElement(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrElement(EC_IvtrElement other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 28e3dc4074f0246449da8b794ca2a018
@@ -15,6 +15,8 @@ using System.Reflection;
using BrewMonster.Scripts.Managers;
using BrewMonster.Scripts;
using UnityEngine.AddressableAssets;
using CSNetwork.Protocols;
using Unity.VisualScripting;
namespace PerfectWorld.Scripts.Managers
{
@@ -26,12 +28,75 @@ namespace PerfectWorld.Scripts.Managers
{
#region Constants and Enums
// Item Class IDs
public const int ICID_EQUIP = 1;
public const int ICID_WEAPON = 2;
public enum EQUIP_CLASS_ID
{
ICID_ITEM = -100,
ICID_EQUIP = -101,
ICID_ARMOR = 0,
ICID_ARMORRUNE,
ICID_ARROW,
ICID_DECORATION,
ICID_DMGRUNE,
ICID_ELEMENT,
ICID_FASHION,
ICID_FLYSWORD,
ICID_MATERIAL,
ICID_MEDICINE,
ICID_REVSCROLL,
ICID_SKILLTOME,
ICID_TOSSMAT,
ICID_TOWNSCROLL,
ICID_UNIONSCROLL,
ICID_WEAPON,
ICID_TASKITEM,
ICID_STONE,
ICID_WING,
ICID_TASKDICE,
ICID_TASKNMMATTER,
ICID_ERRORITEM,
ICID_FACETICKET,
ICID_FACEPILL,
ICID_GM_GENERATOR,
ICID_RECIPE,
ICID_PETEGG,
ICID_PETFOOD,
ICID_PETFACETICKET,
ICID_FIREWORK,
ICID_TANKCALLIN,
ICID_SKILLMATTER,
ICID_REFINETICKET,
ICID_DESTROYINGESSENCE,
ICID_BIBLE,
ICID_SPEAKER,
ICID_AUTOHP,
ICID_AUTOMP,
ICID_DOUBLEEXP,
ICID_TRANSMITSCROLL,
ICID_DYETICKET,
ICID_GOBLIN,
ICID_GOBLIN_EQUIP,
ICID_GOBLIN_EXPPILL,
ICID_CERTIFICATE,
ICID_TARGETITEM,
ICID_LOOKINFOITEM,
ICID_INCSKILLABILITY,
ICID_WEDDINGBOOKCARD,
ICID_WEDDINGINVITECARD,
ICID_SHARPENER,
ICID_FACTIONMATERIAL,
ICID_CONGREGATE,
ICID_FORCETOKEN,
ICID_DYNSKILLEQUIP,
ICID_MONEYCONVERTIBLE,
ICID_MONSTERSPIRIT,
ICID_GENERALCARD,
ICID_GENERALCARD_DICE,
ICID_SHOPTOKEN,
ICID_UNIVERSAL_TOKEN,
}
// Item Made From Types
public enum ITEM_MAKE_TAG
public enum ITEM_MAKE_TAG
{
IMT_NULL,
IMT_CREATE, // GM
@@ -109,6 +174,9 @@ namespace PerfectWorld.Scripts.Managers
// Basic Item Properties
public int TemplateId { get; set; }
public int ExpireDate { get; set; }
/// <summary>
/// class id
/// </summary>
public int CID { get; set; }
public int Price { get; set; }
public int Count { get; set; }
@@ -506,7 +574,7 @@ namespace PerfectWorld.Scripts.Managers
{
TemplateId = tid;
ExpireDate = expireDate;
CID = ICID_EQUIP;
CID = (int)InventoryClassId.ICID_EQUIP;
Price = 0;
Count = 1;
PriceScale = 1.0f;
@@ -583,7 +651,6 @@ namespace PerfectWorld.Scripts.Managers
// [6 x short requirements][2 x int endurance][short essenceSize][maker info][essence bytes][short numHole][WORD stoneMask][numHole x int holes][int numProp][props]
if (TryParseEquipInfoNative(infoData, dataLen))
{
BMLogger.Log("CECIvtrEquip::SetItemInfo, native order success");
ParseProperties();
return true;
}
@@ -591,7 +658,6 @@ namespace PerfectWorld.Scripts.Managers
// Fallback to legacy/custom order if server payload differs
if (TryParseEquipInfoLegacy(infoData, dataLen))
{
BMLogger.Log("CECIvtrEquip::SetItemInfo, legacy order success");
ParseProperties();
return true;
}
@@ -1233,7 +1299,6 @@ namespace PerfectWorld.Scripts.Managers
}
}
Debug.Log($"[EC_IvtrEquip] Loaded {s_propIdToType.Count} property mappings from Addressables");
}
else
{
@@ -1304,7 +1369,7 @@ namespace PerfectWorld.Scripts.Managers
/// <summary>
/// Decide equipment name color
/// </summary>
public int DecideNameCol()
protected override int DecideNameCol()
{
int index = GetColorStrID(TemplateId);
if (index >= 0)
@@ -1329,10 +1394,16 @@ namespace PerfectWorld.Scripts.Managers
/// <summary>
/// Get color string ID for template
/// </summary>
private int GetColorStrID(int templateId)
public override int GetColorStrID(int templateId)
{
// This would normally query the game's color system
return -1;
int iIndex = EC_Game.GetItemNameColorIdx(templateId);
if (iIndex <= 0)
return -1;
else if (iIndex < 7)
return (int)DescriptipionMsg.ITEMDESC_COL_LIGHTBLUE + iIndex - 1;
else
return (int)DescriptipionMsg.ITEMDESC_COL2_START + iIndex - 7 + 1;
}
#endregion
@@ -1409,7 +1480,7 @@ namespace PerfectWorld.Scripts.Managers
// 5) Add-on properties (non-embedded, non-suite, non-engraved)
if (!string.IsNullOrEmpty(strAddon))
m_strDesc += strAddon;
AddPriceDesc(white, false);
// 6) Tessera / stones (socketed gems)
BuildTesseraDesc();
@@ -1425,10 +1496,10 @@ namespace PerfectWorld.Scripts.Managers
// 10) Maker & destroying info if any
AddMakerDesc();
// Destroying description is added by caller when needed; keep it optional here.
m_strDesc += "\\r";
AddExtDescText();
Debug.Log("m_strDesc add ext desc text: " + m_strDesc);
// 11) Price (sell price scaled)
AddPriceDesc(white, false);
return m_strDesc;
}
@@ -2177,6 +2248,11 @@ namespace PerfectWorld.Scripts.Managers
public int GetSuiteID()
{
// This would normally query the game's suite equip table
Dictionary<int, int> suiteEquipTab = EC_Game.GetSuiteEquipTab();
if (suiteEquipTab.TryGetValue(GetTemplateID(), out int suiteId))
{
return suiteId;
}
return 0;
}
@@ -4134,6 +4210,19 @@ namespace PerfectWorld.Scripts.Managers
}
}
struct SUITEITEM
{
public bool bEnabled;
public int tid;
public char[] szName;
public string Name => new string(szName);
public SUITEITEM(bool bEnabled, int tid)
{
this.bEnabled = bEnabled;
this.tid = tid;
this.szName = new char[32];
}
}
/// <summary>
/// Add suite description
/// </summary>
@@ -4152,63 +4241,128 @@ namespace PerfectWorld.Scripts.Managers
// ASSERT in C++
return;
}
// In C#, we'd need to cast to SUITE_ESSENCE struct
// For now, use placeholder values
string suiteName = "Suite"; // TODO: Get from SUITE_ESSENCE.name
int maxEquips = 12; // TODO: Get from SUITE_ESSENCE.max_equips
// Get host player (would normally come from EC_Game.GetGameRun().GetHostPlayer())
// Check if this equipment is in host's equipment pack
bool showDetail = false; // TODO: Check if m_pDescIvtr == pHostPlayer->GetEquipment()
SUITE_ESSENCE pSuiteEss = (SUITE_ESSENCE)pData;
CECHostPlayer hostPlayer = EC_Game.GetGameRun().GetHostPlayer();
// Colors
int nameCol = DecideNameCol();
int iNameCol = DecideNameCol();
int lblue = (int)DescriptipionMsg.ITEMDESC_COL_LIGHTBLUE;
int green = (int)DescriptipionMsg.ITEMDESC_COL_GREEN;
int gray = (int)DescriptipionMsg.ITEMDESC_COL_GRAY;
int white = (int)DescriptipionMsg.ITEMDESC_COL_WHITE;
int yellow = (int)DescriptipionMsg.ITEMDESC_COL_YELLOW;
// Save current description
string strCurDesc = m_strDesc;
if (!showDetail)
bool bShowDetail = true;
if (hostPlayer.GetEquipment() != m_pDescIvtr)
bShowDetail = false;
else
{
// Isn't equipment inventory, only add total suite number info.
for(int i = 0; i < m_pDescIvtr.GetSize(); i++)
{
EC_IvtrItem pItem = m_pDescIvtr.GetItem(i);
if (pItem == null)
{
bShowDetail = false;
continue;
}
if (pItem.m_tid == this.m_tid)
{
bShowDetail = true;
break;
}
}
}
if (!bShowDetail)
{
m_strDesc = "\\r\\r";
AddDescText(nameCol, false, "{0} ({1})", suiteName, maxEquips);
AddDescText(iNameCol, true, "{0} {1}/{2}", pSuiteEss.Name, 0, pSuiteEss.max_equips);
m_strDesc = strCurDesc + m_strDesc;
return;
}
// Maximum number of suite items
// Maximum number of suite items
const int MAX_NUM = 12;
SUITEITEM[] aSuiteItems = new SUITEITEM[MAX_NUM];
// Get equipped suite item list
int[] aEquipped = new int[MAX_NUM];
int itemCnt = 0; // TODO: Get from pHostPlayer->GetEquippedSuiteItem(idSuite, aEquipped)
if (itemCnt == 0)
return;
m_strDesc = "\\r\\r";
// Build suite addon properties at first
if (itemCnt > 1)
int maxEquips = (pSuiteEss.max_equips > MAX_NUM) ? MAX_NUM : (int)pSuiteEss.max_equips;
for(int i = 0; i < maxEquips; i++)
{
// Change color
AddDescText(lblue, false, "");
// In C++, this loops through suite addons and displays them
// For now, skip detailed addon display
aSuiteItems[i].bEnabled = false;
aSuiteItems[i].tid = (int)pSuiteEss.equipments[i].id;
aSuiteItems[i].szName = new char[32];
aSuiteItems[i].szName[0] = '\0';
EC_IvtrItem pEquipItem = CreateItem((int)pSuiteEss.equipments[i].id, 0,1);
if (pEquipItem != null)
{
aSuiteItems[i].szName = pEquipItem.GetName().ToCharArray();
//delete pEquipItem;
}
else
{
aSuiteItems[i].tid = 0;
}
}
int iItemCnt;
int[] aEquipped = new int[MAX_NUM];
iItemCnt = hostPlayer.GetEquippedSuiteItem(idSuite,ref aEquipped);
if(iItemCnt == 0) return;
m_strDesc += "\\r\\r";
// Build suite addon properties at first
for (int i = 0; i < MAX_NUM; i++)
{
for(int j = 0; j < iItemCnt; j++)
{
if (aSuiteItems[i].tid == aEquipped[j])
{
aSuiteItems[i].bEnabled = true;
break;
}
}
}
// Add suite name
AddDescText(yellow, true, "{0} ({1} / {2})", suiteName, itemCnt, maxEquips);
// List suite item names would go here
// In C++, this creates SUITEITEM array and lists enabled/disabled items
// green, gray, white colors would be used here for enabled/disabled items
// For now, simplified version
if(iItemCnt > 1)
{
// Change color
AddDescText(lblue, false, "");
for (int i=1; i < iItemCnt; i++)
{
int idProp = (int)pSuiteEss.addons[i-1].id;
if (idProp == 0)
continue;
pData = dataMan.get_data_ptr((uint)idProp, ID_SPACE.ID_SPACE_ADDON, ref dataType);
if (dataType != DATA_TYPE.DT_EQUIPMENT_ADDON)
{
continue;
}
EQUIPMENT_ADDON pAddOn = (EQUIPMENT_ADDON)pData;
AddDescText(-1, false, "(%d) ", i+1);
AddDescText(-1, true, "%s", pAddOn.Name);
}
}
// Add suite name
AddDescText(yellow/*iNameCol*/, true, "{0} ({1} / {2})", pSuiteEss.Name, iItemCnt, pSuiteEss.max_equips);
for (int i=0; i < pSuiteEss.max_equips; i++)
{
SUITEITEM suiteItem = aSuiteItems[i];
if (suiteItem.tid == 0)
continue;
int col = suiteItem.bEnabled ? green : gray;
bool bRet = (i == pSuiteEss.max_equips-1) ? false : true;
// Add item name
AddDescText(col, bRet, " %s", suiteItem.Name);
}
}
/// <summary>
/// Add destroying description
/// </summary>
@@ -4493,27 +4647,22 @@ namespace PerfectWorld.Scripts.Managers
if (string.IsNullOrEmpty(Maker))
return;
BMLogger.Log("[THN]EC_IvtrEquip: AddMakerDesc: Maker: " + Maker);
m_strDesc += "\\r";
m_strDesc += "\\r";
// For signed marks (IMT_SIGN), Maker already contains color codes and formatted text.
if (MadeFrom == (byte)ITEM_MAKE_TAG.IMT_SIGN)
{
BMLogger.Log("[THN]EC_IvtrEquip: AddMakerDesc IF: Maker: " + Maker);
m_strDesc += Maker;
}
else
{
BMLogger.Log("[THN]EC_IvtrEquip: AddMakerDesc ELSE: Maker: " + Maker);
// Normal "made by" line using item-desc string if available
string fmt = GetItemDescString(DescriptipionMsg.ITEMDESC_MADEFROM);
if (string.IsNullOrEmpty(fmt))
{
fmt = "Made by {0}";
}
BMLogger.Log("[THN]EC_IvtrEquip: AddMakerDesc ELSE: fmt: " + fmt);
AddDescText((int)DescriptipionMsg.ITEMDESC_COL_GREEN, false, fmt, Maker);
BMLogger.Log("[THN]EC_IvtrEquip: AddMakerDesc ELSE: m_strDesc: " + m_strDesc);
}
}
}
/// <summary>
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: f740d7d39c73f41a7a352c569c5442db
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFacePill : EC_IvtrItem
{
public EC_IvtrFacePill(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFacePill(EC_IvtrFacePill other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: a8785f321cb1c42e784355f0e452a2f8
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFaceTicket : EC_IvtrItem
{
public EC_IvtrFaceTicket(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFaceTicket(EC_IvtrFaceTicket other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 97a6a36bce3c046a88e5c12e8ac79b03
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFactionMaterial : EC_IvtrItem
{
public EC_IvtrFactionMaterial(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFactionMaterial(EC_IvtrFactionMaterial other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: e3a3f865615ba4eaca9942d99698c332
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFashion : EC_IvtrItem
{
public EC_IvtrFashion(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFashion(EC_IvtrFashion other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8cbdfe37e56eb46be91ac835220dfb25
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFirework : EC_IvtrItem
{
public EC_IvtrFirework(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFirework(EC_IvtrFirework other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 9a4c28d0768f341b2aef5ec207875a31
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrFlysword : EC_IvtrItem
{
public EC_IvtrFlysword(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrFlysword(EC_IvtrFlysword other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 76745e0d1f528425eac71363b77c8cdd
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrForceToken : EC_IvtrItem
{
public EC_IvtrForceToken(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrForceToken(EC_IvtrForceToken other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: de39c4a9aa1e1434c96ce485ea144291
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGeneralCard : EC_IvtrItem
{
public EC_IvtrGeneralCard(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGeneralCard(EC_IvtrGeneralCard other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: bfe40c592c38542d2a590310173f5c8c
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGeneralCardDice : EC_IvtrItem
{
public EC_IvtrGeneralCardDice(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGeneralCardDice(EC_IvtrGeneralCardDice other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: ab3e2b5b4e09949a69cfc003d0103804
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGmGenerator : EC_IvtrItem
{
public EC_IvtrGmGenerator(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGmGenerator(EC_IvtrGmGenerator other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 92617801fcd734adfa84fb4d4ca84f0c
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGoblin : EC_IvtrItem
{
public EC_IvtrGoblin(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGoblin(EC_IvtrGoblin other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: c8726058514b64b129c6b619e7e1d3fa
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGoblinEquip : EC_IvtrEquip
{
public EC_IvtrGoblinEquip(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGoblinEquip(EC_IvtrGoblinEquip other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 89be2e126b8d44151bdd559226b0f306
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrGoblinExpPill : EC_IvtrItem
{
public EC_IvtrGoblinExpPill(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrGoblinExpPill(EC_IvtrGoblinExpPill other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4b383fd16faa444fa8dc9a5c4e4aac86
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrIncSkillAbility : EC_IvtrItem
{
public EC_IvtrIncSkillAbility(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrIncSkillAbility(EC_IvtrIncSkillAbility other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4050b6d604fee48c399953ca2707f650
@@ -167,17 +167,14 @@ namespace BrewMonster.Scripts.Managers
}
}
Debug.Log($"[Inventory] Loaded multi-sprite atlas with {atlasSprites.Length} sprites");
}
else
{
Debug.LogWarning("[Inventory] Failed to load multi-sprite atlas: iconlist_ivtrm_multisprite");
_multiSpriteAtlas = new Sprite[0]; // Prevent repeated loading attempts
}
}
catch (Exception ex)
{
Debug.LogError($"[Inventory] Error loading multi-sprite atlas: {ex.Message}");
_multiSpriteAtlas = new Sprite[0]; // Prevent repeated loading attempts
}
}
@@ -332,7 +329,6 @@ namespace BrewMonster.Scripts.Managers
try
{
var val = getNameMethod.Invoke(data, null) as string;
Debug.Log($"[Inventory] GetName method result: '{val}' (length: {val?.Length ?? 0})");
if (!string.IsNullOrEmpty(val) && !string.IsNullOrWhiteSpace(val)) return val;
}
catch (Exception ex)
@@ -459,15 +455,12 @@ namespace BrewMonster.Scripts.Managers
ci += extraLen;
}
var item = new EC_IvtrItem(tid, expireDate)
{
Package = byPackage,
Slot = slotIndex,
State = state,
Crc = crc,
Content = extra
};
item.SetCount(amount);
var item = EC_IvtrItem.CreateItem(tid, expireDate, amount);
item.Package = byPackage;
item.Slot = slotIndex;
item.State = state;
item.Crc = crc;
item.Content = extra;
items.Add(item);
}
@@ -814,16 +807,191 @@ namespace BrewMonster.Scripts.Managers
var pItem = new EC_IvtrItem(tid, expire_date);
DATA_TYPE DataType = DATA_TYPE.DT_INVALID;
object data = ElementDataManProvider.GetElementDataMan().get_data_ptr((uint)tid, ID_SPACE.ID_SPACE_ESSENCE, ref DataType);
Debug.Log("DataType: " + DataType);
switch(DataType)
{
case DATA_TYPE.DT_WEAPON_ESSENCE:
pItem = new EC_IvtrWeapon(tid, expire_date);
break;
case DATA_TYPE.DT_PROJECTILE_ESSENCE:
pItem = new EC_IvtrArrow(tid, expire_date);
break;
case DATA_TYPE.DT_ARMOR_ESSENCE:
pItem = new EC_IvtrArmor(tid, expire_date);
break;
case DATA_TYPE.DT_DECORATION_ESSENCE:
pItem = new EC_IvtrDecoration(tid, expire_date);
break;
case DATA_TYPE.DT_FASHION_ESSENCE:
pItem = new EC_IvtrFashion(tid, expire_date);
break;
case DATA_TYPE.DT_MEDICINE_ESSENCE:
pItem = new EC_IvtrMedicine(tid, expire_date);
break;
case DATA_TYPE.DT_MATERIAL_ESSENCE:
pItem = new EC_IvtrMaterial(tid, expire_date);
break;
case DATA_TYPE.DT_DAMAGERUNE_ESSENCE:
pItem = new EC_IvtrDamagerune(tid, expire_date);
break;
case DATA_TYPE.DT_ARMORRUNE_ESSENCE:
pItem = new EC_IvtrArmorrune(tid, expire_date);
break;
case DATA_TYPE.DT_SKILLTOME_ESSENCE:
pItem = new EC_IvtrSkilltome(tid, expire_date);
break;
case DATA_TYPE.DT_FLYSWORD_ESSENCE:
pItem = new EC_IvtrFlysword(tid, expire_date);
break;
case DATA_TYPE.DT_TOWNSCROLL_ESSENCE:
pItem = new EC_IvtrTownscroll(tid, expire_date);
break;
case DATA_TYPE.DT_UNIONSCROLL_ESSENCE:
pItem = new EC_IvtrUnionscroll(tid, expire_date);
break;
case DATA_TYPE.DT_REVIVESCROLL_ESSENCE:
pItem = new EC_IvtrRevScroll(tid, expire_date);
break;
case DATA_TYPE.DT_ELEMENT_ESSENCE:
pItem = new EC_IvtrElement(tid, expire_date);
break;
case DATA_TYPE.DT_TOSSMATTER_ESSENCE:
pItem = new EC_IvtrTossMat(tid, expire_date);
break;
case DATA_TYPE.DT_TASKMATTER_ESSENCE:
pItem = new EC_IvtrTaskmatter(tid, expire_date);
break;
case DATA_TYPE.DT_STONE_ESSENCE:
pItem = new EC_IvtrStone(tid, expire_date);
break;
case DATA_TYPE.DT_WINGMANWING_ESSENCE:
pItem = new EC_IvtrWing(tid, expire_date);
break;
case DATA_TYPE.DT_TASKDICE_ESSENCE:
pItem = new EC_IvtrTaskDice(tid, expire_date);
break;
case DATA_TYPE.DT_TASKNORMALMATTER_ESSENCE:
pItem = new EC_IvtrTaskNmMatter(tid, expire_date);
break;
case DATA_TYPE.DT_FACETICKET_ESSENCE:
pItem = new EC_IvtrFaceTicket(tid, expire_date);
break;
case DATA_TYPE.DT_FACEPILL_ESSENCE:
pItem = new EC_IvtrFacePill(tid, expire_date);
break;
case DATA_TYPE.DT_GM_GENERATOR_ESSENCE:
pItem = new EC_IvtrGmGenerator(tid, expire_date);
break;
case DATA_TYPE.DT_RECIPE_ESSENCE:
pItem = new EC_IvtrRecipe(tid, expire_date);
break;
case DATA_TYPE.DT_PET_EGG_ESSENCE:
pItem = new EC_IvtrPetEgg(tid, expire_date);
break;
case DATA_TYPE.DT_PET_FOOD_ESSENCE:
pItem = new EC_IvtrPetFood(tid, expire_date);
break;
case DATA_TYPE.DT_PET_FACETICKET_ESSENCE:
pItem = new EC_IvtrPetFaceTicket(tid, expire_date);
break;
case DATA_TYPE.DT_FIREWORKS_ESSENCE:
pItem = new EC_IvtrFirework(tid, expire_date);
break;
case DATA_TYPE.DT_WAR_TANKCALLIN_ESSENCE:
pItem = new EC_IvtrWarTankCallin(tid, expire_date);
break;
case DATA_TYPE.DT_SKILLMATTER_ESSENCE:
pItem = new EC_IvtrSkillMat(tid, expire_date);
break;
case DATA_TYPE.DT_INC_SKILL_ABILITY_ESSENCE:
pItem = new EC_IvtrIncSkillAbility(tid, expire_date);
break;
case DATA_TYPE.DT_REFINE_TICKET_ESSENCE:
pItem = new EC_IvtrRefineTicket(tid, expire_date);
break;
case DATA_TYPE.DT_DESTROYING_ESSENCE:
pItem = new EC_IvtrDestroyingEssence(tid, expire_date);
break;
case DATA_TYPE.DT_BIBLE_ESSENCE:
pItem = new EC_IvtrBible(tid, expire_date);
break;
case DATA_TYPE.DT_SPEAKER_ESSENCE:
pItem = new EC_IvtrSpeaker(tid, expire_date);
break;
case DATA_TYPE.DT_AUTOHP_ESSENCE:
pItem = new EC_IvtrAutoHp(tid, expire_date);
break;
case DATA_TYPE.DT_AUTOMP_ESSENCE:
pItem = new EC_IvtrAutoMp(tid, expire_date);
break;
case DATA_TYPE.DT_DOUBLE_EXP_ESSENCE:
pItem = new EC_IvtrDoubleExp(tid, expire_date);
break;
case DATA_TYPE.DT_DYE_TICKET_ESSENCE:
pItem = new EC_IvtrDyeTicket(tid, expire_date);
break;
case DATA_TYPE.DT_TRANSMITSCROLL_ESSENCE:
pItem = new EC_IvtrTransmitScroll(tid, expire_date);
break;
case DATA_TYPE.DT_GOBLIN_ESSENCE:
pItem = new EC_IvtrGoblin(tid, expire_date);
break;
case DATA_TYPE.DT_GOBLIN_EQUIP_ESSENCE:
pItem = new EC_IvtrGoblinEquip(tid, expire_date);
break;
case DATA_TYPE.DT_GOBLIN_EXPPILL_ESSENCE:
pItem = new EC_IvtrGoblinExpPill(tid, expire_date);
break;
case DATA_TYPE.DT_SELL_CERTIFICATE_ESSENCE:
pItem = new EC_IvtrCertificate(tid, expire_date);
break;
case DATA_TYPE.DT_TARGET_ITEM_ESSENCE:
pItem = new EC_IvtrTargetItem(tid, expire_date);
break;
case DATA_TYPE.DT_LOOK_INFO_ESSENCE:
pItem = new EC_IvtrLookInfoItem(tid, expire_date);
break;
case DATA_TYPE.DT_WEDDING_BOOKCARD_ESSENCE:
pItem = new EC_IvtrWeddingBookCard(tid, expire_date);
break;
case DATA_TYPE.DT_WEDDING_INVITECARD_ESSENCE:
pItem = new EC_IvtrWeddingInviteCard(tid, expire_date);
break;
case DATA_TYPE.DT_SHARPENER_ESSENCE:
pItem = new EC_IvtrSharpener(tid, expire_date);
break;
case DATA_TYPE.DT_FACTION_MATERIAL_ESSENCE:
pItem = new EC_IvtrFactionMaterial(tid, expire_date);
break;
case DATA_TYPE.DT_CONGREGATE_ESSENCE:
pItem = new EC_IvtrCongregate(tid, expire_date);
break;
case DATA_TYPE.DT_FORCE_TOKEN_ESSENCE:
pItem = new EC_IvtrForceToken(tid, expire_date);
break;
case DATA_TYPE.DT_DYNSKILLEQUIP_ESSENCE:
pItem = new EC_IvtrDynSkillEquip(tid, expire_date);
break;
case DATA_TYPE.DT_MONEY_CONVERTIBLE_ESSENCE:
pItem = new EC_IvtrMoneyConvertible(tid, expire_date);
break;
case DATA_TYPE.DT_MONSTER_SPIRIT_ESSENCE:
pItem = new EC_IvtrMonsterSpirit(tid, expire_date);
break;
case DATA_TYPE.DT_POKER_ESSENCE:
pItem = new EC_IvtrGeneralCard(tid, expire_date);
break;
case DATA_TYPE.DT_POKER_DICE_ESSENCE:
pItem = new EC_IvtrGeneralCardDice(tid, expire_date);
break;
case DATA_TYPE.DT_SHOP_TOKEN_ESSENCE:
pItem = new EC_IvtrShopToken(tid, expire_date);
break;
case DATA_TYPE.DT_UNIVERSAL_TOKEN_ESSENCE:
pItem = new EC_IvtrUniversalToken(tid, expire_date);
break;
default:
BMLogger.Log("[THN]EC_IvtrItem: CreateItem: Default Item: tid: " + tid + ", expire_date: " + expire_date + ", pItem: " + pItem.GetName());
pItem = new EC_IvtrUnknown(tid, expire_date);
break;
}
pItem.SetCount(iCount);
@@ -965,7 +1133,7 @@ namespace BrewMonster.Scripts.Managers
/// <summary>Clone item (shallow copy, same as C++ default).</summary>
public virtual EC_IvtrItem Clone()
{
return new EC_IvtrItem(this);
return CreateItem(m_tid, m_expire_date, m_iCount, m_iCID);
}
/// <summary>Get item cool time in milliseconds (0 by default).</summary>
@@ -1298,10 +1466,23 @@ namespace BrewMonster.Scripts.Managers
// Add special properties description / 添加特殊属性描述
var pDescTab = EC_Game.GetItemDesc();
// Note: ITEMDESC_COL2_BRIGHTBLUE constant - adjust based on actual string table / 注意:ITEMDESC_COL2_BRIGHTBLUE常量 - 根据实际字符串表调整
int green = 1000; // ITEMDESC_COL2_BRIGHTBLUE placeholder - adjust this value
int green = (int)DescriptipionMsg.ITEMDESC_COL2_BRIGHTBLUE; // ITEMDESC_COL2_BRIGHTBLUE placeholder - adjust this value
if(typeof(EC_IvtrArmor) == this.GetType())
{
Debug.Log("This is an armor");
}
Debug.Log("armor m_iCID: " + m_iCID);
Debug.Log("armor m_iProcType: " + m_iProcType);
if (m_iCID != (int)InventoryClassId.ICID_GOBLIN) // goblin does not need to display these special properties / 地精不需要显示这些特殊属性
{
Debug.Log("m_iCID != (int)InventoryClassId.ICID_GOBLIN");
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_NO_USER_TRASH: " + (m_iProcType & (int)ProcType.PROC_NO_USER_TRASH));
Debug.Log("!((m_iProcType & (int)ProcType.PROC_BINDING) != 0): " + !((m_iProcType & (int)ProcType.PROC_BINDING) != 0));
Debug.Log("((m_iProcType & (int)ProcType.PROC_DROPWHENDIE) != 0): " + ((m_iProcType & (int)ProcType.PROC_DROPWHENDIE) != 0));
Debug.Log("((m_iProcType & (int)ProcType.PROC_DROPPABLE) != 0): " + ((m_iProcType & (int)ProcType.PROC_DROPPABLE) != 0));
Debug.Log("((m_iProcType & (int)ProcType.PROC_SELLABLE) != 0): " + ((m_iProcType & (int)ProcType.PROC_SELLABLE) != 0));
// Exact C++ logic: (PROC_NO_USER_TRASH) || (!PROC_BINDING && (PROC_DROPWHENDIE || ...))
// 精确的C++逻辑:(PROC_NO_USER_TRASH) || (!PROC_BINDING && (PROC_DROPWHENDIE || ...))
if ((m_iProcType & (int)ProcType.PROC_NO_USER_TRASH) != 0
@@ -1325,121 +1506,140 @@ namespace BrewMonster.Scripts.Managers
m_strDesc += szCol;
}
}
// Note: These message IDs are placeholders - adjust based on actual string table / 注意:这些消息ID是占位符 - 根据实际字符串表调整
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_DROPWHENDIE: " + (m_iProcType & (int)ProcType.PROC_DROPWHENDIE));
if ((m_iProcType & (int)ProcType.PROC_DROPWHENDIE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_DEAD_PROTECT placeholder - adjust this value
string desc = pDescTab.GetWideString(2000); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_DEAD_PROTECT);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_DROPPABLE: " + (m_iProcType & (int)ProcType.PROC_DROPPABLE));
if ((m_iProcType & (int)ProcType.PROC_DROPPABLE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_NO_DROP placeholder - adjust this value
string desc = pDescTab.GetWideString(2001); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NO_DROP);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_SELLABLE: " + (m_iProcType & (int)ProcType.PROC_SELLABLE));
if ((m_iProcType & (int)ProcType.PROC_SELLABLE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_NO_TRADE placeholder - adjust this value
string desc = pDescTab.GetWideString(2002); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NO_TRADE);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_TRADEABLE: " + (m_iProcType & (int)ProcType.PROC_TRADEABLE));
if ((m_iProcType & (int)ProcType.PROC_TRADEABLE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_NO_PLAYER_TRADE placeholder - adjust this value
string desc = pDescTab.GetWideString(2003); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NO_PLAYER_TRADE);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_DISAPEAR: " + (m_iProcType & (int)ProcType.PROC_DISAPEAR));
if ((m_iProcType & (int)ProcType.PROC_DISAPEAR) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_LEAVE_SCENE_DISAPEAR placeholder - adjust this value
string desc = pDescTab.GetWideString(2004); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_LEAVE_SCENE_DISAPEAR);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_USE: " + (m_iProcType & (int)ProcType.PROC_USE));
if ((m_iProcType & (int)ProcType.PROC_USE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_USE_AFTER_PICK_UP placeholder - adjust this value
string desc = pDescTab.GetWideString(2005); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_USE_AFTER_PICK_UP);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_DEADDROP: " + (m_iProcType & (int)ProcType.PROC_DEADDROP));
if ((m_iProcType & (int)ProcType.PROC_DEADDROP) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_DROP_WHEN_DEAD placeholder - adjust this value
string desc = pDescTab.GetWideString(2006); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_DROP_WHEN_DEAD);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_OFFLINE: " + (m_iProcType & (int)ProcType.PROC_OFFLINE));
if ((m_iProcType & (int)ProcType.PROC_OFFLINE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_DROP_WHEN_OFFLINE placeholder - adjust this value
string desc = pDescTab.GetWideString(2007); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_DROP_WHEN_OFFLINE);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_UNREPAIRABLE: " + (m_iProcType & (int)ProcType.PROC_UNREPAIRABLE));
if ((m_iProcType & (int)ProcType.PROC_UNREPAIRABLE) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_UNREPAIRABLE placeholder - adjust this value
string desc = pDescTab.GetWideString(2008); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_UNREPAIRABLE);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
Debug.Log("m_iProcType: " + m_iProcType);
Debug.Log("m_iProcType & (int)ProcType.PROC_NO_USER_TRASH: " + (m_iProcType & (int)ProcType.PROC_NO_USER_TRASH));
if ((m_iProcType & (int)ProcType.PROC_NO_USER_TRASH) != 0)
{
m_strDesc += "\\r";
if (pDescTab != null && pDescTab.IsInitialized())
{
// ITEMDESC_NO_USER_TRASH placeholder - adjust this value
string desc = pDescTab.GetWideString(2009); // Placeholder ID
string desc = pDescTab.GetWideString((int)DescriptipionMsg.ITEMDESC_NO_USER_TRASH);
if (!string.IsNullOrEmpty(desc))
m_strDesc += desc;
}
Debug.Log("m_strDesc: " + m_strDesc);
}
}
else
{
Debug.Log("m_iCID == (int)InventoryClassId.ICID_GOBLIN");
TrimLastReturn();
}
}
@@ -1516,7 +1716,7 @@ namespace BrewMonster.Scripts.Managers
str = iPrice.ToString();
}
protected int GetColorStrID(int tid)
public virtual int GetColorStrID(int templateId)
{
// Placeholder: color index lookup; return -1 (white) by default.
return -1;
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 566fc2d24eefe48e7bd10ed67d15563f
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrLookInfoItem : EC_IvtrItem
{
public EC_IvtrLookInfoItem(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrLookInfoItem(EC_IvtrLookInfoItem other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 384fce986646f438698912f0c15b9ba8
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrMaterial : EC_IvtrItem
{
public EC_IvtrMaterial(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrMaterial(EC_IvtrMaterial other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: e681cc9149ec5499fa6584a02a3916e1
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrMedicine : EC_IvtrItem
{
public EC_IvtrMedicine(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrMedicine(EC_IvtrMedicine other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: ed110c7e41c6f437791bdf92da68019c
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrMoneyConvertible : EC_IvtrItem
{
public EC_IvtrMoneyConvertible(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrMoneyConvertible(EC_IvtrMoneyConvertible other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 6b6e854a6db4c4d87aaaeba867d72bae
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrMonsterSpirit : EC_IvtrItem
{
public EC_IvtrMonsterSpirit(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrMonsterSpirit(EC_IvtrMonsterSpirit other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: b3ec2fe733bae45c982969aed8b8eae0
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrPetEgg : EC_IvtrItem
{
public EC_IvtrPetEgg(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrPetEgg(EC_IvtrPetEgg other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 31d39c5195d7e45fa91082d7db9b3204
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrPetFaceTicket : EC_IvtrItem
{
public EC_IvtrPetFaceTicket(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrPetFaceTicket(EC_IvtrPetFaceTicket other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 7c61b694d841e4db5ac2811b04531e7f
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrPetFood : EC_IvtrItem
{
public EC_IvtrPetFood(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrPetFood(EC_IvtrPetFood other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 5d8c5f936052f4ed0b63e061797eefbb
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrRecipe : EC_IvtrItem
{
public EC_IvtrRecipe(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrRecipe(EC_IvtrRecipe other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 8aa46bf1a8e2045fcb18711081dcfe56
@@ -0,0 +1,15 @@
using BrewMonster.Scripts.Managers;
namespace PerfectWorld.Scripts.Managers
{
public class EC_IvtrRefineTicket : EC_IvtrItem
{
public EC_IvtrRefineTicket(int tid, int expire_date) : base(tid, expire_date)
{
}
public EC_IvtrRefineTicket(EC_IvtrRefineTicket other) : base(other)
{
}
}
}
@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4b2d8c8d5a4104436b97dfb062ddea9e

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