對不起我又來了
這次想實現的是一個若車子闖了紅燈就會被扣分的設置
以下是設置碰撞後會扣分數的程式碼
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Score : MonoBehaviour
{
public int score = 100;
public Text scoreText;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
scoreText.text = ((int)score).ToString();
}
void OnTriggerEnter(Collider aaa) //aaa為自定義碰撞事件
{
if (aaa.gameObject.name == "Boom") //如果aaa碰撞事件的物件名稱是
CubeA
{
score -= 32;
}
}
}
這邊是紅綠燈設置的程式碼
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Tflc : MonoBehaviour
{
public Light Red;
public Light Green;
public Light Yellow;
// Use this for initialization
void Start()
{
StartCoroutine(Example());
}
IEnumerator Example()
{
Yellow.enabled = false;
while (true)
{
Green.enabled = true;
Red.enabled = false;
yield return new WaitForSeconds(10);
Yellow.enabled = true;
Green.enabled = false;
yield return new WaitForSeconds(4);
Red.enabled = true;
Yellow.enabled = false;
yield return new WaitForSeconds(10);
}
// Update is called once per frame
}
}
我想要實現車子在紅燈是造成碰撞時才會被扣32分
之前有找到一個寫法如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
public class Score : MonoBehaviour
{
public int score = 100;
public Text scoreText;
public Tflc game;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update()
{
scoreText.text = ((int)score).ToString();
}
void OnTriggerEnter(Collider aaa) //aaa為自定義碰撞事件
{
if (game.Red.enabled == true || (aaa.gameObject.name == "Boom"))
{
score -= 32;
}
}
}
但是他不會扣分
想請教大家unity有辦法讓碰撞事件同時滿足這兩個條件嗎
要怎麼改寫才能實現我的需求
謝謝