!teleport com lista

Killua
Por Killua
em Actions e Talkactions

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

É um comando normal que mostra uma lista de lugares disponíveis e teleporta para o local escolhido



n68jo7.png



Crie teleportvip.lua em data/talkactions/scripts e coloque:



 





-- Script feito por Killua, XTibia.com

local positions = {
{lugar = "Midgard", pos = {x=123, y=123, z=7}, price = 1000}, -- Nome do lugar, posicao do lugar
{lugar = "Sao Paulo", pos = {x=123, y=123, z=7}, price = 13000},
{lugar = "Carlin", pos = {x=123, y=123, z=7}, price = 1000},
{lugar = "Venore", pos = {x=123, y=123, z=7}, price = 1000}
}



local needPz = false -- Precisa de pz? [true/false]
local cooldown = 5 -- Tempo em segundos para poder se teleportar novamente.
local needPrem = false -- Precisa ser premiu? [true/false]

function onSay(cid, words, param, channel)

local str = ""

for i = 1, (#positions) do
local cidades = positions[i].lugar
local custo = positions[i].price
str = str .. cidades .. ' - ' .. custo .. ' gps\n '
end

if param == "" then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "Para se teleportar diga !teleport LUGAR.\nLugares disponiveis:\n " .. str .. " \n Escolha seu destino e boa viagem!")
end

for _, abc in pairs(positions) do

if param:lower() == abc.lugar:lower() then

if needPz == true and getTilePzInfo(getCreaturePosition(cid)) == false then
return doPlayerSendCancel(cid, "Voce precisa estar em PZ para teleportar.")
elseif getPlayerStorageValue(cid, 23121) > os.time() then
return doPlayerSendCancel(cid, "Voce deve esperar mais " .. getPlayerStorageValue(cid, 23121) - os.time() .. " segundos para se teleportar novamente.")
elseif needPrem == true and not isPremium(cid) then
return doPlayerSendCancel(cid, "Somente jogadores premium podem teleportar.")
elseif getPlayerMoney(cid) < abc.price then
return doPlayerSendCancel(cid, "Voce nao tem dinheiro.")
end

doPlayerSetStorageValue(cid, 23121, os.time() + cooldown)
doPlayerRemoveMoney(cid, abc.price)
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT)
doTeleportThing(cid, abc.pos)
doPlayerSendTextMessage(cid, 25, "Bem vindo a " .. abc.lugar.. "!")
doSendMagicEffect(abc.pos, CONST_ME_TELEPORT)
end
end
return true
end



Agora em data/talkactions/talkactions.xml coloque essa tag:


<talkaction words="!teleport" script="teleportvip.lua"/>

Junior001

..................................
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 12/06/12Posts: 1026Gênero: MasculinoChar no Tibia: Aarow

Perfeito :p obrigado por compartilhar esse sistema de teleport eu estavo atras de um assim muito obrigado mesmo meu limite de rep foi atingido mais assim que liberar darei o rep :) vlws

Atenciosamente, Junior Silva

 

 

 

 

 

 

 
 

 

T67thPC.png
 
 
 
 
 
 

Benny

nvr gv p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 22/12/12Posts: 1958Gênero: MasculinoChar no Tibia: Marley

haha

o luck tinha feito um desses para mim

só que abria uma nova janela e mostrava os teleports :)

 

 

parabéns 'amoeba'

 

abraços

?

 

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

markindoot

Schznister Equilibriun
avatar
Visconde
Visconde

INFOS

Grupo: ViscondeRegistrado: 27/10/12Posts: 323Char no Tibia: Schznister Equilibriun

show Killua, eu acho que ficaria legal se o player ao falar por exemplo: !teleport midgard, o char enviasse animatedtext "doPlayerSay" não lembro como é e você deve saber qual é,

o char contasse até 100 para teleportar. Ao chegar no 100 ele teleportaria o player para midgard.

Exemplo: Thors Mage diz "!teleport venore", digamos que o tempo que eu quero que ele conte para viajar até venore é 1 minuto, o player vai contar de 0 até 60 segundos (1 minuto lógicamente), ao acabar esse tempo "Chegar a 60" o player é teletransportado para tal lugar.

No meu ponto de vista, isso iria dar uma ilusão que o player está criando o teleport e almentando o RPG.

(Utilizando o TELEPORT somente se estiver sem "Battle")

É apenas uma idéia que tive =D

fora isso ta show!

Você pode ficar desapontado se falhar, mas você está certamente condenado se não tentar.

DuuhCarvalho

:)
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 19/01/12Posts: 988Gênero: MasculinoChar no Tibia: Xerife Woody

Muito bom . Também lembrei do battle , mais depois vi que ja tem no script !

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

Stormkz

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 07/09/13Posts: 16

Deu esse erro aqui ._.

 

>>> Loading talkactions... [Error - LuaInterface::loadFile] data/talkactions/scripts/teleportvip.lua:8: '}' expected (to close '{' at line 3) near '{'
[27/2/2014 18:25:40] [Error - Event::checkScript] Cannot load script (data/talkactions/scripts/teleportvip.lua)
[27/2/2014 18:25:40] data/talkactions/scripts/teleportvip.lua:8: '}' expected (to close '{' at line 3) near '{'

 

 

local positions = {

{lugar = "thais", pos = {x=32369, y=32241, z=7}, price = 1000}, -- Nome do lugar, posicao do lugar
{lugar = "yalahar", pos = {x=32786, y=31247, z=6}, price = 13000},
{lugar = "Svargrond", pos = {x=32213, y=31133, z=7}, price = 1000},
{lugar = "Venore", pos = {x=32957, y=32076, z=7}, price = 1000}
{lugar = "Kazordoon", pos = {x=32649, y=31925, z=11}, price = 1000}
{lugar = "Edron", pos = {x=33168, y=31813, z=7}, price = 1000}
}

Benny

nvr gv p
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 22/12/12Posts: 1958Gênero: MasculinoChar no Tibia: Marley

 

Deu esse erro aqui ._.

 

>>> Loading talkactions... [Error - LuaInterface::loadFile] data/talkactions/scripts/teleportvip.lua:8: '}' expected (to close '{' at line 3) near '{'
[27/2/2014 18:25:40] [Error - Event::checkScript] Cannot load script (data/talkactions/scripts/teleportvip.lua)
[27/2/2014 18:25:40] data/talkactions/scripts/teleportvip.lua:8: '}' expected (to close '{' at line 3) near '{'

 

 

local positions = {

{lugar = "thais", pos = {x=32369, y=32241, z=7}, price = 1000}, -- Nome do lugar, posicao do lugar
{lugar = "yalahar", pos = {x=32786, y=31247, z=6}, price = 13000},
{lugar = "Svargrond", pos = {x=32213, y=31133, z=7}, price = 1000},
{lugar = "Venore", pos = {x=32957, y=32076, z=7}, price = 1000}
{lugar = "Kazordoon", pos = {x=32649, y=31925, z=11}, price = 1000}
{lugar = "Edron", pos = {x=33168, y=31813, z=7}, price = 1000}
}

 

 

Tenta assim :

local positions = {
 
    {lugar = "thais", pos = {x=32369, y=32241, z=7}, price = 1000}, -- Nome do lugar, posicao do lugar
    {lugar = "yalahar", pos = {x=32786, y=31247, z=6}, price = 13000},
    {lugar = "Svargrond", pos = {x=32213, y=31133, z=7}, price = 1000},
    {lugar = "Venore", pos = {x=32957, y=32076, z=7}, price = 1000},
    {lugar = "Kazordoon", pos = {x=32649, y=31925, z=11}, price = 1000},
    {lugar = "Edron", pos = {x=33168, y=31813, z=7}, price = 1000}
}
?

 

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

Stormkz

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 07/09/13Posts: 16

Muito Obrigado, Benny por ter me ajudado...

 

E Claro Killua muito obrigado por ter feito esse script muito dahora, funciona muito bem VLW

MersTurial

ATS Projet
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/11/13Posts: 52

É sempre bom ter esse tipo de script disponível :)

we2l.png

ATS Project - Venha fazer parte da equipe!

warcraftzz

Pedro
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 12/10/08Posts: 47Char no Tibia: Pedrosdtacador de runa

Tipo ragnarok pirata de.antigamente kkk e MU Online

20190_5.png

 

Mapa Próprio!

 

100xp

50skills

 

Vários sistemas exclusivos e inovadores

Recompensa por estar online

Novos comandos

Magias novas

Magias para vip

Cidade VIP

 

 

1123fa8fa02d4c2cb29c2affb23c1b10.0.gif

yagoshira004

avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 21/02/10Posts: 55Char no Tibia: Ynu

Ai gente, tem como colocar pra quando o player se teleportar acontecer um efeito da onde ele sai e na onde ele cai?

JME Connection !

Killua

Vivendo e Aprendendo
avatar
Conde
Conde

INFOS

Grupo: CondeRegistrado: 29/04/09Posts: 904Char no Tibia: Jabuti Selvagem

Ai gente, tem como colocar pra quando o player se teleportar acontecer um efeito da onde ele sai e na onde ele cai?

 

 

Ele já está mandando o efeito de teleport nas duas posições. Você quer por outro efeito?

Se for, basta mudar essas duas linhas:


doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) 
doSendMagicEffect(abc.pos, CONST_ME_TELEPORT)

Altere os CONST_ME_TELEPORT para o nome ou número do efeito que quiser.