-
Notifications
You must be signed in to change notification settings - Fork 2
develop‐Revival
Jeon-YJ1004 edited this page Jul 31, 2023
·
1 revision
- 플레이어는 Revival 스탯을 강화하거나 아이템을 통해 올릴 수 있다.
- 스탯은 0~2 사이이며 이는 부활 횟수를 뜻한다.
- 만약 스탯이 증가 되었다면 캐릭터의 체력이 처음 0이 되고 스탯 횟수 만큼 부활 할 수 있다.
3-1. Character.cs의 TakeDamage에서 스탯 확인 후 GameManager.instance.GameOverPanelUp() 실행
3-2. 판넬의 버튼 클릭 시 Revival.cs의 DoRevival() 실행
[Character.cs]
public void TakeDamage(float damage, int weaponIndex)
{
//공격 받아서 체력이 0보다 작아지면
if (mCurrentHp <= 0)
{
//Revival 스탯이 0보다 크면 RevivalPanel UI가 뜬다.
if (GameManager.instance.CharacterStats[(int)Enums.EStat.Revival] > 0)
{
GameManager.instance.RevivalPanelUp();
}
else
{
GameManager.instance.GameOverPanelUp();
mbDead = true;
}
SoundManager.instance.PlaySoundEffect(Clips[((int)Enums.ECharacterEffect.Die)]);
}
mHpBar.SetState(mCurrentHp, mMaxHp);
}
[GameManager.cs]
public void RevivalPanelUp()
{
Time.timeScale = 0;
RevivalPanel.SetActive(true);
}
- 부활한 캐릭터의 체력은 최댓값의 절반이다.
[Revival.cs]
public void DoRevival()
{
GameManager.instance.Character.RevivalHp();
GameManager.instance.RevivalPanel.SetActive(false);
GameManager.instance.CharacterStats[(int)Enums.EStat.Revival] -= 1;
Time.timeScale = 1;
}