我想那只给我的性格硬币,如果字符y位置等于我做这个代码鸟y位置,但它无法正常工作
public Transform target;
public GameObject Coin;
void Update () {
transform.Translate (Vector2.left * 10f * Time.deltaTime);
if (transform.position.y == target.position.y) {
Instantiate (Coin, transform.position, Quaternion.identity);
}
}
您在评论自己回答了这个问题。性格是绝不会在相同的Y-POS像鸟,所以你得检查字符是否是鸟以上。尝试这个:
public Transform target;
public GameObject Coin;
private bool _birdGaveCoin = false;
void Update()
{
transform.Translate(Vector2.left * 10f * Time.deltaTime);
if (transform.position.y <= target.position.y && !_birdGaveCoin)
{
Instantiate(Coin, transform.position, Quaternion.identity);
_birdGaveCoin = !_birdGaveCoin;
}
}
所以把它包起来:花车疯狂精确。因此,可以是一帧你的性格是3.99999f和鸟是4.00000f和下一帧的播放器是在4.00001f,所以它在技术上不一样的。
答案是把X不是Y本代码回答问题
void Update () {
transform.Translate (Vector2.left * 10f * Time.deltaTime);
if (transform.position.x <= target.position.x&&coin==false) {
Instantiate (EvilEgg, transform.position, Quaternion.identity);
coin=true;
}
}