Ir para conteúdo
Faça parte da equipe! (2024) ×
  • 0

Bug na extração W2pp


walter501
 Compartilhar

Pergunta

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

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da Conversa

Você pode postar agora e se cadastrar mais tarde. Cadastre-se Agora para publicar com Sua Conta.
Observação: sua postagem exigirá aprovação do moderador antes de ficar visível.

Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.

 Compartilhar

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • 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.