Unity类银河恶魔城学习记录12-7-2 p129 Craft UI - part 2源代码

文章详细描述了Unity中用于制作类银河恶魔城游戏的UI组件,如UI_CraftWindow用于展示装备信息,UI_CraftList管理装备列表,以及UI_equipementSlots的特殊装备槽功能。这些代码示例展示了如何使用UnityUIAPI进行装备显示和交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Alex教程每一P的教程原代码加上我自己的理解初步理解写的注释,可供学习Alex教程的人参考
此代码仅为较上一P有所改变的代码

 



【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili

UI_CraftWindow.cs
using UnityEngine.UI;
using TMPro;
using UnityEngine;
using Unity.VisualScripting;

public class UI_CraftWindow : MonoBehaviour
{
    [SerializeField] private TextMeshProUGUI itemName;
    [SerializeField] private TextMeshProUGUI itemDescription;
    [SerializeField] private Image itemIcon;
    [SerializeField] private Button craftButton;

    [SerializeField] private Image[] materialsImage;

    public void SetUpCraftWIndow(ItemData_Equipment _data)
    {
        craftButton.onClick.RemoveAllListeners();//防止出现点击Button出现其他的函数

        for (int i = 0; i < materialsImage.Length; i++)//将所有的UI设置为clear颜色
        {
            materialsImage[i].color = Color.clear;
            materialsImage[i].GetComponentInChildren<TextMeshProUGUI>().color = Color.clear;
        }

        for(int i = 0;i < _data.craftingMaterials.Count; i++)
        {
            if(_data.craftingMaterials.Count > materialsImage.Length)
            {
                Debug.LogWarning("材料比格子数还多了");
            }

            materialsImage[i].sprite = _data.craftingMaterials[i].data.icon;
            materialsImage[i].color = Color.white;
            TextMeshProUGUI materialsSlotText = materialsImage[i].GetComponentInChildren<TextMeshProUGUI>();

            materialsSlotText.text = _data.craftingMaterials[i].stackSize.ToString();
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值