- UI를 만들어놓고, 비활성화 해놓은다음 죽었을때, UI 활성화, 게임 시간 멈추고, 커서 락 풀고, 보이게한다.
using UnityEngine;
public class Player_Death : MonoBehaviour
{
[SerializeField] Canvas death_UI_Canvas;
void Start()
{
death_UI_Canvas.enabled = false;
}
public void DeathState()
{
death_UI_Canvas.enabled = true;
Time.timeScale = 0;
Cursor.lockState = CursorLockMode.None;
Cursor.visible = true;
}
}
- 위의 코드를 플레이어의 HP가 0이하일때 Player_Death 스크립트 가져오고, 함수를 불러서 실행시킨다.
using UnityEngine;
public class Player_Health : MonoBehaviour
{
[SerializeField] float health = 100f;
public void TakeDamage(float damage)
{
health -= damage;
print("HP : " + health);
if (health <= 0)
{
GetComponent<Player_Death>().DeathState();
}
}
}
- Retry를 눌렀을때 씬을 재생시키면서 커서도 다시 묶고, Time.timeScale = 1로 멈춰있는것도 다시 정상으로 되돌린다.
using UnityEngine;
using UnityEngine.SceneManagement;
public class UI : MonoBehaviour
{
public void Retry()
{
Time.timeScale = 1;
Cursor.lockState = CursorLockMode.Locked;
int currentScene = SceneManager.GetActiveScene().buildIndex;
SceneManager.LoadScene(currentScene);
}
public void Exit()
{
Application.Quit();
}
}
유니티 플레이어 무기 교체(키입력, 마우스휠), 오류 해결 (1) | 2024.09.14 |
---|---|
유니티 총 줌인, 줌아웃, 확대, 축소 만들기 (0) | 2024.09.12 |
유니티 레이캐스트로 총 맞은 곳에 이펙트(파티클) 생성하기 (0) | 2024.09.11 |
유니티 AI navigation 사용, 적 추적하기, 추적 범위 확인하기 (0) | 2024.09.10 |
유니티 벽 미끄러지기 (0) | 2024.09.10 |