Ir para conteúdo
  • 0

item que aparece e desaparece aleatorio no mapa


clebao666

Pergunta

ola!

 

gostaria de uma script de action para um item, no caso e um espelho que aparece e desaparece no mapa a cada 30 min vai estar em um lugar diferente, ele fica no lugar por 5 min e some denovo.

 

o mesmo esquema pra um buraco no chao em 5 areas diferentes,.

 

e o mesmo pra um poke que aparece no mapa em 5 lugares diferentes por 5 mine reaparece no mapa a cada 2 hr. ou entao um esquema dele dar resp de algum poke mais muitooooooooooooooo raramente.bem raramente,

 

desde ja agradeço quem puder ajudar ae e isso vai com certesa ajuda muita gente. vlw

Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

-.-" min add no skype vá para eu resolve logo tudo de vez.

jv.alves97

 

ele ja vai cria o item com o actionid 5555, você falo que ja tem a script de clicar no action.

Link para o comentário
Compartilhar em outros sites

  • 1

mano faça um pedido por tópico.

Não fique fazendo vários pedidos no mesmo tópico.

Se o tópico tiver mas de um pedido, ajudarei apenas em 1.

isso facilita quem ta procurando pela mesma coisa.

seja direto no pedido e coloque até o mínimos detalhe.

Se esse tópico já foi resolvido marque como melhor resposta para que fechem e crie um tópico para cada pedido.

 

PS. tô no celular então desculpa por qualquer erro de português

Link para o comentário
Compartilhar em outros sites

  • 0

Items, faça com que ele não possa ser movido pq caso seja criado é movam de lugar vai da erro no distro na hora de remove ele.

é um globalevent

local item = 2467 -- item que sera criado
local tempo = 5 -- quanto tempo o item vai fica até desaparecer
local positions = { -- posições que sera criado
    {x = 1017, y = 1030, z = 7},
    {x = 1018, y = 1030, z = 7},
    {x = 1019, y = 1030, z = 7},
}
 
function onThink(interval)
    local pos = positions[math.random(1, #positions)]
    doCreateItem(item, 1, pos)
    addEvent(function()
        doRemoveItem(getItemStack(pos, item).uid, 1)
    end, tempo*100000)
return true
end
 
function getItemStack(pos, iid)
    for i = 1, 255 do
        posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
        if posa.itemid == iid then
        return posa
        end
    end
return nil
end
.xml, tag.
<globalevent name="Teleports" interval="300000" script="nomedoscript.lua" />

 

Link para o comentário
Compartilhar em outros sites

  • 0

Items, faça com que ele não possa ser movido pq caso seja criado é movam de lugar vai da erro no distro na hora de remove ele.

é um globalevent

local item = 2467 -- item que sera criado
local tempo = 5 -- quanto tempo o item vai fica até desaparecer
local positions = { -- posições que sera criado
    {x = 1017, y = 1030, z = 7},
    {x = 1018, y = 1030, z = 7},
    {x = 1019, y = 1030, z = 7},
}
 
function onThink(interval)
    local pos = positions[math.random(1, #positions)]
    doCreateItem(item, 1, pos)
    addEvent(function()
        doRemoveItem(getItemStack(pos, item).uid, 1)
    end, tempo*100000)
return true
end
 
function getItemStack(pos, iid)
    for i = 1, 255 do
        posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
        if posa.itemid == iid then
        return posa
        end
    end
return nil
end
.xml, tag.
<globalevent name="Teleports" interval="300000" script="nomedoscript.lua" />

 

 

ae manin blz vc e o cara ajudando a gente. sem pedir demais tem como vc fazer o mesmo script mais com um pokemon ao inves de um item.

esse pokemon ira aparecer pelo mapa aleatorio e fica por la por digamos 5 min e troca de area e fica mias 5 min e troca denovo.

 

desde ja agradeço man.

 

 

 

a e tbm acho que vc vai manjar. tipo to tentando fazer uma arvore aq que quando o player clicar pega os frutos e fica uma arvore sem frutos no lugar. serao as pink fruit. e as arvores voltem a ter frutos depois de 20 min. agradeço qquer ajuda desde ja. vlw se precisar de amis dados meu skype é.. clebermoreno1

 

Items, faça com que ele não possa ser movido pq caso seja criado é movam de lugar vai da erro no distro na hora de remove ele.

é um globalevent

local item = 2467 -- item que sera criado
local tempo = 5 -- quanto tempo o item vai fica até desaparecer
local positions = { -- posições que sera criado
    {x = 1017, y = 1030, z = 7},
    {x = 1018, y = 1030, z = 7},
    {x = 1019, y = 1030, z = 7},
}
 
function onThink(interval)
    local pos = positions[math.random(1, #positions)]
    doCreateItem(item, 1, pos)
    addEvent(function()
        doRemoveItem(getItemStack(pos, item).uid, 1)
    end, tempo*100000)
return true
end
 
function getItemStack(pos, iid)
    for i = 1, 255 do
        posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
        if posa.itemid == iid then
        return posa
        end
    end
return nil
end
.xml, tag.
<globalevent name="Teleports" interval="300000" script="nomedoscript.lua" />

 

ae man e como faço pra esse item server como um tp clicando nele e teleportado pra outro lugar o item e um espelho. pode ser passando por ele ou clicando nele desde ja agradeço a ajuda.

Link para o comentário
Compartilhar em outros sites

  • 0

ola amigo. mau ae por fica te enchendo mais aq nao deu certo o item nao quer aparecer no local que eu coloquei e pra testar so coloquei 2 lugares pertinho um do outro e baixei pra 200 o tempo de intervalo.

e nao aparece ja deixei o serve ligado a 30 min e nada. e tbm quanto a action do item como crio ela pra adiciona nessa.

 

ta dando um erro agora me passa certinho o tuto ae como add um item que aparece e desaparece aleatorio pelo mapa a cada 30 min e some em 5 min. e o mesmo item tera uma action nele de teleportar o player que der use nele pra xyz posiçao,

 

id do item 14708

id da action 5555

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

  • 0

testei aqui e ta funcionando perfeitamente.

qual a versão do seu servidor?

Acho que seu distro não tem suporte para milesegundos, so basta altera isso

no caso ficara 60s*30m = 1800segundos == 30minutos.

.xml, tag

<globalevent name="Teleports" interval="1800" script="nomedoscript.lua" />

e troca o script por esse, ja configurei do jeito que você pediu pelo PV, vai criar um item com o actionid 5555

local item = 14708 -- item que sera criado
local tempo = 5 -- quanto tempo o item vai fica até desaparecer
local positions = { -- posições que sera criado
    {x = 1017, y = 1030, z = 7},
    {x = 1018, y = 1030, z = 7},
    {x = 1019, y = 1030, z = 7},
}
 
function onThink(interval)
    local pos = positions[math.random(1, #positions)]
    local teleport = doCreateItem(item, 1, pos)
    doItemSetAttribute(teleport, "aid", 5555) -- actionid
    addEvent(function()
        doRemoveItem(getItemStack(pos, item).uid, 1)
    end, tempo*60)
    return true
end
 
function getItemStack(pos, iid)
    for i = 1, 255 do
        posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
        if posa.itemid == iid then
        return posa
        end
    end
    return nil
end



 

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

  • 0

uso pda pokecyan aq

 

e ta dando esse erro.

 

[03/07/2015 21:27:05] [Warning - Event::loadScript] Event onThink not found (data/globalevents/scripts/espelho.lua)

 

se nao tem a action ae tbm pra me passar pro item teleportar lembrando que e um espelho que nao pode ser movido e ao clicar nele eele some e teleporta o player pra xyz posiçao.

 

 

a action que coloquei aq e esta.

 

local position = {x = 1049, y = 1043, z = 7} --posición al que quieres que lleve

 

function onUse(cid, item, item2, fromPosition, toPosition, itemEx, toPosition)

if (getCreatureCondition(cid, CONDITION_INFIGHT) == FALSE) then

doTeleportThing(cid, position)

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_TELEPORT)

 

else

doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF)

doCreatureSay(cid, "Espere o Battle sair para poder usar isso!", TALKTYPE_ORANGE_1)

end

return true

end

 

Link para o comentário
Compartilhar em outros sites

  • 0

Desculpa foi burrice minha usar esse com aquela tag de la de cima

 

 

local item = 14708 -- item que sera criadolocal tempo = 5 -- quanto tempo o item vai fica até desaparecer
local positions = { -- posições que sera criado
    {x = 1017, y = 1030, z = 7},
    {x = 1018, y = 1030, z = 7},
    {x = 1019, y = 1030, z = 7},
}
 
function onThink(interval)
    local pos = positions[math.random(1, #positions)]
    local teleport = doCreateItem(item, 1, pos)
    doItemSetAttribute(teleport, "aid", 5555) -- actionid
    addEvent(function()
        doRemoveItem(getItemStack(pos, item).uid, 1)
    end, tempo*60)
    return true
end
 
function getItemStack(pos, iid)
    for i = 1, 255 do
        posa = getThingFromPos({x=pos.x, y=pos.y, z=pos.z, stackpos=i})
        if posa.itemid == iid then
        return posa
        end
    end
    return nil
end
Editado por RigBy
Link para o comentário
Compartilhar em outros sites

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