Ir para conteúdo

Pergunta

Olá galera tibiana, queria que vocês fizessem uma talkaction que ao usar o comando /item 2160 (ID 2160 é apenas um exemplo) mostrasse uma lista com todos os players que tem este item, mostrando o nome do player que possui o item e a quantidade.

 

OBS:

Apenas GODs podem usar este comando.

Quero que isso seja exibido dentro uma caixa de texto de livro, aquela que ao clicar em um spellbook para ver as magias aparece, (doShowTextDialog).

 

Outro ponto importante é que ao usar esse comando ele verifique na data base e não apenas nos players online.

 

Se puderem incrementar o script com um /removeitem 2160, quantidade, nomedoplayer

 

ficaria ainda mais agradecido.

 

Tenho uma duvida quanto aos itens de house e queria que vocês min esclarecessem onde que fica salvo os itens que são guardados em casas, qual o local da data base? É na aba Items player? onde fica salvo com o ID do dono da casa.

 

Se não for pedir de mais já pedindo, caso o script solicitado a cima não verifique os itens que tem nas houses, poderiam fazer outro em que usasse o comando /itemhouse 2160

seria a mesma função basicamente, só que neste queria que mostrasse a quantidade, o ID da house e o nome do dono da casa.

 

E para ficar perfeito poderiam fazer este tambem:

/removeitemhouse 2160, quantidade, ID da house

ele teria a mesma função do /removeitem citado a cima, só que ele iria remover X quantidade do item (2160 por exemplo) da house de ID Y.

 

Bom galera é isso.

Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

Se não me engano, recentemente criaram este script, vou ver se acho aqui.

 

-edit-

 

Não achei o post exato, mas este script do nosso amigo, Jhon992, pode te ajudar.

 

  Mostrar conteúdo oculto

 

 

Boa sorte.

Editado por Adriano Swatt
Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591222
Compartilhar em outros sites

  • 0

Adriano esse script funciona só para remover e não verifica e ele só funciona se o player estiver on, você poderia fazer um para verificar por meio da data base? (Como disse no primeiro post)

Editado por Mazynho
Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591389
Compartilhar em outros sites

  • 0

Tem certeza disso?

Pois se não me engano estava dizendo no tópico que funcionava para players Offline.

 

Você testou?

Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591587
Compartilhar em outros sites

  • 0

Deu um trabalho, mas achei legal o comando. Mas dividi em 2:

  • /itemlist itemid
  • /itemcount playername, itemid

O primeiro retorna a lista de todos os jogadores que tem o item e o segundo retorna a quantidade que o jogador tem do item.

<talkaction words="/itemlist;/itemcount" access="5" event="script" value="itemlist.lua"/>

 

  Mostrar conteúdo oculto

 

Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591669
Compartilhar em outros sites

  • 0
  Em 11/12/2013 em 16:58, Omega disse:

Deu um trabalho, mas achei legal o comando. Mas dividi em 2:

  • /itemlist itemid
  • /itemcount playername, itemid

O primeiro retorna a lista de todos os jogadores que tem o item e o segundo retorna a quantidade que o jogador tem do item.

<talkaction words="/itemlist;/itemcount" access="5" event="script" value="itemlist.lua"/>

 

  Mostrar conteúdo oculto

 

 

Omega deu erro no primeiro comando.

Testei /itemlist 2160 e depois /itemlist 2495 e deu o mesmo erro:

[12/12/2013 02:00:08] [Error - TalkAction Interface] 
[12/12/2013 02:00:08] data/talkactions/scripts/itemlist.lua:onSay
[12/12/2013 02:00:08] Description: 
[12/12/2013 02:00:08] data/lib/004-database.lua:100: [Result:free] Result not set!
[12/12/2013 02:00:08] stack traceback:
[12/12/2013 02:00:08] 	[C]: in function 'error'
[12/12/2013 02:00:08] 	data/lib/004-database.lua:100: in function 'free'
[12/12/2013 02:00:08] 	data/talkactions/scripts/itemlist.lua:16: in function <data/talkactions/scripts/itemlist.lua:1>

Já o segundo comando funcionou de boa.

 

Valeu mesmo assim, se poder resolver esse problema ficarei ainda mais satisfeito.

 

Um conhecido meu min indicou um post do Oneshot, creio que ele faz a mesma função que o seu deve fazer, porém ele não faz o segundo comando que o seu faz. Qualquer coisa junta o seu com o dele pra ficar ainda melhor .

 

Você poderia fazer um terceiro comando nesse script, que seria /remove itemID, quantidade, NomeDoPlayer

lembrando que esse comando deverá remover através da data base, e não dos players que estiverem on

 

Você poderiam min dizer se ao usar esse comando ele verifica, no depot e na casa do player?

Em que parte da data base, em sql lite, fica salvo os itens que são colocados nas houses?

Editado por Mazynho
Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591858
Compartilhar em outros sites

  • 0

Try this:

 

  Mostrar conteúdo oculto

 

 

It's the same but with a correction attempt. Hope this works.

Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591862
Compartilhar em outros sites

  • 0
  Em 12/12/2013 em 04:05, Mazynho disse:

 

  Mostrar conteúdo oculto

 

 

 

Meu comando tá funcionando direitinho, só deixei esse erro bobo de fora. Ah, mas vai dar erro se você colocar pra procurar um item que não existe (outro erro).

 

  Mostrar conteúdo oculto

 

 

E como eu disse, esse comando verifica itens na casa, no jogador e no depot. Os itens das casas ficam em tile_items.

 

Pra tirar item das casas dos outros não adianta com o servidor ligado. Assim que der o próximo save, vai voltar tudo. Pra fazer isso, tem que desligar o servidor e executar a query no banco de dados.

Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591890
Compartilhar em outros sites

  • 0

Valeu Omega, ta rodando suave. Agora você falou que se o item estiver na house não da pra remover, com o server on, mas e os itens do depot e os que ele estiver equipando ou na bp? se der pra remover itens do dp e do player faz um comando por favor.

Teria como você da uma incrementada nesses script, colocando uma mensagem dizendo onde o item estar, digo isso ao usar o comando /itemlist itemid.

 

Ex: /itemlist 2160

Irá aparecer aquela caixa de texto, com os nomes de quem tem este item e, ao lado teria um hífen seguido de Depot, (Caso esteja no Depot, House, (Caso esteja na house e Char, (Caso esteja equipando ou na bp), se o item estiver em mais de um lugar aparece em quais ele se encontra.

 

Se não for pedir muito uma função interessante que tem no script do Oneshot é que exibe, ao lado do nome do player, uma mensagem dizendo se o player está ou não online. Isso ajudaria, bastante, pois sabendo que o player está off posso abrir a DB e remover algum item.

Editado por Mazynho
Link para o comentário
https://xtibia.com/forum/topic/225318-talkaction-verificando-item-x-na-data-base/#findComment-1591910
Compartilhar em outros sites

×
×
  • Criar Novo...