複数ステージ⑤(ステージクリアー)
![31ba213a 3aaa 47a4 a67f f78bd024568a](https://codegenius.org/uploads/slide/image/2418/31ba213a-3aaa-47a4-a67f-f78bd024568a.jpeg)
![F970decc 1370 4c3c 92c3 eed6ef98771a](https://codegenius.org/uploads/slide/image/2419/f970decc-1370-4c3c-92c3-eed6ef98771a.jpeg)
ステージクリアー
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
// ★追加(ステージクリアー)
using UnityEngine.SceneManagement;
public class EnemyHealth : MonoBehaviour
{
public GameObject effectPrefab;
public AudioClip destroySound;
public int enemyHP;
private Slider slider;
public int scoreValue;
private ScoreManager sm;
public GameObject[] itemPrefab;
// ★追加(ステージクリアー)
public int nextSceneNumber;
public AudioClip clearSound;
void Start()
{
slider = GameObject.Find("EnemyHPSlider").GetComponent<Slider>();
slider.maxValue = enemyHP;
slider.value = enemyHP;
sm = GameObject.Find("ScoreLabel").GetComponent<ScoreManager>();
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Missile"))
{
GameObject effect = Instantiate(effectPrefab, transform.position, Quaternion.identity);
Destroy(effect, 0.5f);
enemyHP -= 1;
slider.value = enemyHP;
Destroy(other.gameObject);
if (enemyHP == 0)
{
// ★変更(ステージクリアー)
// ↓下記の1行を「//」で「コメントアウト」にする(重要ポイント)
// Destroy (transform.root.gameObject);
// ★追加(ステージクリアー)
// 親オブジェクトを非表示にする
transform.root.gameObject.SetActive(false);
AudioSource.PlayClipAtPoint(destroySound, transform.position);
sm.AddScore(scoreValue);
GameObject dropItem = itemPrefab[Random.Range(0, itemPrefab.Length)];
Instantiate(dropItem, transform.position, Quaternion.identity);
// ★追加(ステージクリアー)
// (条件)親オブジェクトに「Boss」というTagがついていたならば(ポイント)
if (this.gameObject.transform.root.CompareTag("Boss"))
{
// クリアー音を鳴らす
AudioSource.PlayClipAtPoint(clearSound, Camera.main.transform.position);
// 1秒後にシーン遷移のメソッドを実行する。
Invoke("GoNextStage", 1);
}
}
}
}
// ★追加(ステージクリアー)
// シーン遷移のメソッド
void GoNextStage()
{
SceneManager.LoadScene(nextSceneNumber);
}
}
![7c48f508 2d11 4530 abad 7d1298abe413](https://codegenius.org/uploads/slide/image/2420/7c48f508-2d11-4530-abad-7d1298abe413.jpeg)
![4b13a248 57bd 4f43 a099 d48d09dd359b](https://codegenius.org/uploads/slide/image/2421/4b13a248-57bd-4f43-a099-d48d09dd359b.jpeg)
![C8db8e91 7a1c 4b6b baa0 98d9d37cf778](https://codegenius.org/uploads/slide/image/2422/c8db8e91-7a1c-4b6b-baa0-98d9d37cf778.jpeg)
![Bb7b59d1 901c 4ff6 b3a7 a6755611046a](https://codegenius.org/uploads/slide/image/2423/bb7b59d1-901c-4ff6-b3a7-a6755611046a.jpeg)
![0273155a 7117 4a10 8322 17da7ca2b443](https://codegenius.org/uploads/slide/image/2424/0273155a-7117-4a10-8322-17da7ca2b443.jpeg)
![08b08a91 7ea5 43e6 81b1 050f27a129aa](https://codegenius.org/uploads/slide/image/2425/08b08a91-7ea5-43e6-81b1-050f27a129aa.jpeg)
![1e91cdd2 6dc5 4209 8027 2de7f7cae19a](https://codegenius.org/uploads/slide/image/2426/1e91cdd2-6dc5-4209-8027-2de7f7cae19a.jpeg)
![Fc8c3b78 8a26 4516 8efb e030195ff1f0](https://codegenius.org/uploads/slide/image/2427/fc8c3b78-8a26-4516-8efb-e030195ff1f0.jpeg)
![4fe7cdc7 21b0 4837 a66f 9eb2d7e6433c](https://codegenius.org/uploads/slide/image/2428/4fe7cdc7-21b0-4837-a66f-9eb2d7e6433c.jpeg)
![769b5c86 f3e7 47a6 878c a10f97020779](https://codegenius.org/uploads/slide/image/2429/769b5c86-f3e7-47a6-878c-a10f97020779.jpeg)
![F4501f16 06ae 4155 9daa ac0341ef1529](https://codegenius.org/uploads/slide/image/2430/f4501f16-06ae-4155-9daa-ac0341ef1529.jpeg)
Danmaku Ⅱ(基礎2/全24回)
他のコースを見る![31ba213a 3aaa 47a4 a67f f78bd024568a](https://codegenius.org/uploads/slide/image/2418/31ba213a-3aaa-47a4-a67f-f78bd024568a.jpeg)
![F970decc 1370 4c3c 92c3 eed6ef98771a](https://codegenius.org/uploads/slide/image/2419/f970decc-1370-4c3c-92c3-eed6ef98771a.jpeg)
ステージクリアー
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
// ★追加(ステージクリアー)
using UnityEngine.SceneManagement;
public class EnemyHealth : MonoBehaviour
{
public GameObject effectPrefab;
public AudioClip destroySound;
public int enemyHP;
private Slider slider;
public int scoreValue;
private ScoreManager sm;
public GameObject[] itemPrefab;
// ★追加(ステージクリアー)
public int nextSceneNumber;
public AudioClip clearSound;
void Start()
{
slider = GameObject.Find("EnemyHPSlider").GetComponent<Slider>();
slider.maxValue = enemyHP;
slider.value = enemyHP;
sm = GameObject.Find("ScoreLabel").GetComponent<ScoreManager>();
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("Missile"))
{
GameObject effect = Instantiate(effectPrefab, transform.position, Quaternion.identity);
Destroy(effect, 0.5f);
enemyHP -= 1;
slider.value = enemyHP;
Destroy(other.gameObject);
if (enemyHP == 0)
{
// ★変更(ステージクリアー)
// ↓下記の1行を「//」で「コメントアウト」にする(重要ポイント)
// Destroy (transform.root.gameObject);
// ★追加(ステージクリアー)
// 親オブジェクトを非表示にする
transform.root.gameObject.SetActive(false);
AudioSource.PlayClipAtPoint(destroySound, transform.position);
sm.AddScore(scoreValue);
GameObject dropItem = itemPrefab[Random.Range(0, itemPrefab.Length)];
Instantiate(dropItem, transform.position, Quaternion.identity);
// ★追加(ステージクリアー)
// (条件)親オブジェクトに「Boss」というTagがついていたならば(ポイント)
if (this.gameObject.transform.root.CompareTag("Boss"))
{
// クリアー音を鳴らす
AudioSource.PlayClipAtPoint(clearSound, Camera.main.transform.position);
// 1秒後にシーン遷移のメソッドを実行する。
Invoke("GoNextStage", 1);
}
}
}
}
// ★追加(ステージクリアー)
// シーン遷移のメソッド
void GoNextStage()
{
SceneManager.LoadScene(nextSceneNumber);
}
}
![7c48f508 2d11 4530 abad 7d1298abe413](https://codegenius.org/uploads/slide/image/2420/7c48f508-2d11-4530-abad-7d1298abe413.jpeg)
![4b13a248 57bd 4f43 a099 d48d09dd359b](https://codegenius.org/uploads/slide/image/2421/4b13a248-57bd-4f43-a099-d48d09dd359b.jpeg)
![C8db8e91 7a1c 4b6b baa0 98d9d37cf778](https://codegenius.org/uploads/slide/image/2422/c8db8e91-7a1c-4b6b-baa0-98d9d37cf778.jpeg)
![Bb7b59d1 901c 4ff6 b3a7 a6755611046a](https://codegenius.org/uploads/slide/image/2423/bb7b59d1-901c-4ff6-b3a7-a6755611046a.jpeg)
![0273155a 7117 4a10 8322 17da7ca2b443](https://codegenius.org/uploads/slide/image/2424/0273155a-7117-4a10-8322-17da7ca2b443.jpeg)
![08b08a91 7ea5 43e6 81b1 050f27a129aa](https://codegenius.org/uploads/slide/image/2425/08b08a91-7ea5-43e6-81b1-050f27a129aa.jpeg)
![1e91cdd2 6dc5 4209 8027 2de7f7cae19a](https://codegenius.org/uploads/slide/image/2426/1e91cdd2-6dc5-4209-8027-2de7f7cae19a.jpeg)
![Fc8c3b78 8a26 4516 8efb e030195ff1f0](https://codegenius.org/uploads/slide/image/2427/fc8c3b78-8a26-4516-8efb-e030195ff1f0.jpeg)
![4fe7cdc7 21b0 4837 a66f 9eb2d7e6433c](https://codegenius.org/uploads/slide/image/2428/4fe7cdc7-21b0-4837-a66f-9eb2d7e6433c.jpeg)
![769b5c86 f3e7 47a6 878c a10f97020779](https://codegenius.org/uploads/slide/image/2429/769b5c86-f3e7-47a6-878c-a10f97020779.jpeg)
![F4501f16 06ae 4155 9daa ac0341ef1529](https://codegenius.org/uploads/slide/image/2430/f4501f16-06ae-4155-9daa-ac0341ef1529.jpeg)
複数ステージ⑤(ステージクリアー)