using UnityEngine; public class ObsessionTester : MonoBehaviour { // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // 🧪 이 스크립트는 테스트용입니다! // 키보드로 XP 시스템을 테스트할 수 있어요. // 나중에 보스가 완성되면 이 스크립트는 삭제해도 됩니다. // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [Header("🔧 테스트 설정")] [SerializeField] private int testXPAmount = 10; // 테스트로 줄 XP 양 private void Start() { Debug.Log("========================================"); Debug.Log("🧪 [테스트 모드] 키보드 조작법:"); Debug.Log(" [1] 런 XP +10 (보스 맞추기 시뮬레이션)"); Debug.Log(" [2] 런 XP +50 (보스 도달 시뮬레이션)"); Debug.Log(" [3] 런 XP -5 (패턴 중 피격 시뮬레이션)"); Debug.Log(" [4] 사망 시뮬레이션 (XP 전환)"); Debug.Log(" [5] 현재 상태 확인"); Debug.Log(" [0] 저장 데이터 초기화 (처음부터 다시)"); Debug.Log("========================================"); } private void Update() { // ObsessionSystem이 없으면 테스트 불가 if (ObsessionSystem.instance == null) { if (Input.anyKeyDown) { Debug.LogError("❌ ObsessionSystem이 씬에 없어요! GameManager 오브젝트에 추가하세요."); } return; } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [1] 보스 맞추기 시뮬레이션 (+10 XP) // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha1)) { ObsessionSystem.instance.AddRunXP(10); Debug.Log("🎯 [테스트] 보스 맞추기! +10 런 XP"); } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [2] 보스 도달 시뮬레이션 (+50 XP) // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha2)) { ObsessionSystem.instance.AddRunXP(50); Debug.Log("🚪 [테스트] 보스 방 도달! +50 런 XP"); } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [3] 패턴 중 피격 시뮬레이션 (-5 XP) // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha3)) { ObsessionSystem.instance.AddRunXP(-5); Debug.Log("💥 [테스트] 패턴 중 피격! -5 런 XP"); } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [4] 사망 시뮬레이션 (런 XP → 영구 XP 전환) // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha4)) { Debug.Log("💀 [테스트] 사망! 런 XP를 영구 XP로 전환..."); ObsessionSystem.instance.OnDeathConvertXP(); } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [5] 현재 상태 확인 // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha5)) { Debug.Log("========================================"); Debug.Log("📊 [현재 상태]"); Debug.Log($" 런 XP: {ObsessionSystem.instance.GetCurrentRunXP()}"); Debug.Log($" 영구 XP: {ObsessionSystem.instance.GetCurrentXP()}"); Debug.Log($" 레벨: {ObsessionSystem.instance.GetCurrentLevel()}"); Debug.Log("========================================"); } // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ // [0] 저장 데이터 초기화 (처음부터 다시) // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ if (Input.GetKeyDown(KeyCode.Alpha0)) { PlayerPrefs.DeleteAll(); Debug.Log("🗑️ [테스트] 모든 저장 데이터 삭제! 게임을 다시 시작하세요."); } } }