C# Unity 상점 만들기

삐얅·2024년 8월 8일
0

1. 개요

npc와 대화 중 상점 메뉴에 들어가 아이템들을 보여주는 ui가 필요해 제작하게 되었다.

2. 코드

    public List<ItemData> shopDataList;
    public List<Button> itemBtn;
    public GameObject goodsList;
    public GameObject parentPosition;
    public TextMeshProUGUI itemName;
    public TextMeshProUGUI itemDescription;
    public TextMeshProUGUI itemPrice;

    private void Start()
    {
        for (int i = 0; i < shopDataList.Count; i++)
        {
            GameObject goodsInstantiate = Instantiate(goodsList, parentPosition.transform);

            itemName = goodsInstantiate.transform.Find("ItemDisplay/ItemName").GetComponent<TextMeshProUGUI>();
            itemDescription = goodsInstantiate.transform.Find("ItemDisplay/ItemDescription").GetComponent<TextMeshProUGUI>();
            itemPrice = goodsInstantiate.transform.Find("ItemDisplay/ItemPrice").GetComponent<TextMeshProUGUI>();

            if(itemName != null)
            {
                itemName.text = shopDataList[i].itemName;
            }

            if (itemDescription != null)
            {
                itemDescription.text = shopDataList[i].description;
            }

            if (itemPrice != null)
            {
                itemPrice.text = shopDataList[i].price.ToString();
            }
        }
    }

아이템 데이터를 담아줄 리스트를 만들고 반복문으로 리스트의 길이 만큼 반복하며 자식 오브젝트로 부터 TextMeshPro 컴포넌트를 가져온 후 아이템데이터의 텍스트를 넣어줬다.

0개의 댓글

관련 채용 정보