Jump to content

[Tutorial] Por os pets a não seguir o jogador em guerras de guild


Luffy
 Share

Recommended Posts

Este tutorial e recomendado para quem  usa os mobs como pets já que alguns são grande de mais e podem atrapalhar as guerras de guilds.

Vá em ../game/src e abre PetSystem.cpp

procure por: (fDist >= START_FOLLOW_DISTANCE)

editem para:

(fDist >= START_FOLLOW_DISTANCE && 41 != m_pkOwner->GetMapIndex())

Onde está o 41 você poe o map index da arena de guerra da guild ou de qualquer outro mapa que você não quer que os pets sigam os players

Se quiserem também que os pets não deem respawn quando atingirem a distância limite entre eles o players

procure por :

(fDist >= RESPAWN_DISTANCE)

e editem assim:

(fDist >= RESPAWN_DISTANCE && 41 != m_pkOwner->GetMapIndex())

não esqueça de editar o 41.

 

  

 

Edited by Luffy
Link to comment
Share on other sites

2 horas atrás, GODSPEED disse:

Muito Bom, uma coisa que ficaria intersante era adicionares um switch de maps, para que não podesses usar o pet em varios mapas

Mas isso que postei é para que os pets não sigam o player, eles vão dar spawn, mas vão ficar parados. Pra fazer com que os pet não deem spawn, é só editar a quest que invoca os pets.

Edited by Luffy
Link to comment
Share on other sites

16 horas atrás, Luffy disse:

Mas isso que postei é para que os pets não sigam o player, eles vão dar spawn, mas vão ficar parados. Pra fazer com que os pet não deem spawn, é só editar a quest que invoca os pets.

sim isso um switch para os pets não seguirem xD

11 minutos atrás, L2P disse:

podes bloquear determinado item num determinado mapa >  Tutorial

Eu sei fazer xD 

Link to comment
Share on other sites

2 horas atrás, GODSPEED disse:

sim isso um switch para os pets não seguirem xD

Eu sei fazer xD 

    bool nofollow = false;
    switch (m_pkOwner->GetMapIndex())
        {
            case 41:
                nofollow = true;
                break;
            case 42:
                nofollow = true;
                break;
        }

Você quer dizer assim?

Link to comment
Share on other sites

26 minutos atrás, Luffy disse:

    bool nofollow = false;
    switch (m_pkOwner->GetMapIndex())
        {
            case 41:
                nofollow = true;
                break;
            case 42:
                nofollow = true;
                break;
        }

Você quer dizer assim?

Sim xD

Eu estava a pensar algo assim :

 

static bool nofollowbyswi(int map_index)
{
	switch (map_index)
	{
		case 41:
		case 42:
		case 43:
		case 44:
			return false;
	}

	return true;
}

if(!nofollowbyswi(m_pkOwner->GetMapIndex())){ // * if(false == ...)
	
	return false; // retorna Falso a CPetActor::_UpdateFollowAI() , Isso quer dizer que função acaba 
	
	
	
	
}

 

Link to comment
Share on other sites

Ou apenas colocar o switch no inicio da função. 

Spoiler

bool CPetActor::_UpdateFollowAI()
{
    switch (m_pkOwner->GetMapIndex())
    {
        case 41:
        case 42:
        case 43:
        case 44:
            return false;
    }

 

Edited by Luffy
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...