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

resolvido NPC AGATHA WYD NÃO FUNCIONA


undeadhuman
 Compartilhar

Pergunta

Boa tarde, estou montando um servidor de WYD, mas o NPC Agatha (passar add para itens arch) não está funcionando, já mexi na MixList e creio que lá está tudo correto. Eu acho que o código na GetFunc.cpp que está errado ou incompleto, alguém pode me ajudar? Talvez me dizer se deveria mexer em outro lugar, ou somente aqui mesmo...

 

A mensagem que da no jogo é a seguinte: Há algo de errado na combinação

Mas na mix list os itens lá estão corretos, no jogo só da pra por item arch no lugar de item arch, pedra da luz no lugar correto, aparentemente está tudo ok, mas caso precisarem mando print aqui tbm do MixList

 

WYD 7.73

Segue código: 

 

int GetMatchCombineAgatha(STRUCT_ITEM *Item)
{
    for(int i = 0; i < MAX_COMBINE; i++)
    {
        if(Item.sIndex == 747)
            return 0;
    }

    if (Item[0].sIndex <= 0 || Item[0].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[1].sIndex <= 0 || Item[1].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[2].sIndex <= 0 || Item[2].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[3].sIndex <= 0 || Item[3].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[4].sIndex <= 0 || Item[4].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[5].sIndex <= 0 || Item[5].sIndex >= MAX_ITEMLIST)
        return 0;

    if (BASE_GetItemAbility(&Item[0], EF_MOBTYPE) != ARCH)
        return 0;

    if (BASE_GetItemAbility(&Item[1], EF_ITEMTYPE) != MORTAL && BASE_GetItemAbility(&Item[1], EF_ITEMTYPE) != 0)
        return 0;

    if (BASE_GetItemAbility(&Item[1], EF_ITEMLEVEL) < 4)
        return 0;

    if (g_pItemList[Item[0].sIndex].nPos != g_pItemList[Item[1].sIndex].nPos)
        return 0;

    if (BASE_GetItemSanc(&Item[0]) < 9)
        return 0;

    if (BASE_GetItemSanc(&Item[1]) < 9)
        return 0;

    if (Item[2].sIndex != 3140 || Item[3].sIndex != 3140 || Item[4].sIndex != 3140 || Item[5].sIndex != 3140)
        return 0;

    return g_pAgathaBase + (g_pItemList[Item[1].sIndex].Grade * 5) + (BASE_GetItemAbility(&Item[1], EF_ITEMLEVEL) == 5 ? 30 : 1);
}
 

obrigado, ao meu ver esse código está incompleto, mas não sei como completa-lo

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
1 hora atrás, undeadhuman disse:

Boa tarde, estou montando um servidor de WYD, mas o NPC Agatha (passar add para itens arch) não está funcionando, já mexi na MixList e creio que lá está tudo correto. Eu acho que o código na GetFunc.cpp que está errado ou incompleto, alguém pode me ajudar? Talvez me dizer se deveria mexer em outro lugar, ou somente aqui mesmo...

 

A mensagem que da no jogo é a seguinte: Há algo de errado na combinação

Mas na mix list os itens lá estão corretos, no jogo só da pra por item arch no lugar de item arch, pedra da luz no lugar correto, aparentemente está tudo ok, mas caso precisarem mando print aqui tbm do MixList

 

WYD 7.73

Segue código: 

 

int GetMatchCombineAgatha(STRUCT_ITEM *Item)
{
    for(int i = 0; i < MAX_COMBINE; i++)
    {
        if(Item.sIndex == 747)
            return 0;
    }

    if (Item[0].sIndex <= 0 || Item[0].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[1].sIndex <= 0 || Item[1].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[2].sIndex <= 0 || Item[2].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[3].sIndex <= 0 || Item[3].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[4].sIndex <= 0 || Item[4].sIndex >= MAX_ITEMLIST)
        return 0;

    if (Item[5].sIndex <= 0 || Item[5].sIndex >= MAX_ITEMLIST)
        return 0;

    if (BASE_GetItemAbility(&Item[0], EF_MOBTYPE) != ARCH)
        return 0;

    if (BASE_GetItemAbility(&Item[1], EF_ITEMTYPE) != MORTAL && BASE_GetItemAbility(&Item[1], EF_ITEMTYPE) != 0)
        return 0;

    if (BASE_GetItemAbility(&Item[1], EF_ITEMLEVEL) < 4)
        return 0;

    if (g_pItemList[Item[0].sIndex].nPos != g_pItemList[Item[1].sIndex].nPos)
        return 0;

    if (BASE_GetItemSanc(&Item[0]) < 9)
        return 0;

    if (BASE_GetItemSanc(&Item[1]) < 9)
        return 0;

    if (Item[2].sIndex != 3140 || Item[3].sIndex != 3140 || Item[4].sIndex != 3140 || Item[5].sIndex != 3140)
        return 0;

    return g_pAgathaBase + (g_pItemList[Item[1].sIndex].Grade * 5) + (BASE_GetItemAbility(&Item[1], EF_ITEMLEVEL) == 5 ? 30 : 1);
}
 

obrigado, ao meu ver esse código está incompleto, mas não sei como completa-lo

 

 

pega o código de uma source 7.62 aqui do wb.. coloca no lugar desse ai.

 

se eu n me engano outros compositores dessa source sua esta incompleto tbm!

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

  • 0

O Codigo em sí não está incompleto, as verificações que o NPC está pedindo pode não está batendo com sua itemlist e por isso está dando erro na combinação, recomendo abrir em desbug e ver qual verificação exata está travando para que possa corrigir.

A vida lhe dar desafios, entre esses uns longos mas nada que tome todo o seu tempo. - Klaus

giphy.gif

 

tgtceqV.png v3hpfp6.png yKSRniq.png f3uQKY9.png behVjSE.png zekazca.png f3uQKY9.png AHFoSmc.png BRzGtem.png behVjSE.png  tkeNAmv.png behVjSE.png

Link para o comentário
Compartilhar em outros sites

  • 0
Tópico Resolvido!

Ficamos felizes que seu tópico tenha sido resolvido!
🙂
Devido a isso, estaremos fechando este tópico...

Atenciosamente,
Web Cheats

Somos responsáveis por aquilo que fazemos, o que não fazemos e o que impedimos de ser feito.- Albert Camus

.:: ϟOdinϟ ::.
[Equipe WebCheats]

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 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.