前期工程实现了技能栏的滚动以及Grid排序功能,现在讲技能SkillItem作为一个Prefabs来处理,使其可以改变技能图标及描述的显示。
思路:
读取技能中的icon、name、applyType、des、cost的物体,然后将skillinfo中的值赋给物体的文本即可。
脚本如下:
Class SkillItem
{
private int id;
private SkillInfo info;
public UISprite icon;
public UILabel name;
public UILabel applyType;
public UILabel des;
public UILable cost;
public void SetId(int id)
{
this.id = id;
info = SkillsInfo._instance.GetSkillInfoById(id);
icon.spriteName = info.icon_name;
name.text = info.name;
switch(applyType)
{
case ApplyType.Passvie :
applyType.text = "增益";
break;
case ApplyType.Buff :
applyType.text = "强化";
break;
case ApplyType.SingleTarget :
applyType.text = "单体";
break;
case ApplyType.MuliteTarget :
applyType.text = "全体";
break;
}
des.text = info.des;
cost.text = info.MP.ToString( );
}
}
这样就可以实现了改变技能信息的方法。