Ir para conteúdo
  • 0

Spell de Teleport


adebouey

Pergunta

Agradeço, Sou Novo aqui nao sei se esta tudo certo...

 

Quero um Spell que quando falar "Teleport-me" o player é levado para posição X= 1000 Y= 1000 Z= 1000.

 

 

Sobre meu OT

  • Versão 0.1
  • Cliente Proprio
  • Sprites Proprias​
  • Exp por Stages
  • Equipe completa
  • Fãs
  • vocação propria
  • magias proprias
  • skills propria
  • e grafico editado.

 

 

Agradeço.

post-357208-0-17615900-1350834984_thumb.jpg

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

z = 1000 não existe amigo, o z varia de 0 a 14, sendo 7 o térreo

 

function onCastSpell(cid, var)

   local pos = {x = 1000, y = 1000, z = 7}

   doTeleportThing(cid, pos, false)
   doSendMagicEffect(pos, CONST_ME_TELEPORT)

return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

Spell não tem mas esse comando fais a mesma coisa que voce quer:

é assim,O player fala !tp lugar. aonde ta escrito lugar se pode editar no script aonde ta escrito:

["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,price = 1000},

 

agora se vai em \data\talkactions\scripts cria um arquivo em texto chamado tp.lua e cola isso dentro:

 

--[[script By Vodkart]]--
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)
premium = false -- se precisa ser premium account (true or false)
}
--[[ Config lugares]]--
local lugar = {
["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,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.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

 

depois em \data\talkactions\ abre o arquivo talkactions.xml com o bloco de notas e cola isso na ultima linha antes do </talkaction>

<talkaction words="!tp" script="tp.lua"/>

Link para o comentário
Compartilhar em outros sites

  • 0

Spell não tem mas esse comando fais a mesma coisa que voce quer:

é assim,O player fala !tp lugar. aonde ta escrito lugar se pode editar no script aonde ta escrito:

["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,price = 1000},

 

agora se vai em \data\talkactions\scripts cria um arquivo em texto chamado tp.lua e cola isso dentro:

 

--[[script By Vodkart]]--
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)
premium = false -- se precisa ser premium account (true or false)
}
--[[ Config lugares]]--
local lugar = {
["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,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.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

 

depois em \data\talkactions\ abre o arquivo talkactions.xml com o bloco de notas e cola isso na ultima linha antes do </talkaction>

<talkaction words="!tp" script="tp.lua"/>

 

@Marciks cuidado com esse tipo de post isso ainda por cima e fly sistema o brun123 ja fez pra ele

 

reportado.

Link para o comentário
Compartilhar em outros sites

  • 0

@Skyligh

 

 

Spell não tem mas esse comando fais a mesma coisa que voce quer:

é assim,O player fala !tp lugar. aonde ta escrito lugar se pode editar no script aonde ta escrito:

["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,price = 1000},

 

agora se vai em \data\talkactions\scripts cria um arquivo em texto chamado tp.lua e cola isso dentro:

 

--[[script By Vodkart]]--
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)
premium = false -- se precisa ser premium account (true or false)
}
--[[ Config lugares]]--
local lugar = {
["lugar"] = { -- nome do lugar
pos = {x=1000, y=1000, z=1000},level = 5,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.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

 

depois em \data\talkactions\ abre o arquivo talkactions.xml com o bloco de notas e cola isso na ultima linha antes do </talkaction>

<talkaction words="!tp" script="tp.lua"/>

 

@Marciks cuidado com esse tipo de post isso ainda por cima e fly sistema o brun123 ja fez pra ele

 

reportado.

 

 

Isso não é flood, o usuário tentou ajudar e qualquer ajuda é bem vinda. Flood são comentários desnecessários.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.
×
×
  • Criar Novo...