Unityスクリプト:CheckItem.cs

Unity

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();
		}
	}
}

コメント