C# &引用;如果;在Unity5中

C# &引用;如果;在Unity5中,c#,unity5,C#,Unity5,我正在为一个游戏做一张纸条,玩家走过一块石头,它会改变颜色,当颜色保持在想要的颜色时,它会打开一扇门。如何将游戏对象颜色与默认颜色进行比较 using System.Collections; using System.Collections.Generic; using UnityEngine; public class MudarCor : MonoBehaviour { private Vector4[] cores = new Vector4[] {new Vector4(1, 0,

我正在为一个游戏做一张纸条,玩家走过一块石头,它会改变颜色,当颜色保持在想要的颜色时,它会打开一扇门。如何将游戏对象颜色与默认颜色进行比较

using System.Collections;
using System.Collections.Generic; 
using UnityEngine;

public class MudarCor : MonoBehaviour {

private Vector4[] cores = new Vector4[] {new Vector4(1, 0, 0, 1), new Vector4(0, 1, 0, 1), new Vector4(0, 0, 1, 1)};
public int cor;
public GameObject pedra1;
public GameObject pedra2;
public GameObject pedra3;
public Vector4[] teste= new Vector4[] { new Vector4(0, 1, 0, 1) };





private void Start() {
    //define a cor inicial da pedra
    gameObject.GetComponent<SpriteRenderer>().color = new Vector4(1, 0, 0, 1);



}
 void OnTriggerEnter2D(Collider2D player)
{
    if (cor == 2)
        cor = 0;
    else
        cor++;
        gameObject.GetComponent<SpriteRenderer>().color = cores[cor];



}
private void Update()
{


    if (teste.Equals( pedra1.GetComponent<SpriteRenderer>().color))
    {
       //code
    }
}
使用系统集合;
使用System.Collections.Generic;
使用UnityEngine;
公共类MudarCor:单一行为{
私有向量4[]cores=newvector4[]{newvector4(1,0,0,1),newvector4(0,1,0,1),newvector4(0,0,1,1)};
公共int cor;
公共游戏对象pedra1;
公共游戏对象pedra2;
公共游戏对象pedra3;
公共向量4[]teste=newvector4[]{newvector4(0,1,0,1)};
私有void Start(){
//定义一个特殊的数据
gameObject.GetComponent().color=新向量4(1,0,0,1);
}
无效OnTriggerEnter2D(碰撞的R2D播放器)
{
如果(cor==2)
cor=0;
其他的
cor++;
gameObject.GetComponent().color=cores[cor];
}
私有void更新()
{
if(teste.Equals(pedra1.GetComponent().color))
{
//代码
}
}

基本方法是:

Color colorA = objA.GetComponent<SpriteRenderer>().color;
Color colorB = objB.GetComponent<SpriteRenderer>().color;

if (colorA.Equals(colorB))
    ....
colorA=objA.GetComponent().Color;
Color colorB=objB.GetComponent().Color;
if(colorA.Equals(colorB))
....

基本方法是:

Color colorA = objA.GetComponent<SpriteRenderer>().color;
Color colorB = objB.GetComponent<SpriteRenderer>().color;

if (colorA.Equals(colorB))
    ....
colorA=objA.GetComponent().Color;
Color colorB=objB.GetComponent().Color;
if(colorA.Equals(colorB))
....