这篇教程C++ GetItemSuffixFactor函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中GetItemSuffixFactor函数的典型用法代码示例。如果您正苦于以下问题:C++ GetItemSuffixFactor函数的具体用法?C++ GetItemSuffixFactor怎么用?C++ GetItemSuffixFactor使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了GetItemSuffixFactor函数的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: GenerateEnchSuffixFactorvoid Item::UpdateItemSuffixFactor(){ uint32 suffixFactor = GenerateEnchSuffixFactor(GetEntry()); if (GetItemSuffixFactor() == suffixFactor) return; SetUInt32Value(ITEM_FIELD_PROPERTY_SEED, suffixFactor);}
开发者ID:AwkwardDev,项目名称:TrinityCore,代码行数:7,
示例2: SetInt32Value// Added by AHBot// Like SetItemRandomProperties() but no call of SetState() because there is no owner of the itemvoid Item::SetItemRandomPropertiesNoUpdate(int32 randomPropId){ if(!randomPropId) return; if(randomPropId > 0) { ItemRandomPropertiesEntry const *item_rand = sItemRandomPropertiesStore.LookupEntry(randomPropId); if(item_rand) { if(GetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID) != int32(item_rand->ID)) { SetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID,item_rand->ID); } for(uint32 i = PROP_ENCHANTMENT_SLOT_2; i < PROP_ENCHANTMENT_SLOT_2 + 3; ++i) SetEnchantmentNoUpdate(EnchantmentSlot(i),item_rand->enchant_id[i - PROP_ENCHANTMENT_SLOT_2],0,0); } } else { ItemRandomSuffixEntry const *item_rand = sItemRandomSuffixStore.LookupEntry(-randomPropId); if(item_rand) { if( GetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID) != -int32(item_rand->ID) || !GetItemSuffixFactor()) { SetInt32Value(ITEM_FIELD_RANDOM_PROPERTIES_ID,-int32(item_rand->ID)); UpdateItemSuffixFactor(); } for(uint32 i = PROP_ENCHANTMENT_SLOT_0; i < PROP_ENCHANTMENT_SLOT_0 + 3; ++i) SetEnchantmentNoUpdate(EnchantmentSlot(i),item_rand->enchant_id[i - PROP_ENCHANTMENT_SLOT_0],0,0); } }}
开发者ID:z3usleo,项目名称:easy-mangos,代码行数:37,
示例3: GetTemplateint32 Item::GetReforgableStat(ItemModType statType) const{ ItemTemplate const* proto = GetTemplate(); for (uint32 i = 0; i < MAX_ITEM_PROTO_STATS; ++i) if (proto->ItemStat[i].ItemStatType == statType) return proto->ItemStat[i].ItemStatValue; int32 randomPropId = GetItemRandomPropertyId(); if (!randomPropId) return 0; if (randomPropId < 0) { ItemRandomSuffixEntry const* randomSuffix = sItemRandomSuffixStore.LookupEntry(-randomPropId); if (!randomSuffix) return 0; for (uint32 e = PROP_ENCHANTMENT_SLOT_0; e <= PROP_ENCHANTMENT_SLOT_4; ++e) if (SpellItemEnchantmentEntry const* enchant = sSpellItemEnchantmentStore.LookupEntry(GetEnchantmentId(EnchantmentSlot(e)))) for (uint32 f = 0; f < MAX_ITEM_ENCHANTMENT_EFFECTS; ++f) if (enchant->type[f] == ITEM_ENCHANTMENT_TYPE_STAT && enchant->spellid[f] == statType) for (int k = 0; k < 5; ++k) if (randomSuffix->enchant_id[k] == enchant->ID) return int32((randomSuffix->prefix[k] * GetItemSuffixFactor()) / 10000); } else { ItemRandomPropertiesEntry const* randomProp = sItemRandomPropertiesStore.LookupEntry(randomPropId); if (!randomProp) return 0; for (uint32 e = PROP_ENCHANTMENT_SLOT_0; e <= PROP_ENCHANTMENT_SLOT_4; ++e) if (SpellItemEnchantmentEntry const* enchant = sSpellItemEnchantmentStore.LookupEntry(GetEnchantmentId(EnchantmentSlot(e)))) for (uint32 f = 0; f < MAX_ITEM_ENCHANTMENT_EFFECTS; ++f) if (enchant->type[f] == ITEM_ENCHANTMENT_TYPE_STAT && enchant->spellid[f] == statType) for (int k = 0; k < MAX_ITEM_ENCHANTMENT_EFFECTS; ++k) if (randomProp->enchant_id[k] == enchant->ID) return int32(enchant->amount[k]); } return 0;}
开发者ID:Lbniese,项目名称:WoWCircle434,代码行数:42,
注:本文中的GetItemSuffixFactor函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ GetItemText函数代码示例 C++ GetItemRect函数代码示例 |