diff --git a/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX.meta b/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX.meta index bf9bed980..5d494a501 100644 --- a/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX.meta +++ b/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX.meta @@ -741,7 +741,7 @@ ModelImporter: name: Cast1_S_10303 takeName: Take 001 internalID: 3060872287085348379 - firstFrame: 18 + firstFrame: 34 lastFrame: 64 wrapMode: 0 orientationOffsetY: 0 @@ -769,7 +769,7 @@ ModelImporter: floatParameter: 0 intParameter: 0 messageOptions: 0 - - time: 0.504 + - time: 0.23 functionName: Projectile data: Projectile_10303 objectReferenceParameter: {instanceID: 0} @@ -866,6 +866,92 @@ ModelImporter: maskType: 0 maskSource: {instanceID: 0} additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: Cast3_S_10303 + takeName: Take 001 + internalID: 6234510843852800090 + firstFrame: 34 + lastFrame: 64 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 1 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 1 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: + - time: 0 + functionName: LookAtTarget + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 0.23 + functionName: Projectile + data: Projectile_10303 + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + transformMask: [] + maskType: 0 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: Cast3c_S_10303 + takeName: Take 001 + internalID: -6788666626592393668 + firstFrame: 34 + lastFrame: 64 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 1 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 1 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: + - time: 0 + functionName: LookAtTarget + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 0.23 + functionName: Projectile + data: Projectile_10303 + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + transformMask: [] + maskType: 0 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX.meta b/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX.meta index d810a0312..e394456be 100644 --- a/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX.meta +++ b/Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX.meta @@ -829,6 +829,92 @@ ModelImporter: maskType: 0 maskSource: {instanceID: 0} additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: Cast3b_S_10303 + takeName: Take 001 + internalID: -5059006814000262888 + firstFrame: 48 + lastFrame: 83 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 1 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 1 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: + - time: 0 + functionName: LookAtTarget + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 0.407 + functionName: Projectile + data: Projectile_10303 + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + transformMask: [] + maskType: 0 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 + - serializedVersion: 16 + name: Cast3d_S_10303 + takeName: Take 001 + internalID: 6234510843852800090 + firstFrame: 48 + lastFrame: 83 + wrapMode: 0 + orientationOffsetY: 0 + level: 0 + cycleOffset: 0 + loop: 0 + hasAdditiveReferencePose: 0 + loopTime: 0 + loopBlend: 0 + loopBlendOrientation: 1 + loopBlendPositionY: 1 + loopBlendPositionXZ: 0 + keepOriginalOrientation: 1 + keepOriginalPositionY: 1 + keepOriginalPositionXZ: 1 + heightFromFeet: 0 + mirror: 0 + bodyMask: 01000000010000000100000001000000010000000100000001000000010000000100000001000000010000000100000001000000 + curves: [] + events: + - time: 0 + functionName: LookAtTarget + data: + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + - time: 0.407 + functionName: Projectile + data: Projectile_10303 + objectReferenceParameter: {instanceID: 0} + floatParameter: 0 + intParameter: 0 + messageOptions: 0 + transformMask: [] + maskType: 0 + maskSource: {instanceID: 0} + additiveReferencePoseFrame: 0 isReadable: 1 meshes: lODScreenPercentages: [] diff --git a/Assets/Res_Addr/Animations/pcanim_summoner.controller b/Assets/Res_Addr/Animations/pcanim_summoner.controller index a25795226..ac2e8353b 100644 --- a/Assets/Res_Addr/Animations/pcanim_summoner.controller +++ b/Assets/Res_Addr/Animations/pcanim_summoner.controller @@ -49,6 +49,56 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 +--- !u!1102 &-4796975231335754110 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Attack3d + m_Speed: 2.5 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 8777332740921490109} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 6234510843852800090, guid: e0919932c9c179142ad06cf4ee11f204, + type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: +--- !u!1101 &-4218806072011345864 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -3990237916424465730} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.15 + m_TransitionOffset: 0 + m_ExitTime: 0.85 + m_HasExitTime: 1 + m_HasFixedDuration: 0 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &-4177302407337328582 AnimatorState: serializedVersion: 6 @@ -77,6 +127,34 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1102 &-3990237916424465730 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: attack3 + m_Speed: 2.5 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 6736461488995620371} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: 6234510843852800090, guid: e3d070983d568754782121f6efd86a6d, + type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!1102 &-3931620847702217361 AnimatorState: serializedVersion: 6 @@ -2008,6 +2086,18 @@ AnimatorStateMachine: - serializedVersion: 1 m_State: {fileID: 3043085607005748951} m_Position: {x: -50, y: -150, z: 0} + - serializedVersion: 1 + m_State: {fileID: -3990237916424465730} + m_Position: {x: -15, y: -85, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1211289149971408261} + m_Position: {x: 20, y: -20, z: 0} + - serializedVersion: 1 + m_State: {fileID: 1991670155751961014} + m_Position: {x: 55, y: 45, z: 0} + - serializedVersion: 1 + m_State: {fileID: -4796975231335754110} + m_Position: {x: 90, y: 110, z: 0} m_ChildStateMachines: [] m_AnyStateTransitions: [] m_EntryTransitions: [] @@ -2099,7 +2189,7 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: ---- !u!1101 &788794430214549228 +--- !u!1101 &712130927223328335 AnimatorStateTransition: m_ObjectHideFlags: 1 m_CorrespondingSourceObject: {fileID: 0} @@ -2108,16 +2198,16 @@ AnimatorStateTransition: m_Name: m_Conditions: [] m_DstStateMachine: {fileID: 0} - m_DstState: {fileID: 110222392} + m_DstState: {fileID: 1991670155751961014} m_Solo: 0 m_Mute: 0 m_IsExit: 0 serializedVersion: 3 - m_TransitionDuration: 0.25 + m_TransitionDuration: 0.15 m_TransitionOffset: 0 - m_ExitTime: 0.8369565 + m_ExitTime: 0.85 m_HasExitTime: 1 - m_HasFixedDuration: 1 + m_HasFixedDuration: 0 m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 @@ -2284,6 +2374,34 @@ AnimatorStateTransition: m_InterruptionSource: 2 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 +--- !u!1102 &1211289149971408261 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: Attack3b + m_Speed: 2.5 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 712130927223328335} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: -5059006814000262888, guid: e0919932c9c179142ad06cf4ee11f204, + type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!1101 &1858289013235272262 AnimatorStateTransition: m_ObjectHideFlags: 1 @@ -2306,6 +2424,34 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 +--- !u!1102 &1991670155751961014 +AnimatorState: + serializedVersion: 6 + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: attack3c + m_Speed: 2.5 + m_CycleOffset: 0 + m_Transitions: + - {fileID: 2964847495087587129} + m_StateMachineBehaviours: [] + m_Position: {x: 50, y: 50, z: 0} + m_IKOnFeet: 0 + m_WriteDefaultValues: 1 + m_Mirror: 0 + m_SpeedParameterActive: 0 + m_MirrorParameterActive: 0 + m_CycleOffsetParameterActive: 0 + m_TimeParameterActive: 0 + m_Motion: {fileID: -6788666626592393668, guid: e3d070983d568754782121f6efd86a6d, + type: 3} + m_Tag: + m_SpeedParameter: + m_MirrorParameter: + m_CycleOffsetParameter: + m_TimeParameter: --- !u!1101 &2894507576667459654 AnimatorStateTransition: m_ObjectHideFlags: 1 @@ -2328,6 +2474,28 @@ AnimatorStateTransition: m_InterruptionSource: 0 m_OrderedInterruption: 1 m_CanTransitionToSelf: 1 +--- !u!1101 &2964847495087587129 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: -4796975231335754110} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.15 + m_TransitionOffset: 0 + m_ExitTime: 0.85 + m_HasExitTime: 1 + m_HasFixedDuration: 0 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &3043085607005748951 AnimatorState: serializedVersion: 6 @@ -2339,7 +2507,7 @@ AnimatorState: m_Speed: 1 m_CycleOffset: 0 m_Transitions: - - {fileID: 788794430214549228} + - {fileID: -4218806072011345864} m_StateMachineBehaviours: [] m_Position: {x: 50, y: 50, z: 0} m_IKOnFeet: 0 @@ -2349,7 +2517,7 @@ AnimatorState: m_MirrorParameterActive: 0 m_CycleOffsetParameterActive: 0 m_TimeParameterActive: 0 - m_Motion: {fileID: -998496362607748373, guid: 7a1612ec6fd9fbf4b917575b7c1ecdcb, + m_Motion: {fileID: 6641085478485924818, guid: e0919932c9c179142ad06cf4ee11f204, type: 3} m_Tag: m_SpeedParameter: @@ -2384,6 +2552,28 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &6736461488995620371 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 1211289149971408261} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.15 + m_TransitionOffset: 0 + m_ExitTime: 0.85 + m_HasExitTime: 1 + m_HasFixedDuration: 0 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1101 &6991229405388135093 AnimatorStateTransition: m_ObjectHideFlags: 1 @@ -2541,6 +2731,28 @@ AnimatorState: m_MirrorParameter: m_CycleOffsetParameter: m_TimeParameter: +--- !u!1101 &8777332740921490109 +AnimatorStateTransition: + m_ObjectHideFlags: 1 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_Name: + m_Conditions: [] + m_DstStateMachine: {fileID: 0} + m_DstState: {fileID: 110222392} + m_Solo: 0 + m_Mute: 0 + m_IsExit: 0 + serializedVersion: 3 + m_TransitionDuration: 0.25 + m_TransitionOffset: 0 + m_ExitTime: 0.8 + m_HasExitTime: 1 + m_HasFixedDuration: 1 + m_InterruptionSource: 0 + m_OrderedInterruption: 1 + m_CanTransitionToSelf: 1 --- !u!1102 &8958909966057575806 AnimatorState: serializedVersion: 6 diff --git a/Assets/Script/Character/Actor.cs b/Assets/Script/Character/Actor.cs index 2cf4e8420..b2b602c39 100644 --- a/Assets/Script/Character/Actor.cs +++ b/Assets/Script/Character/Actor.cs @@ -643,7 +643,7 @@ public class Actor : MyCoroutine if (!IsDead()) return; // 부활한 경우 #if UNITY_EDITOR - if (WL.SkillTest.WLTestScene.Active) + if (WL.SkillTest.WLTestScene.Active && !(this is SummonActor)) // WL #950 — 소환체(골렘)는 원래 길로(테스트 씬 되살리기 분기가 MyActor.On_Regen → LoadMapMgr 없음 NRE 70회 · 실측) { On_Regen(); transform.localPosition = Vector3.zero; diff --git a/Assets/Script/Character/MyActor.cs b/Assets/Script/Character/MyActor.cs index ae0b3e6a5..70907a194 100644 --- a/Assets/Script/Character/MyActor.cs +++ b/Assets/Script/Character/MyActor.cs @@ -390,7 +390,7 @@ public class MyActor : Actor public override void On_Regen(bool reincarnation = false, float healrate = 1f) { base.On_Regen(reincarnation, healrate); - Set_Warp(LoadMapMgr.Ins.Get_ReincanationPos(MyValue.MyChoiceMapData)); + if (!DSUtil.CheckNull(LoadMapMgr.Ins)) Set_Warp(LoadMapMgr.Ins.Get_ReincanationPos(MyValue.MyChoiceMapData)); // WL #950 — 스킬 테스트 씬(맵 관리자 없음)에서 소환체 소멸 때 NRE(실측) · 맵 있으면 원본 그대로 } public override void Set_Stat_SelectSkill(SelectSkillTableData _sstd) diff --git a/Assets/Script/Character/PC/SummonActor.cs b/Assets/Script/Character/PC/SummonActor.cs index 78b985016..e5db90d29 100644 --- a/Assets/Script/Character/PC/SummonActor.cs +++ b/Assets/Script/Character/PC/SummonActor.cs @@ -43,7 +43,7 @@ public class SummonActor : MyActor break; } Set(isEnemy, owner, owner.Get_ServerData(), 0, true); - Get_HUDUI().Set_HPSlider(this); + var hud0 = Get_HUDUI(); if (!DSUtil.CheckNull(hud0)) hud0.Set_HPSlider(this); // WL #950 — 스킬 테스트 씬(HUD 없음) 소환 순간 NRE 1회(실측) · HUD 있으면 원본 그대로 Set_Coroutine(() => { @@ -68,7 +68,7 @@ public class SummonActor : MyActor if (LifeTime > 0f) { LifeTime -= Time.deltaTime; - Get_HUDUI().Set(this, LifeTime / MaxLifeTime); + var hud = Get_HUDUI(); if (!DSUtil.CheckNull(hud)) hud.Set(this, LifeTime / MaxLifeTime); // WL #950 — 스킬 테스트 씬(HUD 없음)에서 매 프레임 NRE(실측 1000회) · HUD 있으면 원본 그대로 } if (LifeTime <= 0f || DSUtil.CheckNull(OwnerActor)) { diff --git a/Assets/WL/Combat/CombatAnimMapping.asset b/Assets/WL/Combat/CombatAnimMapping.asset index 2589be23d..43c3ead3e 100644 --- a/Assets/WL/Combat/CombatAnimMapping.asset +++ b/Assets/WL/Combat/CombatAnimMapping.asset @@ -1111,74 +1111,6 @@ MonoBehaviour: controllerPathOverride: enabled: 1 states: - - stateName: idle - sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Idle.FBX - subClipName: Idle_S_{CID} - sourceClipName: - incomingExitTime: 0 - createIfMissing: 0 - firstFrame: -1 - lastFrame: -1 - speed: 0 - events: - - functionName: Event_Idle - time: 0 - useNormalized: 1 - normalizedTime: 0 - stringParameter: - intParameter: 0 - floatParameter: 0 - - stateName: attack - sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX - subClipName: Cast1_S_{CID} - sourceClipName: - incomingExitTime: 0 - createIfMissing: 0 - firstFrame: -1 - lastFrame: -1 - speed: 0 - events: - - functionName: LookAtTarget - time: 0 - useNormalized: 1 - normalizedTime: 0 - stringParameter: - intParameter: 0 - floatParameter: 0 - - functionName: Projectile - time: 0 - useNormalized: 1 - normalizedTime: 0.504 - stringParameter: Projectile_{CID} - intParameter: 0 - floatParameter: 0 - - stateName: attack2 - sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@RangeAttack2.FBX - subClipName: Cast2_S_{CID} - sourceClipName: - incomingExitTime: 0.854 - createIfMissing: 0 - firstFrame: 16 - lastFrame: 46 - speed: 1 - maskPath: - bakeRootY: -1 - mirror: 0 - events: - - functionName: LookAtTarget - time: 0 - useNormalized: 1 - normalizedTime: 0 - stringParameter: - intParameter: 0 - floatParameter: 0 - - functionName: Projectile - time: 0 - useNormalized: 1 - normalizedTime: 0.35 - stringParameter: Projectile_{CID} - intParameter: 0 - floatParameter: 0 - stateName: casting sourceFbxPath: Assets/ExplosiveLLC/RPG Character Mecanim Animation Pack FREE/Animations/Unarmed/RPG-Character@Unarmed-Attack-R2.FBX subClipName: BookCharge_S_{CID} @@ -1206,6 +1138,170 @@ MonoBehaviour: stringParameter: intParameter: 0 floatParameter: 0 + - stateName: idle + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Idle.FBX + subClipName: Idle_S_{CID} + sourceClipName: + incomingExitTime: 0 + createIfMissing: 0 + firstFrame: -1 + lastFrame: -1 + speed: 0 + events: + - functionName: Event_Idle + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - stateName: attack + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX + subClipName: Cast1_S_{CID} + sourceClipName: + incomingExitTime: 0 + createIfMissing: 0 + firstFrame: 34 + lastFrame: 64 + speed: 0 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.23 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 + - stateName: attack2 + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX + subClipName: Cast2_S_{CID} + sourceClipName: + incomingExitTime: 0.854 + createIfMissing: 0 + firstFrame: 48 + lastFrame: 83 + speed: 0 + maskPath: + bakeRootY: -1 + mirror: 0 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.407 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 + - stateName: attack3 + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX + subClipName: Cast3_S_{CID} + sourceClipName: + incomingExitTime: 0.85 + createIfMissing: 1 + firstFrame: 34 + lastFrame: 64 + speed: 2.5 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.23 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 + - stateName: Attack3b + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX + subClipName: Cast3b_S_{CID} + sourceClipName: + incomingExitTime: 0.85 + createIfMissing: 1 + firstFrame: 48 + lastFrame: 83 + speed: 2.5 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.407 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 + - stateName: attack3c + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack2_S.FBX + subClipName: Cast3c_S_{CID} + sourceClipName: + incomingExitTime: 0.85 + createIfMissing: 1 + firstFrame: 34 + lastFrame: 64 + speed: 2.5 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.23 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 + - stateName: Attack3d + sourceFbxPath: Assets/ExplosiveLLC/Mage Warrior Mecanim Animation Pack/Animations/Mage@Attack3_S.FBX + subClipName: Cast3d_S_{CID} + sourceClipName: + incomingExitTime: 0.85 + createIfMissing: 1 + firstFrame: 48 + lastFrame: 83 + speed: 2.5 + events: + - functionName: LookAtTarget + time: 0 + useNormalized: 1 + normalizedTime: 0 + stringParameter: + intParameter: 0 + floatParameter: 0 + - functionName: Projectile + time: 0 + useNormalized: 1 + normalizedTime: 0.407 + stringParameter: Projectile_{CID} + intParameter: 0 + floatParameter: 0 - classId: 10801 note: "\uB300\uAC80 \xB7 Greatsword(WL 10801) \u2192 2Handed Attack2_S(1\uD0C0) \xB7 Attack3_S(2\uD0C0) \xB7 Attack1_S(3\uD0C0) + 4\uD0C0 Spearman \uC810\uD504 diff --git a/Assets/WL/Combat/Weapon/Resources/WL/WLFloatingBook.json b/Assets/WL/Combat/Weapon/Resources/WL/WLFloatingBook.json index af625005d..5d2ac67aa 100644 --- a/Assets/WL/Combat/Weapon/Resources/WL/WLFloatingBook.json +++ b/Assets/WL/Combat/Weapon/Resources/WL/WLFloatingBook.json @@ -11,10 +11,11 @@ "height": 0.72, "forward": 0.45, "cameraSpace": 1, - "castStates": [ "Cast1_S", "Cast2_S", "BookCharge", "BookCast" ], - "castSide": 0.25, + "castStates": [ "Cast1_S", "Cast2_S", "Cast3", "BookCharge", "BookCast" ], + "castSide": 0.2, "castHeight": 0.62, - "castForward": 0.5, + "castForward": 0.6, + "_note_950": "#950 PD 「마법책 모션 = 지팡이 1·2타 · 3타 = 1·2타 빠른 교대 · 이때 책은 플레이어 정면 앞쪽」 — 3타 체인 클립 Cast3/3b/3c/3d 도 시전 자리 · 정면 0.6 m · 옆 0.2", "hideHandWeapon": 1, "_note_949": "#949 PD 「책이 캐릭터를 가리지 않게 가능한 캐릭터보다 뒤쪽에(추적 로직 수정) · 시전 동작 중엔 책이 캐릭터 모션 앞쪽으로 유지」 — 평소 자리 = 카메라 기준(cameraSpace 1 · forward + = 카메라에서 먼 쪽 = 화면 위 = 캐릭터 뒤 0.45 m · 옆 0.35 · 높이 0.72) · 시전 중(클립 이름 Cast1/Cast2/BookCharge/BookCast) = PC 정면 0.5 m · 옆 0.25 · 높이 0.62 · followLerp 로 오간다. 이전 = PC 오른쪽 0.55 · 앞 0.05(카메라에선 몸 앞을 가림)", "euler": [