Ir para conteúdo
  • Cadastre-se

(Resolvido)[Spell] Teleport De Ida e De Volta


Ir para solução Resolvido por Danihcv,

Posts Recomendados

irei testa ja edito.

 

--edited-

 

deu erro aki 

[Error - TalkAction Interface]
data/talkactions/script/test1.lua:onsay
Description:
attempt to index a nil value
stack traceback:
           [C]: in function 'doTeleportThing'
           data/talkactions/script/test1.lua:16

 

 

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

 

Projeto/Serviços que desenvolvi durante esse Tempo.

[SERVIDOR] - NTO By Madara Rinnegan - Criado em 2014

Link para o post
Compartilhar em outros sites
  • Respostas 22
  • Created
  • Última resposta

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

local storage = 8910 -- storage local position = {x=32263, y=32341, z=7} --Position pra onde o player vai ao usar a spell local voc = 1 --ID da vocation local effectIda = 3 --Numero do effect de ida local effectVinda = 10 --Numero do effect da volta local pos = {} function onSay(cid, param, word) if getPlayerVocation(cid) == voc then if getPlayerStorageValue(cid, storage) ~= 1 then table.insert(pos, getCreaturePosition(cid)) setPlayerStorageValue(cid, storage, 1) doSendMagicEffect(

@Danihcv, dessa forma que vc fez vai dar erro na lista de players porque pensa cmg: vc tá adicionando e removendo valores de uma tabela indefinidamente e toda vez que vc tirar um valor a tabela inteira vai ter um index menor a partir do index removido: local tb = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} se eu removo o 3 o tb[3] vai passar a ser 4 e assim sucessivamente. Pra fazer essa spell vc pode salvar o x num storage, o y num outro e o z num último storage e aí mandar pra uma posição e setar um

Amigo, eu fiz por talkaction. Ao dizer tp o player é direcionado pra coordenada configurada no script. Ao dizer tp denovo, o player volta pro local onde usou o comando.   Va em data/talkactions e adicione essa tag ao arquivo talkactions.xml: <talkaction words="tp" event="script" value="tpsystem.lua"/> Agora va na pasta data/talkactions/scripts e crie um arquivo chamado tpsystem.lua e coloque isso dentro: local storage = 9874 -- storage local position = {x=32263, y=32341, z=7} --Pos

Vc ja tinha usado meu script anterior, e ele settou a storage que eu tinha colocado, por isso deu erro.

local storage = 8910 -- storage
local position = {x=32263, y=32341, z=7} --Position pra onde o player vai ao usar a spell

local pos = {}

function onSay(cid, param, word)


if getPlayerStorageValue(cid, storage) ~= 1 then
  table.insert(pos, getCreaturePosition(cid))
    setPlayerStorageValue(cid, storage, 1)
    doSendMagicEffect(getCreaturePosition(cid), 3)
    doTeleportThing(cid, position)

else
  doTeleportThing(cid, pos[1])
  setPlayerStorageValue(cid, storage, 0)
  table.remove(pos)
  doSendMagicEffect(getCreaturePosition(cid), 10)
end


return true
end

Agora alterei a storage. Deve funcionar sem problemas.

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites

Vlw Funcionou,mas só a ultima coisa pra eu te da meu Rep+ como éra pra ser uma spell e se fes por Talkaction teria como fazer só X vocation usar? e coloca pra sai 1 effect a kd Ida e a Kd Volta

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

 

Projeto/Serviços que desenvolvi durante esse Tempo.

[SERVIDOR] - NTO By Madara Rinnegan - Criado em 2014

Link para o post
Compartilhar em outros sites
  • Solução
local storage = 8910 -- storage
local position = {x=32263, y=32341, z=7} --Position pra onde o player vai ao usar a spell
local voc = 1 --ID da vocation
local effectIda = 3 --Numero do effect de ida
local effectVinda = 10 --Numero do effect da volta

local pos = {}

function onSay(cid, param, word)

if getPlayerVocation(cid) == voc then

if getPlayerStorageValue(cid, storage) ~= 1 then
  table.insert(pos, getCreaturePosition(cid))
    setPlayerStorageValue(cid, storage, 1)
    doSendMagicEffect(getCreaturePosition(cid), effectIda)
    doTeleportThing(cid, position)

else
  doTeleportThing(cid, pos[1])
  setPlayerStorageValue(cid, storage, 0)
  table.remove(pos)
  doSendMagicEffect(getCreaturePosition(cid), effectVinda)
end

end
return true
end

Te ajudei?? REP + e ficamos quites... <ahttp://www.tibiaking.com/forum/uploads/emoticons/default_happyy.png' alt=';D'>

Atenciosamente,

Daniel.

Abraços!

Link para o post
Compartilhar em outros sites
local storage = 8910 -- storage
local effect = {10, 11} -- {efeito de ida, efeito da volta}
local vocs = {1, 2, 3} -- vocation IDs
local position = {x=32263, y=32341, z=7} --Position pra onde o player vai ao usar a spell
local pos = {}

function onSay(cid)
    if not isInArray(vocs, getPlayerVocation(cid)) then
        return doPlayerSendCancel(cid, 'Your vocation is not allowed to use this command.')
    end
    
        if getPlayerStorageValue(cid, storage) ~= 1 then
            setPlayerStorageValue(cid, storage, 1)
            table.insert(pos, getCreaturePosition(cid))
            doTeleportThing(cid, position)
            doSendMagicEffect(getThingPos(cid), effect[1])
        else
            setPlayerStorageValue(cid, storage, 0)
            table.remove(pos)
            doTeleportThing(cid, pos[1])
            doSendMagicEffect(getThingPos(cid), effect[2])
        end
    
    return true
end

(códigos do membro danihcv)

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

The corrupt fear us.

The honest support us.

The heroic join us.

Link para o post
Compartilhar em outros sites

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.

  • Estatísticas dos Fóruns

    96844
    Tópicos
    519597
    Posts



×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo