Ir para conteúdo
  • 0

Resolvido ajudem a retirar bug desse script??


Pergunta

boa noite gente eu estou com um script de autoloot e vou posta-lo
primeiramente ele esta funcionando 100% o unico problema é que mesmo funcionando gera erro e quero remover esse erro e peço a ajuda de vocês com esse erro

ERRO
 

  Mostrar conteúdo oculto



 

 

 

Autoloot.lua

  Mostrar conteúdo oculto


050-function.lua

  Mostrar conteúdo oculto


 

Editado por wevertonvrb
Link para o comentário
https://xtibia.com/forum/topic/245044-resolvido-ajudem-a-retirar-bug-desse-script/
Compartilhar em outros sites

Posts Recomendados

  • 0
  Em 22/04/2017 em 01:24, Poccnn disse:

Eu desconheço uma forma de fazer isso.

Para que algo possa ser usado, tem que ser declarado.

Expand  

talvez uma creaturescript

  • 0
  Em 25/04/2017 em 22:42, wevertonvrb disse:

talvez uma creaturescript

Expand  

 

pode ser, não sei se entendi direito...

mas você pode criar uma creaturescript para adicionar uma uniqueid ou actionid, em todo corpse..

e em action colocar a tag com a mesm actionid que é adicionado nos corpse, e dentro do codigo lua a condição do nome... 

 

entendeu?

  • 0
  Em 26/04/2017 em 12:55, Ed'Specter disse:

 

pode ser, não sei se entendi direito...

mas você pode criar uma creaturescript para adicionar uma uniqueid ou actionid, em todo corpse..

e em action colocar a tag com a mesm actionid que é adicionado nos corpse, e dentro do codigo lua a condição do nome... 

 

entendeu?

Expand  

sim entendi mas não tenho conhecimento suficiente para criar tal script

  • 0
  Em 26/04/2017 em 20:29, wevertonvrb disse:

sim entendi mas não tenho conhecimento suficiente para criar tal script

Expand  

 

function onDeath(cid, corpse, deathList)  if corpse.uid > 0 then    doItemSetAttribute(corpse.uid, "aid", 12526)  endreturn trueend

fiz essa base pra você, coloca em creaturescripts

e em action coloca a mesma action id que está ai na parte

doItemSetAttribute(corpse.uid, "aid", 12526)

se quiser pode mudar.

  • 0
  Em 28/04/2017 em 11:34, Ed'Specter disse:

 

function onDeath(cid, corpse, deathList)  if corpse.uid > 0 then    doItemSetAttribute(corpse.uid, "aid", 12526)  endreturn trueend

fiz essa base pra você, coloca em creaturescripts

e em action coloca a mesma action id que está ai na parte

doItemSetAttribute(corpse.uid, "aid", 12526)

se quiser pode mudar.

Expand  

ok entendido mas surgiu uma duvida

 eu tenho q adicionar essa tag em todos os corpos??

<attribute key="corpseType" value="blood" />

pois os corpos dos pokes não tem isso 

<item id="9867" article="a" name="fainted magcargo">

        <attribute key="containerSize" value="10" />

        <attribute key="decayTo" value="0" />

        <attribute key="duration" value="55" />

    </item>

oque faz o corpo ser identificado como corpo é a palavra fainted no nome

Editado por wevertonvrb
  • 0
  Em 28/04/2017 em 21:55, wevertonvrb disse:

ok entendido mas surgiu uma duvida

 eu tenho q adicionar essa tag em todos os corpos??

<attribute key="corpseType" value="blood" />

pois os corpos dos pokes não tem isso 

<item id="9867" article="a" name="fainted magcargo">

        <attribute key="containerSize" value="10" />

        <attribute key="decayTo" value="0" />

        <attribute key="duration" value="55" />

    </item>

oque faz o corpo ser identificado como corpo é a palavra fainted no nome

Expand  

 

não mano, nem sei da onde você tirou essa tag..

esse script ai que respondi, vai adicionar uma actionid para todo corpse 

e em actions vc usa o mesmo actionid para rodar o script..

não estou mais entendendo oq vc quer

  • 0
  Em 03/05/2017 em 13:52, Ed'Specter disse:

 

não mano, nem sei da onde você tirou essa tag..

esse script ai que respondi, vai adicionar uma actionid para todo corpse 

e em actions vc usa o mesmo actionid para rodar o script..

não estou mais entendendo oq vc quer

Expand  

desisto, n estou conseguindo Man o script q tu passou n funcionou de nenhuma forma também n gerou erro

eu queria que esse script funcionasse em todos os corpos ou items que tenha a palavra fainted no nome

sem a necessidade de fazer algo assim no action.xml

 

  Mostrar conteúdo oculto

 

sim eu quero que eles funcionem em corpos mas como eu defino se o item é um corpo ou não?

como o script vai saber definir se o item é um corpo??

aquela tag eu tirei no item.xml

<item id="7926" article="a" name="dead troll champion">

        <attribute key="containerSize" value="10" />

        <attribute key="decayTo" value="7927" />

        <attribute key="duration" value="10" />

        <attribute key="corpseType" value="blood" />

        <attribute key="fluidSource" value="blood" />

    </item>

 

o meu corpo não tem essa tag em outra paravras os corpos do meu é como se foce uma backpack com decay & oque define se é corpo é a palavra fainted no nome

a não ser que o xml do monstro registre o item como corpise

<item id="9867" article="a" name="fainted magcargo">
        <attribute key="containerSize" value="10" />
        <attribute key="decayTo" value="0" />
        <attribute key="duration" value="55" />
    </item>

 

o script que voce me passou não funcionou nem deu erro

em um outro script tenho isso

if getTopCorpse(topos) == null then 

return true

end

talvez sirva para algo

Editado por wevertonvrb
  • 0
  Em 03/05/2017 em 23:08, wevertonvrb disse:

desisto, n estou conseguindo Man

Expand  

Desistir é para os fracos, os fortes vão a luta.

 

Tu já testou o script que o ed postou?

  • 0
  Em 04/05/2017 em 00:57, wevertonvrb disse:

 

sim testei mas não acontece nada, sem erro tambem

Expand  

 

o script que eu te enviei é em creaturesctips, você colocou a tag em creaturescripts.xml e registro em onlogin?

pq dessa forma ai, com o script que te postei, todo player ou monster que morrer, ao criar o corpse, o script vai adicionar uma actionid no corpse.

dai você só vai ter que colocar essa actionid em action.xml e pronto..

 

entendeu?

  • 0
  Em 04/05/2017 em 00:14, Poccnn disse:

Desistir é para os fracos, os fortes vão a luta.

 

Tu já testou o script que o ed postou?

Expand  

sim testei mas não acontece nada, sem erro tambem

  Em 05/05/2017 em 01:43, Ed'Specter disse:

 

o script que eu te enviei é em creaturesctips, você colocou a tag em creaturescripts.xml e registro em onlogin?

pq dessa forma ai, com o script que te postei, todo player ou monster que morrer, ao criar o corpse, o script vai adicionar uma actionid no corpse.

dai você só vai ter que colocar essa actionid em action.xml e pronto..

 

entendeu?

Expand  

sim fiz tudo isso aee e não deu erro mas também n funcionou

  • 0
  Em 05/05/2017 em 01:44, wevertonvrb disse:

sim testei mas não acontece nada, sem erro tambem

sim fiz tudo isso aee e não deu erro mas também n funcionou

Expand  

 

é pokemon né?

 

talvez o parametro corpse não retorne nada ;s

vamos para os teste..

quando alguém morre, e o corpse ta no chão, vc da look com o god e não tem nenhuma actionid no corpse? o correto é aparecer a actionid

 

substitui por esse...

function onDeath(cid, corpse, deathList)print("morreu")  if corpse.uid > 0 then	print("entrou no if do corpse")    doItemSetAttribute(corpse.uid, "aid", 12526)  endreturn trueend

e vê oq printa na distro quando alguém morre

  • 0
  Em 05/05/2017 em 01:51, Ed'Specter disse:

 

é pokemon né?

 

talvez o parametro corpse não retorne nada ;s

vamos para os teste..

quando alguém morre, e o corpse ta no chão, vc da look com o god e não tem nenhuma actionid no corpse? o correto é aparecer a actionid

 

substitui por esse...

function onDeath(cid, corpse, deathList)print("morreu")  if corpse.uid > 0 then	print("entrou no if do corpse")    doItemSetAttribute(corpse.uid, "aid", 12526)  endreturn trueend

e vê oq printa na distro quando alguém morre

Expand  

não printou nada na distro

em creaturescript

<event type="death" name="autoloot" event="script" value="autoloot.lua"/> 

autoloot.lua

  Mostrar conteúdo oculto

em loguin.lua

registerCreatureEvent(cid, "autoloot")

 

em actions.xml

<action actionid="12526" event="script" value="autoloot.lua"/>

 

 

OBS: essa função é usada para verificar se é um corpse

 

  Mostrar conteúdo oculto

 

 

 

 

quando morre um player

22:58 You see a dead human. (Vol:10).

ItemID: [3058]

Position: [X: 990][Y: 1042][Z: 7]

 

quando morre um monstro

22:57 You see a fainted abra. (Vol: 10) It is genderless.

23:00 You see a fainted kadabra. (Vol: 10)

It is genderless.

 

acredito q seria melhor adicionar essa aid em todos os itens que tenha a palavra fainted no nome pois o catch funciona assim

 

isso esta presente no catch

local name = string.lower(getItemNameById(item2.itemid))

      name = string.gsub(name, "fainted ", "")

      name = string.gsub(name, "defeated ", "")

      name = doCorrectPokemonName(name)

Editado por wevertonvrb
  • 0
  Em 05/05/2017 em 01:59, wevertonvrb disse:

 

em creaturescript

<action actionid="12526" event="script" value="autoloot.lua"/>

Expand  

 

Eu entendi errado ou você colocou a mesma tag do xml da action em creaturescript? :AreYouSerious-min:

×
×
  • Criar Novo...