Ir para conteúdo

Teleporte summon tfs 0.3.6


L3K0T

Posts Recomendados

Teleporte - ícones de diversos grátis

 

TUTORIAL - TELEPORTE SUMMON

Introdução:

Fala pessoal, hoje vim aqui liberar um código para que futuros criadores de pokemon não usem GLOBALEVENTS ou MOVEMENTS para teleportar seus pokemons a distancia... hoje irei ensinar a você não usar mais esses scripts que aonde da maioria da vezes crash o servidores em WINDOWS em testes.

 

Sobre o Sistema:

Esse sistema tem a função de teleportar seu pokemon a certos sqm, tipo assim, você tem um pokemon e a distancia dele é 7 sqm, ao passar os 7 sqm ele teleporta para você, seja em qualquer lugar até de baixo da terra ou lugares super longe (Não se preocupe o problema do pokemon Morrer com source novas será removido e assim ele não vai morrer)

 

 

 

Creature.cp

Tutorial:

Vá em sua source procure por creature.cpp e abra com algum editor de texto e ache:

		if(!summons.empty())
		{
			std::list<Creature*>::iterator cit;
			std::list<Creature*> despawnList;
			for(cit = summons.begin(); cit != summons.end(); ++cit)
			{
				const Position pos = (*cit)->getPosition();
				if((std::abs(pos.z - newPos.z) > 2) || (std::max(std::abs((
					newPos.x) - pos.x), std::abs((newPos.y - 1) - pos.y)) > 30))
					despawnList.push_back((*cit));
			}

			for(cit = despawnList.begin(); cit != despawnList.end(); ++cit)
				g_game.removeCreature((*cit), true);
		}

Mude para:

		/*if(!summons.empty())
		{
			std::list<Creature*>::iterator cit;
			std::list<Creature*> despawnList;
			for(cit = summons.begin(); cit != summons.end(); ++cit)
			{
				const Position pos = (*cit)->getPosition();
				if((std::abs(pos.z - newPos.z) > 2) || (std::max(std::abs((
					newPos.x) - pos.x), std::abs((newPos.y - 1) - pos.y)) > 30))
					despawnList.push_back((*cit));
			}

			for(cit = despawnList.begin(); cit != despawnList.end(); ++cit)
				g_game.removeCreature((*cit), true);
		}*/

Agora salve ctrl+s e feche.

 

Monster.cpp

Tutorial:

Agora procure por Monster.cpp e ache:

void Monster::onThink(uint32_t interval)

abaixo de:

	if(teleportToMaster && doTeleportToMaster())
		teleportToMaster = false;

coloque:

        if(getMaster()){
    	if(!Position::areInRange<6,6,0>(getPosition(), getMaster()->getPosition()))
                        doTeleportToMaster();           
         } 

salve ctrl+s e revompila no modo rebuilde não esqueça de habilitar as opções em config.lua

    -- Summons
    maxPlayerSummons = 1
    teleportAllSummons = true
    teleportPlayerSummons = true

 

lembre se de remover qualquer scripts que teleporta seu pokemon a distancia.

Créditos:

By L3K0T

Editado por L3K0T
Link para o comentário
Compartilhar em outros sites

  • 6 months later...
12 horas atrás, kaleudd disse:

desculpe reviver topico porém estou com uma duvida,alguém sabe ao certo quais arquivos são que teleporta o pokémon?para que eu podesse remover para uso desse sistema?obg.

nenhum, esse código já faz isso é tudo pela source.

Link para o comentário
Compartilhar em outros sites

Agora, Alexy Brocanello disse:

nenhum, esse código já faz isso é tudo pela source.

poisé eu queria usar esse codigo,porem tenho o script que faz a mesma função por lua e gostaria de removelo,sabe onde ficam eles?

Link para o comentário
Compartilhar em outros sites

4 minutos atrás, kaleudd disse:

poisé eu queria usar esse codigo,porem tenho o script que faz a mesma função por lua e gostaria de removelo,sabe onde ficam eles?

creaturescripts.xml

Editado por Alexy Brocanello
Link para o comentário
Compartilhar em outros sites

  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...