Gostei do script, ficou ótimo além de ser pratico para configurar... =)
Parabéns, REP+!
Por Vodkart, 09 de jun. de 2010 em Actions e Talkactions
info
Grupo: Herói
Registrado: 25/06/08
Posts: 723
Reputação: +275
Gênero: Masculino
Char no Tibia: Diiva

Gostei do script, ficou ótimo além de ser pratico para configurar... =)
Parabéns, REP+!
info
Grupo: Herói
Registrado: 17/02/08
Posts: 2.5k
Reputação: +193

Pela funcionalidade, o script até que ficou pequeno.
Parabéns.
info
Grupo: Campones
Registrado: 12/05/08
Posts: 39
Reputação: +5
Char no Tibia: Wakko Araujo

tpw meu servidor ele tem o sistema vip incorporado na PREMIUM gostaria de saber se vc tem como editar e postar para que apenas players P.A possam utilizar o comando...seria legal...eu tenho uma lista cheia de funções lua porem acho que nao vou conseguir usar neste script (sou meio noobinho nisso)
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

usa esse:
function onSay(cid, words, param)
local config = {
pz = "yes", -- players precisam estar em protection zone para usar? ("yes" or "no").
battle = "yes", -- players deve estar sem battle ("yes" or "no")
custo = "yes", -- se os teleport irão custa ("yes" or "no")
premium = "yes" -- se precisa ser premium account ("yes" or "no")
}
-------------Config Lugares----------------
local lugar = {
["depot"] = {{x=129, y=54, z=6}, 1, 2000},
["templo"] = {{x=160, y=54, z=7}, 10, 1000},
["arena"] = {{x=162, y=54, z=7}, 10, 1000},
["area vip"] = {{x=163, y=54, z=7}, 10, 1000}
}
-------------/Config Checkar não mecha----------------
local lugar = lugar[param]
if (param == "check") then
for name, pos in pairs(lugar) do
text = "Destino: "..name..", Level necessario: "..pos[2]..","
if(config.battle == "yes") then
text = text.." Voce pode usar estando battler: SIM"
else
text = text.." Voce pode usar estando battler: Não"
end
if(config.pz == "yes") then
text = text.." Voce DeVe Usar estando PZ: SIM"
else
text = text.." Voce DeVe Usar estando PZ: Não"
end
if (pos[3] == TRUE) then
text = text..", Cost: "..pos[4]..";"
end
doPlayerSendTextMessage(cid, 20, ""..text.."")
end
return TRUE
end
if(config.pz == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT,"você precisa estar em protection zone pra poder teleportar.")
return TRUE
end
if(config.premium == "yes") and (not isPremium(cid)) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "apenas players com premium account podem teleportar.")
return TRUE
end
if(config.battle == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battler pra poder teleportar.")
return TRUE
end
if not(lugar) then
doPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
end
if (getPlayerLevel(cid) <= lugar[2]) then
doPlayerSendTextMessage(cid, 22, "Desculpe,Voce não tem level. voce precisa "..lugar[2].." level ou mais para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
end
if(config.custo == "yes") and (doPlayerRemoveMoney(cid, lugar[3]) == FALSE) then
doPlayerSendTextMessage(cid, 22, "Desculpe,voce nao tem dinheiro suficiente. Voce precisa "..lugar[3].." gp para ser teleportado.")
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
return TRUE
end
doTeleportThing(cid, lugar[1])
doSendMagicEffect(lugar[1], CONST_ME_TELEPORT)
doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".")
return TRUE
end
Editado Junho 15 por Vodkart
info
Grupo: Artesão
Registrado: 13/05/10
Posts: 114
Reputação: +11

Ótimo,
já vi esse script em vários Ot's, e ajuda muito.
REP+
EDIT --
Amanha eu dou, acabou o limite.
Editado Junho 14 por MasterMathw
info
Grupo: Herói
Registrado: 25/06/08
Posts: 723
Reputação: +275
Gênero: Masculino
Char no Tibia: Diiva

MasterMathw dei por você. =)
Abraços...
info
Grupo: Artesão
Registrado: 13/05/10
Posts: 114
Reputação: +11

RETIRADO
Editado Junho 14 por MasterMathw
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

eu inveti o certo é
battle = "yes", -- players deve estar sem battle ("yes" or "no")
Valeu pelo aviso.
Obrigado MasterMathw
info
Grupo: Campones
Registrado: 03/05/10
Posts: 19
Reputação: +1
Char no Tibia: Lord Tyz

Gostei desse script.
E bom para aqueles ot's em que se paga para vip, assim dá mais razões aos jogadores para comprar vip.
Parabéns, REP+!
info
Grupo: Campones
Registrado: 29/04/10
Posts: 74
Reputação: +5
Char no Tibia: Walking Knight
Muito bom o script!!
Muito , Muito bom mesmo.. parabens. Como sempre dando show em script, em vodkart ;]
Rep+
info
Grupo: Campones
Registrado: 12/04/08
Posts: 75
Reputação: +9

Muito Bom Vod,
Me ajudou bastante!
Mas fis um Mais Simplesinho ,que voce pode escolher se Cobra ou Não Mudando o Preço e só VIPS podem usar ,
me basiei nesse Script veja:
function onSay(cid, words, param, channel)
local config = {
vip = "yes", -- somente vip players poderam usar o comando? ("yes" or "no")
storage = 13540 -- Storage Id da sua vip account caso for usar somente vips
}
local destinations = {
["Templo"] = {destino = {x=111, y=222, z=333}, money = 0},
["DP"] = {destino = {x=444, y=555, z=666}, money = 0},
["Caverna"] = {destino = {x=777, y=888, z=999}, money = 0},
}
local tp = destinations[param]
if(param == "") then
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Viajar Para :Templo ,DP ,Caverna") < ----- Menssagem que aparesera no console quando o player falar /tp
return true
end
if (config.vip == "yes") and getPlayerStorageValue(cid, tonumber(config.storage)) - os.time() <= 0 then
doPlayerSendCancel(cid,"Você não possui uma conta Vip.")
return TRUE
end
if(getPlayerMoney(cid) < tp.money) then
doPlayerSendCancel(cid, "Você não tem dinheiro suficiente.")
elseif(isPlayerPzLocked(cid) == true) then
doPlayerSendCancel(cid, "Você tem que estar sem Batle para Viajar.")
else
doPlayerRemoveMoney(cid, tp.money)
doSendMagicEffect(getPlayerPosition(cid), 27)
doTeleportThing(cid, tp.destino)
doPlayerSendTextMessage(cid, 22, "Você foi teleportado para ".. param ..".")
doSendMagicEffect(getPlayerPosition(cid), 40)
end
return true
end
![]()
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

sim fico bem simples,mais o resultado ficou ótimo
oque eu colocaria ai é para ser teleportado em Pz mesmo,se não ficaria ruim o pvp dp ot os cara tudo fugindo
abraços
info
Grupo: Campones
Registrado: 16/07/10
Posts: 16
Reputação: +2
Char no Tibia: Haayashi

Muito bom,para ots com xp alta,aqueles que fica um war direto
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino
script é simples,jogadores vip poderão ser teleportado para os lugar por talkactions basta usar o comando
teleportvip.lua
--[[script By Vodkart]]-- function onSay(cid, words, param) local config = { pz = true, -- players precisam estar em protection zone para usar? (true or false) battle = true, -- players deve estar sem battle (true or false) custo = true, -- se os teleport irão custa (true or false) need_level = true, -- se os teleport irão precisar de level (true or false) premium = true -- se precisa ser premium account (true or false) } --[[ Config lugares]]-- local lugar = { ["depot"] = { -- nome do lugar pos = {x=129, y=54, z=6},level = 5,price = 1000}, ["templo"] = { -- nome do lugar pos = {x=160, y=54, z=7},level = 10, price = 2000}, ["arena"] = { -- nome do lugar pos = {x=125, y=351, z=9},level = 15,price = 3000}, ["area vip"] ={ -- nome do lugar pos = {x=280, y=87, z=4},level = 20,price = 4000} } --[[ Lista de Viagem (Não mexa) ]]-- if (param == "lista") 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 doPlayerSendTextMessage(cid, 22, "desculpe,este lugar não existe") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF) 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 config.premium == true and not isPremium(cid) then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com premium account podem teleportar.") return TRUE elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "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) doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".") return TRUE endem talkactions.xml adicione
Editado Dezembro 28 por Vodkart