Resultados 1 a 10 de 11

Threaded View

  1. #1
    Developer C++ romariols's Avatar
    Data de Ingresso
    Jun 2017
    Posts
    128
    Thanks Thanks Given 
    33
    Thanks Thanks Received 
    297
    Thanked in
    36 Posts
    Mencionado
    22 Post(s)
    País
    Brazil

    Fix Itens Sumindo na Chaos Machine

    Este foi um dos fix mais difíceis que achei até agora, então, para ajudar a galera que está iniciando vou deixar aqui como eu consegui solucionar.

    O BUG acontece quando um player coloca seus itens na Chaos Machine e em seguida ele é desconectado do servidor por circunstâncias diversas ou fecha o jogo com os itens na Chaos Machine, e ai ele acaba perdendo os itens, pois eles somem do jogo.

    Esta função irá dar um "Rollback" no inventário do player quando isto acontecer, trazendo de volta os itens ao inventário antes de ser desconectado, fixando o problema.

    Defines
    Código:
    #define OBJMAX_RANGE(aIndex) (((aIndex) < 0 )?FALSE:( (aIndex) > OBJECT_MAX-1 )?FALSE:TRUE)
    #define INVENTORY_SIZE 108
    Funções.cpp
    Código:
    int gObjInventoryRollback(int aIndex)
    {
        if (!OBJMAX_RANGE(aIndex))
        {
            return false;
        }
    
    
        for (int n = 0; n < INVENTORY_SIZE; n++)
        {
            gObj[aIndex].Inventory2[n].Clear();
        }
    
    
        gObjSetInventory1Pointer(&gObj[aIndex]);
    
    
        LogAddFuncColor(COLOR_BLACK, "Rollback no Inventário (%s)", gObj[aIndex].Name);
    
    
        return true;
    }
    Funções.h
    Código:
    int gObjInventoryRollback(int aIndex);
    A parte abaixo deve ser inserida na função gObjDel
    Código:
    // - Fix Chaos Machine
    if (lpObj->CloseType == -1 && lpObj->m_IfState.use == 1 && lpObj->m_IfState.type == 7)
    {
        LogAddFuncColor(COLOR_BLUE, "[Chaos-Machine][%s][%s] Fechou de Forma Inesperada", lpObj->AccountID, lpObj->Name);
        gObjInventoryRollback(aIndex);
    }
    Créditos: Romário Leite
    Last edited by Mentor; 03/04/2020 at 11:59 AM. Razão: Tópico movido e alterado o prefix

Permissões de Postagem

  • Você não pode iniciar novos tópicos
  • You may not post Resposta(s)
  • Você não pode enviar anexos
  • Você não pode editar suas mensagens
  •  
Sobre nós
Somos uma comunidade em atividade a 8 anos que aborda assuntos relacionados a games em geral, principalmente games MMORPG. e que busca sempre ajudar os membros através de conteúdos, tutoriais e suporte...
Nossos anunciantes
Hinetworks
VelozHost
InovHost
Rede Sociais