Ir para conteúdo
  • 0

[Resolvido] Script Teleporte


zeruella

Pergunta

Ola tenho um scrip de teleport mas ele nao tem exaust queria colocar 5 segundos. obrigado!

e tambem adiciona uma storege unica no player que usa o teleport.

Editado por zeruella
Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0
13 horas atrás, zeruella disse:
Versão do Servidor: TFS - 0.4
Tipo de Script: talkaction
Código:
  Ocultar conteúdo



local config = {
pz = false, -- false
battle = true, -- trues
custo = false, --  false
need_level = false, -- false
premium = true -- true
}

local free = {
["azeroth"] ={
pos = {x=613, y=1056, z=7}, price = 0},
["esdra"] ={
pos = {x=1091, y=2272, z=4}, price = 0},
["elsera"] ={
pos = {x=342, y=101, z=6}, price = 0},
["saragoka"] ={
pos = {x=628, y=879, z=7}, price = 0},
["gloria"] ={
pos = {x=797, y=821, z=7}, price = 0},
["avalon"] ={
pos = {x=2096, y=949, z=7}, price = 0},
["edileia"] ={
pos = {x=581, y=2327, z=6}, price = 0},
["khalarar"] ={ --
pos = {x=1369, y=1122, z=7}, price = 0},
["varmor"] ={ --
pos = {x=407, y=633, z=7}, price = 0},
["nevasta"] ={ --
pos = {x=2431, y=1337, z=7}, price = 0},
["shurima"] ={ --
pos = {x=1833, y=2183, z=5}, price = 0},
["orcpromo"] ={ --
pos = {x=2569, y=2186, z=5}, price = 0},
["arena"] ={
pos = {x=2129, y=925, z=10}, price = 0},
["midgarde"] ={
pos = {x=3630, y=1870, z=6}, price = 0},
["formagor"] ={ --
pos = {x=2619, y=2086, z=4}, price = 0},
} 
local premium = {
["behemoth2"] ={ 
pos = {x=230, y=478, z=0}, price = 0},
["behemoth3"] ={ 
pos = {x=1616, y=2236, z=8}, price = 0},
["behemoth4"] ={ 
pos = {x=738, y=896, z=7}, price = 0},
["behemoth5"] ={ 
pos = {x=708, y=962, z=10}, price = 0},
["dragon6"] ={ 
pos = {x=1585, y=992, z=7}, price = 0},
["pirate"] ={ 
pos = {x=147, y=935, z=7}, price = 0},
["macacos"] ={ 
pos = {x=775, y=2105, z=7}, price = 0},
["hellhound3"] ={ 
pos = {x=866, y=2358, z=6}, price = 0},

} 

function onSay(cid, words, param)
	local param, str, var = param:lower(),"", isPremium(cid) and premium or free
	if param == "" or param == "list" then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "--=[ FREE ]=--")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "CIDADES: azeroth, avalon, gloria, saragoka, elsera, edileia, khalarar, varmor, nevasta, shurima, formagor, esdra, midgarde. ( orcpromo, arena )")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--=[ VIPS ]=--")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 8 a 30: troll, amazon, mino1, mino2, elf1, dworc, barbarian1, barbarian2, bonelord, orc1, orc2. ( treineroff )")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 30 a 50: cyclops1, cyclops2, cyclops3, cyclops4, pirate, vamp1, vamp2, lightvale, macacos, scarab, dwarf1, dwarf2, dragonhatchling1, dragonhatchling2.")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 50 a 80: banshee, wyvern, hero1, hero2, dragon1, dragon2, dragon3, dragon4, dragon5, dragon6, dragon7, blacknight1, blacknight2, hydra1, hydra2, hydra3, hydra4, spider1, spider2, icespider1, icespider2.")
      	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 80 a 100: behemoth1, behemoth2, behemoth3, behemoth4, behemoth5, northland, frost1, frost2, frost3, frost4, frost5, volcan, rhun, defiler1, defiler2, bograider1, bograider2, nightmare1, nightmare2, quaras.")
 		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 100 a 200: hellhound1, hellhound2, hellhound3, fury, warlock1, warlock2, warlock3, demon1, demon2, demon3, undead1, undead2, deathvale, erediunvale, serpent1, serpent2, spiritfire, wyrm, dark, erechvale, behedemon, higelf.")
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 200+: northen, elemental, lizard1, lizard2, lizard3, medusa1, medusa2, oxyurus, terminator1, terminator2, jugger1, jugger2, solarian, bloodboil, valemordor, demonictoad.")
return true
	end
	local a = var[param]
	if not(a) then
	doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Use comando /ir veja os lugares onde você pode ir.")
	doSendMagicEffect(getCreaturePosition(cid), 2)
		return true
	elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then
			doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você precisa estar em protection zone pra poder teleportar.")
			return true
	elseif getCreatureCondition(cid, CONDITION_INFIGHT) then
			doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você não pode se teleportar em uma batalha.") 
			return true
	elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then
			doPlayerSendTextMessage(cid, 22, "Desculpe,voce nâo tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")
		return true
	end
	doSendMagicEffect(getCreaturePosition(cid), 27)
	doTeleportThing(cid, a.pos)
	doSendMagicEffect(a.pos, CONST_ME_BIGCLOUDS)
	return true
end

Ola tenho um scrip de teleport mas ele nao tem exaust queria colocar 5 segundos. obrigado!

e tambem adiciona uma storege unica no player que usa o teleport.

Ve se é isso que você quer:

Spoiler

local poke = {"Shiny Mr. Mime", 'Mew', 'Mewtwo', 'Abra', 'Kadabra', 'Alakazam', 'Drowzee', 'Hypno', 'Mr. Mime', 'Porygon', 'Shiny Abra', 'Shiny Alakazam',
'Shiny Hypno', 'Porygon2', "Jynx", "Shiny Jynx", "Slowking", "Girafarig", "Misdreavus", "Exeggutor", "Shiny Espeon", "Gardevoir", "Shiny Gardevoir"} --alterado v1.9

local etele = 0
local cdtele = 0

local config = {
premium = true, -- se precisa ser premium account (true or false)
battle = false -- se precisa estar sem battle (true). Se colocar false, poderá usar teleport no meio de batalhas
}

local places = {
-- Kanto --
[1] = {name = "Saffron", id = 1, sto = 897530},
[2] = {name = "Cerulean", id = 2, sto = 897531},
[3] = {name = "Lavender", id = 3, sto = 897532},
[4] = {name = "Fuchsia", id = 4, sto = 897533},
[5] = {name = "Celadon", id = 5, sto = 897534},
[6] = {name = "Pallet", id = 6, sto = 897535},
[7] = {name = "Pewter", id = 8, sto = 897536},
[8] = {name = "Viridian", id = 9, sto = 897537},
[9] = {name = "Vermilion", id = 10, sto = 897538},
[10] = {name = "Cinnabar", id = 11, sto = 897539},
-- Hoeen --
[11] = {name = "Larosse", id = 13, sto = 897540},
[12] = {name = "Orre", id = 7, sto = 897541},
[13] = {name = "Canavale", id = 16, sto = 897542},
-- Vip
[14] = {name = "Singer", id = 12, sto = 897543},
[15] = {name = "Hunter Village", id = 14, sto = 897544},
[16] = {name = "Sunshine", id = 15, sto = 897545},
[17] = {name = "Battle City", id = 31, sto = 897546},
-- Johto --
[18] = {name = "Goldenrod", id = 23, sto = 897547},
[19] = {name = "Azalea", id = 24, sto = 897548},
[20] = {name = "Ecruteak", id = 25, sto = 897549},
[21] = {name = "Olivine", id = 26, sto = 897550},
[22] = {name = "Violet", id = 27, sto = 897551},
[23] = {name = "Cherrygrove", id = 28, sto = 897552},
[24] = {name = "New Bark", id = 29, sto = 897553},
[25] = {name = "Mahogany", id = 30, sto = 897554},
[26] = {name = "Blackthron", id = 32, sto = 897555},
-- Outro --

[27] = {name = "Join Avenue", id = 39, sto = 897556},
[28] = {name = "Cianwood", id = 42, sto = 897557},
-- Novas Citys
}

function onSay(cid, words, param)
if #getCreatureSummons(cid) == 0 then
doPlayerSendCancel(cid, "Você precisa de um pokémon para usar teleport!")
return true
end

if not isInArray(poke, getCreatureName(getCreatureSummons(cid)[1])) then
return 0
end

if exhaustion.get(cid, etele) and exhaustion.get(cid, etele) > 0 then
local tempo = tonumber(exhaustion.get(cid, etele)) or 0
local min = math.floor(tempo)
doPlayerSendCancel(cid, "Your pokemon is tired, wait "..getStringmytempo(tempo).." to teleport again.")
return true
end

if config.premium and not isPremium(cid) then
doPlayerSendCancel(cid, "Apenas membros Premium Account podem teleportar!")
return true
end

if config.battle and getCreatureCondition(cid, CONDITION_INFIGHT) then
doPlayerSendCancel(cid, "Your pokemon can't concentrate during battles.")
return true
end

    if (param == '') then
        local str = ""
        str = str .. "Cidades disponiveis (PokeEsmeral) :\n\nHouse\n"
            for a = 1, #places do
                str = str..""..places[a].name.."\n"
            end
        doShowTextDialog(cid, 7416, str)
    return true
    end

local item = getPlayerSlotItem(cid, ?
local nome = getPokeballName(item.uid)
local summon = getCreatureSummons(cid)[1]
local lastppos = getThingPos(cid)
local lastspos = getThingPos(summon)
local myplace = ""
local townid = 0
local citySto = 0 --alterado v1.7


for x = 1, #places do
if string.find(string.lower(places[x].name), string.lower(param)) then
townid = places[x].id
myplace = places[x].name
citySto = places[x].sto or -1 --alterado v1.7
end
end

if myplace == "" then
doPlayerSendCancel(cid, "That place doesn't exist.")
return true
end


if myplace ~= "" and townid > 0 then
telepos = getTownTemplePosition(townid)
end

doTeleportThing(cid, telepos, false)

local pos2 = getClosestFreeTile(cid, getPosByDir(getThingPos(cid), SOUTH))

doTeleportThing(summon, pos2, false)


doSendMagicEffect(getThingPos(summon), CONST_ME_TELEPORT)

return true
end

 

Link para o comentário
Compartilhar em outros sites

  • 0

Testa e me fala se deu erro:

Spoiler

local config = {
pz = false, -- false
battle = true, -- trues
custo = false, --  false
need_level = false, -- false
premium = true -- true
}
local minutos = 1 -- COLOQUE AQUI A QUANTIDADE DE MINUTOS

function onUse(cid, item, fromPosition, item2, toPosition)
local storage_time = 42350 -- STRONG QUE SERA USADA AO USAR O COMANDO

 

local free = {
["azeroth"] ={
pos = {x=613, y=1056, z=7}, price = 0},
["esdra"] ={
pos = {x=1091, y=2272, z=4}, price = 0},
["elsera"] ={
pos = {x=342, y=101, z=6}, price = 0},
["saragoka"] ={
pos = {x=628, y=879, z=7}, price = 0},
["gloria"] ={
pos = {x=797, y=821, z=7}, price = 0},
["avalon"] ={
pos = {x=2096, y=949, z=7}, price = 0},
["edileia"] ={
pos = {x=581, y=2327, z=6}, price = 0},
["khalarar"] ={ --
pos = {x=1369, y=1122, z=7}, price = 0},
["varmor"] ={ --
pos = {x=407, y=633, z=7}, price = 0},
["nevasta"] ={ --
pos = {x=2431, y=1337, z=7}, price = 0},
["shurima"] ={ --
pos = {x=1833, y=2183, z=5}, price = 0},
["orcpromo"] ={ --
pos = {x=2569, y=2186, z=5}, price = 0},
["arena"] ={
pos = {x=2129, y=925, z=10}, price = 0},
["midgarde"] ={
pos = {x=3630, y=1870, z=6}, price = 0},
["formagor"] ={ --
pos = {x=2619, y=2086, z=4}, price = 0},

local premium = {
["behemoth2"] ={ 
pos = {x=230, y=478, z=0}, price = 0},
["behemoth3"] ={ 
pos = {x=1616, y=2236, z=8}, price = 0},
["behemoth4"] ={ 
pos = {x=738, y=896, z=7}, price = 0},
["behemoth5"] ={ 
pos = {x=708, y=962, z=10}, price = 0},
["dragon6"] ={ 
pos = {x=1585, y=992, z=7}, price = 0},
["pirate"] ={ 
pos = {x=147, y=935, z=7}, price = 0},
["macacos"] ={ 
pos = {x=775, y=2105, z=7}, price = 0},
["hellhound3"] ={ 
pos = {x=866, y=2358, z=6}, price = 0},

function onSay(cid, words, param)
    local param, str, var = param:lower(),"", isPremium(cid) and premium or free
    if param == "" or param == "list" then
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "--=[ FREE ]=--")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "CIDADES: azeroth, avalon, gloria, saragoka, elsera, edileia, khalarar, varmor, nevasta, shurima, formagor, esdra, midgarde. ( orcpromo, arena )")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "--=[ VIPS ]=--")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 8 a 30: troll, amazon, mino1, mino2, elf1, dworc, barbarian1, barbarian2, bonelord, orc1, orc2. ( treineroff )")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 30 a 50: cyclops1, cyclops2, cyclops3, cyclops4, pirate, vamp1, vamp2, lightvale, macacos, scarab, dwarf1, dwarf2, dragonhatchling1, dragonhatchling2.")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 50 a 80: banshee, wyvern, hero1, hero2, dragon1, dragon2, dragon3, dragon4, dragon5, dragon6, dragon7, blacknight1, blacknight2, hydra1, hydra2, hydra3, hydra4, spider1, spider2, icespider1, icespider2.")
          doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 80 a 100: behemoth1, behemoth2, behemoth3, behemoth4, behemoth5, northland, frost1, frost2, frost3, frost4, frost5, volcan, rhun, defiler1, defiler2, bograider1, bograider2, nightmare1, nightmare2, quaras.")
         doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 100 a 200: hellhound1, hellhound2, hellhound3, fury, warlock1, warlock2, warlock3, demon1, demon2, demon3, undead1, undead2, deathvale, erediunvale, serpent1, serpent2, spiritfire, wyrm, dark, erechvale, behedemon, higelf.")
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "HUNT LEVEL 200+: northen, elemental, lizard1, lizard2, lizard3, medusa1, medusa2, oxyurus, terminator1, terminator2, jugger1, jugger2, solarian, bloodboil, valemordor, demonictoad.")
return true
    end
    local a = var[param]
    if not(a) then
    doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Use comando /ir veja os lugares onde você pode ir.")
    doSendMagicEffect(getCreaturePosition(cid), 2)
        return true
    elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then
            doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"Você precisa estar em protection zone pra poder teleportar.")
            return true
    elseif getCreatureCondition(cid, CONDITION_INFIGHT) then
            doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você não pode se teleportar em uma batalha.") 
            return true
    elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then
            doPlayerSendTextMessage(cid, 22, "Desculpe,voce nâo tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")
        return true
    end
    doSendMagicEffect(getCreaturePosition(cid), 27)
    doTeleportThing(cid, a.pos)
    doSendMagicEffect(a.pos, CONST_ME_BIGCLOUDS)
    return true
end

 

Editado por Nysman
Link para o comentário
Compartilhar em outros sites

  • 0
  • Diretor
A questão neste tópico de suporte foi respondida e/ou o autor do tópico resolveu o problema. Este tópico está fechado e foi movido para Suporte - Resolvidos. Se você tiver outras dúvidas, crie um novo tópico.
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...