Ir para conteúdo
  • 0

SlotType de equipamentos


BreisPodeu

Pergunta

Tipo do script: Action
Protocolo (versão do Tibia): 8.6
Servidor utilizado: OTX Server based in TFS 0.3.7
Nível de experiência: Media
Adicionais/Informações:

 

Então galera... Estou com uma dúvida de como pegar o slotType de um equipamento... Pra explicar melhor vou falar oq quero fazer:

Bom, terá um item que quando eu uso em uma Legs, por exemplo, dará um efeito. E esse mesmo item, se for usado em um helmet, dará um efeito diferente..

 

O problema é que o equipamento não precisará estar realmente equipado, então n posso usar a função que pega o item equipado diretamente do player naquele slot...

 

Preciso saber como pegar o "slotType" definido no xml para os equipamentos, tanto pra legs, helmet, amulets, rings, boots e armors..

 

Alguem?


Alguem? Preciso disso urgente =/

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Deixe-me ver se entendi.

Seria uma Regra o item não estar equipado para poder fazer esta combinação ou gostaria de que, tanto equipado quanto não equipado, poderia combinar os itens?

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

  • 0

Tipo do script: Action

Protocolo (versão do Tibia): 8.6

Servidor utilizado: OTX Server based in TFS 0.3.7

Nível de experiência: Media

Adicionais/Informações:

 

Então galera... Estou com uma dúvida de como pegar o slotType de um equipamento... Pra explicar melhor vou falar oq quero fazer:

 

Bom, terá um item que quando eu uso em uma Legs, por exemplo, dará um efeito. E esse mesmo item, se for usado em um helmet, dará um efeito diferente..

 

O problema é que o equipamento não precisará estar realmente equipado, então n posso usar a função que pega o item equipado diretamente do player naquele slot...

 

Preciso saber como pegar o "slotType" definido no xml para os equipamentos, tanto pra legs, helmet, amulets, rings, boots e armors..

 

Alguem?

Alguem? Preciso disso urgente =/

 

Estou com esse mesmo problema.

 

http://www.xtibia.com/forum/topic/231216-descobrir-se-um-item-e-uma-armor-legs-e-etc/

 

Mas até agora não consegui resolver.

Link para o comentário
Compartilhar em outros sites

  • 0

edit:

 

Dúvida resolvida...

 

Mazynho, se você quiser saber como resolvi, foi assim:

 

Basta usar a função getItemInfo(itemid) e pegar o wieldPosition do retorno da função..

Por exemplo.. Eu tenho uma legs e quero fazer a checagem se é ou não uma legs..

 

Essa legs será o "Item" no meu exemplo:

if (getItemInfo(Item.itemid).wieldPosition == 7) then
    doBroadcastMessage("O item eh uma legs")
end

Lembrando que o retorno da função pode ser:

1 - Head
2 - Necklace
3 - Caso o item seja usado na posição da bp
4 - Body (armor)
5 - Item usado na mao direita
6 - Item usado na mao esquerda
7 - Legs
8 - Feet (boots)
9 - Ring
10 - Item que eh usado na flecha (munições)
12 - Não está definido no item.xml a posição que é usado, ou seja, todos outros items (inclusive chão, parede, etc)

E já é definido as seguintes constantes no seu arquivo de biblioteca caso você não queira usar os números:

CONST_SLOT_HEAD = 1
CONST_SLOT_NECKLACE = 2
CONST_SLOT_BACKPACK = 3
CONST_SLOT_ARMOR = 4
CONST_SLOT_RIGHT = 5
CONST_SLOT_LEFT = 6
CONST_SLOT_LEGS = 7
CONST_SLOT_FEET = 8
CONST_SLOT_RING = 9
CONST_SLOT_AMMO = 10

É isso ae mano, só toma cuidado com alguns items que não é definido o slotType no items.xml, tipo o ring of healing que já está em uso, pq daí retorna 12 =)


Pode fechar, obrigado.

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

  • 0

edit:

 

Dúvida resolvida...

 

Mazynho, se você quiser saber como resolvi, foi assim:

 

Basta usar a função getItemInfo(itemid) e pegar o wieldPosition do retorno da função..

Por exemplo.. Eu tenho uma legs e quero fazer a checagem se é ou não uma legs..

 

Essa legs será o "Item" no meu exemplo:

if (getItemInfo(Item.itemid).wieldPosition == 7) then
    doBroadcastMessage("O item eh uma legs")
end

Lembrando que o retorno da função pode ser:

 

1 - Head
2 - Necklace
3 - Caso o item seja usado na posição da bp
4 - Body (armor)
5 - Item usado na mao direita
6 - Item usado na mao esquerda
7 - Legs
8 - Feet (boots)
9 - Ring
10 - Item que eh usado na flecha (munições)
12 - Não está definido no item.xml a posição que é usado, ou seja, todos outros items (inclusive chão, parede, etc)

E já é definido as seguintes constantes no seu arquivo de biblioteca caso você não queira usar os números:

CONST_SLOT_HEAD = 1
CONST_SLOT_NECKLACE = 2
CONST_SLOT_BACKPACK = 3
CONST_SLOT_ARMOR = 4
CONST_SLOT_RIGHT = 5
CONST_SLOT_LEFT = 6
CONST_SLOT_LEGS = 7
CONST_SLOT_FEET = 8
CONST_SLOT_RING = 9
CONST_SLOT_AMMO = 10

É isso ae mano, só toma cuidado com alguns items que não é definido o slotType no items.xml, tipo o ring of healing que já está em uso, pq daí retorna 12 =)

 

 

Pode fechar, obrigado.

 

Valeu cara! vou testar aqui.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...