diff --git a/Assets/WL/Look/Arena/ArenaAnimEventSink.cs b/Assets/WL/Look/Arena/ArenaAnimEventSink.cs new file mode 100644 index 000000000..ddf83b7a3 --- /dev/null +++ b/Assets/WL/Look/Arena/ArenaAnimEventSink.cs @@ -0,0 +1,23 @@ +// ───────────────────────────────────────────────────────────────────────────── +// ArenaAnimEventSink.cs — 시범 전투장(WL_ArenaProto) 전용 애니메이션 이벤트 흡수기 +// +// ■ 왜 필요한가 (Lead 실측 · 2026-09-12 22:2x) +// 이 씬의 캐릭터는 전시용이라 게임 컴포넌트(`WizardActor`)를 전부 떼어 냈다(814r §1). +// 그런데 `Idle` 클립(FBX 내장)이 `Event_Idle` 을 쏘고, 받는 쪽이 사라져서 +// `'PC_LH_M05' AnimationEvent 'Event_Idle' on animation 'Idle' has no receiver!` 가 계속 뜬다(실측 33건). +// `Animator.fireEvents = false` 는 **런타임 전용 플래그라 에디트 모드에서는 소용이 없다** → +// 빈 수신자를 하나 붙여 에디트/플레이 양쪽에서 조용하게 만든다. +// +// ■ 원본 수신자와 같은 이름만 맞춘다(`Assets/Script/**` 의 `void Event_Idle`). 하는 일은 없다. +// ───────────────────────────────────────────────────────────────────────────── + +using UnityEngine; + +namespace WL.Look.Arena +{ + [DisallowMultipleComponent] + public sealed class ArenaAnimEventSink : MonoBehaviour + { + void Event_Idle() { } + } +} diff --git a/Assets/WL/Look/Arena/ArenaAnimEventSink.cs.meta b/Assets/WL/Look/Arena/ArenaAnimEventSink.cs.meta new file mode 100644 index 000000000..ae4c9e14c --- /dev/null +++ b/Assets/WL/Look/Arena/ArenaAnimEventSink.cs.meta @@ -0,0 +1,2 @@ +fileFormatVersion: 2 +guid: 4df98319d904e914bb202550383db57d \ No newline at end of file diff --git a/Assets/WL/Look/Arena/Scenes/WL_ArenaProto.unity b/Assets/WL/Look/Arena/Scenes/WL_ArenaProto.unity index 35d018093..28ef318d7 100644 --- a/Assets/WL/Look/Arena/Scenes/WL_ArenaProto.unity +++ b/Assets/WL/Look/Arena/Scenes/WL_ArenaProto.unity @@ -3986,6 +3986,12 @@ Transform: type: 3} m_PrefabInstance: {fileID: 654450016} m_PrefabAsset: {fileID: 0} +--- !u!1 &711662063 stripped +GameObject: + m_CorrespondingSourceObject: {fileID: 7522112115323654996, guid: 13b0aeca987980646af87711964339c8, + type: 3} + m_PrefabInstance: {fileID: 918041734} + m_PrefabAsset: {fileID: 0} --- !u!1001 &715383191 PrefabInstance: m_ObjectHideFlags: 0 @@ -7274,7 +7280,11 @@ PrefabInstance: - {fileID: 8835979289890761207, guid: 13b0aeca987980646af87711964339c8, type: 3} m_RemovedGameObjects: [] m_AddedGameObjects: [] - m_AddedComponents: [] + m_AddedComponents: + - targetCorrespondingSourceObject: {fileID: 7522112115323654996, guid: 13b0aeca987980646af87711964339c8, + type: 3} + insertIndex: -1 + addedObject: {fileID: 918041737} m_SourcePrefab: {fileID: 100100000, guid: 13b0aeca987980646af87711964339c8, type: 3} --- !u!4 &918041735 stripped Transform: @@ -7282,6 +7292,18 @@ Transform: type: 3} m_PrefabInstance: {fileID: 918041734} m_PrefabAsset: {fileID: 0} +--- !u!114 &918041737 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 711662063} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4df98319d904e914bb202550383db57d, type: 3} + m_Name: + m_EditorClassIdentifier: Assembly-CSharp::WL.Look.Arena.ArenaAnimEventSink --- !u!1001 &929833716 PrefabInstance: m_ObjectHideFlags: 0 @@ -14537,11 +14559,14 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: Assembly-CSharp::WL.Look.Arena.ArenaWalker body: {fileID: 918041735} - followCamera: {fileID: 1166334009} + followCamera: {fileID: 0} moveSpeed: 3.9 turnSpeed: 300 idleState: idle runState: run + autoWalk: 0 + autoWalkDir: {x: 1, y: 0, z: 0} + autoWalkGoal: 14 --- !u!4 &2042308456 Transform: m_ObjectHideFlags: 0