Ir para conteúdo

Ajuda Com Talkaction


Malerow

Posts Recomendados

Galera eu de novo :o

Bom dessa vez é uma talkaction, eu estava querendo adicionar o CONST_ME_POFF

 

Eu tentei de varias vezes, tentei até mesmo pegar uma outra talkaction que teleportava com esse efeito e não consegui.

 

Talkaction:

--[[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=31, 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

end

PS: Não é aquele CONST_ME_POFF que esta ali no PlayerSendTextMessage. eu gostaria de adicionar ali no doTeleportThing... que antesdo teleporte solta-sse o efeito e quando teleportado soltasse o normal.

 

Se não entenderam avisem que eu explico mais detalhadamente

 

Té Mais

Link para o comentário
Compartilhar em outros sites

eu Não entendi direito brother...

Você quer 2 efeitos é isso? um efeito na pos que o jogador está e um outro na pos que o jogador vai ao usar o comando é isso?

Link para o comentário
Compartilhar em outros sites

Dexa eu explicar melhor, ja viu o comando /a 1?

 

Entao, tipo ele quando vc fala /a 1 o player é teletransportado para o outro tile e no qual ele é teletransportado aparece o efeito azul e no qual ele tava aparece aquela fumaça entende ?

 

Eu queria isso quando o jogador ativar comando o tile que ele é teleportado apareçaq esse efeito azul e no qual ele tava aparece-se esse efeito fumaça.

 

Entendeu ?

 

 

agora que vi, da um autógrafo no script ?

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

--[[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=31, 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
doSendMagicEffect(getCreaturePosition(cid), CONST_ME_POFF)
addEvent(doSendMagicEffect, 200, a.pos, CONST_ME_TELEPORT) 
addEvent(doTeleportThing, 150, cid, a.pos) 
doPlayerSendTextMessage(cid, 22, "" .. getPlayerName(cid) .. " foi teleportado para: \n " .. param .. ".")
return TRUE
end

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...