Ir para conteúdo
  • 0

Fly System


Carnavotu

Pergunta

Eai galera, preciso de ajuda de voce eu tento usar o fly mais ele fala que precisa ter vip account se ja tenho vip.

 

Script:

 

 

 

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)

vip = true -- se precisa ser vip account (true or false)

}

 

--[[ Config lugares]]--

local lugar = {

["depot"] = { -- nome do lugar

pos = {x=131, y=53, z=7},level = 5,price = 1000},

["templo"] = { -- nome do lugar

pos = {x=160, y=51, z=7},level = 10, price = 1000},

["arena"] = { -- nome do lugar

pos = {x=157, y=62, z=7},level = 15,price = 1000},

["area vip"] ={ -- nome do lugar

pos = {x=305, y=934, z=7},level = 20,price = 1000}

}

 

--[[ 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.vip == true and vip.getVip(cid) then

doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com vip 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

end

 

 

Quem pode ajudar ai agradeço

 

Abrass

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

--ATUALIZADO--2

Eai, tudo bem?

Tente assim:

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)
vip = true -- se precisa ser vip account (true or false)
}

--[[ Config lugares]]--
local lugar = {
["depot"] = { -- nome do lugar
pos = {x=131, y=53, z=7},level = 5,price = 1000},
["templo"] = { -- nome do lugar
pos = {x=160, y=51, z=7},level = 10, price = 1000},
["arena"] = { -- nome do lugar
pos = {x=157, y=62, z=7},level = 15,price = 1000},
["area vip"] ={ -- nome do lugar
pos = {x=305, y=934, z=7},level = 20,price = 1000}
}

--[[ 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.vip == true and vip.hasVip(cid) == false then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Apenas players com vip 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
end

 

Qualquer dúvida so postar :P:

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

  • 0
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)
vip = true -- se precisa ser vip account (true or false)
}

--[[ Config lugares]]--
local lugar = {
["depot"] = { -- nome do lugar
pos = {x=131, y=53, z=7},level = 5,price = 1000},
["templo"] = { -- nome do lugar
pos = {x=160, y=51, z=7},level = 10, price = 1000},
["arena"] = { -- nome do lugar
pos = {x=157, y=62, z=7},level = 15,price = 1000},
["area vip"] ={ -- nome do lugar
pos = {x=305, y=934, z=7},level = 20,price = 1000}
}

--[[ 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.vip == true and vip.getVip(cid) == false then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Voce nao e vip")
return FALSE
elseif config.battle == true and getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE then
doPlayerSendTextMessage(cid, MESSAGE_EVENT_DEFAULT, "Você precisa estar sem battle 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
end

Link para o comentário
Compartilhar em outros sites

  • 0

Atualizei o post denovo, se não funcionar na linha abaixo de:

function onSay(cid, words, param)

coloque isso:

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, vip.getVip(cid))
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, tostring(vip.getVip(cid)))

vai ficar assim:

function onSay(cid, words, param)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, vip.getVip(cid))
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, tostring(vip.getVip(cid)))
local config = {

 

E poste as mensagens que aparecerem no console em azul e se o player era vip ou nao.

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

  • 0

Agora funcionou, obrigado mesmo

 

sera que voce poderia me ajudar so mais nesse script ? e para os vip poderem falar

 

local config = {

priceForEachMessage = 10000, -- preço de cada mensagem

}

local storage = 13540

 

function onSay(cid, words, param, channel)

if(param == "") then

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Command requires param.")

return TRUE

end

if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then

doPlayerSendCancel(cid, "Você nao tem Vip account.")

return TRUE

end

 

if(doPlayerRemoveMoney(cid, config.priceForEachMessage) == TRUE) then

doBroadcastMessage("[V.I.P] " .. getPlayerName(cid) .. " Agora Diz: " .. param .. "", MESSAGE_INFO_DESCR)

else

doPlayerSendCancel(cid, "Você precisa de " .. config.priceForEachMessage .. " gps para enviar a messagem.")

end

 

return TRUE

end

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

×
×
  • Criar Novo...