AntItemMenuBase是AntItemInventoryScene的父类,可以看到:现在这个是真正的Inventory实现。
在Inventory中BuyBttn将会变成硕大的EquipBttn。我们可以查看一下该Bttn的变幻方式。当然改Bttn并不是BuyBttn的变幻,而是一个相同位置的新按钮。
var AntScaleButton EquipBttn; //尽管我已经实现了装备时候屏幕闪动的按钮效果,但是不会使用它,因为太闪人的眼睛了XD
1.同样在InitMenuScene中初始化按钮
EquipBttn=AntScaleButton(FindMenuObject("EquipButton")); //将会获得defaultproperties中的按钮在这里我们将会绘制这个按钮的名字
观察了一下底下Bttn的。
2.触摸按钮event OnTouch
local playerItemData PlayerData; //玩家道具信息
local AntYesNoPop YesNo; //非常重要
local string Message; //给玩家提示信息内容
这里我们实现的操作时EquipButton的内容
if(Sender==EquipButton)
{
if(ItemListMenu.SelectedItem!=EquipItem) //我得追查到ItemListMenu和EquipItem怎么获取的。
//ItemListMenu是在AntItemListScene中初始化的AntItemListMenu类,在其函数PreInitMenuObject中ItemListMenu=new(self)class"AntItemListMenu";
//EquipItem是AntInventoryItem类,在AntItemlistScene中根据FindEquippedItemType来判断当前的武器,ItemListMenu.SelectedItem.ItemType;
//下边这一句用来判断当前的
//这个按钮是否激活隐藏?
CompareBttn.bIsActive=false;
CompareBttn.bIsHidden=true;
}
function AntInventoryItem GetActiveEquipInventory(){return none;}