Ir para conteúdo
  • Cadastre-se

[Resolvido] Mover item do tile para a bp


Posts Recomendados

o Script funcionando, no caso ele pega os itens de 1 SQM ao sul de voce e joga no primeiro slot da primeira backpack...

use = c.Map.GetTile(New Location(p.X, p.Y + 1, p.Z))

            If LootList1.Items IsNot Nothing Then

                For Each item As Item In use.Items

                    If item.Count < 2 And (Not item.GetFlag(Addresses.DatItem.Flag.IsImmovable)) Then

                        item.Move(ItemLocation.FromContainer(0, 0), 1)

                        Exit For

                    ElseIf item.Count >= 2 And (Not item.GetFlag(Addresses.DatItem.Flag.IsImmovable)) Then

                        item.Move(ItemLocation.FromContainer(0, 0), item.Count)

                        Exit For

                    End If

                Next

            End If

Editado por Augusto
Arrumar o código =D (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

para PEGAR tipo um cara com antipush , ai essa hotkey pegaria os gps embaixo dele e colocaria na minha bp , ou entaum estou caçando e jogo os loot num sqm soh ai depois eu uso o codigo para coletar automaticamente os itens desse sqm para mnha backapck

Link para o post
Compartilhar em outros sites

Please, adiciona a tag TibiaApi porque isso ja ta enchendo ;x

Isso é facil cara, pega a location do item com e veja o tile que está, depois é só você usar um laço pra ver se X id está embaixo dele, se estiver você faz oque quiser depois ;x


dim itemtile = map. ' não lembro porque usei pouco tibiaapi 


for each item as item in itemtile

   ' faça qualquer coisa aqui

next 

Acho que é isso pelo que eu fiz uma vez pra ele pegar os items do chão pra fazer bagloot :P

Link para o post
Compartilhar em outros sites

Fica dando esse erro tanto com o meu quanto com o seu exemplo, e quando tenta no aplicativo aparece erro na referencia do objeto

Error.jpg

Link para o post
Compartilhar em outros sites

fiz um codigo q funciona, porem se tiver outros tipos de id no sqm ele fica tentando pegar o primeiro item da stack e fica dando sorry is not possible

Link para o post
Compartilhar em outros sites

Pela lógica faiz o seguinte, ele verifica o ID, se não for, ele joga o item pro SQM ao lado.

Ou seja, você pega a posição do tile onde esta os items, caso o ID não seja o definido, ele move o item pro SQM ao lado/acima/abaixo/embaixo.

É claro que não é tão simples, mais a lógica é essa.

Editado por Augusto (veja o histórico de edições)

# Regras Gerais - TibiaKing.com #
Contato: [email protected]
Não respondo dúvidas via MP.


1C2tu.png4Tlqo.png1C2tu.png


 

Link para o post
Compartilhar em outros sites

for each item as item in itemtile 'cada item é um item no item tile

   if item.id = id then  'se o item id for igual ao id definido

    	item.move.backpack 'faz mover pra backpack

   else 'senão

        item.move(item.x + 1,  item.y + 1, item.z)    'faz mover para um sqm a mais doque estava

end if

next

Como disse, não sou bom com TibiaApi mas olhei as source e vi que é algo parecido com isso emcima :x

Link para o post
Compartilhar em outros sites

no caso esse script funcionou, porem tipo ele começa a verificar do primeiro item da stack o la de baixo ai fica dando sorry not possible até chegar no ultimo item da stack e pushar, como eu faço para ele verificar de trais pra frente?

Dim use As Tile

If p.Direction = Direction.Right Then

use = c.Map.GetTile(New Location(p.X + 1, p.Y, p.Z))

If LootList1.Items IsNot Nothing Then

For r = 0 To LootList1.Items.Count - 1

For Each item As Item In use.Items

If item.Id = CUInt(LootList1.Items®) Then

item.Move(ItemLocation.FromContainer(0, 0))

End If

Next

Next

End If

End If

Link para o post
Compartilhar em outros sites

Tenta:


Dim use As Tile

        If p.Direction = Direction.Right Then

            use = c.Map.GetTile(New Location(p.X + 1, p.Y, p.Z))

            If LootList1.Items IsNot Nothing Then

                For r = 0 To LootList1.Items.Count - 1

                    For Each item As Item In use.Items.FirstOrDefault

                        If item.Id = CUInt(LootList1.Items®) Then

                            item.Move(ItemLocation.FromContainer(0, 0))

                        End If

                    Next

                Next

            End If

        End If

Editado por Robson Venturin (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

consegui arrumar aqui 100% o script e postei a resoluçao , vlw pela ajuda, tava dando problema q itens q n dava pra por 100 deles no msmo sqm n tava pushando se n colocasse o 1 no final la pra ele pushar 1 , e tava tentnado pushar o chao junto ...

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

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

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo