Ir para conteúdo

Featured Replies

Postado

opa, alguem sabe colocar pra sair um magic effect quando um monstro nascer de uma raid?
feito no global... tem uma invasão de ratos ai sairia um doSendMagicEffect(getCreaturePosition(cid),10) quando eles spawmasse

é pros players saberem que esta tendo uma invasão.
(tenho as sources, mas nao sei mexer =s)

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

  • Respostas 6
  • Visualizações 620
  • Created
  • Última resposta

Top Posters In This Topic

Postado
  • Autor

@dirso
é pelas raids amigo, acredito que nao tenha como adicionar isso pelas raids, só compilando ?

 

Spoiler

<raid>
  <!--Area Spawns-->
  <areaspawn delay="0" fromx="193" fromy="98" fromz="8" tox="287" toy="174" toz="8">
    <monster name="demon" amount="25" />
  </areaspawn>
</raid>

 

PS: eu achei isso daqui, nas sources
alguem tem conhecimento?

 

Spoiler

 

bool AreaSpawnEvent::executeEvent() const
{
    for(MonsterSpawnList::const_iterator it = m_spawnList.begin(); it != m_spawnList.end(); it++)
    {
        MonsterSpawn* spawn = *it;
        uint32_t amount = (uint32_t)random_range(spawn->min, spawn->max);
        for(uint32_t i = 0; i < amount; ++i)
        {
            Monster* monster = Monster::createMonster(spawn->name);
            if(!monster)
            {
                std::clog << "[Error - AreaSpawnEvent::executeEvent] Cannot create monster " << spawn->name << std::endl;
                return false;
            }

            bool success = false;
            for(int32_t t = 0; t < MAXIMUM_TRIES_PER_MONSTER; ++t)
            {
                if(!g_game.placeCreature(monster, Position(random_range(m_fromPos.x, m_toPos.x),
                    random_range(m_fromPos.y, m_toPos.y), random_range(m_fromPos.z, m_toPos.z)), true))
                    continue;

                if(m_raid->usesRef() && m_ref)
                {
                    monster->setRaid(m_raid);
                    m_raid->addRef();
                }

                success = true;
                break;
            }

            if(!success)
                delete monster;
        }
    }

    return true;
}

 

 

Postado

Compila este e realize o teste:

 

Spoiler

bool AreaSpawnEvent::executeEvent() const
{
    for(MonsterSpawnList::const_iterator it = m_spawnList.begin(); it != m_spawnList.end(); it++)
    {
        MonsterSpawn* spawn = *it;
        uint32_t amount = (uint32_t)random_range(spawn->min, spawn->max);
        for(uint32_t i = 0; i < amount; ++i)
        {
            Monster* monster = Monster::createMonster(spawn->name);
            if(!monster)
            {
                std::clog << "[Error - AreaSpawnEvent::executeEvent] Cannot create monster " << spawn->name << std::endl;
                return false;
            }

            bool success = false;
            for(int32_t t = 0; t < MAXIMUM_TRIES_PER_MONSTER; ++t)
            {
               Position pMonster = Position pMonster = Position(random_range(m_fromPos.x, m_toPos.x),
					random_range(m_fromPos.y, m_toPos.y), random_range(m_fromPos.z, m_toPos.z));
              
                if(!g_game.placeCreature(monster, pMonster, true))
                    continue;

                if(m_raid->usesRef() && m_ref)
                {
                    monster->setRaid(m_raid);
                    m_raid->addRef();
                }
 		g_game.addMagicEffect(pMonster, MAGIC_EFFECT_POFF); //EFEITO AQUI
                success = true;
                break;
            }

            if(!success)
                delete monster;
        }
    }

    return true;
}

 

 

Você pode alterar o efeito MAGIC_EFFECT_POFF por alguns destes:

 

Spoiler

MAGIC_EFFECT_DRAW_BLOOD = 0,
	MAGIC_EFFECT_LOSE_ENERGY = 1,
	MAGIC_EFFECT_POFF = 2,
	MAGIC_EFFECT_BLOCKHIT = 3,
	MAGIC_EFFECT_EXPLOSION_AREA = 4,
	MAGIC_EFFECT_EXPLOSION_DAMAGE = 5,
	MAGIC_EFFECT_FIRE_AREA = 6,
	MAGIC_EFFECT_YELLOW_RINGS = 7,
	MAGIC_EFFECT_POISON_RINGS = 8,
	MAGIC_EFFECT_HIT_AREA = 9,
	MAGIC_EFFECT_TELEPORT = 10,
	MAGIC_EFFECT_ENERGY_DAMAGE = 11,
	MAGIC_EFFECT_WRAPS_BLUE = 12,
	MAGIC_EFFECT_WRAPS_RED = 13,
	MAGIC_EFFECT_WRAPS_GREEN = 14,
	MAGIC_EFFECT_HITBY_FIRE = 15,
	MAGIC_EFFECT_POISON = 16,
	MAGIC_EFFECT_MORT_AREA = 17,
	MAGIC_EFFECT_SOUND_GREEN = 18,
	MAGIC_EFFECT_SOUND_RED = 19,
	MAGIC_EFFECT_POISON_AREA = 20,
	MAGIC_EFFECT_SOUND_YELLOW = 21,
	MAGIC_EFFECT_SOUND_PURPLE = 22,
	MAGIC_EFFECT_SOUND_BLUE = 23,
	MAGIC_EFFECT_SOUND_WHITE = 24,
	MAGIC_EFFECT_BUBBLES = 25,
	MAGIC_EFFECT_CRAPS = 26,
	MAGIC_EFFECT_GIFT_WRAPS = 27,
	MAGIC_EFFECT_FIREWORK_YELLOW = 28,
	MAGIC_EFFECT_FIREWORK_RED = 29,
	MAGIC_EFFECT_FIREWORK_BLUE = 30,
	MAGIC_EFFECT_STUN = 31,
	MAGIC_EFFECT_SLEEP = 32,
	MAGIC_EFFECT_WATERCREATURE = 33,
	MAGIC_EFFECT_GROUNDSHAKER = 34,
	MAGIC_EFFECT_HEARTS = 35,
	MAGIC_EFFECT_FIREATTACK = 36,
	MAGIC_EFFECT_ENERGY_AREA = 37,
	MAGIC_EFFECT_SMALLCLOUDS = 38,
	MAGIC_EFFECT_HOLYDAMAGE = 39,
	MAGIC_EFFECT_BIGCLOUDS = 40,
	MAGIC_EFFECT_ICEAREA = 41,
	MAGIC_EFFECT_ICETORNADO = 42,
	MAGIC_EFFECT_ICEATTACK = 43,
	MAGIC_EFFECT_STONES = 44,
	MAGIC_EFFECT_SMALLPLANTS = 45,
	MAGIC_EFFECT_CARNIPHILA = 46,
	MAGIC_EFFECT_PURPLEENERGY = 47,
	MAGIC_EFFECT_YELLOWENERGY = 48,
	MAGIC_EFFECT_HOLYAREA = 49,
	MAGIC_EFFECT_BIGPLANTS = 50,
	MAGIC_EFFECT_CAKE = 51,
	MAGIC_EFFECT_GIANTICE = 52,
	MAGIC_EFFECT_WATERSPLASH = 53,
	MAGIC_EFFECT_PLANTATTACK = 54,
	MAGIC_EFFECT_TUTORIALARROW = 55,
	MAGIC_EFFECT_TUTORIALSQUARE = 56,
	MAGIC_EFFECT_MIRRORHORIZONTAL = 57,
	MAGIC_EFFECT_MIRRORVERTICAL = 58,
	MAGIC_EFFECT_SKULLHORIZONTAL = 59,
	MAGIC_EFFECT_SKULLVERTICAL = 60,
	MAGIC_EFFECT_ASSASSIN = 61,
	MAGIC_EFFECT_STEPSHORIZONTAL = 62,
	MAGIC_EFFECT_BLOODYSTEPS = 63,
	MAGIC_EFFECT_STEPSVERTICAL = 64,
	MAGIC_EFFECT_YALAHARIGHOST = 65,
	MAGIC_EFFECT_BATS = 66,
	MAGIC_EFFECT_SMOKE = 67,
	MAGIC_EFFECT_INSECTS = 68,
	MAGIC_EFFECT_DRAGONHEAD = 69,

 

 

Caso apresentar algum erro na distro, favor printar e disponibilizar 

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

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