Ir para conteúdo
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

Bug na extração W2pp


walter501
 Compartilhar

Posts Recomendados

To usando a base do w2pp, mas estou com um bug. Base para criar a extração que usei 3026 87 6 2 81 71 30

Mas oq acontece é, que a arma volta para +0 e ao invez de trocar o adicional, ela soma o adicional.
o que eu queria era q ficasse a mesma refinação mas o bs fosse trocado.



 

#pragma region Extração Arma
    if (item->sIndex == 3026)
    {
        int extra = BASE_GetItemAbility(item, EF_ITEMLEVEL);

        if (pMob[conn].MOB.Equip[6].sIndex == 0)
        {
            SendItem(conn, m->SourType, m->SourPos, item);
            return;
        }

        if (extra <= 5)
        {//Item abaixo de E
            int destextra = BASE_GetItemAbility(&pMob[conn].MOB.Equip[6], EF_ITEMLEVEL);
            int desttype = BASE_GetItemAbility(&pMob[conn].MOB.Equip[6], EF_MOBTYPE);

            if (destextra != 0 && destextra != 5 || destextra != extra || desttype != 2 && desttype != 0)
            {
                SendItem(conn, m->SourType, m->SourPos, item);
                return;
            }

            int sanc = BASE_GetItemSanc(&pMob[conn].MOB.Equip[6]);

            if (sanc != REF_11)
            {
                sprintf(temp, g_pMessageStringTable[_DN_SANCREQ], 11);
                SendClientMessage(conn, temp);
                SendItem(conn, m->SourType, m->SourPos, item);
                return;
            }

            pMob[conn].MOB.Equip[6].stEffect[1].cEffect = item->stEffect[1].cEffect;
            pMob[conn].MOB.Equip[6].stEffect[1].cValue = item->stEffect[1].cValue;

            pMob[conn].MOB.Equip[6].stEffect[2].cEffect = item->stEffect[2].cEffect;
            pMob[conn].MOB.Equip[6].stEffect[2].cValue = item->stEffect[2].cValue;

            SendItem(conn, ITEM_PLACE_EQUIP, 6, &pMob[conn].MOB.Equip[6]);

            sprintf(temp, "useitem,extracao %d-%d:%d:%d:%d:%d:%d", item->sIndex, item->stEffect[0].cEffect, item->stEffect[0].cValue, item->stEffect[1].cEffect, item->stEffect[1].cValue, item->stEffect[2].cEffect, item->stEffect[2].cValue);
            ItemLog(temp, pUser[conn].AccountName, pUser[conn].IP);

            if (amount > 1)
                BASE_SetItemAmount(item, amount - 1);

            else
                memset(item, 0, sizeof(STRUCT_ITEM));

            SendEmotion(conn, 14, 3);
            return;
        }
        //Extração de item arch

        else
        {
            int desttype = BASE_GetItemAbility(&pMob[conn].MOB.Equip[6], EF_MOBTYPE);

            if (desttype != 1)
            {
                SendItem(conn, m->SourType, m->SourPos, item);
                return;
            }

            int sanc = BASE_GetItemSanc(&pMob[conn].MOB.Equip[6]);

            if (sanc != REF_11)
            {
                sprintf(temp, g_pMessageStringTable[_DN_SANCREQ], 11);
                SendClientMessage(conn, temp);
                SendItem(conn, m->SourType, m->SourPos, item);
                return;
            }

            pMob[conn].MOB.Equip[6].stEffect[1].cEffect = item->stEffect[1].cEffect;
            pMob[conn].MOB.Equip[6].stEffect[1].cValue = item->stEffect[1].cValue;

            pMob[conn].MOB.Equip[6].stEffect[2].cEffect = item->stEffect[2].cEffect;
            pMob[conn].MOB.Equip[6].stEffect[2].cValue = item->stEffect[2].cValue;

            SendItem(conn, ITEM_PLACE_EQUIP, 6, &pMob[conn].MOB.Equip[6]);

            sprintf(temp, "useitem,extracao %d-%d:%d:%d:%d:%d:%d", item->sIndex, item->stEffect[0].cEffect, item->stEffect[0].cValue, item->stEffect[1].cEffect, item->stEffect[1].cValue, item->stEffect[2].cEffect, item->stEffect[2].cValue);
            ItemLog(temp, pUser[conn].AccountName, pUser[conn].IP);

            if (amount > 1)
                BASE_SetItemAmount(item, amount - 1);

            else
                memset(item, 0, sizeof(STRUCT_ITEM));

            SendEmotion(conn, 14, 3);
            return;
        }

        return;
    }

Editado por walter501
W2PP
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.