Ir para conteúdo
  • Cadastre-se

(Resolvido)[EXP-FOOD] Com os IDs ai em baixo


Ir para solução Resolvido por Muvukaa,

Posts Recomendados

<action itemid="6542" event="script" value="masterfusionvips/(1).lua"/>
<action itemid="6543" event="script" value="masterfusionvips/(2).lua"/>
<action itemid="6544" event="script" value="masterfusionvips/(3).lua"/>
<action itemid="6545" event="script" value="masterfusionvips/(4).lua"/>
<action itemid="6541" event="script" value="masterfusionvips/(5).lua"/>
<action itemid="12599" event="script" value="masterfusionvips/(6).lua"/>
<action itemid="8300" event="script" value="masterfusionvips/(7).lua"/>
<action itemid="8300" event="script" value="masterfusionvips/(8).lua"/>
<action itemid="8300" event="script" value="masterfusionvips/(9).lua"/>
<action itemid="8300" event="script" value="masterfusionvips/(10).lua"/>

EXP FOOD

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin

Não entendi oque você quer, explique bem o seu pedido de scripts ou suporte, como você quer o EXP que ao comer da EXP aleatoria ou fixa? De até quanto de exp? Etc... explique

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin

Fiz essa base pra vc, só alterar os ids das comidas e exp.

 

local L3K0T_SIGNATURE = "Script by L3K0T"

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodIds = {2666, 2667, 2668, 2669, 2670, 2671, 2672, 2673, 2674, 2675} -- IDs das comidas que irão dar EXP
    local expMin = 1000 -- EXP mínima que será adicionada
    local expMax = 5000 -- EXP máxima que será adicionada
    local expGain = math.random(expMin, expMax) -- Calcula a EXP a ser adicionada de forma aleatória

    for _, id in ipairs(foodIds) do
        if item.itemid == id then
            doPlayerAddExp(cid, expGain) -- Adiciona a EXP ao jogador
            doRemoveItem(item.uid, 1) -- Remove a comida do inventário do jogador
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW) -- Emite um efeito sonoro ao comer a comida
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain)) -- Exibe uma mensagem para o jogador informando a EXP ganha
            break
        end
    end

    return true
end

print(L3K0T_SIGNATURE)
 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin
<action itemid="6542" event="script" value="scriptxp.lua"/>

adiciona esse id dentro do script tbm porque cada comida é um tipo de exp. scriptxp.lua pra todas comidas e coloque tbm as outras comida no script.

 

 

Se Não conseguir use esse sem as comida dentro do script action, adicione em todas comidas que vao dar exp.

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local expMin = 1000 -- EXP mínima que será adicionada
    local expMax = 5000 -- EXP máxima que será adicionada
    local expGain = math.random(expMin, expMax) -- Calcula a EXP a ser adicionada de forma aleatória

    if item:isFood() then
        doPlayerAddExp(cid, expGain) -- Adiciona a EXP ao jogador
        doRemoveItem(item.uid, 1) -- Remove a comida do inventário do jogador
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW) -- Emite um efeito sonoro ao comer a comida
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", item:getName(), expGain)) -- Exibe uma mensagem para o jogador informando a EXP ganha
    end

    return true
end

 

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

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites

Ve se ta certo XML .lua você fez algo que nem um comedor de angu faria avalia se ta no geito que voce falo.

<action itemid="6542" event="script" value="scriptxp.lua"/>

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodIds = {6542, 6543, 6544, 6545, 2328, 6541, 12599, 8300} -- IDs das comidas que irão dar EXP
    local expMin = 10000 -- EXP mínima que será adicionada
    local expMax = 1000000 -- EXP máxima que será adicionada
    local expGain = math.random(expMin, expMax) -- Calcula a EXP a ser adicionada de forma aleatória

    for _, id in ipairs(foodIds) do
        if item.itemid == id then
            doPlayerAddExp(cid, expGain) -- Adiciona a EXP ao jogador
            doRemoveItem(item.uid, 1) -- Remove a comida do inventário do jogador
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW) -- Emite um efeito sonoro ao comer a comida
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain)) -- Exibe uma mensagem para o jogador informando a EXP ganha
            break
        end
    end

    return true
end

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin
19 minutos atrás, Muvukaa disse:

Ve se ta certo XML .lua você fez algo que nem um comedor de angu faria avalia se ta no geito que voce falo.




<action itemid="6542" event="script" value="scriptxp.lua"/>

 




function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodIds = {6542, 6543, 6544, 6545, 2328, 6541, 12599, 8300} -- IDs das comidas que irão dar EXP
    local expMin = 10000 -- EXP mínima que será adicionada
    local expMax = 1000000 -- EXP máxima que será adicionada
    local expGain = math.random(expMin, expMax) -- Calcula a EXP a ser adicionada de forma aleatória

    for _, id in ipairs(foodIds) do
        if item.itemid == id then
            doPlayerAddExp(cid, expGain) -- Adiciona a EXP ao jogador
            doRemoveItem(item.uid, 1) -- Remove a comida do inventário do jogador
            doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW) -- Emite um efeito sonoro ao comer a comida
            doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain)) -- Exibe uma mensagem para o jogador informando a EXP ganha
            break
        end
    end

    return true
end

 

Então eu não testei,  vc testou, come o angu e se não deu certo, tente assim sem os ids 

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local expMin = 1000 -- EXP mínima que será adicionada
    local expMax = 5000 -- EXP máxima que será adicionada
    local expGain = math.random(expMin, expMax) -- Calcula a EXP a ser adicionada de forma aleatória

    if item:isFood() then
        doPlayerAddExp(cid, expGain) -- Adiciona a EXP ao jogador
        doRemoveItem(item.uid, 1) -- Remove a comida do inventário do jogador
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW) -- Emite um efeito sonoro ao comer a comida
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", item:getName(), expGain)) -- Exibe uma mensagem para o jogador informando a EXP ganha
    end

    return true
end

 

 

tem esse tbm que fiz, realmente te mandei o errado, estou desse ontem sem dormir o código abaixo completinho. 

 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodExp = {
        [6542] = 5000,
        [6543] = 10000,
        [6544] = 15000,
        [6545] = 20000,
        [2328] = 25000,
        [6541] = 30000,
        [12599] = 40000,
        [8300] = 50000,
    }
    local expGain = foodExp[item.itemid] or 0 -- Pega a quantidade de exp correspondente à comida, ou 0 se não existir

    if expGain > 0 then
        doPlayerAddExp(cid, expGain)
        doRemoveItem(item.uid, 1)
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain))

        -- Adiciona um efeito aleatório estilo Baiak
        local baiakEffects = {CONST_ME_ENERGYAREA, CONST_ME_FIREAREA, CONST_ME_POISONAREA, CONST_ME_EXPLOSIONAREA}
        local effect = baiakEffects[math.random(#baiakEffects)]
        doSendMagicEffect(getCreaturePosition(cid), effect)

        -- Remove o efeito depois de 3 segundos
        addEvent(doSendMagicEffect, 3000, getCreaturePosition(cid), CONST_ME_NONE)
    end

    return true
end

 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin
Agora, Muvukaa disse:

Tipo assim eu tava ja com um Sistema EXP-Food mais as ids food que não funcionava eram essa 2328 - 6541- 12599 - 8300 vo posta o script.

Tibia.thumb.png.466e4b22cc3a75c345319d37c5f32ff3.png

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodExp = {
        [6542] = 5000,
        [6543] = 10000,
        [6544] = 15000,
        [6545] = 20000,
        [2328] = 25000,
        [6541] = 30000,
        [12599] = 40000,
        [8300] = 50000,
    }
    local expGain = foodExp[item.itemid] or 0 -- Pega a quantidade de exp correspondente à comida, ou 0 se não existir

    if expGain > 0 then
        doPlayerAddExp(cid, expGain)
        doRemoveItem(item.uid, 1)
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain))

        -- Adiciona um efeito aleatório estilo Baiak
        local baiakEffects = {CONST_ME_ENERGYAREA, CONST_ME_FIREAREA, CONST_ME_POISONAREA, CONST_ME_EXPLOSIONAREA}
        local effect = baiakEffects[math.random(#baiakEffects)]
        doSendMagicEffect(getCreaturePosition(cid), effect)

        -- Remove o efeito depois de 3 segundos
        addEvent(doSendMagicEffect, 3000, getCreaturePosition(cid), CONST_ME_NONE)
    end

    return true
end
 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin

Teste o script que mandei acima.

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin
1 hora atrás, leozincorsair disse:

@L3K0T pega em 0.4 esse?

Já está na versão 0.4

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodExp = {
        [6542] = 5000,
        [6543] = 10000,
        [6544] = 15000,
        [6545] = 20000,
        [2328] = 25000,
        [6541] = 30000,
        [12599] = 40000,
        [8300] = 50000,
    }
    local expGain = foodExp[item.itemid] or 0 -- Pega a quantidade de exp correspondente à comida, ou 0 se não existir

    if expGain > 0 then
        doPlayerAddExp(cid, expGain)
        doRemoveItem(item.uid, 1)
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain))

        -- Adiciona um efeito aleatório estilo Baiak
        local baiakEffects = {CONST_ME_ENERGYAREA, CONST_ME_FIREAREA, CONST_ME_POISONAREA, CONST_ME_EXPLOSIONAREA}
        local effect = baiakEffects[math.random(#baiakEffects)]
        doSendMagicEffect(getCreaturePosition(cid), effect)

        -- Remove o efeito depois de 3 segundos
        addEvent(doSendMagicEffect, 3000, getCreaturePosition(cid), CONST_ME_NONE)
    end

    return true
end

7 horas atrás, Muvukaa disse:

Testei e não funcionou por favor tente arrumar (9) (6) (5) (10)

Screenshot_2.png

Screenshot_1.png

ADM não ganha exp '-' testa em personagens de players.

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
  • Sub-Admin

Vê se esse te ajuda 

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local playerExp = getPlayerExperience(cid)
    local expGain = 100 -- Quantidade de experiência que o jogador receberá ao usar o XP Food. Você pode ajustar esse valor conforme necessário.

    doRemoveItem(item.uid, 1) -- Remove o XP Food após o uso.
    doPlayerAddExperience(cid, expGain) -- Adiciona a experiência ganha pelo jogador.
    doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você recebeu " .. expGain .. " de experiência usando o XP Food.")
    return true
end
 

15 horas atrás, Muvukaa disse:

Esse arquivos não pega pq nao esta o num formato correto, precisa converter as letras deles no notepad++ copie os q funcionam e pega os script dele e joga no outro arquivo NOVO.lua

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

Link para o post
Compartilhar em outros sites
8 horas atrás, L3K0T disse:

Já está na versão 0.4

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodExp = {
        [6542] = 5000,
        [6543] = 10000,
        [6544] = 15000,
        [6545] = 20000,
        [2328] = 25000,
        [6541] = 30000,
        [12599] = 40000,
        [8300] = 50000,
    }
    local expGain = foodExp[item.itemid] or 0 -- Pega a quantidade de exp correspondente à comida, ou 0 se não existir

    if expGain > 0 then
        doPlayerAddExp(cid, expGain)
        doRemoveItem(item.uid, 1)
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", getItemName(item.itemid), expGain))

        -- Adiciona um efeito aleatório estilo Baiak
        local baiakEffects = {CONST_ME_ENERGYAREA, CONST_ME_FIREAREA, CONST_ME_POISONAREA, CONST_ME_EXPLOSIONAREA}
        local effect = baiakEffects[math.random(#baiakEffects)]
        doSendMagicEffect(getCreaturePosition(cid), effect)

        -- Remove o efeito depois de 3 segundos
        addEvent(doSendMagicEffect, 3000, getCreaturePosition(cid), CONST_ME_NONE)
    end

    return true
end

ADM não ganha exp '-' testa em personagens de players.

da esse error

Screenshot_159.png

Link para o post
Compartilhar em outros sites
  • Sub-Admin
4 horas atrás, leozincorsair disse:

da esse error

Screenshot_159.png

 

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local foodExp = {
        [6542] = 5000,
        [6543] = 10000,
        [6544] = 15000,
        [6545] = 20000,
        [2328] = 25000,
        [6541] = 30000,
        [12599] = 40000,
        [8300] = 50000,
    }
    local expGain = foodExp[item.itemid] or 0 -- Pega a quantidade de exp correspondente à comida, ou 0 se não existir

    if expGain > 0 then
        doPlayerAddExp(cid, expGain)
        doRemoveItem(item.uid, 1)
        doSendMagicEffect(getCreaturePosition(cid), CONST_ME_SOUND_YELLOW)
        doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, string.format("Você comeu %s e recebeu %d de experiência!", Item(item.itemid):getName(), expGain))

        -- Adiciona um efeito aleatório estilo Baiak
        local baiakEffects = {CONST_ME_ENERGYAREA, CONST_ME_FIREAREA, CONST_ME_POISONAREA, CONST_ME_EXPLOSIONAREA}
        local effect = baiakEffects[math.random(#baiakEffects)]
        doSendMagicEffect(getCreaturePosition(cid), effect)

        -- Remove o efeito depois de 3 segundos
        addEvent(doSendMagicEffect, 3000, getCreaturePosition(cid), CONST_ME_NONE)
    end

    return true
end
 

 

20230912_034613.png.cf49b650c34dd7d7b1f79bd49c70f53c.png

Eu sou um entusiasta da programação apaixonado por ajudar a comunidade open source a crescer. Sempre em busca de novos desafios e oportunidades para contribuir com meu código.  #OpenSource #Programação #Contribuição

 

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.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo