Ir para conteúdo

Bug Dos Chars Banidos Arrumado-Gesior


dreigon67

Posts Recomendados

Bem eu vim aqui mostrar para vocês como consertar o bug que fica quando entramos no perfil de chars banidos:

esse é o erro que normalmente aparece:

 

 

Fatal error: Call to undefined method OTS_Account::getBanTime() in C:\xampp\htdocs\characters.php on line 368

 

para conserta-lo você precisa ir no htdocs/character.php e procurar por:

 

if($account->isBanned())
				if($account->getBanTime() > 0)
					$main_content .= '<font color="red"> [banished until '.date("j F Y, G:i", $account->getBanTime()).']</font>';
				else
					$main_content .= '<font color="red"> [banished FOREVER]</font>';

e substituir essa parte por:

 

  if($account->isBanned())
{
				   if(is_int($number_of_rows / 2)) { $bgcolor = $config['site']['darkborder']; } else { $bgcolor = $config['site']['lightborder']; } $number_of_rows++;
					$main_content .= '<TR BGCOLOR="'.$bgcolor.'"><TD><font color=red>Banished:</font></TD>';
						$ban_reason = array("Offensive Name", "Invalid Name Format", "Unsuitable Name", "Name Inciting Rule Violation", "Offensive Statement", "Spamming", "Illegal Advertising", "Off-Topic Public Statement", "Non-English Public Statement", "Inciting Rule Violation", "Bug Abuse", "Game Weakness Abuse", "Using Unofficial Software to Play", "Hacking", "Multi-Clienting", "Account Trading or Sharing", "Threatening Gamemaster", "Pretending to Have Influence on Rule Enforcer", "False Report to Gamemaster", "Destructive Behaviour", "Excessive Unjustified Player Killing", "Invalid Payment", "Spoiling Auction");
						$players_banned = $SQL->query('SELECT `expires`, `added`, `reason` FROM `bans` WHERE `value` = '.$account.'  AND `active` = 1 GROUP BY `value` ORDER BY `added` DESC')->fetchAll();
						foreach($players_banned as $player)
						{
							if ($player['expires'] == "-1") // If the banishment is permanent
								$expires = "Permament";
							else
								$expires = date("j F Y, g:i a", $player['expires']);
							$player_ban .= '<font color=red>At '.date("j F Y, g:i a", $player['added']).' CET because of '.$ban_reason[$player['reason']].'. Expires at '.$expires.' CET</font>';
						}
					$main_content .= '<td>'.$player_ban.'</td></tr>';
				}
				$main_content .= '</TABLE>';
$main_content .= '<br><TABLE BORDER=0><TR><TD></TD></TR></TABLE><TABLE BORDER=0 CELLSPACING=1 CELLPADDING=4 WIDTH=100%><TR BGCOLOR='.$

Pronto salve e feche e o bug vai estar consertado :)

(Eu sei que tem como consertar o bug apenas trocando o arquivo character.php mas esse tutorial é para aqueles que n querem trocar o arquivo)

 

Créditos: 50% para mim por ter feito o tutorial e consertado o bug no arquivo original

50% para os criadores do character.php do gesior e do outro(esqueci de onde eu peguei) que serviram de base.

 

(por favor comentem se acharem algum erro)

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

  • 4 weeks later...
  • 3 weeks later...
  • 2 weeks later...
  • 4 weeks later...

Obrigado pela resposta, mas não acho que trocar o character.php va resolver isso ja que o erro esta na parte que vc postou nesse tópico.

 

 

 

EDIT:resolvi esse erro apagando essa parte

foreach($players_banned as $player) , e substituindo todos os $player por $players_banned

 

obrigado pelo script e pela ajuda:D rep+

Editado por celohere
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...