プレーヤーのステータス④(リトライの仕組みを作る)
![987bd3fa 9653 4fcc a054 8b7609d99c6d](https://codegenius.org/uploads/slide/image/7571/987bd3fa-9653-4fcc-a054-8b7609d99c6d.jpeg)
![B8e0c0df c14e 4a44 a615 ef8959136709](https://codegenius.org/uploads/slide/image/7572/b8e0c0df-c14e-4a44-a615-ef8959136709.jpeg)
リトライ
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class PlayerHealth : MonoBehaviour
{
public GameObject effectPrefab;
public AudioClip damageSound;
public AudioClip destroySound;
public int maxHP;
private int HP;
public Slider HPSlider;
public int playerCount;
public TextMeshProUGUI playerLabel;
void Start()
{
HP = maxHP;
HPSlider.maxValue = HP;
HPSlider.value = HP;
playerLabel.text = "" + playerCount;
}
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("EnemyMissile"))
{
HP -= 1;
AudioSource.PlayClipAtPoint(damageSound, Camera.main.transform.position);
Destroy(other.gameObject);
HPSlider.value = HP;
if (HP == 0)
{
GameObject effect = Instantiate(effectPrefab, transform.position, Quaternion.identity);
Destroy(effect, 1.0f);
AudioSource.PlayClipAtPoint(destroySound, Camera.main.transform.position);
this.gameObject.SetActive(false);
playerCount -= 1;
playerLabel.text = "" + playerCount;
// ★★追加
Invoke("Retry", 1.0f);
}
}
}
// ★★追加
void Retry()
{
this.gameObject.SetActive(true);
HP = maxHP;
HPSlider.maxValue = HP;
HPSlider.value = HP;
}
}
![56c208e7 48d6 46d4 b959 5537db4f7354](https://codegenius.org/uploads/slide/image/7573/56c208e7-48d6-46d4-b959-5537db4f7354.jpeg)
【2021版】Danmaku(基礎/全55回)
他のコースを見る![987bd3fa 9653 4fcc a054 8b7609d99c6d](https://codegenius.org/uploads/slide/image/7571/987bd3fa-9653-4fcc-a054-8b7609d99c6d.jpeg)
![B8e0c0df c14e 4a44 a615 ef8959136709](https://codegenius.org/uploads/slide/image/7572/b8e0c0df-c14e-4a44-a615-ef8959136709.jpeg)
リトライ
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using TMPro;
public class PlayerHealth : MonoBehaviour
{
public GameObject effectPrefab;
public AudioClip damageSound;
public AudioClip destroySound;
public int maxHP;
private int HP;
public Slider HPSlider;
public int playerCount;
public TextMeshProUGUI playerLabel;
void Start()
{
HP = maxHP;
HPSlider.maxValue = HP;
HPSlider.value = HP;
playerLabel.text = "" + playerCount;
}
private void OnTriggerEnter(Collider other)
{
if (other.CompareTag("EnemyMissile"))
{
HP -= 1;
AudioSource.PlayClipAtPoint(damageSound, Camera.main.transform.position);
Destroy(other.gameObject);
HPSlider.value = HP;
if (HP == 0)
{
GameObject effect = Instantiate(effectPrefab, transform.position, Quaternion.identity);
Destroy(effect, 1.0f);
AudioSource.PlayClipAtPoint(destroySound, Camera.main.transform.position);
this.gameObject.SetActive(false);
playerCount -= 1;
playerLabel.text = "" + playerCount;
// ★★追加
Invoke("Retry", 1.0f);
}
}
}
// ★★追加
void Retry()
{
this.gameObject.SetActive(true);
HP = maxHP;
HPSlider.maxValue = HP;
HPSlider.value = HP;
}
}
![56c208e7 48d6 46d4 b959 5537db4f7354](https://codegenius.org/uploads/slide/image/7573/56c208e7-48d6-46d4-b959-5537db4f7354.jpeg)
プレーヤーのステータス④(リトライの仕組みを作る)