Ir para conteúdo

Featured Replies

Postado
11 horas atrás, BruniinBR disse:

Cara eu não sei abri as sources a onde fica isso? Me explica aew por favor ou então Cria pra mim uma distro 10.10 ja com a vida é mana em % por favor 

 

Em tfs/src/protocolgame.cpp, procurar por:

void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg)

E substituir essa linha por este código:

void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg)
{
	msg->put<char>(0xA0);
	if (player->getPlayerInfo(PLAYERINFO_MAXHEALTH) > 0)
    {
    	float f_h_percent = (float) player->getHealth()  / player->getPlayerInfo(PLAYERINFO_MAXHEALTH);
    	uint16_t h_percent = f_h_percent * 100;
        msg->put<uint16_t>(h_percent);
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);  
	}
	
	msg->put<uint32_t>(uint32_t(player->getFreeCapacity() * 100));
	uint64_t experience = player->getExperience();

	if(experience > 0x7FFFFFFF) // client debugs after 2,147,483,647 exp
		msg->put<uint32_t>(0x7FFFFFFF);
	else
		msg->put<uint32_t>(experience);

	msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_LEVEL));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_LEVELPERCENT));
	
	if (player->getPlayerInfo(PLAYERINFO_MAXMANA) > 0)
    {	
    	float f_m_percent = (float) player->getPlayerInfo(PLAYERINFO_MANA) /  (float) player->getPlayerInfo(PLAYERINFO_MAXMANA);
        uint16_t m_percent = f_m_percent * 100;
        msg->put<uint16_t>(m_percent);
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);
    }
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVEL));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVELPERCENT));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_SOUL));
	msg->put<uint16_t>(player->getStaminaMinutes());
}

Depois é só compilar.

Só copiei do tópico do cara aí.

Master yourself, master the enemy.

  • Respostas 14
  • Visualizações 4.1k
  • Created
  • Última resposta

Top Posters In This Topic

Posted Images

Postado
  • Autor
3 horas atrás, Skydrowz disse:

 

Em tfs/src/protocolgame.cpp, procurar por:


void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg)

E substituir essa linha por este código:


void ProtocolGame::AddPlayerStats(NetworkMessage_ptr msg)
{
	msg->put<char>(0xA0);
	if (player->getPlayerInfo(PLAYERINFO_MAXHEALTH) > 0)
    {
    	float f_h_percent = (float) player->getHealth()  / player->getPlayerInfo(PLAYERINFO_MAXHEALTH);
    	uint16_t h_percent = f_h_percent * 100;
        msg->put<uint16_t>(h_percent);
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);  
	}
	
	msg->put<uint32_t>(uint32_t(player->getFreeCapacity() * 100));
	uint64_t experience = player->getExperience();

	if(experience > 0x7FFFFFFF) // client debugs after 2,147,483,647 exp
		msg->put<uint32_t>(0x7FFFFFFF);
	else
		msg->put<uint32_t>(experience);

	msg->put<uint16_t>(player->getPlayerInfo(PLAYERINFO_LEVEL));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_LEVELPERCENT));
	
	if (player->getPlayerInfo(PLAYERINFO_MAXMANA) > 0)
    {	
    	float f_m_percent = (float) player->getPlayerInfo(PLAYERINFO_MANA) /  (float) player->getPlayerInfo(PLAYERINFO_MAXMANA);
        uint16_t m_percent = f_m_percent * 100;
        msg->put<uint16_t>(m_percent);
        msg->put<uint16_t>(100);
    }
    else
    {
        msg->put<uint16_t>(0);
        msg->put<uint16_t>(0);
    }
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVEL));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_MAGICLEVELPERCENT));
	msg->put<char>(player->getPlayerInfo(PLAYERINFO_SOUL));
	msg->put<uint16_t>(player->getStaminaMinutes());
}

Depois é só compilar.

Só copiei do tópico do cara aí.

Velho eu não sei nem abri a source do servidor imagina fazer isso aí 

3 horas atrás, Zzyzx disse:

Então... a source as vezes vem junto com o servidor é essa pasta que esta na foto logo a baixo, distro 10.10? nunca nem ouvi falar, a que eu usei nesse tutorial ai é a 0.4

 

image.thumb.png.b42d0f37009cb9f804e7409cefd1718b.png

A onde eu acho a pasta source?

Postado
1 hora atrás, BruniinBR disse:

Velho eu não sei nem abri a source do servidor imagina fazer isso aí 

A onde eu acho a pasta source?

 

Então mano, a source é todos esses arquivos ai, Olha na pasta onde esta seu servidor, onde tem a pasta data e o sua distro, ve se tem alguma pasta chamada Source, trunk, ou outra pasta ai dentro com esses arquivos da foto, ou melhor posta o link do otserv que você baixou que eu vejo se seu ot veio com a source ou não.

       112674.gif

 

 

 

Postado
  • Autor
5 horas atrás, Zzyzx disse:

 

Então mano, a source é todos esses arquivos ai, Olha na pasta onde esta seu servidor, onde tem a pasta data e o sua distro, ve se tem alguma pasta chamada Source, trunk, ou outra pasta ai dentro com esses arquivos da foto, ou melhor posta o link do otserv que você baixou que eu vejo se seu ot veio com a source ou não.

eu ja tenho esse mapa faz tempo e n tem pra baixar não ;cc e n tem essa pasta sources 

Postado
36 minutos atrás, BruniinBR disse:

eu ja tenho esse mapa faz tempo e n tem pra baixar não ;cc e n tem essa pasta sources 

Então lascou, vai ter que achar outra distro, uma que venha com a sources.

       112674.gif

 

 

 

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.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.6k

Informação Importante

Confirmação de Termo