我需要当我的绿色球体与我的绿色块碰撞,游戏继续,当我的红色球体与我的绿色块碰撞时,游戏结束。如何??
碰撞脚本:
public class Colision : MonoBehaviour {
public Text points;
int contador=0;
void OnCollisionEnter(Collision col){
if ( col.gameObject.name == "Cube") {
col.gameObject.SetActive(false);
contador = contador + 1;
points.text = "" + contador;
}
if ( col.gameObject.name == "Cube(Clone)") {
col.gameObject.SetActive(false);
contador = contador + 1;
points.text = "" + contador;
}
}
答案 0 :(得分:0)
从你的文字我明白,当假设玩家击中绿色框时,没有任何事情发生。但当他击中红色框时,游戏结束。你并没有在你的情况下定义“结束”意味着什么,但我想用“游戏结束”文本加载新场景就是你的意思。所以我在答案中这样做了。
1.将此脚本放在播放器上(或对象将与红色盒子碰撞)并给它一些对撞机。
2.在统一中创建新标签并将其命名为“红色”。
3.将此标签分配给将结束游戏的对象。
4.设置红色物体对撞机“触发器”为TRUE,其标签为红色。
using UnityEngine;
using System.Collections;
using UnityEngine.SceneManagement;
public class collisionTest : MonoBehaviour {
void OnTriggerEnter(Collider trigg)
{
if (trigg.gameObject.tag == "Red")
{
Debug.Log("I have collided with trigger" + trigg.gameObject.name);
//do your ending stuff
SceneManager.LoadScene("exit",LoadSceneMode.Single);
}
}
}