您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ IsInBag函数代码示例

51自学网 2021-06-01 21:41:28
  C++
这篇教程C++ IsInBag函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中IsInBag函数的典型用法代码示例。如果您正苦于以下问题:C++ IsInBag函数的具体用法?C++ IsInBag怎么用?C++ IsInBag使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了IsInBag函数的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: SetUInt64Value

bool Bag::LoadFromDB(uint32 guid, uint64 owner_guid){    if(!Item::LoadFromDB(guid, owner_guid))        return false;    // cleanup bag content related item value fields (its will be filled correctly from `character_inventory`)    for (uint32 i = 0; i < GetProto()->ContainerSlots; i++)    {        SetUInt64Value(CONTAINER_FIELD_SLOT_1 + (i*2), 0);        if (m_bagslot[i])        {            delete m_bagslot[i];            m_bagslot[i] = NULL;        }    }    if(!IsInBag())                                          // equiped bag    {        QueryResult *result = sDatabase.PQuery("SELECT `slot`,`item`,`item_template` FROM `character_inventory` WHERE `guid` = '%u' AND `bag` = '%u'", GUID_LOPART(GetOwnerGUID()), GetGUIDLow());        if (result)        {            do            {                Field *fields = result->Fetch();                uint8  slot      = fields[0].GetUInt8();                uint32 item_guid = fields[1].GetUInt32();                uint32 item_id   = fields[2].GetUInt32();                ItemPrototype const *proto = objmgr.GetItemPrototype(item_id);                if(!proto)                {                    sLog.outError( "Bag::LoadFromDB: Player %d have unknown item (id: #%u) in bag #%u, skipped.", GUID_LOPART(GetOwnerGUID()), item_id, GetSlot());                    continue;                }                Item *item = NewItemOrBag(proto);                item->SetSlot(NULL_SLOT);                if(!item->LoadFromDB(item_guid, owner_guid))                {                    delete item;                    continue;                }                StoreItem( slot, item, true );                item->SetState(ITEM_UNCHANGED);            } while (result->NextRow());            delete result;        }    }    return true;}
开发者ID:Artea,项目名称:mangos-svn,代码行数:53,


示例2: GetItemBySectoin

CUICellItem* CUIBagWnd::GetItemBySectoin(const shared_str& sectionName, bool bCreateOnFail){	u32 sz			= m_allItems.size();	for (u32 i = 0; i < sz; i++)	{		CInventoryItem* iitem		= (CInventoryItem*)m_allItems[i]->m_pData;		if( iitem->object().cNameSect() == sectionName )		{			if (IsInBag(m_allItems[i]))                return m_allItems[i];		}	}	return NULL;}
开发者ID:OLR-xray,项目名称:OLR-3.0,代码行数:16,


示例3: CanBuy

bool CUIBagWnd::CanBuy(CUICellItem* itm){	VERIFY					(itm);	if (!IsInBag(itm))		return false;	CInventoryItem* iitm	= (CInventoryItem*)itm->m_pData;	if (m_bIgnoreMoney)	{		if (m_bIgnoreRank)            return true;		else if (g_mp_restrictions.IsAvailable(iitm->object().cNameSect()))			return true;	}	else if (m_bIgnoreRank)	{		if (m_info[itm->m_index].price < m_money)			return true;	}	return m_info[itm->m_index].active && (!m_info[itm->m_index].bought);}
开发者ID:OLR-xray,项目名称:OLR-3.0,代码行数:23,


示例4: UpdateBuyPossibility

void CUIBagWnd::UpdateBuyPossibility(){	u32 sz		= m_allItems.size();	for (u32 i = 0; i<sz; i++)	{		if (IsInBag(m_allItems[i]))		{			if (m_info[m_allItems[i]->m_index].bought)			{				m_allItems[i]->SetColor(0x00ffffff);			}			else if (UpdateRank(m_allItems[i]))		// update price if there no restriction for rank			{				if (UpdatePrice(m_allItems[i], i))				{					if (m_info[i].external)                        SET_EXTERNAL_COLOR(m_allItems[i]);				}			}		}	}}
开发者ID:OLR-xray,项目名称:OLR-3.0,代码行数:23,


示例5: IsEquipped

bool Item::IsEquipped() const{    return !IsInBag() && m_slot < EQUIPMENT_SLOT_END;}
开发者ID:1ATOM,项目名称:mangos,代码行数:4,


示例6: switch

bool CUIBagWnd::OnKeyboard(int dik, EUIMessages keyboard_action){	int iGroup;	if (DIK_ESCAPE == dik)	{		m_btnBack.OnClick();		return true;	}	switch (GetMenuLevel())	{	case mlRoot:		R_ASSERT2(false,"error: CUIBagWnd on level <mlRoot> can't handle keyboard");		break;	case mlBoxes:		if (DIK_ESCAPE == dik)		{			ShowSectionEx(-1);			return true;		}		switch (dik)		{		case DIK_1:			OnBtnShotgunsClicked();					return true;		case DIK_2:			OnBtnMachinegunsClicked();				return true;		case DIK_3:			OnBtnSniperClicked();					return true;		case DIK_4:			OnBtnHeavyClicked();					return true;		}		break;	case mlWpnSubType:				iGroup = GetCurrentGroupIndex();		if (DIK_ESCAPE == dik)		{			if (iGroup >= GROUP_31 && iGroup <= GROUP_34 )				ShowSectionEx(GROUP_BOXES);			else				ShowSectionEx(-1);			return true;		}		if (dik <= DIK_0 && dik >= DIK_1)		{			CUICellItem* itm = GetItemByKey(dik,GetCurrentGroupIndex());			if (itm && IsInBag(itm))                itm->GetMessageTarget()->SendMessage(itm, DRAG_DROP_ITEM_DB_CLICK, NULL);		}		break;	default:		NODEFAULT;	}	return false;}
开发者ID:OLR-xray,项目名称:OLR-3.0,代码行数:63,



注:本文中的IsInBag函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ IsInEffectHook函数代码示例
C++ IsIconic函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。