按钮切换颜色统一

时间:2020-05-16 13:21:36

标签: c# unity3d

我一般对统一性和编码尚不陌生,我试图创建一个统一性按钮,最终在游戏中打开一扇门,但是当我与按钮相撞时却无法切换颜色,我立即遇到了问题,我不确定我的代码或统一设置中是否有问题

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

public class Button : MonoBehaviour
{
    [SerializeField]
    GameObject switchOn;

    [SerializeField]
    GameObject switchOff;

    public bool isOn = false;

    void Start () 
    {
        gameObject.GetComponent<SpriteRenderer>().sprite = switchOff.GetComponent<SpriteRenderer>().sprite;
    }

    void OnTriggerEnter2D(Collider2D col) 
    {
        gameObject.GetComponent<SpriteRenderer>().sprite = switchOn.GetComponent<SpriteRenderer>().sprite;

        isOn = true;
    }
}

我在打开和关闭游戏对象上分别设置了2种不同的按钮纹理,分别是绿色的和红色的,有人知道代码有问题吗

1 个答案:

答案 0 :(得分:0)

在发生冲突的输入中调试一条线,可能它没有被调用。确保您的播放器具有刚体和对撞机,并确保您的门具有对撞机。另外,请确保已检查玩家对撞机上的触发器。