在预制体Card上挂载了四个Text Mesh Pro组件,分别命名为Name、HP、ATK、Description。
将预制体Card挂载脚本CardDisplay用来在预制体上显示属性,并创建TextMeshPro对象来接收TextMeshPro组件。
using TMPro;
using UnityEngine;
using UnityEngine.UI;public class CardDisplay : MonoBehaviour
{// 创建卡牌的卡名、生命、攻击、描述的Text组件[SerializeField] public TextMeshPro nameText;[SerializeField] public TextMeshPro HPText;[SerializeField] public TextMeshPro ATKText;[SerializeField] public TextMeshPro descriptionText;
}
保存后,返回Unity中,发现无法将Name、HP、ATK、Description游戏物体拖入对应的框中。
解决方法:在脚本CardDIsplay中,将组件类型修改为TMP_Text。
using TMPro;
using UnityEngine;
using UnityEngine.UI;public class CardDisplay : MonoBehaviour
{// 创建卡牌的卡名、生命、攻击、描述的Text组件[SerializeField] public TMP_Text nameText;[SerializeField] public TMP_Text HPText;[SerializeField] public TMP_Text ATKText;[SerializeField] public TMP_Text descriptionText;
}
保存后,返回Unity中,发现可以将Name、HP、ATK、Description游戏物体拖入对应的框中了。
本章完。感谢阅读!