동굴 수정
This commit is contained in:
57
Assets/02_Scripts/Cave/RaftRideEndHandler.cs
Normal file
57
Assets/02_Scripts/Cave/RaftRideEndHandler.cs
Normal file
@@ -0,0 +1,57 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class RaftRideEndHandler : MonoBehaviour
|
||||
{
|
||||
[Header("Player")]
|
||||
[SerializeField] private Transform xrOrigin;
|
||||
|
||||
[Tooltip("도착 후 XR Origin을 뗏목에서 분리할지 여부")]
|
||||
[SerializeField] private bool detachPlayerFromRaft = true;
|
||||
|
||||
[Header("Exit / Land")]
|
||||
[SerializeField] private Transform exitPoint;
|
||||
|
||||
[Tooltip("도착 후 켤 육지 이동 구역, 안내 오브젝트, 길 표시 등")]
|
||||
[SerializeField] private GameObject landAreaObject;
|
||||
|
||||
[Header("Next Mission")]
|
||||
[Tooltip("도착 후 활성화할 조개 미션 오브젝트")]
|
||||
[SerializeField] private GameObject clamMissionObject;
|
||||
|
||||
[Tooltip("처음에는 꺼두었다가 나중에 기억의 조각 획득 후 켤 문")]
|
||||
[SerializeField] private GameObject nextDoorObject;
|
||||
|
||||
public void OnRaftArrived()
|
||||
{
|
||||
Debug.Log("[RaftRideEndHandler] 뗏목 도착 처리 시작.");
|
||||
|
||||
if (detachPlayerFromRaft && xrOrigin != null)
|
||||
{
|
||||
xrOrigin.SetParent(null);
|
||||
}
|
||||
|
||||
if (exitPoint != null && xrOrigin != null)
|
||||
{
|
||||
// 강제로 이동시키고 싶지 않으면 이 부분은 주석 처리해도 됨.
|
||||
// xrOrigin.position = exitPoint.position;
|
||||
// xrOrigin.rotation = exitPoint.rotation;
|
||||
}
|
||||
|
||||
if (landAreaObject != null)
|
||||
{
|
||||
landAreaObject.SetActive(true);
|
||||
}
|
||||
|
||||
if (clamMissionObject != null)
|
||||
{
|
||||
clamMissionObject.SetActive(true);
|
||||
}
|
||||
|
||||
if (nextDoorObject != null)
|
||||
{
|
||||
nextDoorObject.SetActive(false);
|
||||
}
|
||||
|
||||
Debug.Log("[RaftRideEndHandler] 이제 플레이어가 육지로 이동해 조개 미션을 진행할 수 있습니다.");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user