[Lua]Quest Simples Dando Zica

m4rr3co
em Lixeira Pública

m4rr3co

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 29/10/05Posts: 4

A idéia da quest é bem simples, o rapaizão usa o fogo na frente dele e a quest subtrai dois itens, um de cada lado do player, que no caso é um v shield e uma v dust, aí o meu código ficou assim:

 

function onUse(cid, item, frompos, item2, topos)
        if item.uid == 4504 then
                                setPlayerStorageValue(cid,4504,0)
                                dust = 5905
                                vshl = 2534
                                queststatus = getPlayerStorageValue(cid,4504)
                                if queststatus ~= 1 then
                                posvdust = {x=1038, y=1118, z=10}
                                posvshld = {x=1040, y=1118, z=10}
                                posnecro = {x=1024, y=1118, z=10}
                                posnecro1 = {x=1025, y=1118, z=10}
                                posnecro2 = {x=1024, y=1119, z=10}
                                vdust = getThingFromPos(posvdust).iid
                                vshld = getThingFromPos(posvshld).iid
                                      if vdust == dust and vshld == vshl then
                                      doRemoveItem(vdust.uid,1)
                                      doSendMagicEffect(posvdust,13)
                                      doRemoveItem(vshld.uid,1)
                                      doSendMagicEffect(posvshld,13)
                                      doPlayerSendTextMessage(cid,22,"You hear something from the other room.")
                                      doSummonCreature("Necropharus",posnecro)
                                      doSummonCreature("Necromancer",posnecro1)
                                      doSummonCreature("Necromancer",posnecro2)
                                      setPlayerStorageValue(cid,4504,1)
                                      return 0
                                      else
                                      doPlayerSendTextMessage(cid,22,"Nothing happens.")
                                      return 0
                                      end
                                else
                                doPlayerSendTextMessage(cid,22,"Nothing happens.")
                                return 0
                                end
        else
        return 1
        end
end

 

Mas tem uma zica, eu uso o meu god pra ir testar a quest e SEMPRE diz "Nothing happens.", mesmo com a shield e a dust no lugar e talz.

Alguém tem idéia aonde eu posso estar pecando?

Por favor, eu to começando a fazer scripts e to fazendo curso de C na minha facul, mas sou iniciante, então dêem-me um desconto.

Abracs

hylario

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 17/10/05Posts: 0

A idéia da quest é bem simples, o rapaizão usa o fogo na frente dele e a quest subtrai dois itens, um de cada lado do player, que no caso é um v shield e uma v dust, aí o meu código ficou assim:

 

function onUse(cid, item, frompos, item2, topos)
        if item.uid == 4504 then
                                setPlayerStorageValue(cid,4504,0)
                                dust = 5905
                                vshl = 2534
                                queststatus = getPlayerStorageValue(cid,4504)
                                if queststatus ~= 1 then
                                posvdust = {x=1038, y=1118, z=10}
                                posvshld = {x=1040, y=1118, z=10}
                                posnecro = {x=1024, y=1118, z=10}
                                posnecro1 = {x=1025, y=1118, z=10}
                                posnecro2 = {x=1024, y=1119, z=10}
                                vdust = getThingFromPos(posvdust).iid
                                vshld = getThingFromPos(posvshld).iid
                                      if vdust == dust and vshld == vshl then
                                      doRemoveItem(vdust.uid,1)
                                      doSendMagicEffect(posvdust,13)
                                      doRemoveItem(vshld.uid,1)
                                      doSendMagicEffect(posvshld,13)
                                      doPlayerSendTextMessage(cid,22,"You hear something from the other room.")
                                      doSummonCreature("Necropharus",posnecro)
                                      doSummonCreature("Necromancer",posnecro1)
                                      doSummonCreature("Necromancer",posnecro2)
                                      setPlayerStorageValue(cid,4504,1)
                                      return 0
                                      else
                                      doPlayerSendTextMessage(cid,22,"Nothing happens.")
                                      return 0
                                      end
                                else
                                doPlayerSendTextMessage(cid,22,"Nothing happens.")
                                return 0
                                end
        else
        return 1
        end
end

 

Mas tem uma zica, eu uso o meu god pra ir testar a quest e SEMPRE diz "Nothing happens.", mesmo com a shield e a dust no lugar e talz.

Alguém tem idéia aonde eu posso estar pecando?

Por favor, eu to começando a fazer scripts e to fazendo curso de C na minha facul, mas sou iniciante, então dêem-me um desconto.

Abracs

 

provavelmente seja a "if queststatus ~= 1 then".. vc deve ter completado a quest uma vez, ai ele nao entra mais nesse "if"

joaohd

Neox Boy
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 03/02/09Posts: 361Char no Tibia: Fearless Man

Local incorreto. Movido.

 

flw