Chat global
[ajuda] Como faço para travar um item premium para não entrar no mix/age
gostaria de saber como fazer para travar um item premium (de dia) para não conseguir colocar no aging/mix
tentei fazer manualmente mas na hora de compilar dá erro.
if (cShop.OpenFlag || SkillMasterFlag || cCraftItem.OpenFlag || cAging.OpenFlag || SmeltingItem.OpenFlag || ManufactureItem.m_OpenFlag || cMixtureReset.OpenFlag)
{
if (pItem->sItemInfo.CODE == (sinOE1 | sin03)) return FALSE;
if (pItem->sItemInfo.CODE == (sinOE1 | sin02)) return FALSE;
if (pItem->sItemInfo.CODE == (sinOE1 | sin01)) return FALSE;
}
alguém poderia me ajudar ?
Utilizo como base a source elemental
Eu nao lembro com toda certeza mas verifica na funçao CheckAgingItem.
o meu problema maior é no mix não é nem no aging, pois ao colocar o item lá, o tempo é recalculado.
Source elemental
@iron coloquei o codigo do item na linha do mixableitem mas mesmo assim, os itens de tempo continuam entrando no mix, um dos códigos que eu quero bloquear é o sinOR2 | sin50, porém não obtive sucesso.
bool cCRAFTITEM::isMixableItem(sITEM* pItem)
{
static DWORD MixItemCode[20] = { sinWA1,sinWC1,sinWH1,sinWM1,sinWP1,sinWS1,sinWS2,sinWT1,sinDA1,sinDS1,sinOM1,sinDA2,sinDG1,sinDB1,sinOA2, sinOA1, sinOR1, sinOR1, sinDA3, sinDA4 };
if ((pItem->sItemInfo.CODE & sinITEM_MASK2) != sinOS1 && (pItem->sItemInfo.CODE & sinITEM_MASK2) != sinSE1)
{
bool isMixable = false;
for (int i = 0; i < sizeof(MixItemCode) / sizeof(DWORD); i++)
{
if ((pItem->CODE & sinITEM_MASK2) == MixItemCode[i])
{
isMixable = true;
break;
}
}
if (pItem->sItemInfo.CODE == (sinOR2 | sin50))
{
return false;
}
if pItem->sItemInfo.CODE == (sinOR2 | sin50)) ||
isMixable = false;
if (!isMixable)
return false;
if (pItem->sItemInfo.CODE == (sinDA1 | sin51) ||
pItem->sItemInfo.CODE == (sinOR2 | sin50))
return false;
if (pItem->sItemInfo.UniqueItem || pItem->sItemInfo.ItemKindCode == ITEM_KIND_CRAFT || pItem->sItemInfo.ItemKindCode == ITEM_KIND_AGING ||
pItem->sItemInfo.ItemKindCode == ITEM_KIND_QUEST ||
pItem->sItemInfo.SpecialItemFlag[0] == CHECK_GIVE_ITEM ||
pItem->sItemInfo.CODE == (sinOR2 | sin50) ||
tentei fazer por if, por ismixable = false e por pitem->siteminfo, mas, nenhum obtive um resultado positivo.
(quando eu clico com o botão direito diz que o item não pode ser mixado, mas quando carrego com o botão esquerdo, ele entra no mix normalmente)
Opa conseguiu resolver ? estou precisando tbm
~ Aprender nunca é demais...
- 20 Fóruns
- 253 Tópicos
- 1,448 Posts
- 3 Online
- 267 Membros

