Jump to content

Recommended Posts

Alguem me ajuda quero que use esse teleporte quem tem esse storage 880088!

 

Spoiler

local poke = {'Abra', 'Kadabra', 'Alakazam', 'Drowzee', 'Hypno', 'Mr. Mime', 'Porygon', 'Porygon2', "Shiny Abra",

"Shiny Alakazam", "Shiny Hypno"}

local etele = 9499 

local cdtele = 1800

 

local config = {

premium = false, -- se precisa ser premium account (true or false)

battle = true -- se precisa estar sem battle (true). Se colocar false, poderá usar teleport no meio de batalhas

}

 

local places = {

[1] = {name = "Cianwood", id = 12, sto = 897543},
[2] = {name = "Azalea", id = 13, sto = 897544},
[3] = {name = "Goldenrod", id = 14, sto = 897545},
[4] = {name = "Cherrygrove", id = 15, sto = 897546},
[5] = {name = "Ecruteak", id = 16, sto = 897547},
[6] = {name = "New Bark", id = 17, sto = 897548},
[7] = {name = "Violet", id = 18, sto = 897549},
[8] = {name = "Mahogany", id = 19, sto = 897550},
[9] = {name = "Blackthorn", id = 20, sto = 897551},

}

 

function onSay(cid, words, param)

 

if #getCreatureSummons(cid) == 0 then

doPlayerSendCancel(cid, "You need a pokemon to use teleport.")

return true

end

 

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

return 0

end

 

if not getPlayerStorageValue(cid, 880088) == 1 then --golden arena

doPlayerSendCancel(cid, "You can't do that while the golden arena!")

return true

end

 

if getPlayerStorageValue(cid, 212124) >= 1 then --alterado v2.6

return doPlayerSendCancel(cid, "You can't do it with a pokemon with mind controlled!")

end

 

if getPlayerStorageValue(cid, 52480) >= 1 then

return doPlayerSendCancel(cid, "You can't do it while a duel!") --alterado v2.6

end

 

if getPlayerStorageValue(cid, 6598754) == 1 or getPlayerStorageValue(cid, 6598755) == 1 then

return doPlayerSendCancel(cid, "You can't do it while in the PVP Zone!") --alterado v2.7

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, "Only premium members are allowed to use teleport.")

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 .. "Places to go :\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 telepos = {}

local myplace = ""

local townid = 0

local citySto = 0 --alterado v2.7

 

if string.lower(param) == "house" then

 

if not getHouseByPlayerGUID(getPlayerGUID(cid)) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You don't own a house.")

return true

end

 

telepos = getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid)))

myplace = "our home"

 

else

 

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 v2.7

end

end

 

if myplace == "" then

doPlayerSendCancel(cid, "That place doesn't exist.")

return true

end

 

end

 

if myplace ~= "" and townid > 0 then

telepos = getTownTemplePosition(townid)

end


 

if getDistanceBetween(getThingPos(cid), telepos) <= 15 then

doPlayerSendCancel(cid, "You are too near to the place you want to go!")

return true

end

 

doSendMagicEffect(getThingPos(summon), 29)

doSendMagicEffect(getThingPos(cid), 29)

 

doTeleportThing(cid, telepos, false)

 

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

 

doTeleportThing(summon, pos2, false)

 

doSendMagicEffect(getThingPos(cid), 29)

 

doCreatureSay(cid, ""..nome..", teleport to "..myplace.."!", 1)

doCreatureSay(cid, ""..nome..", teleport to "..myplace.."!", 1, false, 0, lastppos)

doCreatureSay(summon, "TELEPORT!", TALKTYPE_MONSTER)

doCreatureSay(summon, "TELEPORT!", TALKTYPE_MONSTER, false, 0, lastspos)

 

doCreatureSetLookDir(cid, SOUTH)

doCreatureSetLookDir(summon, SOUTH)

 

doSendMagicEffect(getThingPos(summon), CONST_ME_TELEPORT)

exhaustion.set(cid, etele, cdtele)

 

return true

end

 

Link to post
Share on other sites

Testa aí e me fala:

 

Spoiler

local poke = {'Abra', 'Kadabra', 'Alakazam', 'Drowzee', 'Hypno', 'Mr. Mime', 'Porygon', 'Porygon2', "Shiny Abra", "Shiny Alakazam", "Shiny Hypno"}
local etele = 9499 
local cdtele = 1800

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

local places = {
  [1] = {name = "Cianwood", id = 12, sto = 897543},
  [2] = {name = "Azalea", id = 13, sto = 897544},
  [3] = {name = "Goldenrod", id = 14, sto = 897545},
  [4] = {name = "Cherrygrove", id = 15, sto = 897546},
  [5] = {name = "Ecruteak", id = 16, sto = 897547},
  [6] = {name = "New Bark", id = 17, sto = 897548},
  [7] = {name = "Violet", id = 18, sto = 897549},
  [8] = {name = "Mahogany", id = 19, sto = 897550},
  [9] = {name = "Blackthorn", id = 20, sto = 897551},
}

function onSay(cid, words, param)

  if #getCreatureSummons(cid) == 0 then
    doPlayerSendCancel(cid, "You need a pokemon to use teleport.")
    return true
  end

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

  if not getPlayerStorageValue(cid, 880088) == 1 then --golden arena
    doPlayerSendCancel(cid, "You can't do that while the golden arena!")
    return true
  end

  if getPlayerStorageValue(cid, 212124) >= 1 then --alterado v2.6
    return doPlayerSendCancel(cid, "You can't do it with a pokemon with mind controlled!")
  end

  if getPlayerStorageValue(cid, 52480) >= 1 then
    return doPlayerSendCancel(cid, "You can't do it while a duel!") --alterado v2.6
  end

  if getPlayerStorageValue(cid, 6598754) == 1 or getPlayerStorageValue(cid, 6598755) == 1 then
    return doPlayerSendCancel(cid, "You can't do it while in the PVP Zone!") --alterado v2.7
  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, "Only premium members are allowed to use teleport.")
    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 .. "Places to go :\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 telepos = {}
  local myplace = ""
  local townid = 0
  local citySto = 0 --alterado v2.7

  if string.lower(param) == "house" then
    if not getHouseByPlayerGUID(getPlayerGUID(cid)) then
      doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "You don't own a house.")
      return true
    end
    telepos = getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid)))
    myplace = "our home"
  else
    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 v2.7
      end
    end

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

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

  if getDistanceBetween(getThingPos(cid), telepos) <= 15 then
    doPlayerSendCancel(cid, "You are too near to the place you want to go!")
    return true
  end

  if getPlayerStorageValue(cid, config.storage) >= 1 then
    doSendMagicEffect(getThingPos(summon), 29)
    doSendMagicEffect(getThingPos(cid), 29)
    doTeleportThing(cid, telepos, false)
    local pos2 = getClosestFreeTile(cid, getPosByDir(getThingPos(cid), SOUTH))
    doTeleportThing(summon, pos2, false)
    doSendMagicEffect(getThingPos(cid), 29)
    doCreatureSay(cid, ""..nome..", teleport to "..myplace.."!", 1)
    doCreatureSay(cid, ""..nome..", teleport to "..myplace.."!", 1, false, 0, lastppos)
    doCreatureSay(summon, "TELEPORT!", TALKTYPE_MONSTER)
    doCreatureSay(summon, "TELEPORT!", TALKTYPE_MONSTER, false, 0, lastspos)
    doCreatureSetLookDir(cid, SOUTH)
    doCreatureSetLookDir(summon, SOUTH)
    doSendMagicEffect(getThingPos(summon), CONST_ME_TELEPORT)
    exhaustion.set(cid, etele, cdtele)
  end
  return true
end

 

 

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By gmxunior
      Ola galeta do TK, boa tarde a todos!
      Galera eu estou com dificuldade na área de attack speed do tfs 0.4, e como todos devem saber esse é um assunto bem polêmico, eu sei que ele limita os attack.
       
      Exemplo: (max 1 attack por 1000 ms, quando você colcoa 500 ms ele te da 2 attacks), mas assim eu gostaria de saber se existe e se existe como fazer para eu deixar os attacks real.
       
      Exemplo: (1000ms = 1 attack por segundo, 700ms = 1 attack a cada 7 milésimos), e assim por diante, ou seja ele obedecer o que esta em vocations.xml.
       
      Muito obrigado a todos!
       
       
    • By Polguilo
      salvee galera do TK o/
      bom o titulo ja diz tudo,gostaria de saber por gentileza em qual pasta fica o arquivo de hotkeys do OT Client e se é possivel edita-las,teria como???
      se caso sim,como posso fazer?? da pra usar algum programa simples como o Notepad++ ou algo similar pra editar por acaso?

      perguntei isso porque gostaria de add todas as HK do cliente classico,pois por incrivel que pareça eu uso a maioria delas apesar de ter bastante HUE HUE
      sei que existe o OT Client V8 que te da a possibilidade de customizar as HK sem alguma dificuldade e que tem inumeros recursos/melhorias em diversas questões,mas eu particularmente não curti algumas features dessa versão =|
      por isso o motivo da minha pergunta rs


      agradeço desde ja quem puder ajudar o/
      acho que no meio desse ano volto a colaborar aqui no TK postando alguns conteúdos =))
    • By llucas75
      Oi tudo bem pessoal?
       
      Meu problema é o seguinte eu tenho um otserver 8.60, mas quero rodá-lo em linux ai precisando compilar... Compilei um Rev3777(0.4), mas quando ligo o servidor aparecem uma imensidão de erros no console, além de mau funcionamento do server...
      Tentei pegar as libs da pasta data do rev3777 e colocalos no lugar das libs do meu server... Mas dai o server nem abre...
       
       
      Queria muito executar esse server em linux, por causa da proteção adicional que ele oferece, alguem sabe como eu faço para ele rodar de maneira adequada com o meu executavel da rev3777?
    • By Wiisht
      Olá pessoal tudo certo ?
      bom estou aqui para pedir ajuda de algum de vocês se voces puderem me ajudar por gentileza, O que acontece é o seguinte:
      O Meu tfs está rodando normalmente, por cerca de 5h + ( as vezes mais as vezes menos ), e do nada os monsters do servidor começa a ter um delay ao morrer, os players tiram todo o hp deles e eles ainda ficam em pé por uns 3 segundos sem hp, até cair o corpse dele no chao, e fica assim durante uns 3 minutos, logo após isso o Servidor da um erro de Microsoft Visual c++ runtime library, cujo o erro nao é possivel ser visualizado, pois ele meio que "buga" a janela desse microsoft visual impedindo que visualize, e entao o servidor fecha sozinho, segue uma print de como fica o Microsoft Visual c++ runtime library:





      Lembrando que nao ocorre nenhum erro no console, se alguem puder me ajudar por favor, obrigado galerinha TK!
    • By Nunyz
      Boa tarde galera, me chamo Nuno, atualmente estudo Web Designer, sou novo aqui no tibiaking, mas vi que tem varias coisas boas aqui, como tem muita gente talentosa, então aproveitando esse vasto conhecimento de vocês poderiam me ajudar com uma coisinha? Blz então ai vai.
       
      Tenho interesse enorme em aprender a programação necessária para modificar a estrutura do tibia, como por exemplo o nossos famosos ( Pxg, Zezenia, Phobos, Necronia...) tanto modificação client, como modificação de actions, porem eu não tenho ciência de qual linguagem de programação eu tenho que aprender para tal coisa, por favor se alguem souber me explicar quais cursos eu necessito fazer para conseguir da inicio ao meu projeto como esses grandes nomes ai que eu citei, me fala vlw tenham uma boa tarde.
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...

Important Information

Confirmação de Termo