23 lines
1.1 KiB
C#
23 lines
1.1 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UIElements;
|
|
|
|
// 화면 앞쪽(가운데 아래)에 크게 서는 그림 한 장 — FrontSprite.uxml의 #FrontSprite.
|
|
//
|
|
// 그 장소에 서 있는 인물이거나, 대사 중 화자다.
|
|
// 다만 인물만 서는 자리가 아니어서 이름이 Character가 아니다 —
|
|
// 대사 도중 물건·서류가 같은 자리에 뜨는 연출도 이 패널이 받는다.
|
|
//
|
|
// 누가 띄우는가:
|
|
// - 장소 : 입장 연출·트리거의 UnityEvent에서 Show(스프라이트)
|
|
// - 대화 : DialogPlayer가 노드의 Front Sprite를 그대로 넘긴다.
|
|
// 비어 있는 노드는 "변경 없음"이라 인물이 서 있는 동안 매 대사에 다시 꽂을 필요가 없고,
|
|
// 대화가 끝나면 대화 전에 떠 있던 그림으로 되돌아간다.
|
|
[RequireComponent(typeof(PanelRenderer))]
|
|
public class FrontSprite : SpritePanel<FrontSprite>
|
|
{
|
|
protected override string ImageName => "FrontSprite";
|
|
|
|
// 아래에서 올라오며 등장 — 서 있는 인물에 어울린다 (인스펙터에서 바꿀 수 있다)
|
|
private void Reset() => SlideFrom = new Vector2(0f, 80f);
|
|
}
|