2025-04-28 16:32:12 +09:00

58 lines
1.7 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
// 엔딩 타입 정의
public enum EndingType
{
Normal, // 던전 공략 O
Bad, // 던전 공략 X
Happy // 던전 공략 O, 평판 기본 스탯 값 * 1.5 이상
}
public partial class GameManager : Singleton<GameManager>
{
private float happyEndReputation = 3.0f;
public void ClearStage()
{
Debug.Log($"스테이지 레벨 {stageLevel}을 클리어 하셨습니다!");
stageLevel++;
}
// 엔딩 관련 메서드. 7일차에 실행
private void TriggerTimeEnding()
{
// 플레이어 상태에 따라 엔딩 판별
EndingType endingType = DetermineEnding();
// 엔딩 타입에 따라 다른 씬이나 UI 표시
switch (endingType)
{
case EndingType.Normal:
Debug.Log("던전 공략 성공");
// TODO: 엔딩 관련 패널 띄우기
break;
case EndingType.Bad:
Debug.Log("던전 공략 실패");
break;
case EndingType.Happy:
Debug.Log("던전 공략 성공과 훌륭한 평판 작");
break;
}
}
// 던전 스테이지와 평판 수치로 엔딩 판별
private EndingType DetermineEnding()
{
if (stageLevel < GameConstants.maxStage) // 현재 스테이지 1 혹은 2
return EndingType.Bad;
if (playerStats.ReputationStat >= happyEndReputation) // 평판이 일정 수치 이상
return EndingType.Happy;
return EndingType.Normal;
}
}