Ir para conteúdo
  • 0

Adicionar limite no sistema de Apricorn


Elias Palermo

Pergunta

Boa tarde.

 

Eu estou com este sistema de apricorn aqui que da 10 pontos para cada status do Pokémon, porém pode usar quantas vezes quiser, com isso teria pokémons com status monstruosos no game...

 

Eu queria por um limite de uso, sendo de 30 apricorns, assim o player poderia distribuir 300 pontos de status em oque ele achar melhor para si.

 

Aqui está o sistema.

 

 

function onUse(cid, item, frompos, item2, topos)
local summon = getCreatureSummons(cid)[1]
tabela_status = {
[27054] = {name="offense", value = 10},
[27053] = {name="defense", value = 10},
[27052] = {name="speed", value = 10},
[27050] = {name="vitality", value = 10},
[27051] = {name="specialattack", value = 10},
}

if #getCreatureSummons(cid) < 1 then
doPlayerSendTextMessage((cid), 27, "[Apricorn] Solte-o Seu Pokemon Para Dar o Apricorn!.")
return false
end
local pb = getPlayerSlotItem(cid, 8)
local pokename = getItemAttribute(pb.uid, "poke")
doRemoveItem(item.uid, 1)
local status = tabela_status[item.itemid]
local pbstat= getItemAttribute(pb.uid, status.name)
local st = pbstat + tabela_status[item.itemid].value
doItemSetAttribute(pb.uid, status.name , st)
doSendFlareEffect(getThingPos(summon))
doSendAnimatedText(getThingPos(summon), "Apricorn!", 215)
doPlayerSendTextMessage((cid), 27, "[Apricorn] Seu Pokemon "..pokename.." Ganhou "..status.value.." "..status.name.." points!")
doSendFlareEffect(getThingPos(cid))
return true
end

 

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

 

local config = {
    attr = "apricorn",
    limit = 30,             --Limite de apricorns por pokémon.
    returnMessage = "You already used %d apricorns in this pokemon.",
}
function onUse(cid, item, frompos, item2, topos)
    local summon = getCreatureSummons(cid)[1]
    local tabela_status = {
        [27054] = {name="offense", value = 10},
        [27053] = {name="defense", value = 10},
        [27052] = {name="speed", value = 10},
        [27050] = {name="vitality", value = 10},
        [27051] = {name="specialattack", value = 10},
    }
    if #getCreatureSummons(cid) < 1 then
        doPlayerSendTextMessage((cid), 27, "[Apricorn] Solte-o Seu Pokemon Para Dar o Apricorn!.")
        return false
    else
        local pb = getPlayerSlotItem(cid, 8)
        local attr = getItemAttribute(pb.uid, config.attr) or 0
        if attr < config.limit then
            local pokename = getItemAttribute(pb.uid, "poke")
            doRemoveItem(item.uid, 1)
            local status = tabela_status[item.itemid]
            local pbstat= getItemAttribute(pb.uid, status.name)
            local st = pbstat + tabela_status[item.itemid].value
            doItemSetAttribute(pb.uid, status.name , st)
            doSendFlareEffect(getThingPos(summon))
            doSendAnimatedText(getThingPos(summon), "Apricorn!", 215)
            doPlayerSendTextMessage((cid), 27, "[Apricorn] Seu Pokemon "..pokename.." Ganhou "..status.value.." "..status.name.." points!")
            doSendFlareEffect(getThingPos(cid))
            doItemSetAttribute(pb.uid, config.attr, attr + 1)
        else
            doPlayerSendCancel(cid, config.returnMessage:format(config.limit))
        end
    end
    return true
end
Link para o comentário
Compartilhar em outros sites

  • 0

testa assim

--config by uotl£
local chave = 8978501 -- não mexe
local limite = 3 -- coloca quantas vezes pode usar
local msg  = "você já usou" -- edita msg que player vai receber
--config by uotl£

function onUse(cid, item, frompos, item2, topos)
    local summon = getCreatureSummons(cid)[1]
    tabela_status = {
        [27054] = {name="offense", value = 10},
        [27053] = {name="defense", value = 10},
        [27052] = {name="speed", value = 10},
        [27050] = {name="vitality", value = 10},
        [27051] = {name="specialattack", value = 10},
    }
    if  getPlayerStorageValue(cid,chave) <= limite-2  then
        if #getCreatureSummons(cid) < 1 then
            doPlayerSendTextMessage((cid), 27, "[Apricorn] Solte-o Seu Pokemon Para Dar o Apricorn!.")
            return false
        end
        local pb = getPlayerSlotItem(cid, 8)
        local pokename = getItemAttribute(pb.uid, "poke")
        doRemoveItem(item.uid, 1)
        local status = tabela_status[item.itemid]
        local pbstat= getItemAttribute(pb.uid, status.name)
        local st = pbstat + tabela_status[item.itemid].value
        doItemSetAttribute(pb.uid, status.name , st)
        doSendFlareEffect(getThingPos(summon))
        doSendAnimatedText(getThingPos(summon), "Apricorn!", 215)
        doPlayerSendTextMessage((cid), 27, "[Apricorn] Seu Pokemon "..pokename.." Ganhou "..status.value.." "..status.name.." points!")
        doSendFlareEffect(getThingPos(cid))
        setPlayerStorageValue(cid,chave,getPlayerStorageValue(cid,chave)+1)
    else
        doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,msg)
        return true
    end
    return true
end
Editado por notle2012
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...