-
Quem está por aqui 0 membros estão online
- Nenhum usuário registrado visualizando esta página.
- 0
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.
Pergunta
walter501 17
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
Clique aqui e adquira suas medalhas
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.