Ir para conteúdo

Featured Replies

Postado

OTHire

Myaac

 

   Olá prezados, 

 

   Quando entro em minha account e deleto um character, ocorre o seguinte cenário:

 

  • Na database a coluna "Deleted" fica "1"  (como deveria ficar)
  • Não consigo encontrar o personagem em "Characters" (como deveria ser)
  • O jogador é exibido em accountmanagement 
  • Consigo entrar no jogo com o personagem que teria sido deletado

 

   Alguém pode me ajudar com essa questão?

 

   Obrigado!

  • 10 months later...
Postado

Eu estava com o mesmo problema em um Gesior, descobri que o motivo era porque o jogo interpretava a coluna Deletion e não a Deleted para definir se o player está deletado ou não.

OU SEJA, SÓ FUNCIONARÁ SE VOCÊ FOR NA TABELA PLAYERS, COLOCAR DELETION = 1 E NÃO APARECER O CHARACTER NA LISTA DO JOGO.

 

Como não sei mudar isso (qual coluna o jogo deveria ler para definir se o player está deletado ou não).

No meu accountmanager.php, ele definia deleted = 1 quando o character era deletado e deleted = 0 quanto estava normal.
E todo o sistema de character.php, accountmanager.php usava isso como parâmetro (o deleted).

 

Por isso, para não ficar muito complicado, eu fiz isso para ajeitar:

No meu accountmanager.php tem essa parte
 

Spoiler

if(!$player->isOnline())
                                {
                                    //dont show table "delete character" again
                                    $dontshowtableagain = 1;
                                    //delete player
                                    $player->set('deleted', 1);

                                    $player->save();

 

Eu adicionei essa linha embaixo do  $player->set('deleted', 1);

Spoiler

$deletion1 = $SQL->query("UPDATE `players` SET `deletion` = 1 WHERE `name` = '$player_name'") or die(mysql_error());

e assim ficando:

Spoiler

                                if(!$player->isOnline())
                                {
                                    //dont show table "delete character" again
                                    $dontshowtableagain = 1;
                                    //delete player
                                    $player->set('deleted', 1);
                                    $deletion1 = $SQL->query("UPDATE `players` SET `deletion` = 1 WHERE `name` = '$player_name'") or die(mysql_error());
                                    $player->save();
 

 

fazendo o mesmo, só que com valor diferente, no undelet.

Antes era:
 

Spoiler

if(!$player->isOnline())
                        {
                            $player->set('deleted', 0);
                            $player->save();
 


só deixar:
 

Spoiler

if(!$player->isOnline())
                        {
                            $player->set('deleted', 0);
                            $deletion2 = $SQL->query("UPDATE `players` SET `deletion` = 0 WHERE `name` = '$player_name'") or die(mysql_error());

                            $player->save();

 

Após isso, funcionou de boas.

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