[WL-814r-hotfix] 시범 전투장 캐릭터가 실제로 움직이도록 수정 + Event_Idle 에러 제거 (#814)

- ArenaWalker.body 가 비어 있어 스크립트가 자기 자신(빈 오브젝트)을 움직이고 있었다
  → body = PC_LH_M05 로 연결(PD 실측 보고 「캐릭터 움직임이 없어」의 직접 원인)
- body 가 비어 있던 탓에 Start() 의 Animator.fireEvents=false 도 캐릭터에 적용되지 않아
  'Event_Idle' has no receiver! 가 33건 발생 → 빈 수신자 ArenaAnimEventSink 를 붙여
  에디트/플레이 양쪽에서 차단(fireEvents 는 런타임 전용이라 에디트 모드를 못 막는다)

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
깃 관리자 2026-09-12 22:20:14 +09:00
parent e8ef055fdf
commit 0ff5ec088a
3 changed files with 52 additions and 2 deletions

View File

@ -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() { }
}
}

View File

@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 4df98319d904e914bb202550383db57d

View File

@ -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