C# Scriptファイル名: CheckItem
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class CheckItem : MonoBehaviour {
private int count;
private float step_time; // 経過時間カウント用
public Text clearText;
public GameObject prefabBang;
public AudioClip bangSE;
// Use this for initialization
void Start () {
count = 0;
step_time = 0.0f; // 経過時間初期化
}
// Update is called once per frame
void Update () {
if(count >= 2) // シーン上にItemタグ設定されたものが2つある場合(各自のItem数に応じて変更してください)
{
clearText.text = "CLEAR!";
// 経過時間をカウント
step_time += Time.deltaTime;
// 3秒後に画面遷移(scene2へ移動)
if (step_time >= 3.0f)
{
SceneManager.LoadScene("TitleScene");
}
}
}
// 爆発エフェクト生成関数
private void Bang()
{
// 爆破音
AudioSource.PlayClipAtPoint(bangSE, transform.position);
// 爆破エフェクト再生
GameObject effect = Instantiate(prefabBang);
// 爆破位置微調整
Vector3 pos = transform.position;
pos += transform.forward + transform.up * 1.2f;
effect.transform.position = pos;
}
// 当たり判定
void OnCollisionEnter(Collision col)
{
if (col.gameObject.tag == "Item")
{
Destroy(col.gameObject);
count++;
Bang();
}
}
}
コメント