Ir para conteúdo
  • Cadastre-se

(Resolvido)Monstros/Players Attack


Ir para solução Resolvido por Orochi Elf,

Posts Recomendados

Eu gostaria de basicamente duas coisas:

  1. Monstros não atacar Jogadores que tenham X Storage (Isso vale para magias de área dadas pelos monstros).
  2. Players não atacar outros Players que tenha a mesma Storage. (Isso vale para magias de área).

cms1-pr%C3%AAmio.png

Link para o post
Compartilhar em outros sites
function onCombat(cid, target)
    local stor = {76543, 2} -- {storage, value}
    
    if isPlayer(target) and getPlayerStorageValue(target, stor[1]) == stor[2] then return false end
    
    return true
end

Registre o creature event tanto em login.lua, quanto no arquivo XML do monstro.

The corrupt fear us.

The honest support us.

The heroic join us.

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

Não testei. o Statschange voce registra no login.lua, e o target voce registra no xml do monstro.

 

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(cid) and type == STATSCHANGE_HEALTHLOSS then
        if getPlayerStorageValue(cid, 12345) >= 1 then
            return false
        end
    end
    return true
end

function onTarget(cid, target)
    if isPlayer(target) and getPlayerStorageValue(target, 12345) >= 1 then
        return false
    end
    return true
end

Tony Araújo  ;D 

 

Link para o post
Compartilhar em outros sites

só precisa da statschange que nem o orochi disse.

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Link para o post
Compartilhar em outros sites

Verdade, não entendi por que ele criou um script que evite dar target e outro que evite levar dano...

 

 

Edit : mas esse statschange não vai se aplicar a todos os monstros não  ? já que é pra registrar no login...

 

 

Está certo  ? : 

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(cid) and type == STATSCHANGE_HEALTHLOSS and getMonsterInfo(name) == BLABLABLA then
        if getPlayerStorageValue(cid, 12345) >= 1 then
            return false
        end
    end
    return true
end

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

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

 

Verdade, não entendi por que ele criou um script que evite dar target e outro que evite levar dano...

 

 

Edit : mas esse statschange não vai se aplicar a todos os monstros não  ? já que é pra registrar no login...

 

 

Está certo  ? : 

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(cid) and type == STATSCHANGE_HEALTHLOSS and getMonsterInfo(name) == BLABLABLA then
        if getPlayerStorageValue(cid, 12345) >= 1 then
            return false
        end
    end
    return true
end

 

Eu criei pro monstro não conseguir mirar no Player, porque tendo o só "StatsChange" o monstro pode seguir o player, só não vai tirar life, mas vai em termos "atacar".

 

@Corrigindo seu script

function onStatsChange(cid, attacker, type, combat, value)
    if isPlayer(cid) and type == STATSCHANGE_HEALTHLOSS and getCreatureName(attacker) == "BLABLABLA" then
        if getPlayerStorageValue(cid, 12345) >= 1 then
            return false
        end
    end
    return true
end
Editado por Orochi Elf (veja o histórico de edições)

Tony Araújo  ;D 

 

Link para o post
Compartilhar em outros sites

Puts que burrice :P

Ok, valeu.

Espero que a dúvida do dono do tópico seja sanada...

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Opa, voltei no tópico pelo celular pra dizer que tem que colocar mana loss também, no caso do utamo vita, tomaria dano..., alguem pode colocar ?

Se quiser sua dúvida tirada, mande PM com os links, e não com a dúvida (outros podem ter a mesma dúvida, e o fórum serve para ser usado).

 

Tópicos:


 

yNlhRVC.png

 

55px-Judo_yellow_belt.svg.png

Link para o post
Compartilhar em outros sites

Fazendo uso do creature event combat e retornando false, não tem necessidade de um statschange ou target.
Já que o creatureid fica incapaz de causar qualquer tipo de perda ao target.

The corrupt fear us.

The honest support us.

The heroic join us.

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