Ir para conteúdo

[svn] Anel De Experiencia.


Posts Recomendados

Este codigo é baseado no codigo: Amuleto De Experiencia!

 

 

 

Em player.cpp, ache essa função

void Player::onGainExperience(int32_t gainExperience)

 

Se sua versão for forgotten, ache essa função

void Player::onGainExperience(uint64_t gainExperience)

 

Abaixo de:

addExperience(gainExperience);

 

Adicione:

	Item* amulet = getInventoryItem(SLOT_RING);
  if(amulet && amulet->getID() == g_config.getNumber(ConfigManager::ID_RING_EXP)){
   gainExperience *= 5;
}

 

Em configmanager.cpp adicione isso lá:

 

	 m_confInteger[ID_RING_EXP] = getGlobalNumber(L, "id_ring_exp", 2166);

 

2166 é o id do power ring

 

Em configmanager.h na lista dos enum integer_config_t { você adiciona

 

ID_RING_EXP,

 

E em config.lua

 

Adicione:

--- ID do anel para ganhar EXP:
id_ring_exp = 2166

 

 

infelizmente eu não testei(meu ot num ta compilando, mas não é por causa desse codigo!)

por favor testem ai...

 

 

flws

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

  • 1 month later...
  • 2 years later...

Olá Xtibianos,

 

Antes de mais nada, os dados do meu server.

VERSÃO: EVOLUTIONS 0.7.8 XML

PROTOCOLO: 7.92

 

 

Há alguns dias precisei inserir a função: Setplayerexprate em minha source. Não encontrei nenhum tutorial que fosse compatível com minha versão. Daí criei o seguinte código:

 

/*
Modificado em 26/09/2010 por Wesley
Se o player estiver com o anel com ID 13859
a sua experiencia é multiplicada por dois
*/
   	int32_t multiplica = 1;
   	Player* attackPlayer = attacker->getPlayer();

   	Item* item = NULL;
if(attackPlayer->inventory[sLOT_RING]){
	item = attackPlayer->inventory[sLOT_RING];
	int idDoItem = item->getID();
	if(item && item->getSlotPosition() << SLOT_RING && idDoItem == 13859){
		multiplica = 2;
	}
}


/***** FIM *****/	

 

O sistema "funcionou", duplicou a EXP quando usando o item. Porém, em alguns lugares, se usar o ring ele derruba o serv. Exemplo Frost Dragon em sqm de gelo.

Será que alguem teria uma solução para meu problema ?

 

Desde já, grato pelo tempo destinado a leitura deste pedido.

Link para o comentário
Compartilhar em outros sites

  • 1 year later...
×
×
  • Criar Novo...