Ir para conteúdo

Featured Replies

Postado
  • Autor

@L3K0T Então , tipo Te falar o histórico de erros que eu tive com o Script.

 

Na primeira vez que adiconei o script tive um problema grave.

 

No char do GOD se eu adicionasse o monstro , ele alterava minha ID pra 1 e me matava kkkk..

 

Na segunda vez que alterei , ele invocou até 3 , porém o PLAYER vira foco do monstro

 

Eu só queria que ele não matasse o player.,  VOu conferir as FLAGS 

  • Respostas 8
  • Visualizações 1.5k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Testa ai amigo:   local config = { name = "Morgaroth", -- Nome do Summon max = 1, -- Máximo de summons exaust_sto = 5555, -- Storage que contabiliza o exaust exaust_time = 2 -- Segundo

  • @Rayo não vai funcionar porque a versão desse seu script é 1.x+ e a versão do dele é de 0.x @mateuscorrea testa ae   local config = { name = "Morgaroth", -- Nome do Summon max = 1,

  • Já tentou ver as flag do monstro???  .xml e testar o script ali em cima que vc disse que não sumona?   <flag summonable="1"/> 《《《《《 <flag attackable="0"/>

Postado
  • Diretor
1 minuto atrás, mateuscorrea disse:

@L3K0T Então , tipo Te falar o histórico de erros que eu tive com o Script.

 

Na primeira vez que adiconei o script tive um problema grave.

 

No char do GOD se eu adicionasse o monstro , ele alterava minha ID pra 1 e me matava kkkk..

 

Na segunda vez que alterei , ele invocou até 3 , porém o PLAYER vira foco do monstro

 

Eu só queria que ele não matasse o player.,  VOu conferir as FLAGS 

 

Tabom, qualquer coisa tamo ai ?

Tem o comando no god /m e o /s

 

O /m e pra monstro mals que mata os outros.

O /s e pra sumonar o monstro bonzinho que não vai matar ninguém a não vc dando Target em algo, olha esses scripts no talkactions e tira uma base la, pode ajudar muito vc.

 

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

 

Postado
  • Autor

 

 @L3K0T @LeoTK @Rayo  Resolvi o problema, obrigado pela ajuda de vocês. 

Vou explicar os passos de arrumar o erro, caso alguém também tenha no futuro.

 

Primeiro , você precisa achar no paste itens.xml um item que não tenha funcionalidade no jogo e que possa atribuir uma função de script.

 

Fui na pasta ITEMS.Xml e fiz o seguinte:

<item id="9077" article="an" name="Red Demon Bag" />   

Pronto , ja havia atribuido uma funcionalidade ao item 9077 (Antiga Bag de demon evento)

 

Segundo , você deve criar um monstro dentro da pasta Monster  ( ja entenderão o motivo),  então usei o seguinte script: 

 

?xml version="1.0" encoding="UTF-8"?>
<monster name="Red Demon" nameDescription="a red demon" race="fire" experience="0" speed="300" manacost="10000">
  <health now="8200" max="8200"/>
  <look type="35" corpse="5995"/>
  <targetchange interval="5000" chance="8"/>
  <strategy attack="200" defense="100"/>
  <flags>
    <flag summonable="1"/>
    <flag attackable="1"/>
    <flag hostile="0"/>
    <flag illusionable="0"/>
    <flag convinceable="1"/>
    <flag pushable="0"/>
    <flag canpushitems="1"/>
    <flag canpushcreatures="1"/>
    <flag targetdistance="1"/>
    <flag staticattack="90"/>
    <flag runonhealth="0"/>

 

Importe seu monstro na pasta monster.xml 

monster name="Red Demon" file="Monstros Danger/Red Demon.xml"/>

 

Após Criar o monstro , deverá fazer o script que vai atribuir o monstro a ser invocado na pasta actions com o seguinte nome : smonster.lua 

 

local config = {
    
    name = "Red Demon", -- Nome do Summon
    max = 1, -- Máximo de summons
    exaust_sto = 5555, -- Storage que contabiliza o exaust
    exaust_time = 2 -- Segundos de Exaust
    
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local pos = getCreaturePosition(cid)
        if not exhaustion.check(cid, config.exaust_sto) then
            if table.maxn(getCreatureSummons(cid)) <= config.max then
                local target = doCreateMonster(config.name, pos)
                doConvinceCreature(cid, target)
                doPlayerSendTextMessage(cid, 27, "Voce invocou o monstro ".. config.name .."!!")
                doSendMagicEffect(pos, CONST_ME_TELEPORT)
                exhaustion.set(cid, config.exaust_sto, config.exaust_time)
                return true
            else
                doPlayerSendTextMessage(cid, 27, "Você ja tem a quantidade máxima de summons ativos!")
                doSendMagicEffect(pos, POFF)
                return false 
            end
        else
            doPlayerSendTextMessage(cid, 27, "Exhaustion!! Wait ".. exhaustion.get(cid, config.exaust_sto) .." seconds.")
            doSendMagicEffect(pos, POFF)
            return false
        end
    return true
end

 

Terceiro ,  colocar esse script dentro da pasta do actions

<action itemid="9076" script="smonster.lua"/>

 

 

Quarto passo abrir o Mapa do jogo e importar o monstro!

 

A explicação sobre a criação do monstro é simples .

Normalmente os monstros vem com atribuições dentro do seu script sobre atacar , summonar e etc.

Se você simplesmente pegar um monstro do seu mapa que ja existe e altera-lo , vai interferir em todos os monstros que ja estão importados no game.

 

Então o Adequeado é que se crie um monstro com as características que você quer para que ele seja seu PET , acaba que fica muito mais fácil do que PET SYSTEM

 

E como ultimo passo

Assim como foi citado pelo nosso amigo @L3K0T  existe um pequeno problema ao adicionar esse sistema de monstros .

 

Deve ir nas FLAGS do monstro e alterar para:

 

<flags>
    <flag summonable="0"/>   (Atribua um valor 1 ) - Para que possa ser sumonado  =     <flag summonable="1"/> 
    <flag attackable="1"/>       (Caso queira que o Pet possa ser atacado deixe como esta)
    <flag hostile="1"/>             (Chegamos ao problema , HOSTIL = 1 significa que o monstro também mata quem somona , então coloque 0)
    <flag illusionable="0"/>  
    <flag convinceable="0"/>   (E para finalizar Convinceable deve ter o valor 1 , para você conseguir controlar o monstro)  = <flag convinceable="0"/>  
    <flag pushable="0"/>
    <flag canpushitems="1"/>
    <flag canpushcreatures="1"/>
    <flag targetdistance="1"/>
    <flag staticattack="90"/>
    <flag runonhealth="0"/>
  </flags>

 

 

Obrigado por todos que me deram essa idéia , ja testei em outros mapas e funcionou  ! Valeu gente . Repp++ pra todos

Editado por mateuscorrea
Diminuir conteúdo escrito (veja o histórico de edições)

Postado
  • Diretor
5 horas atrás, mateuscorrea disse:

 

 @L3K0T @LeoTK @Rayo  Resolvi o problema, obrigado pela ajuda de vocês. 

Vou explicar os passos de arrumar o erro, caso alguém também tenha no futuro.

 

Primeiro , você precisa achar no paste itens.xml um item que não tenha funcionalidade no jogo e que possa atribuir uma função de script.

 

Fui na pasta ITEMS.Xml e fiz o seguinte:

<item id="9077" article="an" name="Red Demon Bag" />   

Pronto , ja havia atribuido uma funcionalidade ao item 9077 (Antiga Bag de demon evento)

 

Segundo , você deve criar um monstro dentro da pasta Monster  ( ja entenderão o motivo),  então usei o seguinte script: 

 

?xml version="1.0" encoding="UTF-8"?>
<monster name="Red Demon" nameDescription="a red demon" race="fire" experience="0" speed="300" manacost="10000">
  <health now="8200" max="8200"/>
  <look type="35" corpse="5995"/>
  <targetchange interval="5000" chance="8"/>
  <strategy attack="200" defense="100"/>
  <flags>
    <flag summonable="1"/>
    <flag attackable="1"/>
    <flag hostile="0"/>
    <flag illusionable="0"/>
    <flag convinceable="1"/>
    <flag pushable="0"/>
    <flag canpushitems="1"/>
    <flag canpushcreatures="1"/>
    <flag targetdistance="1"/>
    <flag staticattack="90"/>
    <flag runonhealth="0"/>

 

Importe seu monstro na pasta monster.xml 

monster name="Red Demon" file="Monstros Danger/Red Demon.xml"/>

 

Após Criar o monstro , deverá fazer o script que vai atribuir o monstro a ser invocado na pasta actions com o seguinte nome : smonster.lua 

 

local config = {
    
    name = "Red Demon", -- Nome do Summon
    max = 1, -- Máximo de summons
    exaust_sto = 5555, -- Storage que contabiliza o exaust
    exaust_time = 2 -- Segundos de Exaust
    
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
    local pos = getCreaturePosition(cid)
        if not exhaustion.check(cid, config.exaust_sto) then
            if table.maxn(getCreatureSummons(cid)) <= config.max then
                local target = doCreateMonster(config.name, pos)
                doConvinceCreature(cid, target)
                doPlayerSendTextMessage(cid, 27, "Voce invocou o monstro ".. config.name .."!!")
                doSendMagicEffect(pos, CONST_ME_TELEPORT)
                exhaustion.set(cid, config.exaust_sto, config.exaust_time)
                return true
            else
                doPlayerSendTextMessage(cid, 27, "Você ja tem a quantidade máxima de summons ativos!")
                doSendMagicEffect(pos, POFF)
                return false 
            end
        else
            doPlayerSendTextMessage(cid, 27, "Exhaustion!! Wait ".. exhaustion.get(cid, config.exaust_sto) .." seconds.")
            doSendMagicEffect(pos, POFF)
            return false
        end
    return true
end

 

Terceiro ,  colocar esse script dentro da pasta do actions

<action itemid="9076" script="smonster.lua"/>

 

 

Quarto passo abrir o Mapa do jogo e importar o monstro!

 

A explicação sobre a criação do monstro é simples .

Normalmente os monstros vem com atribuições dentro do seu script sobre atacar , summonar e etc.

Se você simplesmente pegar um monstro do seu mapa que ja existe e altera-lo , vai interferir em todos os monstros que ja estão importados no game.

 

Então o Adequeado é que se crie um monstro com as características que você quer para que ele seja seu PET , acaba que fica muito mais fácil do que PET SYSTEM

 

E como ultimo passo

Assim como foi citado pelo nosso amigo @L3K0T  existe um pequeno problema ao adicionar esse sistema de monstros .

 

Deve ir nas FLAGS do monstro e alterar para:

 

<flags>
    <flag summonable="0"/>   (Atribua um valor 1 ) - Para que possa ser sumonado  =     <flag summonable="1"/> 
    <flag attackable="1"/>       (Caso queira que o Pet possa ser atacado deixe como esta)
    <flag hostile="1"/>             (Chegamos ao problema , HOSTIL = 1 significa que o monstro também mata quem somona , então coloque 0)
    <flag illusionable="0"/>  
    <flag convinceable="0"/>   (E para finalizar Convinceable deve ter o valor 1 , para você conseguir controlar o monstro)  = <flag convinceable="0"/>  
    <flag pushable="0"/>
    <flag canpushitems="1"/>
    <flag canpushcreatures="1"/>
    <flag targetdistance="1"/>
    <flag staticattack="90"/>
    <flag runonhealth="0"/>
  </flags>

 

 

Obrigado por todos que me deram essa idéia , ja testei em outros mapas e funcionou  ! Valeu gente . Repp++ pra todos

 

Que bom que seu problema foi resolvido, eu fico feliz por você!!!

 

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

 

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Conteúdo Similar

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo