Ir para conteúdo

Função Para Adicionar Players No Players.xml


Posts Recomendados

Primeiramente, gostaria de agradeçer o Arkilus por me dar algumas dicas em Simple_XML.

Essa função adiciona players no players.xml facilmente criando guids dependendo da acima, caso não exista nenhum, ele toma conta disso também, não já erro, é extremamente avançado.

 

function players_xml($name) {
$dir = "C:/otserv/data";  // Altere aqui o diretório da pasta data
if(!file_exists("$dir/players/players.xml") {
	$fp = fopen("$dir/players/players.xml", "w");
	 fwrite($fp, '
	 <?xml version="1.0"?>
	 <players>
	 </players>
	  ');
	  fclose($fp);
 }
 else {
	$xml = new SimpleXMLElement(file_get_contents("$dir/players/players.xml"));
		$xml->players->addChild('player');

	$player = end($xml->xpath('/players/player'));
	$nextGuid = (int) $player['guid'] + 1;
	$newPlayer = end($xml->xpath('/players'))->addChild('player');
		$newPlayer->addAttribute('guid', $nextGuid);
		$newPlayer->addAttribute('name', $name);

	$xml->asXML("$dir/players/players.xml");
  }
}

 

Como usar:

 

players_xml('Nostradamus'); // Onde Nostradamus seria o nome do player

 

 

Essa é a melhor forma de adicionar players no players.xml, pois a versão do budaum, ele usa a função date() para adicionar no guid, o que é uma idiotisse.

  • Caso o arquivo players.xml não exista, ele irá criar um, e depois disso, execute o script para então executar a função principal dele, de adicionar players no players.xml.
  • Caso nenhum player esteja no players.xml mesmo assim ele continua o processo normalmente

IMPORTANTE! Por usar simple_xml, requer PHP5 ou superiores, ou seja, não funcionará no Easy-PHP 1.8, mas no Easy-PHP 2.0, funcionará normalmente.

Além disso, o jogador deve possuir a mesma guid do players.xml, por isso edite no seu script tal parte substituindo pela variável $nextGuild.

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

A um tempo atraz, quando ainda usava server xml, eu tinha um site que adicionava os player com um id totalmente louco, tipo 898515464 e o proximo era totalmente diferente o.O

Seu script pode ajudar muito, caso haja algum tipo de bug no player, além de ficar bem + organizado.

Vlw ;D

Link para o comentário
Compartilhar em outros sites

Boa brow, tá aí uma forma decente de mexer no players.xml que muita gente acha que não serve pra nada.

 

Porque ele então não usou MD5? :p

 

aehauaeuaeuaeuaehaeaeuh

Link para o comentário
Compartilhar em outros sites

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