GetGemCount() public method

public GetGemCount ( ) : int
return int
Esempio n. 1
0
        //装备打洞 参数:玩家对象,要打洞的道具id,打的洞序号[0为第一个洞]
        public void OpenGem(PlayerObject play, uint srcid, uint destid)
        {
            const int YUEGUANGBAOHE             = 723002; //月光宝盒id
            const int YUEGUANGBAOHEZENGQIANGBAN = 820300; //月光宝盒增强版 id
            const int SHENSHENGYUEGUANGBAOHE    = 742178; //神圣月光宝盒

            GameStruct.RoleItemInfo item    = play.GetItemSystem().FindItem(destid);
            GameStruct.RoleItemInfo srcitem = play.GetItemSystem().FindItem(srcid);
            if (item == null || srcitem == null)
            {
                return;
            }
            byte index = 0;

            switch (srcitem.itemid)
            {
            case YUEGUANGBAOHE:
            {
                if (item.GetGemCount() != 0)
                {
                    return;
                }
                index = 0;
                break;
            }

            case YUEGUANGBAOHEZENGQIANGBAN:
            {
                if (item.GetGemCount() != 1)
                {
                    return;
                }
                index = 1;
                break;
            }

            //第三个洞 2015.11.21 道具协议有bug。 先不开
            //11.21 开了
            case SHENSHENGYUEGUANGBAOHE:
            {
                if (item.GetGemCount() != 2)
                {
                    return;
                }
                index = 2;
                break;
            }

            //第三个洞其他协议打-- 这个不打。。-。- 2015.9.21
            default:
            {
                return;
            }
            }
            play.GetItemSystem().DeleteItemByID(srcid);
            item.OpenGem(index);
            play.GetItemSystem().UpdateItemInfo(item.id);
        }
Esempio n. 2
0
        //宝石镶嵌
        public void GemSet(PlayerObject play, uint srcid, uint destid, byte index)
        {
            GameStruct.RoleItemInfo item    = play.GetItemSystem().FindItem(destid);
            GameStruct.RoleItemInfo srcitem = play.GetItemSystem().FindItem(srcid);
            if (item == null || srcitem == null)
            {
                return;
            }
            if (!srcitem.IsGem())
            {
                return;
            }
            if (item.GetGemCount() < index)
            {
                return;
            }
            if (item.GetGemType(index) != 255)
            {
                return;                                //已有宝石-- 要先拆除再镶嵌
            }
            play.GetItemSystem().DeleteItemByID(srcid);
            item.SetGemType(index, srcitem.GetGemType());

            play.GetItemSystem().UpdateItemInfo(destid);
        }