Get Component

2023. 3. 8. 15:27개인적인 공부/Unity

Get Component

게임 오브젝트의 컴포넌트를 가져오는 함수이다. type 은 가져올 컴포넌트의 타입이다.

public class Delivery : MonoBehaviour
{
    // 어떠한 것과 부딪히면 무엇에 부딪혔는가에 대한 정보를 얻는다.

    [SerializeField] Color32 hasPackageColor = new Color32(1,1,1,1);
    [SerializeField] Color32 noPackageColor = new Color32(1,1,1,1);
    [SerializeField] float destroyDelay = 0.5f;
    bool hasPackage;
    SpriteRenderer spriteRenderer;

    void Start()
    {
        spriteRenderer = GetComponent<SpriteRenderer>();
    }
    
    void OnCollisionEnter2D(Collision2D other) 
    {
        Debug.Log("빼-앰~!!");
    }

    void OnTriggerEnter2D(Collider2D other) 
    {
        if (other.tag == "Package" && !hasPackage) 

        {
            Debug.Log("Package picked up"); 
            hasPackage = true;
            spriteRenderer.color = hasPackageColor;
            Destroy(other.gameObject, destroyDelay);
        }

        if(other.tag == "Customer" && hasPackage)
        {
            Debug.Log("Delivered package");
            hasPackage = false;
            spriteRenderer.color = noPackageColor;
        }
    }
}

조건이 만족되면 Package 색을 들고 오고 Package 를 Customer 에게 주면 차량의 색에 돌아온다.

 

 

 

 

'개인적인 공부 > Unity' 카테고리의 다른 글

Sprite shape  (0) 2023.03.13
Boost & Bump  (0) 2023.03.08
객체삭제? Destroy()  (0) 2023.03.08
Bool  (0) 2023.03.07
if 구문  (0) 2023.03.07