Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Boa Noite pessoal, tentei sem sucesso criar dois scripts para o fly um para players não vip's e outro para vips porem não consigo fazer funcionar

a talckaction

function onSay(player, words, param)
    local places, options =
        {"Vip Mordigan",
		 "Vip Stoneplains Center",
		 "Vip Stoneplains West",
		 "Vip Stoneplains East",
		 "Vip Tirana",
		 "Vip Tanaris",
		 "Vip Tanaris Center",
		 "Vip Hell City",
		 "Vip Goroma"}, -- places
        {"Travel", "Cancel"} -- options

    local modalWindow = ModalWindow(4597, "List of places", "Select your destiny:")
    for w = 1, #places do
        modalWindow:addChoice(w, places[w])
    end

    -- Select
    modalWindow:addButton(1, options[1])
    modalWindow:setDefaultEnterButton(1)

    -- Cancel
    modalWindow:addButton(2, options[2])
    modalWindow:setDefaultEscapeButton(2)

    -- Send window
    modalWindow:sendToPlayer(player)
    return false
end
	<talkaction words="!vip" script="viptalk.lua"/>
	<talkaction words="!go" script="flytalk.lua"/>

 

creaturescript

 

function onModalWindow(player, modalWindowId, buttonId, choiceId)
    if(modalWindowId ~= 4597 or buttonId == 2) then
        return false
    end

    if(not getTileInfo(player:getPosition()).protection) then
        player:sendTextMessage(MESSAGE_STATUS_SMALL, "You can only fly in protection zone.")
        player:getPosition():sendMagicEffect(CONST_ME_POFF)
        return false
    end

    local positions = { 
		[33] = {x = 5208, y = 6100, z = 6}, -- Vip Mordigan
		[34] = {x = 5688, y = 6141, z = 7}, -- Vip Stoneplains Center
		[35] = {x = 5563, y = 6208, z = 7}, -- Vip Stoneplains West
		[36] = {x = 5705, y = 6193, z = 7}, -- Vip Stoneplains East
		[37] = {x = 5653, y = 5796, z = 7}, -- Vip Tirana
		[38] = {x = 5811, y = 5784, z = 7}, -- Vip Tanaris
		[39] = {x = 6018, y = 6041, z = 6}, -- Vip Tanaris Center
		[40] = {x = 5755, y = 5706, z = 6}, -- Vip Hell City
		[41] = {x = 31848, y = 32691, z = 8}  -- Vip Goroma
    }

    player:teleportTo(positions[choiceId])
    player:getPosition():sendMagicEffect(CONST_ME_TELEPORT)
    return true
end
	<event type="modalwindow" name="fly" script="fly.lua"/>
	<event type="modalwindow" name="flyvip" script="flyvip.lua"/>

 os dois scripts são iguais so muda os destinos e 

 

if(modalWindowId ~= 4596 or buttonId == 2) then e o outro if(modalWindowId ~= 4597 or buttonId == 2) then

 

Alguem pode ajudar

Editado por M4G0 (veja o histórico de edições)

[14:13:41] # Luuuuki ~ Absolute WAW: quebrou a cara, postou o comentário agradecendo
[14:13:43] # Luuuuki ~ Absolute WAW: ótimo caraq
[14:13:55] # Luuuuki ~ Absolute WAW: agr não vou dar moral pra você, o que foi vendido, foi entregue, e por sinal muito barato pra ajuda-lo
[14:14:01] # Luuuuki ~ Absolute WAW: e digo, essa atualização não vendo pra você
[14:14:08] # Luuuuki ~ Absolute WAW: Enorme abraço, evito contato.
[14:14:32] Marcos Meira: quebrei a cara pq confiei em vc
[14:14:40] Marcos Meira: e vc entrego um peck qualquer
[14:14:55] Marcos Meira: nem ferumbras quest tinha la nem nada
[14:15:17] Marcos Meira: e vc fico com o dinheiro
[14:15:18] Marcos Meira: eu fiz os itens monstro krailos tudo
[14:15:41] Marcos Meira: mais blz...
[14:16:33] Marcos Meira: nada melhor q o tempo, uma hora vc cai e vai enganar la da cadeia

 

LNetworks = Absolute =  Ladrão

 

Nunca Compre nada dele

Link para o post
Compartilhar em outros sites

UP

Alguém ?

[14:13:41] # Luuuuki ~ Absolute WAW: quebrou a cara, postou o comentário agradecendo
[14:13:43] # Luuuuki ~ Absolute WAW: ótimo caraq
[14:13:55] # Luuuuki ~ Absolute WAW: agr não vou dar moral pra você, o que foi vendido, foi entregue, e por sinal muito barato pra ajuda-lo
[14:14:01] # Luuuuki ~ Absolute WAW: e digo, essa atualização não vendo pra você
[14:14:08] # Luuuuki ~ Absolute WAW: Enorme abraço, evito contato.
[14:14:32] Marcos Meira: quebrei a cara pq confiei em vc
[14:14:40] Marcos Meira: e vc entrego um peck qualquer
[14:14:55] Marcos Meira: nem ferumbras quest tinha la nem nada
[14:15:17] Marcos Meira: e vc fico com o dinheiro
[14:15:18] Marcos Meira: eu fiz os itens monstro krailos tudo
[14:15:41] Marcos Meira: mais blz...
[14:16:33] Marcos Meira: nada melhor q o tempo, uma hora vc cai e vai enganar la da cadeia

 

LNetworks = Absolute =  Ladrão

 

Nunca Compre nada dele

Link para o post
Compartilhar em outros sites

Amigo, eu tenho o Sistema !FLY (Aquele que no caso e igual o do Rozinx

Va em data/talkactions e adicione essa linha.

Spoiler

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

 

Em seguida va em Data/talkactions/scripts Crie um Arquivo.lua e renomeie para teleportvip.lua  e adicione isto 

Spoiler

function onSay(cid, words, param)

local config = {
pz = false, -- players precisam estar em protection zone para usar? (true or false)
battle = true, -- players deve estar sem battle (true or false)
custo = false, -- se os teleport irão custa (true or false)
need_level = false, -- se os teleport irão precisar de level (true or false)
vip = true -- se precisa ser vip (true or false)
}

--[[ Config lugares]]--
local lugar = {
["depot"] = { -- nome do lugar
pos = {x=1114, y=918, z=7},level = 5,price = 1000},
["temple"] = { -- nome do lugar
pos = {x=1120, y=1099, z=7},level = 10, price = 2000},
["arena"] = { -- nome do lugar
pos = {x=728, y=584, z=7},level = 15,price = 3000},
["viparea"] ={ -- nome do lugar
pos = {x=1497, y=1495, z=7},level = 20,price = 4000}
}

--[[ Lista de Viagem (Não mexa) ]]--
if (param == "list") then
local str = ""
str = str .. "Lista de viagem :\n\n"
for name, pos in pairs(lugar) do
str = str..name.."\n"
end
str = str .. ""
doShowTextDialog(cid, 6579, str)
return TRUE
end


local a = lugar[param]
if not(a) then
doPlayerPopupFYI(cid,"Desculpe, este lugar não existe")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then
doPlayerPopupFYI(cid,"Você precisa estar em protection zone pra poder teleportar.")
return TRUE
elseif config.vip == true and getPlayerStorageValue(cid, 13540) - os.time() <= 0 then
doPlayerPopupFYI(cid,"Apenas players vips podem teleportar.")
return TRUE
elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then
doPlayerPopupFYI(cid,"Você precisa estar sem battler pra poder teleportar.")
return TRUE
elseif config.need_level == true and getPlayerLevel(cid) < a.level then
doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then
doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
end
doTeleportThing(cid, a.pos)
doSendMagicEffect(a.pos, CONST_ME_TELEPORT)
doBroadcastMessage("" .. getPlayerName(cid) .. " has flown to " .. param .. " using !fly ", MESSAGE_INFO_DESCR)
return TRUE
end

 

Bom em Vermelho você vai coloca o nome dos lugares para onde o player vai.

Em azul sera as cordeadas para onde o player vai ir quando usar o FLY

Em Roxo vai ser o level que o player vai poder ir

------------------------

Bom vamos para o FLY para player NO-VIP

Va em data/talkactions e adicione essa linha

Spoiler

<talkaction words="!fly" script="teleportfreevip.lua"/>

 

Em seguida va em Data/talkactions/scripts Crie um Arquivo.lua e renomeie para teleportfreevip.lua e adicione isto 

Spoiler

function onSay(cid, words, param)

local config = {
pz = false, -- players precisam estar em protection zone para usar? (true or false)
battle = true, -- players deve estar sem battle (true or false)
custo = false, -- se os teleport irão custa (true or false)
need_level = false, -- se os teleport irão precisar de level (true or false)
vip = true -- se precisa ser vip (true or false)
}

--[[ Config lugares]]--
local lugar = {
["depot"] = { -- nome do lugar
pos = {x=1114, y=918, z=7},level = 5,price = 1000},
["temple"] = { -- nome do lugar
pos = {x=1120, y=1099, z=7},level = 10, price = 2000},
["arena"] = { -- nome do lugar
pos = {x=728, y=584, z=7},level = 15,price = 3000},
["viparea"] ={ -- nome do lugar
pos = {x=1497, y=1495, z=7},level = 20,price = 4000}
}

--[[ Lista de Viagem (Não mexa) ]]--
if (param == "list") then
local str = ""
str = str .. "Lista de viagem :\n\n"
for name, pos in pairs(lugar) do
str = str..name.."\n"
end
str = str .. ""
doShowTextDialog(cid, 6579, str)
return TRUE
end


local a = lugar[param]
if not(a) then
doPlayerPopupFYI(cid,"Desculpe, este lugar não existe")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
elseif config.pz == true and getTilePzInfo(getCreaturePosition(cid)) == FALSE then
doPlayerPopupFYI(cid,"Você precisa estar em protection zone pra poder teleportar.")
return TRUE
elseif config.vip == true and getPlayerStorageValue(cid, 13540) - os.time() <= 0 then
doPlayerPopupFYI(cid,"Apenas players vips podem teleportar.")
return TRUE
elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then
doPlayerPopupFYI(cid,"Você precisa estar sem battler pra poder teleportar.")
return TRUE
elseif config.need_level == true and getPlayerLevel(cid) < a.level then
doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..a.level.." level ou mais para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
elseif config.custo == true and doPlayerRemoveMoney(cid, a.price) == FALSE then
doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..a.price.." gp para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
end
doTeleportThing(cid, a.pos)
doSendMagicEffect(a.pos, CONST_ME_TELEPORT)
doBroadcastMessage("" .. getPlayerName(cid) .. " has flown to " .. param .. " using !fly ", MESSAGE_INFO_DESCR)
return TRUE
end

Bom em Vermelho você vai coloca o nome dos lugares para onde o player vai.

Em azul sera as cordeadas para onde o player vai ir quando usar o FLY

Em Roxo vai ser o level que o player vai poder ir

 

Ajudei ? :grin:

Editado por rozinx.kungsan (veja o histórico de edições)

pbotttttttttttttttttttt.gif?1435636828

Link para o post
Compartilhar em outros sites

Otimo Script funcionou mais não era bem o q eu queria, mesmo assim REP +

Editado por M4G0
reputar (veja o histórico de edições)

[14:13:41] # Luuuuki ~ Absolute WAW: quebrou a cara, postou o comentário agradecendo
[14:13:43] # Luuuuki ~ Absolute WAW: ótimo caraq
[14:13:55] # Luuuuki ~ Absolute WAW: agr não vou dar moral pra você, o que foi vendido, foi entregue, e por sinal muito barato pra ajuda-lo
[14:14:01] # Luuuuki ~ Absolute WAW: e digo, essa atualização não vendo pra você
[14:14:08] # Luuuuki ~ Absolute WAW: Enorme abraço, evito contato.
[14:14:32] Marcos Meira: quebrei a cara pq confiei em vc
[14:14:40] Marcos Meira: e vc entrego um peck qualquer
[14:14:55] Marcos Meira: nem ferumbras quest tinha la nem nada
[14:15:17] Marcos Meira: e vc fico com o dinheiro
[14:15:18] Marcos Meira: eu fiz os itens monstro krailos tudo
[14:15:41] Marcos Meira: mais blz...
[14:16:33] Marcos Meira: nada melhor q o tempo, uma hora vc cai e vai enganar la da cadeia

 

LNetworks = Absolute =  Ladrão

 

Nunca Compre nada dele

Link para o post
Compartilhar em outros sites
  • 2 years later...

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por Jaurez
      .
    • Por Cat
      Em alguns casos, o tibia 8.60 comum não abre de jeito nenhum no map editor, mesmo desmarcando check file signatures e configurando o path corretamente.
       
      Este é o client 8.60 adaptado para o Remere's Map Editor. Resolvi postar já que ele foi removido do site oficial do RME. (ficou apenas a versão para linux lá)
      Se estiver tendo problemas para abrir a versão 8.60, tente utilizar este.
                                                                                                                     
      Baixar o Tibia Client 8.60 que funciona no Remere’s Map Editor
      Essa versão do Tibia 8.60 client resolve o erro unsupported client version ou Could not locate tibia.dat and/or tibia.spr, please navigate to your tibia 8.60 installation folder.
       
      Downloads
      https://tibiaking.com/applications/core/interface/file/attachment.php?id=47333

      Scan: https://www.virustotal.com/gui/file/333e172ac49ba2028db9eb5889994509e7d2de28ebccfa428c04e86defbe15cc
       
    • Por danilo belato
      Fala Galera To Com um problema aki 
       
      quero exporta umas sprites de um server para colocar em outro 
       
      eu clico na sprites ai aparece tds a forma delas do lado de la >>
       
      ai eu clico nela e ponho a opiçao de export mais quando salvo a sprite ela n abri 
       
      aparece isso quando tento vê-la 
       
      visualização não disponível ( no formatos png e bitmap)
       
      Agora no formato idc fala que o paint n pode ler 
       
      me ajudem ae...
    • Por lagoa
      Bom dia Tibiakings!
       
            Hoje trago uma dúvida. Tenho o sistema de !fly funcionante em meu OT Server, mas gostaria que os players não pudessem usar o comando "!fly" em determinados pisos, como exemplo os pisos (4820, 4822, 4823 e 4825). Para explicar melhor, estes pisos são da água e os players ficam com o addon de nadar e ao usarem a talkaction !fly, são teleportados para o templo com o outfit de nadar e não quero que isto aconteça.
      Segue minha talkaction do sistema !fly:
       
      local towns = { ["edron"] = {x= 33217, y= 31814, z= 8}, ["ankrahmun"] = {x= 33194, y= 32853, z= 8}, ["thais"] = {x= 32369, y= 32241, z= 7}, ["carlin"] = {x= 32360, y= 31782, z= 7}, ["venore"] = {x= 32957, y= 32076, z= 7}, ["ab'dendriel"] = {x= 32732, y= 31634, z= 7}, ["kazordoon"] = {x= 32649, y= 31925, z= 11}, ["darashia"] = {x= 33213, y= 32454, z= 1}, ["liberty bay"] = {x= 32317, y= 32826, z= 7}, ["port hope"] = {x= 32595, y= 32744, z= 6}, ["svargrond"] = {x= 32209, y= 31134, z= 7}, ["yalahar"] = {x= 32787, y= 31276, z= 7}, ["farmine"] = {x= 33005, y= 31491, z= 11}, ["gray island"] = {x= 33447, y= 31320, z= 9}, ["gengia"] = {x = 32886, y = 30729, z = 5}, ["ghala"] = {x = 31899, y = 32204, z = 6}, ["ghenov"] = {x = 31680, y = 32788, z = 6}, ["vikia"] = {x = 32234, y = 30703, z = 7}, ["pyre"] = {x = 33637, y = 31826, z = 6}, }   function onSay(cid, words, param, channel)   if not isPremium(cid) then doPlayerSendCancel(cid, "Only premium members are allowed to fly or ride.") return false end   if getTilePzInfo(getPlayerPosition(cid)) then if towns[param:lower()] ~= nil then doTeleportThing(cid, towns[param:lower()]) doSendMagicEffect(towns[param:lower()], 10) else local l = "" for x,i in pairs(towns) do l = l .. "\n • "..string.sub(x,0,1):upper()..string.sub(x,2):lower() end doPlayerSendTextMessage(cid,4,"Destino inválido. Possíveis destinos:"..l) end else doPlayerSendTextMessage(cid,4,"Comando para premium e so pode ser usado em area PZ.") end return true end     Obs: Não me lembro que quem era este sistema de !fly, se alguém souber, coloco os devidos créditos (mesmo não sendo a intenção de divulgar este script, mas funciona perfeitamente).
    • Por xPollo
      Eae galera do TK, tou adicionando fly no meu poketibia, eu fiz tudo certinho eu acho..
      mais quando vou dar fly no pokemon ele fica assim.
       


      Tem como alguém me ajudar? REP++
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo