Ir para conteúdo

[Gesior Acc] Server Offline E 0 Players Online


thefog

Posts Recomendados

Olá, muitos usuários do Gesior acc maker ja perceberam que no canto superior direito aparece Server Offline, alguns conseguiram arrumar, mais apartir de então começou a aparecer 0 Players Online ...

vamos lá com meu 1º Tutorial !

 

1º Para arrumar esse bug do ''Server Offline'', basta ir no arquivo em \xampp\htdocs\layouts\tibiacom\layout.php

nele, encontre

if($config['status']['serverStatus_online'] == 1)

2º substituia por

if($config['status']['serverStatus_online'] >= 0)

Pronto! Problema do Server Offline Resolvido! mais pera aí ! de que adianta se agora ta aparecendo 0 players online?

 

3º Agora, adicione ainda no layout.php, antes da tag <head> o seguinte script:

      <?PHP
$update_interval = 10;
if(count($config['site']['worlds']) > 1)
{
$worlds .= '<i>Select world:</i> ';
foreach($config['site']['worlds'] as $id => $world_n)
{
	$worlds .= ' <a href="?subtopic=whoisonline&world='.$id.'">'.$world_n.'</a> , ';
	if($id == (int) $_GET['world'])
	{
		$world_id = $id;
		$world_name = $world_n;
	}
}
$main_content .= substr($worlds, 0, strlen($worlds)-3);
}
if(!isset($world_id))
{
$world_id = 0;
$world_name = $config['server']['serverName'];
}
$order = $_REQUEST['order'];
if($order == 'level')
$orderby = 'level';
elseif($order == 'vocation')
$orderby = 'vocation';
if(empty($orderby))
$orderby = 'name';
$tmp_file_name = 'cache/whoisonline-'.$orderby.'-'.$world_id.'.tmp';
if(file_exists($tmp_file_name) && filemtime($tmp_file_name) > (time() - $update_interval))
{
$tmp_file_content = explode(",", file_get_contents($tmp_file_name));
$number_of_players_online = $tmp_file_content[0];
$players_rows = $tmp_file_content[1];
}
else
{
$players_online_data = $SQL->query('SELECT * FROM players WHERE world_id = '.(int) $world_id.' AND online > 0 ORDER BY '.$orderby);
$number_of_players_online = 0;
foreach($players_online_data as $player)
{
	$number_of_players_online++;
	$acc = $SQL->query('SELECT * FROM '.$SQL->tableName('accounts').' WHERE '.$SQL->fieldName('id').' = '.$player['account_id'].'')->fetch();
	if(is_int($number_of_players_online / 2))
		$bgcolor = $config['site']['darkborder'];
	else
		$bgcolor = $config['site']['lightborder'];
		 $rs = "";
if ($player['skulltime'] > 0 && $player['skull'] == 3)
               $rs = "<img style='border: 0;' src='./images/whiteskull.gif'/>";
       elseif ($player['skulltime'] =  $player['skull'] == 4)
               $rs = "<img style='border: 0;' src='./images/redskull.gif'/>";
       elseif ($player['skulltime'] =  $player['skull'] == 5)
               $rs = "<img style='border: 0;' src='./images/blackskull.gif'/>";

	$players_rows .= '<TR BGCOLOR='.$bgcolor.'><TD WIDTH=10%><image src="images/flags/'.$acc['flag'].'.png"/></TD><TD WIDTH=70%><A HREF="?subtopic=characters&name='.urlencode($player['name']).'">'.$player['name'].$rs.'</A></TD><TD WIDTH=10%>'.$player['level'].'</TD><TD WIDTH=20%>'.$vocation_name[$world_id][$player['promotion']][$player['vocation']].'</TD></TR>';
}

}



?>

4º E onde estiver (em baixo do if que você alterou no passo 1)

echo $config['status']['serverStatus_players'].'<br />Players Online';

Substitua por

echo ''.$number_of_players_online.'<br />Players Online';

5º REP+ !

1po.png16po.png

 

Pronto ! Foi usado o Gesior 0.3.8

Para quem ta desconfiando que eu copiei, o script que é para colocar antes da tag <head> foi tirado do whoisonline.php !

mais tem gente que nunca nem imaginou em fazer isso!

TUTORIAL 100% FEITO POR MIM, SE FOR POSTAR EM OUTRO FORUM, COLOQUE CRÉDITOS !

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

  • 3 weeks later...
  • 4 weeks later...
  • 3 weeks later...
  • 3 weeks later...
  • 3 weeks later...
  • 1 month later...
  • 7 months later...

Muinto obrigado vlw mesmo, meu site parecia muinto raramente quantos players on maioria da vez ficava sem nada so players online agora ta 100%

 

Reviver topico inativo a mais de 1 mês sem complementar ou tarzer uma duvida é contra as regras!

-Rep espero que não aconteça novamente, leia as regras!

Link para o comentário
Compartilhar em outros sites

  • 3 months later...
  • 1 year later...

Descupa esta revivendo o topico, porque estou com um problema, o meu não tem isso.

 

 

echo $config['status']['serverStatus_players'].'<br/>Players Online';

Em baixo do que ta peddindo so tem isso.

 

if($config['status']['serverStatus_online'] == 1)
echo $config['status']['serverStatus_players'].'/'.$config['status']['serverStatus_playersMax'].'<br />Uptime: '.$config['status']['serverStatus_uptime'].'<br />';
else
echo '<font color="red"><b>Server<br />OFFLINE</b></font>';
?></div>

Alguem pode me ajudar?, Obrigado.
Editado por RodriGoT
Link para o comentário
Compartilhar em outros sites

  • 2 weeks later...
×
×
  • Criar Novo...