WA
pedido

Alavancas que romove pedras.

Por WaguiinRodriguez, 18 de dez. de 2012 em Scripts

muito utíl.
otserv
tibia
script
10
1.5k
WaguiinRodriguezW
18 de dezembro de 2012 às 02:14

Tipo do script: Alavancas que romovem pedras e Quest com 4 items que só é possivel pegar um item por cada player.

Protocolo (versão do Tibia): 8.60

Servidor utilizado: Sqlite

Nível de experiência: Iniciante.

Adicionais/Informações: AlissowOTsv.

 

 

1: Pedido: Uma alavanca que após ser utilizada ou melhor mexida ela libera a pedra que interferi a passagem, mais eu preciso repetir essa Script 8 vezes então eu queria que vocês explicassem como fasso para duplicar, triplicar, etc.. sem dar erros no server.

 

2: Pedido: Uma quest que contem 4 items a minha escolha que ao completar você so pode pegar 1 items dos 4 mostrados na quest.

 

 

 

Obrigado Xtibia por me conceder um espaço..

 

 

LTKReturnsL
WaguiinRodriguezW
18 de dezembro de 2012 às 02:55

Obrigado, ajudou muito me passando esse link com essas informações agora eu sei mais ou menos o que tenho que fazer para funcionar meu script. Mas ainda não selo o meu pedido, preciso repetir essa script 8 vezes sem da erros no meu servidor. Tópico em andamento!!!

Obrigado por tentar ajudar, ficarei grato!!

p5lukas157P
18 de dezembro de 2012 às 03:01

http://www.xtibia.com/forum/topic/1230-mover-pedra-com-alavanca/

 

 

+ ja que o Outro XsallezinhoWar Ajuda ta aki 1 Link ^^

WaguiinRodriguezW
18 de dezembro de 2012 às 03:14

Obrigado esse link apesar de ser antigo, tópico morto, valeu de grande utilidade!!

vamos esperar o segundo pedido agora, tópico em andamento!!

Obrigado!!

VictorFTV
18 de dezembro de 2012 às 11:58

Tenta esse

 

function onUse(cid,  item,  frompos,  item2,  topos)
if item.uid == 5006 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2494, 1)
setPlayerStorageValue(cid, 5010, 1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")-- Mensagem que o player irá receber
end
elseif item.uid == 5007 then
queststatus = getPlayerStorageValue(cid, 5010) -- Storage que o player não pode ter.
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item") -- Nome do item
doPlayerAddItem(cid, 2400, 1)
setPlayerStorageValue(cid, 5010, 1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR,  "The chest is empty.")-- Mensagem que o player irá receber
end
elseif item.uid == 5008 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2431, 1) -- Id do item que irá receber
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
elseif item.uid == 5009 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2421, 1) -- Id do item que irá receber
setPlayerStorageValue(cid,  5010,  1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
else
return FALSE
end
return TRUE
end

Editado Dezembro 18 por VictorFT

WaguiinRodriguezW
18 de dezembro de 2012 às 14:08

No caso eu mudo os ID do items para adicionar items a minha escolha nessa linha certo?

doPlayerAddItem(cid, 2400, 1)
supondo: eu ponho uma uma Dragon Scale Mail ai ficaria assim?
doPlayerAddItem(cid, 2492, 1)
??

 

 

no caso eu mudo os quatros IDs para forma minha quest, certo? ou estou errado.

só queria pedir mais uma coisa para fechar meu tópico.

 

posta a tag para mim? fazendo favor, obrigado por me ajudar, recebera meu +rep. (meuot/data/actions.xml) não sei cara!! descupe sou meio lerdo para essas coisas, me ajuda mais você terá meu +rep!

AkatsukyiA
18 de dezembro de 2012 às 15:01

 

Tenta esse

 

function onUse(cid,  item,  frompos,  item2,  topos)
if item.uid == 5006 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2494, 1) -- [size=3][b][color=#0000ff]Aqui voce adiciona o item que o bau de uid 5006 vai dar[/color][/b][/size]
setPlayerStorageValue(cid, 5010, 1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")-- Mensagem que o player irá receber
end
elseif item.uid == 5007 then
queststatus = getPlayerStorageValue(cid, 5010) -- Storage que o player não pode ter.
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item") -- Nome do item
doPlayerAddItem(cid, 2400, 1) [b][color=#0000FF]Aqui voce adiciona o item que o bau de uid 5007 vai dar[/color][/b]
setPlayerStorageValue(cid, 5010, 1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR,  "The chest is empty.")-- Mensagem que o player irá receber
end
elseif item.uid == 5008 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2431, 1) -- [b][color=#0000FF]Aqui voce adiciona o item que o bau de uid 5008 vai dar[/color][/b]
setPlayerStorageValue(cid, 5010, 1)
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
elseif item.uid == 5009 then
queststatus = getPlayerStorageValue(cid, 5010)
if queststatus == -1 then
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "Nome do item")
doPlayerAddItem(cid, 2421, 1) -- [b][color=#0000FF]Aqui voce adiciona o item que o bau de uid 5009 vai dar[/color][/b]
setPlayerStorageValue(cid,  5010,  1) -- Storage que o player irá receber
else
doPlayerSendTextMessage(cid,  MESSAGE_INFO_DESCR, "The chest is empty.")
end
else
return FALSE
end
return TRUE
end

No caso eu mudo os ID do items para adicionar items a minha escolha nessa linha certo?

doPlayerAddItem(cid,2400,1)
supondo: eu ponho uma uma Dragon Scale Mail ai ficaria assim?
doPlayerAddItem(cid,2492,1)
??

 

 

no caso eu mudo os quatros IDs para forma minha quest, certo? ou estou errado.

só queria pedir mais uma coisa para fechar meu tópico.

 

posta a tag para mim? fazendo favor, obrigado por me ajudar, recebera meu +rep. (meuot/data/actions.xml) não sei cara!! descupe sou meio lerdo para essas coisas, me ajuda mais você terá meu +rep!

 

 

você deve procurar cada uid do script do victor e muda oq ele da

doPlayerAddItem(cid,2400,1) -- 2400 é o item , e 1 é o total , procura isso em cada uid dele

 

Abrá a pasta do seu ot e va em data/actions/actions.xml e adicione isso

 

<action uniqueid="5006" event="script" value="bau.lua"/>

<action uniqueid="5007" event="script" value="bau.lua"/>

<action uniqueid="5008" event="script" value="bau.lua"/>

<action uniqueid="5009" event="script" value="bau.lua"/>

 

por exemplo

 

o bau 1 vai dar uma demon armor -- você coloca um dos unique id que vc colocou ali em cima no caso fika 5006

o bau 2 vai dar uma demon legs -- você coloca um dos unique id que vc colocou ali em cima no caso fika 5007

o bau 3 vai dar um demon shield -- você coloca um dos unique id que vc colocou ali em cima no caso fika 5008

o bau 4 vai dar um demon helmet -- você coloca um dos unique id que vc colocou ali em cima no caso fika 5009

 

PS: Deve mudar oq eles dão

Editado Dezembro 18 por Manyzin

WaguiinRodriguezW
20 de dezembro de 2012 às 04:27

Cara você ajudou bastante muito obrigado, te darei o mais +rep assim que liberar hoje, me explica uma coisa eu quero adicionar mais 2 items a esta quest que você me passou, como faço??

 

 

copio e repito mais 2x essa parte da script?

 

 

elseif item.uid == 5009 then

queststatus = getPlayerStorageValue(cid, 5010)

if queststatus == -1 then

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Nome do item")

doPlayerAddItem(cid, 2421, 1) -- Aqui voce adiciona o item que o bau de uid 5009 vai dar

setPlayerStorageValue(cid, 5010, 1) -- Storage que o player irá receber

else

doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "The chest is empty.")

end

StackMinuteS
20 de dezembro de 2012 às 20:59

Bom acho que o script do victor funcionou então vou sanar a sua duvida ali de cima

 

No caso eu mudo os ID do items para adicionar items a minha escolha nessa linha certo?

doPlayerAddItem(cid,2400,1)
supondo: eu ponho uma uma Dragon Scale Mail ai ficaria assim?
doPlayerAddItem(cid,2492,1)
??

 

 

no caso eu mudo os quatros IDs para forma minha quest, certo? ou estou errado.

só queria pedir mais uma coisa para fechar meu tópico.

 

posta a tag para mim? fazendo favor, obrigado por me ajudar, recebera meu +rep. (meuot/data/actions.xml) não sei cara!! descupe sou meio lerdo para essas coisas, me ajuda mais você terá meu +rep!

 

doPlayerAddItem(cid,2400,1)
supondo: eu ponho uma uma Dragon Scale Mail ai ficaria assim?

 

O que tá em vermelho é o id do item e oque ta depóis do 2400 é a quantidade :)

 

a tag você vai em data/actions/actions.xml

 

<action uniqueid="7000" script="Localdoscript/nomedoscript"/>

 

<action uniqueid="7000"
-- aqui você poe a uniqueid lembrando que no mapa todo so pode ter 1 unique id cm esse numero :)