É uma idéia interessante que pode ser melhor aprimorada. O código está simples, creio que por ser algo simples mesmo.
- Fórum
- OTServ
- Recursos
- Scripting
- Actions e Talkactions
- [Action] Passagem Secreta
info
Grupo: Campones
Registrado: 22/09/10
Posts: 84
Reputação: +17
Gênero: Feminino

É simples sim.
info
Grupo: Conde
Registrado: 30/01/10
Posts: 706
Reputação: +125
Gênero: Masculino
Char no Tibia: Bakwin

falta de imaginação ![]()
info
Grupo: Campones
Registrado: 22/09/10
Posts: 84
Reputação: +17
Gênero: Feminino

POis é .-.
info
Grupo: Visconde
Registrado: 11/08/10
Posts: 477
Reputação: +175
Gênero: Masculino

A idéia não é tao ruim, eu achei ruim, o player poder usar em qualquer ocasião.
Tipo da pra colocar pra funcionar só se o player estiver em tal coordenada, e fazer o item n ser infinito, ai ficaria mais legal, pq ai pra fazer uma certa quest ele precisa desse item pra passar sobre uma mesa, sei lá, como ja disseram, "dá pra aprimorar"
info
Grupo: Campones
Registrado: 15/06/10
Posts: 46
Reputação: +18
Gênero: Masculino
Char no Tibia: Lancellott~*

@LaisDosOts
Boa iniciativa, mais não tá completo ;D (complementa ele ;P)
@Eskylo
A idéia não é tao ruim, eu achei ruim, o player poder usar em qualquer ocasião. Tipo da pra colocar pra funcionar só se o player estiver em tal coordenada, e fazer o item n ser infinito, ai ficaria mais legal, pq ai pra fazer uma certa quest ele precisa desse item pra passar sobre uma mesa, sei lá, como ja disseram, "dá pra aprimorar"
é só adicionar ao script doRemoveItem(item.uid, 1) ou seja, vai remover o item com 1 uso!
Coloquei uma função ali, mais tenho quase certeza que está errada.
Ficará assim:
function onUse(cid, item, frompos, item2, topos)
local frases = { "Com licença to passando.", }
doSendMagicEffect(frompos,14)
doTeleportThing(cid,topos)
doSendMagicEffect(topos,10) doCreatureSay(cid, frases[math.random(#frases)], TALKTYPE_SAY)
cPos = getCreaturePosition(cid)
cPos == { ..XXX.. ; ..YYY.. ; ..ZZZ.. } then
doRemoveItem(item.uid, 1)
else
doPlayerSendCancel (cid,"Desculpe, mais você só poderá usar esse item no lugar correto")
end
end
Editado Novembro 22 por junior2b
info
Grupo: Campones
Registrado: 04/10/07
Posts: 60
Reputação: 0
Char no Tibia: Elder Linkay

@LaisDosOts
Boa iniciativa, mais não tá completo ;D (complementa ele ;P)
@Eskylo
A idéia não é tao ruim, eu achei ruim, o player poder usar em qualquer ocasião. Tipo da pra colocar pra funcionar só se o player estiver em tal coordenada, e fazer o item n ser infinito, ai ficaria mais legal, pq ai pra fazer uma certa quest ele precisa desse item pra passar sobre uma mesa, sei lá, como ja disseram, "dá pra aprimorar"é só adicionar ao script doRemoveItem(item.uid, 1) ou seja, vai remover o item com 1 uso!
Coloquei uma função ali, mais tenho quase certeza que está errada.
Ficará assim:
function onUse(cid, item, frompos, item2, topos) local frases = { "Com licença to passando.", } doSendMagicEffect(frompos,14) doTeleportThing(cid,topos) doSendMagicEffect(topos,10) doCreatureSay(cid, frases[math.random(#frases)], TALKTYPE_SAY) cPos = getCreaturePosition(cid) if getCreaturePosition(cid) == { ..XXX.. ; ..YYY.. ; ..ZZZ.. } then doRemoveItem(item.uid, 1) else doPlayerSendCancel (cid,"Desculpe, mais você só poderá usar esse item no lugar correto") end end
O correto seria:
function onUse(cid, item, frompos, item2, topos)
local frases = {
"Com licença to passando.",
}
doSendMagicEffect(frompos,14)
doTeleportThing(cid,topos)
doSendMagicEffect(topos,10)
doCreatureSay(cid, frases[math.random(#frases)], TALKTYPE_SAY)
if getCreaturePosition(cid) == {x=100,y=100,z=7} then
doRemoveItem(item.uid, 1)
else
doPlayerSendCancel (cid,"Desculpe, mas você só pode usar este item no lugar correto,")
end
end
#pt: "Poderá", ele já não pode, e continuará não podendo.
Editado Dezembro 1 por linkay





info
Grupo: Campones
Registrado: 22/09/10
Posts: 84
Reputação: +17
Gênero: Feminino
Sobre o script - O player coloca o item em algum lugar, da use é anda para aquele lugar (pode ser em cima de uma mesa).
Não é uma action muito util, mas você pode colocá-la como loot de algum montro na sua quest, e pode necessitar disso pra pegar o premio (imaginação'
Script
- Vá na pasta \data\actions\scripts
- Crie um arquivo.lua com o nome de passagem
- Coloque isso dentro
Fexe e salve.
Tag
- Vá em \data\actions
- Abra o actions.xml como bloco de notas e insira a seguinte tag
Vermelho - Id do item que levará o player.
Fexe e salve.
Pronto.