Ir para conteúdo

[7.92]players Records <text Based>


Posts Recomendados

Bom, esse é code de um amigo meu, todos já devem ter visto essa função, porém ele não tem nas versões :D, ele é conheçido bastante no Tibia global.

 

New record: x players are logged in.

 

Em game.cpp

 

abaixo de:

maxPlayers = g_config.getNumber(ConfigManager::MAX_PLAYERS);

 

adicione:

recordPlayer = 0;
loadRecord();

 

Agora na função:

bool Game::placeCreature(const Position& pos, Creature* creature, bool forced /*= false*/)

 

abaixo de:

if(Player* player = creature->getPlayer())
{

 

adicione:

checkRecord();

 

No final de game.cpp, adicione:

void Game::loadRecord()
{

FILE* file = fopen("record.log", "r");
if(file != NULL)
{
   fscanf(file, "online_players=%d", &recordPlayer);
   fclose(file);
}

}
void Game::checkRecord()
{
 if(getPlayersOnline() > recordPlayer)
 {
	char msg[64], log[32];
	sprintf(msg, "New record: %d players are logged in.", getPlayersOnline());
	for(AutoList<Player>::listiterator it = Player::listPlayer.list.begin(); it != Player::listPlayer.list.end(); ++it){
		(*it).second->sendTextMessage(MSG_EVENT_ADVANCE, msg);
	}

	recordPlayer = getPlayersOnline();
	// save record
	FILE* file = fopen("record.log", "w+");

	sprintf(log, "online_players=%d", getPlayersOnline()); 
	fputs(log, file);
	fclose(file);

 }

}

 

Agora em game.h abaixo de:

class Game
{
public:
 Game();
~Game();

 

adicione:

uint16_t recordPlayer;
void checkRecord();
void loadRecord();

 

Codigo desenvolvido por Raphael Carnaúba.

Todos direitos reservados®

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

  • 3 weeks later...
  • 2 weeks later...
  • 5 months later...
  • 6 months later...
×
×
  • Criar Novo...