예제 #1
0
 //删除某个类型的New的状态
 private void removeBag(BagOfStatus status)
 {
     if (status != null)
     {
         ConfigDataType type = DataCore.getDataType(status.num);
         removeBag(type, status.pid);
     }
 }
예제 #2
0
    //根据服务器ID获取一个状态
    public short getStatus(int pid)
    {
        short       status    = BagOfStatus.STATUS_NEW;
        BagOfStatus bagStatus = null;

        if (mDicBagStatus.TryGetValue(pid, out bagStatus))
        {
            status = bagStatus.status;
        }
        return(status);
    }
예제 #3
0
    //设定一个状态
    public void setStatus(BagOfStatus newStatus)
    {
        if (newStatus != null)
        {
            switch (newStatus.status)
            {
            case BagOfStatus.STATUS_DELETE:
                removeBag(newStatus);
                if (mDicBagStatus.ContainsKey(newStatus.pid))
                {
                    mDicBagStatus.Remove(newStatus.pid);
                }
                break;

            case BagOfStatus.STATUS_NORMAL:
                removeBag(newStatus);
                mDicBagStatus[newStatus.pid] = newStatus;
                break;

            case BagOfStatus.STATUS_NEW:
                break;
            }
        }
    }
예제 #4
0
    //检测背包道具的new状态
    void CheckBagItemNewState()
    {
        BagOfStatus status = new BagOfStatus();

        status.status = BagOfStatus.STATUS_NORMAL;
        switch (_itemType)
        {
        case EMItemType.Charator:
            foreach (SQYNodeForBI bi in szSelectCharator)
            {
                Monster mon = bi._boxItem.curData as Monster;

                if (mon.isNew)
                {
                    m_bNeedSave = true;
                    mon.isNew   = false;
                    status.pid  = mon.pid;
                    status.num  = mon.num;
                    Core.Data.AccountMgr.setStatus(status);
                }
            }
            break;

        case EMItemType.Equipment:
            foreach (SQYNodeForBI bi in szSelectCharator)
            {
                Equipment equip = bi._boxItem.curData as Equipment;
                if (equip.isNew)
                {
                    m_bNeedSave = true;
                    equip.isNew = false;
                    status.pid  = equip.RtEquip.id;
                    status.num  = equip.RtEquip.num;
                    Core.Data.AccountMgr.setStatus(status);
                }
            }
            break;

        case EMItemType.Gem:
            foreach (SQYNodeForBI bi in szSelectCharator)
            {
                Gems gem = bi._boxItem.curData as Gems;
                if (gem.isNew)
                {
                    m_bNeedSave = true;
                    gem.isNew   = false;
                    status.pid  = gem.id;
                    status.num  = gem.configData.ID;
                    Core.Data.AccountMgr.setStatus(status);
                }
            }
            break;

        case EMItemType.Props:
            foreach (SQYNodeForBI bi in szSelectCharator)
            {
                Item item = bi._boxItem.curData as Item;
                if (item.isNew)
                {
                    m_bNeedSave = true;
                    item.isNew  = false;
                    status.pid  = item.RtData.id;
                    status.num  = item.configData.ID;
                    Core.Data.AccountMgr.setStatus(status);
                }
            }
            break;
//			case EMItemType.Soul:
//				foreach (SQYNodeForBI bi in szSelectCharator)
//				{
//					Soul soul = bi._boxItem.curData as Soul;
//					if (soul.isNew)
//					{
//						m_bNeedSave = true;
//						soul.isNew = false;
//						status.pid = soul.m_RTData.id;
//						status.num = soul.m_config.ID;
//						Core.Data.AccountMgr.setStatus (status);
//					}
//				}
//				break;
        }


        UpdateBtnTips();
        SQYMainController.mInstance.UpdateBagTip();
    }