Ir para conteúdo
  • Cadastre-se

(Resolvido)[SQLite] -=[TFS]=- 0.4 8.60 Eu queria que aparecesse essa mensagem no default toda vez que da CRITICAL por hit ou magia


Ir para solução Resolvido por L3K0T,

Posts Recomendados

You strike a critical hit! em vermelho MESSAGE_STATUS_CONSOLE_RED
 

 

91-thais.png

Link para o post
Compartilhar em outros sites
  • Sub-Admin
-- Coloque este código em seu script de combate existente ou crie um novo arquivo, como criticalhit.lua, no diretório de scripts do seu servidor.

function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local isCriticalHit = math.random(1, 100) <= 20 -- Exemplo: 20% de chance de um acerto crítico
        
        if isCriticalHit then
            local criticalMessage = "Você acertou um golpe crítico!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage) -- Alterado para MESSAGE_STATUS_CONSOLE_RED
        end
    end
    return true
end

 

creaturescript onCombat

 

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

LEKOT aparece isso 

 

[08/09/2023 15:53:46] [Error - CreatureScript Interface] 
[08/09/2023 15:53:46] data/creaturescripts/scripts/criticalhit.lua:onCombat
[08/09/2023 15:53:46] Description: 
[08/09/2023 15:53:46] data/creaturescripts/scripts/criticalhit.lua:2: attempt to compare number with nil
[08/09/2023 15:53:46] stack traceback:
[08/09/2023 15:53:46] 	data/creaturescripts/scripts/criticalhit.lua:2: in function <data/creaturescripts/scripts/criticalhit.lua:1>

 

91-thais.png

Link para o post
Compartilhar em outros sites
  • Sub-Admin
function onCombat(cid, target, damage, flags)
    if cid and isPlayer(cid) and target and isCreature(target) and damage and damage > 0 then
        local isCriticalHit = math.random(1, 100) <= 20 -- Exemplo: 20% de chance de um acerto crítico
        
        if isCriticalHit then
            local criticalMessage = "Você acertou um golpe crítico!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage)
        end
    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

config.lua ta assim

criticalHitChance = 7

 criticalHitMultiplier = 1
 displayCriticalHitNotify = true

 

ele ataca aparece a mensagem quando hit CRITICAL mais não aparece a mensagem no default You strike a critical hit!

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

91-thais.png

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

puxando direto do config.lua

 


function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtém a chance de acerto crítico do config.lua
        local criticalHitMultiplier = getConfigValue('criticalHitMultiplier') -- Obtém o multiplicador de acerto crítico do config.lua
        local displayCriticalHitNotify = getConfigValue('displayCriticalHitNotify') -- Obtém a configuração de exibição de notificação de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then -- Usando a chance do config.lua
            local criticalMessage = "Você acertou um golpe crítico com um multiplicador de " .. criticalHitMultiplier .. "!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage)
            
            -- Aplique o multiplicador de dano aqui, se necessário
            damage = damage * criticalHitMultiplier
        end

        -- Verifique se deve exibir uma notificação de acerto crítico
        if displayCriticalHitNotify then
            -- Exiba a notificação, se necessário
        end
    end
    return true
end

 

ai vc pode confgurar pelo config.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

Não aparece a mensagem ele só ataca e da CRITICAL toda vez que der CRITICAL aparece You strike a critical hit! vai aparece essa mensagem on vermelho default esse ai não funciono. https://prnt.sc/e4knb9Of2yoY é assim que tem q ta da CRITICAL e aparece You strike a critical hit! default do console

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

91-thais.png

Link para o post
Compartilhar em outros sites
  • Sub-Admin
function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua
        
        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage)
        end
    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
function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            if doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage) then
                return true -- Retorna true para continuar o combate
            else
                print("Erro ao enviar mensagem de acerto crítico para o jogador.") -- Verifica se há erros
            end
        end
    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

[08/09/2023 16:55:59] [Error - CreatureScript Interface] 
[08/09/2023 16:55:59] data/creaturescripts/scripts/criticalhit.lua:onCombat
[08/09/2023 16:55:59] Description: 
[08/09/2023 16:55:59] data/creaturescripts/scripts/criticalhit.lua:2: attempt to compare number with nil
[08/09/2023 16:55:59] stack traceback:
[08/09/2023 16:55:59] 	data/creaturescripts/scripts/criticalhit.lua:2: in function <data/creaturescripts/scripts/criticalhit.lua:1>

 

Link para o post
Compartilhar em outros sites

TODA VEZ QUE PARECE ESSA MEMSAGEM NO DISRO 32 BITS NÃO DA PRA ATACA AI EU TENHO QUE FAZER ISSO 

function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 1 then => --- ISSO!
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            if doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage) then
                return true -- Retorna true para continuar o combate
            else
                print("Erro ao enviar mensagem de acerto crítico para o jogador.") -- Verifica se há erros
            end
        end
    end
    return true
end

 

 

91-thais.png

Link para o post
Compartilhar em outros sites
  • Sub-Admin
function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            doSendPlayerTextMessage(cid, MESSAGE_EVENT_ADVANCE, criticalMessage) -- Envia a mensagem em vermelho para o padrão do jogador
        end
    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

EXEMPLO:

 

EU TAVA PENSANDO NÃO TEM COMO COLOCA NO ULTIMO REGISTER DO LOGIN.LUA

 

local loginstorage = getPlayerStorageValue(cid, 9999)
setPlayerStorageValue(cid, 9999, loginstorage + 1)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_ORANGE, "It is yours " .. loginstorage + 1 .. " login to ots")

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

91-thais.png

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

nao login é logar apenas isso..

 

function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage) -- Envia a mensagem em vermelho para o console do jogador
        end
    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

LEKOT EU FIZ O QUE VC MANDOU

function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage => 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtenha a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico
            doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage) -- Envia a mensagem em vermelho para o console do jogador
        end
    end
    return true
end

porem sem sucesso não funciono

 

91-thais.png

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

ja olho pra ver se ta configuradinho seu config.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

    criticalHitChance = 7
    criticalHitMultiplier = 1
    displayCriticalHitNotify = true

    noDamageToSameLookfeet = false
    showHealingDamage = true
    showHealingDamageForMonsters = true

91-thais.png

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

function onCombat(cid, target, damage, flags)
    if isPlayer(cid) and isCreature(target) and damage > 0 then
        local criticalHitChance = getConfigValue('criticalHitChance') -- Obtém a chance de acerto crítico do config.lua

        if math.random(1, 100) <= criticalHitChance then
            local criticalMessage = "You strike a critical hit!" -- Mensagem de acerto crítico

            if getConfigValue('displayCriticalHitNotify') then
                doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, criticalMessage)
            end
        end
    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