Ir para conteúdo

Featured Replies

Postado

Galera alguém poderia me dizer porque esse item não esta sumindo, logo depois que o tempo do script acaba,

aparece a mensagem dizendo que ele sumiu porem não acontece nada.

 Uso 0.4

 

 

Script :

  Citar

local config = {
    storage = 49607, -- salva o tempo do item expirar
    tempo = 10, -- tempo pro item expirar
    itemid = 11615, -- id do item
    storagedelay = 49608, -- onde salva o tempo pra usar dnv a spell
    delayquant = 10 -- quantidade de tempo em segundos q fica sem poder usar uma vez q teleporta de volta.
}

local positions = {}

function onCastSpell(cid, var)
    if getPlayerStorageValue(cid, config.storagedelay) - os.time() <= 0 then
        if getPlayerStorageValue(cid, config.storage) <= 0 then
            -- procura a primeira posicao livre
            local index = 0
            repeat 
                index = index + 1                
            until (not positions[index])
            -- salva a pos na primeira posicao livre do hash
            positions[index] = getThingPos(cid)
            -- salva a posicao livre no storage do player para referencia
            doPlayerSetStorageValue(cid, config.storage, index)
            doCreateItem(config.itemid, getThingPos(cid))
            doSendMagicEffect(getThingPos(cid), 3)
            addEvent(function()
                if isCreature(cid) then
                    doPlayerSendTextMessage(cid, 22, "A kunai sumiu.")
                    doPlayerSetStorageValue(cid, config.storage, 0)
                    positions[getPlayerStorageValue(cid, config.storage)] = nil
                end
            end, 1000*config.tempo)
        elseif getPlayerStorageValue (cid, config.storage) > 0 then
            doTeleportThing(cid, positions[getPlayerStorageValue(cid, config.storage)])
            doPlayerSetStorageValue(cid, config.storagedelay, config.delayquant + os.time())
            -- tratamento pra remover a pos salva        
            doPlayerSetStorageValue(cid, config.storage, 0)
            positions[getPlayerStorageValue(cid, config.storage)] = nil
            --
            doSendMagicEffect(getThingPos(cid), 10)
        end
    else
        doPlayerSendCancel(cid, "You have to wait ".. getPlayerStorageValue(cid, config.storagedelay) - os.time() .." seconds to use this spell again.")
    end
return true
end

item.xml

  Citar

    </item>
    <item id="11615" article="a" name="kunai teleport">
        <attribute key="decayTo" value="0" />
        <attribute key="duration" value="10" />

 

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

Resolvido por Storm

Ir para solução
  • Respostas 21
  • Visualizações 1.4k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @leozincorsair Hiraishin Kunai né, enfim ano passado eu fiz uma script assim, não sei se funciona e se ta do jeito que você quer, testa ai:    

Postado
 -- tratamento pra remover a pos salva        
            doPlayerSetStorageValue(cid, config.storage, 0)
            positions[getPlayerStorageValue(cid, config.storage)] = nil

 

Veja se funciona deixando assim:

 

 -- tratamento pra remover a pos salva        
            doPlayerSetStorageValue(cid, config.storage, 0)
            doRemoveItem(item.uid, 1)
            positions[getPlayerStorageValue(cid, config.storage)] = nil

 

Postado
  • Autor
  Em 27/01/2019 em 22:30, DdJs disse:

 -- tratamento pra remover a pos salva        
            doPlayerSetStorageValue(cid, config.storage, 0)
            positions[getPlayerStorageValue(cid, config.storage)] = nil

 

Veja se funciona deixando assim:

 


 -- tratamento pra remover a pos salva        
            doPlayerSetStorageValue(cid, config.storage, 0)
            doRemoveItem(item.uid, 1)
            positions[getPlayerStorageValue(cid, config.storage)] = nil

 

 

ja tentei isso também porem nao some.

Postado
  Em 28/01/2019 em 00:30, leozincorsair disse:

ja tentei isso também porem nao some.

 

Claro, doRemoveItem(item.uid, count) o item.uid tem que ser declarado na callback da função, tente usar \/

doPlayerRemoveItem(cid, itemid, quantidade)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo