Ruined Town VO, trigers

This commit is contained in:
szczuras4
2025-06-05 16:09:19 +02:00
parent 8b615d059a
commit e173c60866
14 changed files with 5494 additions and 3624 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -1,17 +1,5 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-9090322027518344444
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fde0d25a170598d46a0b9dc16b4527a5, type: 3}
m_Name: ActivationPlayableAsset
m_EditorClassIdentifier:
--- !u!114 &-9004496542854398162
MonoBehaviour:
m_ObjectHideFlags: 1
@@ -37,7 +25,7 @@ MonoBehaviour:
m_Start: 0
m_ClipIn: 0
m_Asset: {fileID: 8291285022045805294}
m_Duration: 11.816666666666666
m_Duration: 10.1
m_TimeScale: 1
m_ParentTrack: {fileID: -9004496542854398162}
m_EaseInDuration: 0
@@ -125,120 +113,10 @@ MonoBehaviour:
m_Curves: {fileID: 0}
m_Parent: {fileID: 11400000}
m_Children: []
m_Clips:
- m_Version: 1
m_Start: 11.816666666666666
m_ClipIn: 0
m_Asset: {fileID: -9090322027518344444}
m_Duration: 10.116666666666667
m_TimeScale: 1
m_ParentTrack: {fileID: -8585281870820356316}
m_EaseInDuration: 0
m_EaseOutDuration: 0
m_BlendInDuration: 0
m_BlendOutDuration: 0
m_MixInCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_MixOutCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0
outWeight: 0
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
m_BlendInCurveMode: 0
m_BlendOutCurveMode: 0
m_ExposedParameterNames: []
m_AnimationCurves: {fileID: 0}
m_Recordable: 0
m_PostExtrapolationMode: 0
m_PreExtrapolationMode: 0
m_PostExtrapolationTime: 0
m_PreExtrapolationTime: 0
m_DisplayName: Active
m_Markers:
m_Objects: []
m_PostPlaybackState: 3
--- !u!114 &-7188893249053917035
MonoBehaviour:
m_ObjectHideFlags: 1
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: d21dcc2386d650c4597f3633c75a1f98, type: 3}
m_Name: Animation Track (1)
m_EditorClassIdentifier:
m_Version: 3
m_AnimClip: {fileID: 0}
m_Locked: 0
m_Muted: 0
m_CustomPlayableFullTypename:
m_Curves: {fileID: 0}
m_Parent: {fileID: 11400000}
m_Children: []
m_Clips: []
m_Markers:
m_Objects: []
m_InfiniteClipPreExtrapolation: 1
m_InfiniteClipPostExtrapolation: 1
m_InfiniteClipOffsetPosition: {x: -89.65042, y: 37.129417, z: 108.52489}
m_InfiniteClipOffsetEulerAngles: {x: 17.360558, y: 359.3233, z: 0.01886283}
m_InfiniteClipTimeOffset: 0
m_InfiniteClipRemoveOffset: 0
m_InfiniteClipApplyFootIK: 1
mInfiniteClipLoop: 0
m_MatchTargetFields: 63
m_Position: {x: 0, y: 0, z: 0}
m_EulerAngles: {x: 0, y: 0, z: 0}
m_AvatarMask: {fileID: 0}
m_ApplyAvatarMask: 1
m_TrackOffset: 0
m_InfiniteClip: {fileID: 4623381239332513062}
m_OpenClipOffsetRotation: {x: 0, y: 0, z: 0, w: 1}
m_Rotation: {x: 0, y: 0, z: 0, w: 1}
m_ApplyOffsets: 0
m_PostPlaybackState: 3
--- !u!74 &-2028729715915619918
AnimationClip:
m_ObjectHideFlags: 0
@@ -258,15 +136,15 @@ AnimationClip:
time: 0
value: {x: -0.0074944287, y: 0.01578362, z: -0.004803707, w: 0.9998358}
inSlope: {x: 0, y: 0, z: 0, w: 0}
outSlope: {x: 0.0007071449, y: 0.000009174222, z: 0.000691646, w: 0.000013344324}
outSlope: {x: 0.0009305147, y: 0.000012072135, z: 0.00091012014, w: 0.00001755947}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
- serializedVersion: 3
time: 13.4
time: 10.183333
value: {x: -0.037476152, y: 0.01592124, z: -0.00433206, w: 0.9991613}
inSlope: {x: 0.0006711083, y: 0.000033638815, z: 0.00078926113, w: 0.000026688647}
inSlope: {x: 0.0009061418, y: 0.00004353285, z: 0.001014791, w: 0.00003511894}
outSlope: {x: 0, y: 0, z: 0, w: 0}
tangentMode: 0
weightedMode: 0
@@ -292,7 +170,7 @@ AnimationClip:
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 13.4
time: 10.183333
value: {x: -1.0944138, y: 1.452816, z: 21.121784}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
@@ -338,7 +216,7 @@ AnimationClip:
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 13.4
m_StopTime: 10.183333
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
@@ -368,7 +246,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: -1.0944138
inSlope: 0
outSlope: 0
@@ -398,7 +276,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 1.452816
inSlope: 0
outSlope: 0
@@ -428,7 +306,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 21.121784
inSlope: 0
outSlope: 0
@@ -452,15 +330,15 @@ AnimationClip:
time: 0
value: -0.0074944287
inSlope: 0
outSlope: 0.0007071449
outSlope: 0.0009305147
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: -0.037476152
inSlope: 0.0006711083
inSlope: 0.0009061418
outSlope: 0
tangentMode: 0
weightedMode: 0
@@ -482,15 +360,15 @@ AnimationClip:
time: 0
value: 0.01578362
inSlope: 0
outSlope: 0.000009174222
outSlope: 0.000012072135
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 0.01592124
inSlope: 0.000033638815
inSlope: 0.00004353285
outSlope: 0
tangentMode: 0
weightedMode: 0
@@ -512,15 +390,15 @@ AnimationClip:
time: 0
value: -0.004803707
inSlope: 0
outSlope: 0.000691646
outSlope: 0.00091012014
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: -0.00433206
inSlope: 0.00078926113
inSlope: 0.001014791
outSlope: 0
tangentMode: 0
weightedMode: 0
@@ -542,15 +420,15 @@ AnimationClip:
time: 0
value: 0.9998358
inSlope: 0
outSlope: 0.000013344324
outSlope: 0.00001755947
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 0.9991613
inSlope: 0.000026688647
inSlope: 0.00003511894
outSlope: 0
tangentMode: 0
weightedMode: 0
@@ -579,7 +457,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 355.713
inSlope: 0
outSlope: 0
@@ -609,7 +487,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 1.847
inSlope: 0
outSlope: 0
@@ -639,7 +517,7 @@ AnimationClip:
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 13.4
time: 10.183333
value: 359.434
inSlope: 0
outSlope: 0
@@ -673,7 +551,6 @@ MonoBehaviour:
m_Version: 0
m_Tracks:
- {fileID: 7528859772714158910}
- {fileID: -7188893249053917035}
- {fileID: -9004496542854398162}
- {fileID: -8585281870820356316}
m_FixedDuration: 0
@@ -682,425 +559,6 @@ MonoBehaviour:
m_ScenePreview: 1
m_DurationMode: 0
m_MarkerTrack: {fileID: 6386618471152514565}
--- !u!74 &4623381239332513062
AnimationClip:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Recorded (1)
serializedVersion: 7
m_Legacy: 0
m_Compressed: 0
m_UseHighQualityCurve: 1
m_RotationCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: {x: -0.11254852, y: -0.44009274, z: 0.07872396, w: 0.8873859}
inSlope: {x: 0, y: 0, z: 0, w: 0}
outSlope: {x: 0.00042949134, y: 0.0006185715, z: -0.0006478107, w: 0.00041584639}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
- serializedVersion: 3
time: 21.8
value: {x: -0.112369426, y: -0.4988794, z: 0.086921945, w: 0.8549486}
inSlope: {x: 0.00042559276, y: 0.0006081753, z: -0.00051720894, w: 0.0004626291}
outSlope: {x: 0, y: 0, z: 0, w: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334, w: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_CompressedRotationCurves: []
m_EulerCurves: []
m_PositionCurves:
- curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: {x: 0, y: 0, z: 0}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
- serializedVersion: 3
time: 21.8
value: {x: -11.471275, y: 1.9869308, z: 6.2589264}
inSlope: {x: 0, y: 0, z: 0}
outSlope: {x: 0, y: 0, z: 0}
tangentMode: 0
weightedMode: 0
inWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
outWeight: {x: 0.33333334, y: 0.33333334, z: 0.33333334}
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
path:
m_ScaleCurves: []
m_FloatCurves: []
m_PPtrCurves: []
m_SampleRate: 60
m_WrapMode: 0
m_Bounds:
m_Center: {x: 0, y: 0, z: 0}
m_Extent: {x: 0, y: 0, z: 0}
m_ClipBindingConstant:
genericBindings:
- serializedVersion: 2
path: 0
attribute: 1
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
- serializedVersion: 2
path: 0
attribute: 2
script: {fileID: 0}
typeID: 4
customType: 0
isPPtrCurve: 0
isIntCurve: 0
isSerializeReferenceCurve: 0
pptrCurveMapping: []
m_AnimationClipSettings:
serializedVersion: 2
m_AdditiveReferencePoseClip: {fileID: 0}
m_AdditiveReferencePoseTime: 0
m_StartTime: 0
m_StopTime: 21.8
m_OrientationOffsetY: 0
m_Level: 0
m_CycleOffset: 0
m_HasAdditiveReferencePose: 0
m_LoopTime: 0
m_LoopBlend: 0
m_LoopBlendOrientation: 0
m_LoopBlendPositionY: 0
m_LoopBlendPositionXZ: 0
m_KeepOriginalOrientation: 0
m_KeepOriginalPositionY: 1
m_KeepOriginalPositionXZ: 0
m_HeightFromFeet: 0
m_Mirror: 0
m_EditorCurves:
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: -11.471275
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.x
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 1.9869308
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.y
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 0
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 6.2589264
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalPosition.z
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: -0.11254852
inSlope: 0
outSlope: 0.00042949134
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: -0.112369426
inSlope: 0.00042559276
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalRotation.x
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: -0.44009274
inSlope: 0
outSlope: 0.0006185715
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: -0.4988794
inSlope: 0.0006081753
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalRotation.y
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 0.07872396
inSlope: 0
outSlope: -0.0006478107
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 0.086921945
inSlope: -0.00051720894
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalRotation.z
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 0.8873859
inSlope: 0
outSlope: 0.00041584639
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 0.8549486
inSlope: 0.0004626291
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: m_LocalRotation.w
path:
classID: 4
script: {fileID: 0}
flags: 0
m_EulerEditorCurves:
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 352.504
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 353.949
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAngles.x
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: -53.675
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 298.663
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAngles.y
path:
classID: 4
script: {fileID: 0}
flags: 0
- serializedVersion: 2
curve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 10.333333
value: 373.936
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 21.8
value: 15.201
inSlope: 0
outSlope: 0
tangentMode: 136
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
attribute: localEulerAngles.z
path:
classID: 4
script: {fileID: 0}
flags: 0
m_HasGenericRootTransform: 1
m_HasMotionFloatCurves: 0
m_Events: []
--- !u!114 &6386618471152514565
MonoBehaviour:
m_ObjectHideFlags: 1

View File

@@ -27693,6 +27693,202 @@ MonoBehaviour:
height: 30
canvasScrollPosition: {x: 0, y: 0}
canvasZoom: 1
- id: 112
fields:
- title: Title
value: CH02/RUINEDTOWN/CH02_cs_ancaran_wanderer_00
type: 0
typeString: CustomFieldType_Text
- title: Pictures
value: '[]'
type: 3
typeString: CustomFieldType_Files
- title: Description
value:
type: 0
typeString: CustomFieldType_Text
- title: Actor
value: 1
type: 5
typeString: CustomFieldType_Actor
- title: Conversant
value: 2
type: 5
typeString: CustomFieldType_Actor
overrideSettings:
useOverrides: 0
overrideSubtitleSettings: 0
showNPCSubtitlesDuringLine: 1
showNPCSubtitlesWithResponses: 1
showPCSubtitlesDuringLine: 0
skipPCSubtitleAfterResponseMenu: 0
subtitleCharsPerSecond: 30
minSubtitleSeconds: 2
continueButton: 0
overrideSequenceSettings: 0
defaultSequence:
defaultPlayerSequence:
defaultResponseMenuSequence:
overrideInputSettings: 0
alwaysForceResponseMenu: 1
includeInvalidEntries: 0
responseTimeout: 0
cancelSubtitle:
key: 27
buttonName:
cancelConversation:
key: 27
buttonName:
nodeColor:
dialogueEntries:
- id: 0
fields:
- title: Title
value: START
type: 0
typeString:
- title: Pictures
value: '[]'
type: 3
typeString: CustomFieldType_Files
- title: Description
value:
type: 0
typeString:
- title: Actor
value: 1
type: 5
typeString: CustomFieldType_Actor
- title: Conversant
value: 2
type: 5
typeString: CustomFieldType_Actor
- title: Menu Text
value:
type: 0
typeString:
- title: Dialogue Text
value:
type: 0
typeString:
- title: Parenthetical
value:
type: 0
typeString:
- title: Audio Files
value: '[]'
type: 3
typeString: CustomFieldType_Files
- title: Video File
value:
type: 0
typeString:
- title: Sequence
value: None()
type: 0
typeString:
- title: pl
value:
type: 4
typeString: CustomFieldType_Localization
conversationID: 112
isRoot: 0
isGroup: 0
nodeColor:
delaySimStatus: 0
falseConditionAction: Block
conditionPriority: 2
outgoingLinks:
- originConversationID: 112
originDialogueID: 0
destinationConversationID: 112
destinationDialogueID: 1
isConnector: 0
priority: 2
conditionsString:
userScript:
onExecute:
m_PersistentCalls:
m_Calls: []
canvasRect:
serializedVersion: 2
x: 20
y: 30
width: 160
height: 30
- id: 1
fields:
- title: Title
value:
type: 0
typeString: CustomFieldType_Text
- title: Pictures
value: '[]'
type: 3
typeString: CustomFieldType_Files
- title: Description
value:
type: 0
typeString: CustomFieldType_Text
- title: Actor
value: 2
type: 5
typeString: CustomFieldType_Actor
- title: Conversant
value: 1
type: 5
typeString: CustomFieldType_Actor
- title: Menu Text
value:
type: 0
typeString: CustomFieldType_Text
- title: Dialogue Text
value: 'So this is Anarcan. Deserted ruins. Another dead end.
'
type: 0
typeString: CustomFieldType_Text
- title: Parenthetical
value:
type: 0
typeString: CustomFieldType_Text
- title: Audio Files
value: '[]'
type: 3
typeString: CustomFieldType_Files
- title: Video File
value:
type: 0
typeString: CustomFieldType_Text
- title: Sequence
value:
type: 0
typeString: CustomFieldType_Text
- title: pl
value:
type: 4
typeString: CustomFieldType_Localization
conversationID: 112
isRoot: 0
isGroup: 0
nodeColor:
delaySimStatus: 0
falseConditionAction: Block
conditionPriority: 2
outgoingLinks: []
conditionsString:
userScript:
onExecute:
m_PersistentCalls:
m_Calls: []
canvasRect:
serializedVersion: 2
x: 20
y: 80
width: 160
height: 30
canvasScrollPosition: {x: 0, y: 0}
canvasZoom: 1
syncInfo:
syncActors: 0
syncItems: 0

View File

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

View File

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

View File

@@ -0,0 +1,430 @@
/// <summary>
/// Tool Name: Copy Components.
/// Version 1.0.0
/// Copyrights Denislav Georgiev - Respect Studios LTD
///
/// Info: This tool allows you to Copy Components, from one object to many other at the same time.
/// It support option for choosing, which component shoud be copied
///
/// It supports 3 options for copying
/// 1: All Components - Will copy all components from the Source, to the target objects
/// 2: Only New - Will copy only if the target object does NOT have that component
/// 3: Copy Values - Will copy only the component values
/// </summary>
using UnityEngine;
using System.Collections;
using UnityEditor;
using System.Collections.Generic;
// Create the Menu
public class CopyComponentsMenu : Editor
{
[MenuItem("Window/Copy Multi Components", false, 33)]
public static void CopyComponentsGUI()
{
CopyComponentsGUI copyComponentsGUI = (CopyComponentsGUI) EditorWindow.GetWindow(typeof(CopyComponentsGUI));
copyComponentsGUI.minSize = new Vector2(350, 340);
#if UNITY_5_0 || UNITY_5_1 || UNITY_4_6
copyComponentsGUI.title = "Copy Components";
#else
copyComponentsGUI.titleContent = new GUIContent("Copy Components");
#endif
copyComponentsGUI.Show ();
}
}
// Create the GUI
public class CopyComponentsGUI : EditorWindow
{
// Private Variables
private GameObject sourceGO; // The gameObject, that, the components will be copied from
private Component[] sourceComponents = new Component[0]; // The components, that will be copied...
private string[] copyOptionPop = new string[] {"All Components", "Only New", "Only Values"};
private int copyOptionIndex = 1;
private Vector2 fromScrollPos = Vector2.zero; // ScrollView
private Vector2 toScrollPos = Vector2.zero;
private string componentName; // Used to clear the unneeded strings, from the components names
private List<string> componentsName = new List<string>(); // Will hold the component's names, thas are shown in the GUI
private List<GameObject> targetGO = new List<GameObject>(); // List of objects, to paste components to
private string removeName; // Helper to remove part of the string of component namne
private string removeSystem; // Helper to remove part of the string of component namne
private bool copyAllCompT = true;
private bool[] copyCurrentCompT; // If the current component shoud be copied
void OnEnable()
{
sourceComponents = new Component[0]; // Reset sourceComponents at start
}
#region Drawing GUI
void OnGUI() // Building the GUI
{
EditorGUILayout.BeginVertical(GUILayout.Width(position.width), GUILayout.Height(position.height));
{
// Handles.DrawLine(new Vector3(position.width / 2, 20, 0), new Vector3 (position.width / 2, 200, 0));
GUILayout.Space(10);
// Begin the first Horizontal, for the object, that we'll copy components from
EditorGUILayout.BeginHorizontal();
{
GUILayout.Space(10);
#if UNITY_4_6
EditorGUILayout.BeginVertical(GUILayout.Width(position.width/2 - 10), GUILayout.Height(position.height - 70));
EditorGUI.HelpBox(new Rect(5, 45, position.width/2 - 10, position.height - 115), "", MessageType.None);
#else
EditorGUILayout.BeginVertical(EditorStyles.helpBox ,GUILayout.Width(position.width/2 - 10), GUILayout.Height(position.height - 70));
#endif
{
#region "Copy From" side of GUI
GUILayout.Label("Source (Copy From):");
EditorGUI.BeginChangeCheck(); // Start Checking if the ObjField have been changed
{
sourceGO = EditorGUILayout.ObjectField(sourceGO, typeof(GameObject), true) as GameObject ;
}
if (EditorGUI.EndChangeCheck()) // If there is a change, call to ExposeComponents
{
ExposeComponents();
}
GUILayout.Space(20);
if (sourceGO != null)
{
GUILayout.Label ("Components To Copy: ");
#if UNITY_4_6
EditorGUILayout.BeginVertical(GUILayout.Width(position.width / 2 - 20), GUILayout.Height(position.height - 160));
EditorGUI.HelpBox(new Rect(10, 83, position.width / 2 - 20, position.height - 160), "", MessageType.None);
#else
EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.Width(position.width / 2 - 20), GUILayout.Height(position.height - 160));
#endif
{
fromScrollPos = EditorGUILayout.BeginScrollView(fromScrollPos); // Adding scroll view for the Components List
// Check if All has Toggled. If so call the Void to change all Toggles
EditorGUI.BeginChangeCheck();
copyAllCompT = GUILayout.Toggle(copyAllCompT, new GUIContent("All", "Toggle All Components"));
if (EditorGUI.EndChangeCheck())
ToggleAllChanged();
// END check
if (sourceComponents.Length > 0)
{
for (int i = 0; i < sourceComponents.Length; i++) // Loop through all components
{
EditorGUILayout.BeginHorizontal();
// Make Toggle for all components names
copyCurrentCompT[i] = GUILayout.Toggle(copyCurrentCompT[i], new GUIContent(componentsName[i].ToString(), "Shoud this component be copied"));
EditorGUILayout.EndHorizontal();
}
}
EditorGUILayout.EndScrollView();
}
EditorGUILayout.EndVertical();
}
}
EditorGUILayout.EndVertical();
#endregion
#region "Paste To" side of GUI
// Start Second Vertical layout for the PasteTo UI Elements
#if UNITY_4_6
EditorGUILayout.BeginVertical(GUILayout.Width(position.width / 2 - 10), GUILayout.Height(position.height - 70));
EditorGUI.HelpBox(new Rect(position.width / 2, 25, position.width / 2 - 10, position.height - 112), "", MessageType.None);
#else
EditorGUILayout.BeginVertical(EditorStyles.helpBox, GUILayout.Width(position.width / 2 - 10), GUILayout.Height(position.height - 70));
#endif
{
GUILayout.Label("Targets (Paste To):"); // Label
if (targetGO.Count > 0)
{
toScrollPos = EditorGUILayout.BeginScrollView(toScrollPos); // Adding scroll view for the ObjectsList
{
for (int i = 0; i < targetGO.Count; i++)
{
EditorGUI.BeginChangeCheck(); // Check if some of the fields is changed afterwards
// Add Field for every selected object and expose them in the GUI
targetGO[i] = EditorGUILayout.ObjectField(targetGO[i], typeof(GameObject), true) as GameObject;
if (EditorGUI.EndChangeCheck()) // If some of the fields is changed manually
{
ManualAddedPasteObj(targetGO[i], i); // Call to tell that some objField is manually changed
}
}
}
EditorGUILayout.EndScrollView();
}
EditorGUILayout.BeginHorizontal();
{
if (GUILayout.Button("+", GUILayout.Width(25), GUILayout.Height(25))) // Button to Add to the List
AddPasteObject();
if (GUILayout.Button("-", GUILayout.Width(25), GUILayout.Height(25))) // Button to Remove from the List
RemovePasteObject();
GUILayout.Space(position.width / 4 - 80); // Some Space before the ClearObjects bttn
if (GUILayout.Button("Clear Objects", GUILayout.Height(25)))
ClearPasteObjList();
}
EditorGUILayout.EndHorizontal();
}
EditorGUILayout.EndVertical();
#endregion
}
EditorGUILayout.EndHorizontal();
EditorGUIUtility.labelWidth = 100; // The width of the PopUp Label
EditorGUILayout.BeginHorizontal();
{
copyOptionIndex = EditorGUILayout.Popup("Copy Options:", copyOptionIndex, copyOptionPop, GUILayout.Width(230));
GUILayout.Space(15);
}
EditorGUILayout.EndHorizontal();
if (GUILayout.Button("Copy Components", GUILayout.Height(30)))
{
CopyComponents(); // Call to copy actual components
}
}
EditorGUILayout.EndVertical();
}
#endregion
#region Expose Copy Components
// WIll be called, only when the ObjectField changes, so it doesn't execute every frame
private void ExposeComponents()
{
componentsName.Clear(); // Clears the list
if (sourceGO != null) // If there is attached object in the ObjectField
{
sourceComponents = sourceGO.GetComponents<Component>(); // Get all components of the gameObject
copyCurrentCompT = new bool[sourceComponents.Length]; // Set the CheckBox array size
for (int i = 0; i < sourceComponents.Length; i++) // Loop through all components
{
if (sourceComponents[i] != null)
{
copyCurrentCompT[i] = true; // Set all Checkboxes On
componentName = sourceComponents[i].ToString(); // Get the component names
removeName = sourceGO.name + " ("; // Remove name and " (" from the name
removeSystem = "UnityEngine."; // Remove UnityEngine from the name
componentName = componentName.Remove(componentName.Length - 1); // Remove the last character ")", from name
componentName = componentName.Replace (removeName, ""); // replace the string, to remove the name of the GO
componentName = componentName.Replace (removeSystem, ""); // Removes the UnityEngine from string
componentsName.Add(componentName);
}
else // If the Component Is Missing
{
componentsName.Add("***Missing Component***"); // Add as Missing
copyCurrentCompT[i] = false;
Debug.LogWarning("One of the Components is Null! Probably a Missing or Non-Compilled Script. Will be Skipped");
}
}
}
else // Source GO is empty
sourceComponents = new Component[0];
}
#endregion
#region Paste Object UI Management
// To add PasteObjects
private void AddPasteObject()
{
GameObject[] curSelection = Selection.gameObjects;
if (curSelection.Length > 0)
{
for (int i = 0; i < curSelection.Length; i++)
{
if (!targetGO.Contains(curSelection[i]))
{
if (curSelection[i] != sourceGO)
targetGO.Add (curSelection[i]);
else
Debug.LogWarning("Attempt to add Source GameObject: \"" + curSelection[i].name + "\", to Targets List. Object Removed...");
}
else
Debug.LogWarning("Object \" " + targetGO[i].name + "\", is allready in the List");
}
}
else
Debug.LogWarning("Select At Least One Object");
}
// To remove the last element of the Paste Objects
private void RemovePasteObject()
{
if (targetGO.Count > 0)
targetGO.RemoveAt(targetGO.Count - 1);
else
Debug.LogWarning("Paste Objects List is Emptry!");
}
private void ClearPasteObjList()
{
targetGO.Clear();
}
// When we add manually Target Objects
private void ManualAddedPasteObj(GameObject objChanged, int listNum)
{
if (targetGO.Count > 0) // If there are any target objects
{
for (int i = 0; i < targetGO.Count; i++) // Loop through them...
{
if (targetGO[i] != null) // If current Target Index (Field) is Not Empty
{
if (i != listNum)
{
if (targetGO[i] == objChanged)
{
// Warn user, that there is same object in more than one field
Debug.LogWarning("Object: " + objChanged.name + ", was added in 2 fields");
}
}
if (targetGO[i] == sourceGO) // If the Source is added as target
Debug.LogWarning("Source GameObject: \"" + sourceGO.name + "\" was added in Field: " + (i + 1) + ". \nWill Copy and Paste to the same GameObject");
}
else
Debug.LogWarning("Target Field was left Empty");
}
}
}
#endregion
#region Copy Components
// Copy the actual components
private void CopyComponents()
{
bool componentMatch = false;
bool nullComponentFound = false; // Will be true, to show Warning, if there is a Null (Missing) Component
if (sourceComponents.Length > 0)
{
if (targetGO.Count > 0) // If there are TargetGO
{
for (int i = 0; i < targetGO.Count; i++) // Loop through all targetObjects
{
if (targetGO[i] != null)
{
Component[] targetComponents = targetGO[i].GetComponents<Component>(); // Get the component of the cur object
for (int a = 0; a < sourceComponents.Length; a++) // Loop through all Source Obj's Components
{
if (sourceComponents[a] == null) // If this component is Null
continue; // Skip the loop and continue
if (copyCurrentCompT[a]) // If the current component shoud be copied
{
if (copyOptionIndex == 0) // If All shoud be copied
{
UnityEditorInternal.ComponentUtility.CopyComponent(sourceComponents[a]);
UnityEditorInternal.ComponentUtility.PasteComponentAsNew(targetGO[i]);
}
if (copyOptionIndex == 1 || copyOptionIndex == 2) // If Copy only new or Copy Values
{
componentMatch = false; // Set by default to false
for (int z = 0; z < targetComponents.Length; z++) // Loop through all destination Obj's Components
{
if (targetComponents[z] == null) // If there is a Null Component, skip this loop
{
nullComponentFound = true;
continue;
}
if (sourceComponents[a].GetType() == targetComponents[z].GetType()) // If the components match, The destination Obj have that component
{
componentMatch = true; // Set to true, so we can copy that component
if (copyOptionIndex == 2) // If copyValues is On, then Copy the values of the existing Components
{
UnityEditorInternal.ComponentUtility.CopyComponent(sourceComponents[a]);
UnityEditorInternal.ComponentUtility.PasteComponentValues(targetComponents[z]);
}
}
}
}
if (copyOptionIndex == 1 ) // If Only New (Missing from Target) shoud be copied
{
if (!componentMatch && copyOptionIndex == 1) // If this component[a], doesn't exist in the TargetGO[i], copy it
{
UnityEditorInternal.ComponentUtility.CopyComponent(sourceComponents[a]);
UnityEditorInternal.ComponentUtility.PasteComponentAsNew(targetGO[i]);
}
}
}
}
}
else
Debug.LogWarning("TargetField: " + i + " is Empty");
}
if (nullComponentFound) // If there is a Null Component
Debug.LogWarning("Some of the Target Objects have Missing Component, which might cause problems");
}
else // If NO TargetGO added
Debug.LogWarning("No Target GameObjects Added");
}
else
Debug.LogWarning("No Components To Copy. Add a Source Object");
}
#endregion
// To Toggle All Components CheckBoxes
private void ToggleAllChanged()
{
for (int i = 0; i < copyCurrentCompT.Length; i++)
{
copyCurrentCompT[i] = copyAllCompT;
}
}
// Reset the GUI, when closed
void OnDestroy()
{
sourceGO = null; // Reset the source Obj field
copyOptionIndex = 1; // Reset Copy Popup
sourceComponents = new Component[0]; // Reset the source Components Array
copyCurrentCompT = new bool[0]; // Reset Components Toggle Array
componentsName.Clear (); // Clear ComponentsNames List
targetGO.Clear (); // Clear Target Objects List
}
}

View File

@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 2f6c301fa9c7945458d27b52f5d3a266
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 50347
packageName: Copy Multi Components
packageVersion: 1.0
assetPath: Assets/Editor/CopyMultiComponents/Window/CopyComponentsGUI.cs
uploadId: 90740

View File

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

View File

@@ -0,0 +1,14 @@
fileFormatVersion: 2
guid: bb7947a57b32cce4fbcb1c73414600e9
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 50347
packageName: Copy Multi Components
packageVersion: 1.0
assetPath: Assets/Editor/CopyMultiComponents/x_Docs/CopyComponents_Docs.pdf
uploadId: 90740

View File

@@ -5470,7 +5470,7 @@ GameObject:
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
m_IsActive: 0
--- !u!4 &7019251980953234364
Transform:
m_ObjectHideFlags: 0

View File

@@ -0,0 +1,41 @@
fileFormatVersion: 2
guid: 56338a369913a9249a5640f1f6c6139f
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 0
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides:
4:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 0
quality: 1
conversionMode: 0
preloadAudioData: 0
7:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff