Ir para conteúdo
  • Cadastre-se

(Resolvido)Adicionar time em script


Ir para solução Resolvido por Ryukiimaru,

Posts Recomendados

Alguém pode limitar um tempo de intervalo de 5 segundos para usar a alavanca nesse script?

 

local config = {
    price = 50,  -- Quantidade de items necessário para comprar.
    count = 20,  -- Quantidade que irá vender.
    item = 7618, -- ID do item que vai vender.
    need = 2160  -- ID do item necessário.
}

function onUse(cid, item)
    local pos = getCreaturePosition(cid)
    if item.itemid == 1945 then
        if doPlayerRemoveItem(cid, config.need, config.price) then
            doPlayerAddItem(cid, config.item, config.count)
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Você acaba de comprar "..config.count.." "..getItemNameById(config.item)..".")
            doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
        else
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Desculpe, você precisa de ".. config.price .." ".. getItemNameById(config.need) .." para comprar.")
            doSendMagicEffect(pos, CONST_ME_POFF)
        end
     end
   return true
end

 

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
  • Solução

local config = {
    price = 50,  -- Quantidade de items necessário para comprar.
    count = 20,  -- Quantidade que irá vender.
    item = 7618, -- ID do item que vai vender.
    need = 2160,  -- ID do item necessário.
    alavancaStr = 3332, -- Storage para salvar e checar o tempo
    time = 5 -- Tempo de espera para usar novamente
}

function onUse(cid, item)
    local pos = getCreaturePosition(cid)
    if item.itemid == 1945 then
        if getPlayerStorageValue(cid, config.alavancaStr) - os.time() <= 0 then
            if doPlayerRemoveItem(cid, config.need, config.price) then
                doPlayerAddItem(cid, config.item, config.count)
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Você acaba de comprar "..config.count.." "..getItemNameById(config.item)..".")
                doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
            else
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Desculpe, você precisa de ".. config.price .." ".. getItemNameById(config.need) .." para comprar.")
                doSendMagicEffect(pos, CONST_ME_POFF)
            end
            setPlayerStorageValue(cid, config.alavancaStr, os.time() + config.time)
        else
            doPlayerSendCancel(cid, "Voce deve aguardar " ..getPlayerStorageValue(cid, config.alavancaStr) - os.time().." segundos para tentar novamente...")
        end
     end
   return true
end

Link para o post
Compartilhar em outros sites
7 horas atrás, Ryukiimaru disse:

local config = {
    price = 50,  -- Quantidade de items necessário para comprar.
    count = 20,  -- Quantidade que irá vender.
    item = 7618, -- ID do item que vai vender.
    need = 2160,  -- ID do item necessário.
    alavancaStr = 3332, -- Storage para salvar e checar o tempo
    time = 5 -- Tempo de espera para usar novamente
}

function onUse(cid, item)
    local pos = getCreaturePosition(cid)
    if item.itemid == 1945 then
        if getPlayerStorageValue(cid, config.alavancaStr) - os.time() <= 0 then
            if doPlayerRemoveItem(cid, config.need, config.price) then
                doPlayerAddItem(cid, config.item, config.count)
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Você acaba de comprar "..config.count.." "..getItemNameById(config.item)..".")
                doSendMagicEffect(pos, CONST_ME_MAGIC_BLUE)
            else
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_DEFAULT, "Desculpe, você precisa de ".. config.price .." ".. getItemNameById(config.need) .." para comprar.")
                doSendMagicEffect(pos, CONST_ME_POFF)
            end
            setPlayerStorageValue(cid, config.alavancaStr, os.time() + config.time)
        else
            doPlayerSendCancel(cid, "Voce deve aguardar " ..getPlayerStorageValue(cid, config.alavancaStr) - os.time().." segundos para tentar novamente...")
        end
     end
   return true
end

 

Amigo, você não consegue mudar uma coisa no script? tipo, eu tenho no ot dinheiro gold ingot, id 9971, fazer com que o script reconheça isso tb? pq so funciona com o crystal coin, e outra, minha alavanca é a 10030, pq ela não vai pra esquerda? Ja mudei no itens xml...

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

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites
13 horas atrás, jNo disse:

 

Amigo, você não consegue mudar uma coisa no script? tipo, eu tenho no ot dinheiro gold ingot, id 9971, fazer com que o script reconheça isso tb? pq so funciona com o crystal coin, e outra, minha alavanca é a 10030, pq ela não vai pra esquerda? Ja mudei no itens xml...

Reconheça de que modo? explica direito pra mim entender please ''-''

Link para o post
Compartilhar em outros sites
46 minutos atrás, Ryukiimaru disse:

Reconheça de que modo? explica direito pra mim entender please ''-''

Achei que já estava bem claro, mas vamos lá.

 

No meu otserver tem um tipo de dinheiro maior que crystal (2160) que é o gold ingot (9971),  100 crystal, ou 1kk como preferir, equivale a 1 gold ingot.

Nesse script, ele só vende o item por crystal coin, não reconhece o outro tipo de dinheiro, gold ingot, então por exemplo: Se o item vale 1kk, e eu comprar com crystal coin, da certo... mas se eu comprar com gold ingot, não....

 

E a questão da alanca, ela não muda a posição quando usada

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

Link para o post
Compartilhar em outros sites

    </item>
    <item id="9971" article="a" name="Gold ingot">
    <attribute key="description" value="this item value 1kk/100cc." />
    <attribute key="worth" value="1000000" />    
    <attribute key="weight" value="1" />

Link para o post
Compartilhar em outros sites
7 horas atrás, ricardiitoohz disse:

    </item>
    <item id="9971" article="a" name="Gold ingot">
    <attribute key="description" value="this item value 1kk/100cc." />
    <attribute key="worth" value="1000000" />    
    <attribute key="weight" value="1" />

ja estava, ainda não funciona

(1º) | [8.60] - Galaxy Server - Download

(2º) | [8.60] - Glorious Server - Download

(3º) | [8.60] - Epic Server - Download

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo