que nem mewtwo quest do Poke Storm .-.
info
Grupo: Campones
Registrado: 12/10/13
Posts: 91
Reputação: +22
Char no Tibia: Nem tenho

info
Grupo: Conde
Registrado: 29/04/09
Posts: 904
Reputação: +389
Char no Tibia: Jabuti Selvagem

Fiz mas n testei, acho q vai funcionar:
cria um script em actions e coloca
-- ID DOS CRISTAIS --
local vermelho = 1234
local azulescuro = 1233
local azulclaro = 1213
local verde = 3232
-- Posicao que os cristais devem estar para dar certo --
local posvermelho = {x=1476, y=1108, z=7, stackpos=1}
local posazulescuro = {x=1476, y=1108, z=7, stackpos=1}
local posazulclaro = {x=1476, y=1108, z=7, stackpos=1}
local posverde = {x=1476, y=1108, z=7, stackpos=1}
-- Nao mude --
local pvermelho = getTileItemById(posvermelho, vermelho)
local pazulescuro = getTileItemById(posazulescuro, azulescuro)
local pazulclaro = getTileItemById(posazulclaro, azulclaro)
local pverde = getTileItemById(posverde, verde)
-- Posicao que o cara vai se acertar --
local posfinal = {x=1476, y=1108, z=7}
-- Posicao pra onde os cristais vao voltar quando funcionar --
local vvermelho = {x=1476, y=1108, z=7}
local vverde = {x=1476, y=1108, z=7}
local vazulescuro = {x=1476, y=1108, z=7}
local vazulclaro = {x=1476, y=1108, z=7}
function onUse(cid, item, fromPos, position)
if not(pvermelho and pazulescuro and pazulclaro and pverde) then
doPlayerSendCancel(cid, "Combinacao errada.")
return false
end
doSendMagicEffect(posvermelho, CONST_ME_POFF)
doSendMagicEffect(posverde, CONST_ME_POFF)
doSendMagicEffect(posazulclaro, CONST_ME_POFF)
doSendMagicEffect(posazulescuro, CONST_ME_POFF)
doRemoveItem(pvermelho.uid, 1)
doRemoveItem(pverde.uid, 1)
doRemoveItem(pazulescuro, 1)
doRemoveItem(pazulclaro, 1)
doTeleportThing(cid, posfinal)
doSendMagicEffect(posfinal, CONST_ME_TELEPORT)
doCreateItem(vermelho, 1, vvermelho)
doCreateItem(verde, 1, vverde)
doCreateItem(azulclaro, 1, vazulclaro)
doCreateItem(azulescuro, 1, vazulescuro)
doPlayerSendTextMessage(cid, 25, "Voce acertou a combinacao e pode prosseguir!")
return true
end
no actions.xml vc coloca essa tag:
<action actionid="1846" event="script" value="NOME DO SCRIPT.lua"/>
Na alavanca vc coloca o actionid 1846
So vi seu pedido agr pq tava viajando, espero que vc veja a resposta.
Fiz mas n testei, acho q vai funcionar:
cria um script em actions e coloca
-- ID DOS CRISTAIS -- local vermelho = 1234 local azulescuro = 1233 local azulclaro = 1213 local verde = 3232 -- Posicao que os cristais devem estar para dar certo -- local posvermelho = {x=1476, y=1108, z=7, stackpos=1} local posazulescuro = {x=1476, y=1108, z=7, stackpos=1} local posazulclaro = {x=1476, y=1108, z=7, stackpos=1} local posverde = {x=1476, y=1108, z=7, stackpos=1} -- Nao mude -- local pvermelho = getTileItemById(posvermelho, vermelho) local pazulescuro = getTileItemById(posazulescuro, azulescuro) local pazulclaro = getTileItemById(posazulclaro, azulclaro) local pverde = getTileItemById(posverde, verde) -- Posicao que o cara vai se acertar -- local posfinal = {x=1476, y=1108, z=7} -- Posicao pra onde os cristais vao voltar quando funcionar -- local vvermelho = {x=1476, y=1108, z=7} local vverde = {x=1476, y=1108, z=7} local vazulescuro = {x=1476, y=1108, z=7} local vazulclaro = {x=1476, y=1108, z=7} function onUse(cid, item, fromPos, position) if not(pvermelho and pazulescuro and pazulclaro and pverde) then doPlayerSendCancel(cid, "Combinacao errada.") return false end doSendMagicEffect(posvermelho, CONST_ME_POFF) doSendMagicEffect(posverde, CONST_ME_POFF) doSendMagicEffect(posazulclaro, CONST_ME_POFF) doSendMagicEffect(posazulescuro, CONST_ME_POFF) doRemoveItem(pvermelho.uid, 1) doRemoveItem(pverde.uid, 1) doRemoveItem(pazulescuro, 1) doRemoveItem(pazulclaro, 1) doTeleportThing(cid, posfinal) doSendMagicEffect(posfinal, CONST_ME_TELEPORT) doCreateItem(vermelho, 1, vvermelho) doCreateItem(verde, 1, vverde) doCreateItem(azulclaro, 1, vazulclaro) doCreateItem(azulescuro, 1, vazulescuro) doPlayerSendTextMessage(cid, 25, "Voce acertou a combinacao e pode prosseguir!") return true endno actions.xml vc coloca essa tag:
<action actionid="1846" event="script" value="NOME DO SCRIPT.lua"/>Na alavanca vc coloca o actionid 1846
So vi seu pedido agr pq tava viajando, espero que vc veja a resposta.
Quando abro o server da esse erro e fecha sozin.

Tentei uma coisa aqui meio louca, não tenho a mínima certeza se vai funcionar, mas não custa nada tentar e.e
data/actions/scripts --NÃO se esqueça de trocar TUDO que foi indicado, leia o script, algumas coisas eu não indiquei, mas é óbvio onde se deve mudar.
function onUse(cid, item, frompos, item2, topos)
local cores = { --id|pos que devem ficar
{xxx, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --vermelho
{zzz, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --azulclaro
{yyy, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --azulescuro
{lll, {x = xxx, y = yyy, z = zzz, stackpos = 1}} --verde
}
local posinicial = {
vermelho = {x = xxx, y = yyy, z = zzz}, --Posição inicial dos items. Vermelho
azulclaro = {x = xxx, y = yyy, z = zzz}, -- azul claro
azulescuro = {x = xxx, y = yyy, z = zzz}, --azul escuro
verde = {x = xxx, y = yyy, z = zzz} -- verde
}
local tp = {x=xxx, y=yyy, z=zzz} --Para onde será teleportado
for i = 1, #cores do
if getTileItemById(cores[i][2], cores[i][1]).uid > 0 then
doTeleportThing(cid, tp)
doRemoveItem(getThingFromPos(cores[i][2]), 1)
doCreateItem(xxx, 1, posinicial.vermelho) --id do item vermelho
doCreateItem(zzz, 1, posinicial.azulclaro) --id do item azul claro
doCreateItem(yyy, 1, posinicial.azulescuro) -- " azul escuro
doCreateItem(lll, 1, posinicial.verde) -- " verde
else
return doPlayerSendCancel(cid, "Combinação errada...")
end
end
return true
endEditado Outubro 21 por zipter98
info
Grupo: Conde
Registrado: 29/04/09
Posts: 904
Reputação: +389
Char no Tibia: Jabuti Selvagem

Mas esse erro nao ta relacionado ao script...
Tentei uma coisa aqui meio louca, não tenho a mínima certeza se vai funcionar, mas não custa nada tentar e.e
data/actions/scripts --NÃO se esqueça de trocar TUDO que foi indicado, leia o script, algumas coisas eu não indiquei, mas é óbvio onde se deve mudar.
function onUse(cid, item, frompos, item2, topos) local cores = { --id|pos que devem ficar {xxx, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --vermelho {zzz, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --azulclaro {yyy, {x = xxx, y = yyy, z = zzz, stackpos = 1}}, --azulescuro {lll, {x = xxx, y = yyy, z = zzz, stackpos = 1}} --verde } local posinicial = { vermelho = {x = xxx, y = yyy, z = zzz}, --Posição inicial dos items. Vermelho azulclaro = {x = xxx, y = yyy, z = zzz}, -- azul claro azulescuro = {x = xxx, y = yyy, z = zzz}, --azul escuro verde = {x = xxx, y = yyy, z = zzz} -- verde } local tp = {x=xxx, y=yyy, z=zzz} --Para onde será teleportado for i = 1, #cores do if getTileItemById(cores[i][2], cores[i][1]).uid > 0 then doTeleportThing(cid, tp) doRemoveItem(getThingFromPos(cores[i][2]), 1) doCreateItem(xxx, 1, posinicial.vermelho) --id do item vermelho doCreateItem(zzz, 1, posinicial.azulclaro) --id do item azul claro doCreateItem(yyy, 1, posinicial.azulescuro) -- " azul escuro doCreateItem(lll, 1, posinicial.verde) -- " verde else return doPlayerSendCancel(cid, "Combinação errada...") end end return true end
quando clico,vai certim para o outro lado,mais ao invés de só aparecer 1 item na posinicial aparece 4,4 da mesma cor,1 em cima do outro
pode me ajudar com isso?
@Edit e os itens que estão na combinação feita n desaparecem.
Editado Outubro 21 por iurysf20
Deu algum erro no console? Posso ver como você configurou seu script?
Não aparece nenhum erro,o negocio que aparecia 4 das mesmas já arrumei,agr só falta arrumar os itens que combinam não somem dps que clica na alavanca.
Tenta trocar isso: doRemoveItem(getThingFromPos(cores[i][2]), 1)
Por:
doRemoveItem(getThingFromPos(cores[i][2]).uid, 1)
edit: não sei se vai funcionar, to lendo umas coisas do doremoveitem, qualquer coisa edito aqui
Editado Outubro 21 por zipter98
Tenta trocar isso: doRemoveItem(getThingFromPos(cores[i][2]), 1)
Por:
doRemoveItem(getThingFromPos(cores[i][2]).uid, 1)edit: não sei se vai funcionar, to lendo umas coisas do doremoveitem, qualquer coisa edito aqui
Troquei,mais só ta sumindo o vermelho os outros 3 fica no mesmo lugar..
@edit
fiz assim,e funcionou direitin,vlw mano
function onUse(cid, item, frompos, item2, topos)
local cores = { --id|pos que devem ficar{9976, {x = 1210, y = 650, z = 7, stackpos = 1}}, --vermelho{9978, {x = 1210, y = 652, z = 7, stackpos = 1}}, --azulclaro{9977, {x = 1210, y = 651, z = 7, stackpos = 1}}, --azulescuro{9979, {x = 1210, y = 653, z = 7, stackpos = 1}} --verde}local posinicial = {vermelho = {x = 1208, y = 650, z = 7}, --Posição inicial dos items. Vermelhoazulclaro = {x = 1207, y = 653, z = 7}, -- azul claroazulescuro = {x = 1207, y = 650, z = 7}, --azul escuroverde = {x = 1208, y = 653, z = 7} -- verde}local tp = {x=1213, y=653, z=7} --Para onde será teleportadolocal posred = {x=1210, y=650, z=7, stackpos = 1}local posblue = {x=1210, y=651, z=7, stackpos = 1}local posblue2 = {x=1210, y=652, z=7, stackpos = 1}local posgreen = {x=1210, y=653, z=7, stackpos = 1}for i = 1, #cores doif getTileItemById(cores[2], cores[1]).uid > 0 thendoTeleportThing(cid, tp)doRemoveItem(getThingFromPos(posred).uid, 1)doRemoveItem(getThingFromPos(posblue).uid, 1)doRemoveItem(getThingFromPos(posblue2).uid, 1)doRemoveItem(getThingFromPos(posgreen).uid, 1)doCreateItem(9976, 1, posinicial.vermelho) --id do item vermelhodoCreateItem(9978, 1, posinicial.azulclaro) --id do item azul clarodoCreateItem(9977, 1, posinicial.azulescuro) -- " azul escurodoCreateItem(9979, 1, posinicial.verde) -- " verdeelsereturn doPlayerSendCancel(cid, "Combinação errada...")endendreturn trueend
Editado Outubro 21 por iurysf20
edit: ae \o/ De nada, e também lhe agradeço, você arrumou o script xD
Reportado para moverem p/ Pedidos e Dúvidas resolvidos - Scripting.
Editado Outubro 21 por zipter98





info
Grupo: Campones
Registrado: 20/09/10
Posts: 5
Reputação: 0
Queria pedir 1 script que tem que montar umas cores para continuar a quest fiz um exemplo abaixo:
1:Primeiro o jogador tem que fazer 1 combinação de cores:1:azul escuro,2:vermelho,3:azul claro e 4:verde.
2:Depois que fazer essa combinação o jogador clika na alavanca e se teleporta para o outro lado.
3:E quando o jogador clikasse na alavanca os itens voltassem para o mesmo lugar de antes.
Quem me ajudar do rep+
Editado Outubro 19 por iurysf20