Skocz do zawartości
Opublikowano

Dzień dobry, 

 

W tym poradniku pokażę, jak usunąć niedokończony system aukcyjny z gry. System ten został stworzony przez oficjalnych twórców gry, ale nie został w pełni ukończony. Kod wygląda na coś w rodzaju przestrzeni aukcyjnej, w której gracze mogliby sprzedawać swoje przedmioty. Wiem, że większość sobie bez problemu poradzi z usunięciem tego systemu zwłaszcza, że jest na makro, ale zrobiłem ten poradnik dla mniej doświadczonych, pozdrawiam. 

 

Usunięcie systemu Auction:

📂Lokalizacja pliku: 'common -> length.h'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'common -> tables.h'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń plik

📂Lokalizacja pliku: 'common -> auction_tables.h'

 


 📂Lokalizacja pliku: 'db -> src -> Cache.h'

 Usuń

🔐 Ukryta Treść 🔐

 

 Usuń

🔐 Ukryta Treść 🔐


📂Lokalizacja pliku: 'db -> src -> Cache.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

 Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'db -> src -> ClientManager.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'db -> src -> ClientManager.h'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'db -> src -> main.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'db -> src -> MAKEFILE'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

 

Usuń pliki

📂Lokalizacja pliku: 'db -> src -> AuctionManager.cpp'

📂Lokalizacja pliku: 'db -> src -> AuctionManager.h'

 

 

📂Lokalizacja pliku: 'game -> src -> char_item.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> cmd.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> cmd_general.cpp'

 

 Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> config.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> input_db.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

 📂Lokalizacja pliku: 'game -> src -> item.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

  📂Lokalizacja pliku: 'game -> src -> item.h'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> main.cpp'

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

Usuń

🔐 Ukryta Treść 🔐

 

 

📂Lokalizacja pliku: 'game -> src -> MAKEFILE'

 

Usuń

🔐 Ukryta Treść 🔐

 

 

Usuń pliki

📂Lokalizacja pliku: 'game -> src -> auction_manager.cpp'

📂Lokalizacja pliku: 'game -> src -> auction_manager.h'

📂Lokalizacja pliku: 'game -> src -> auction_packet.h'

 

 

Następnie zrób rekompilację game i db

🔐 Ukryta Treść 🔐

 

 

 📂Lokalizacja pliku: 'UserInterface -> packet.h'

 

Usuń

🔐 Ukryta Treść 🔐

 

🔐 Ukryta Treść 🔐
🔐 Ukryta Treść 🔐

 

Featured Replies

Opublikowano

Bardzo dobrze, zbędne elementy trzeba usuwać 😛

Opublikowano

Danke szyn!

Challange odchudzić src o 2/3 bo zbedny kod, accepted? xD

Edytowane przez ExoCarossa

Opublikowano

Śmieci do kosza + leci 

 

Opublikowano

Dzięki, na pewno się przyda.

Opublikowano

Sporo pominiętego kodu, każdy temat wymaga poprawek i uzupełnienia braków, Sevence sprawdzaj prosze co dodajesz, bo te tematy wyglądają jak jakieś marne kopie z innych for.

1. W db > Cache.h należy usunąć również te linijki:

#ifdef __AUCTION__

class CAuctionItemInfoCache : public cache <TAuctionItemInfo>
{
public:
    typedef TWishItemInfo value_type;
    CAuctionItemInfoCache();
    virtual ~CAuctionItemInfoCache();

    void Delete();
    virtual void OnFlush();
};

class CSaleItemInfoCache : public cache <TSaleItemInfo>
{
public:
    typedef TWishItemInfo value_type;
    CSaleItemInfoCache();
    virtual ~CSaleItemInfoCache();

    void Delete();
    virtual void OnFlush();
};

class CWishItemInfoCache : public cache <TWishItemInfo>
{
public:
    typedef TWishItemInfo value_type;
    CWishItemInfoCache();
    virtual ~CWishItemInfoCache();

    void Delete();
    virtual void OnFlush();
};
#endif


2. W db > cache.cpp należy jeszcze usunąć tę linijkę:

const int auctionMinFlushSec = 1800;


3. W db > Makefile należy wywalić wpis:

AuctionManager.cpp 


4. W game > cmd_general.cpp usunąć:

#ifdef __AUCTION__
#include "auction_manager.h"
#endif


5. W game > input_db.cpp nie należy usuwać tej linijki:

extern BYTE        g_bAuthServer;


6. W game > item.cpp należy usunąć ten kod:

#ifdef __AUCTION__

// °ć¸ĹŔĺ
// window¸¦ °ć¸ĹŔĺŔ¸·Î ÇŃ´Ů.

bool CItem::MoveToAuction()
{
    LPCHARACTER owner = GetOwner();
    if (owner == NULL)
    {
        sys_err ("Item those owner is not exist cannot regist in auction");
        return false;
    }
    
    if (GetWindow() == AUCTION)
    {
        sys_err ("Item is already in auction.");
    }

    SetWindow(AUCTION);
    owner->SetItem(m_bCell, NULL);
    Save();
    ITEM_MANAGER::instance().FlushDelayedSave(this);

    return true;
}

void CItem::CopyToRawData (TPlayerItem* new_item)
{
    if (new_item != NULL)
        return;

    new_item->id = m_dwID;
    new_item->window = m_bWindow;
    new_item->pos = m_bCell;
    new_item->count = m_dwCount;

    new_item->vnum = GetVnum();
    thecore_memcpy (new_item->alSockets, m_alSockets, sizeof (m_alSockets));
    thecore_memcpy (new_item->aAttr, m_aAttr, sizeof (m_aAttr));

    new_item->owner = m_pOwner->GetPlayerID();
}
#endif


7. W game > item.h należy usunąć:

#ifdef __AUCTION__
        // °ć¸ĹŔĺ
        bool        MoveToAuction ();
        void        CopyToRawData (TPlayerItem* item);
#endif


 

Opublikowano
  • Autor

@Zephyr Serio myślisz, że kopiuje jak usunąć kod? 😄 Niektóry kod wcześniej usuwałem stąd może niektórych brakować robię to na podstawie swojego projektu Entry. 

Opublikowano
1 minutę temu, Sevence napisał(a):

@Zephyr Serio myślisz, że kopiuje jak usunąć kod? 😄 Niektóry kod wcześniej usuwałem stąd może niektórych brakować robię to na podstawie swojego projektu Entry. 

Nie zarzucam przecież, że coś kopiujesz, ale zauważ, że każdy poradnik z usuwaniem tego zbędnego kodu ma braki, jak coś robić to porządnie.

Opublikowano
  • Autor

@Zephyr Jak to nie?

 

17 minut temu, Zephyr napisał(a):

Sporo pominiętego kodu, każdy temat wymaga poprawek i uzupełnienia braków, Sevence sprawdzaj prosze co dodajesz, bo te tematy wyglądają jak jakieś marne kopie z innych for.

Właśnie to robisz...

 

 

Poradnik robiłem na podstawie usunięcia ze swojego źródła: remove auction commit entry cześć kodu usuwałem wcześniej przez co go brakowało. Nie robiłem sprawdzenia z oryginalnym źródłem. 

Chcę robić porządnie zawsze błędy mogą się zdarzyć. Fajnie, że zauważyłeś te problemy od razu poprawiłem temat. 

 

Opublikowano
9 minut temu, Sevence napisał(a):

@Zephyr Jak to nie?

 

Właśnie to robisz...

 

 

Poradnik robiłem na podstawie usunięcia ze swojego źródła: 

🔐 Ukryta Treść 🔐

  • 💬 Skomentuj poniżej, aby odkryć ukrytą zawartość!
    👍 Nie zapomnij zostawić reakcji, aby podziękować autorowi za jego pracę!
    ⚠️ Komentarze muszą zawierać minimum 3 litery, inaczej są uważane jako SPAM.

 cześć kodu usuwałem wcześniej przez co go brakowało. Nie robiłem sprawdzenia z oryginalnym źródłem. 

 

Chcę robić porządnie zawsze błędy mogą się zdarzyć. Fajnie, że zauważyłeś te problemy od razu poprawiłem temat. 

 

Zarzuciłbym gdybym stwierdził, że są skopiowane. Porównianie, że wyglądają jak skopiowane to jeszcze nie zarzucanie czegoś. 🙂
Z resztą nie ciągnijmy tematu i nie róbmy gównoburzy, bo nie to miałem na celu 😛

Opublikowano
  • Autor

Też tak uważam, ważne że to zauważyłeś temat już jest w pełni zaktualizowany o brakujący kod. 

Opublikowano

Dziekuje

  • 1 miesiąc temu...
Opublikowano
  • Premium

thx

  • 4 tygodnie później...
Opublikowano

Dzięki 🙂

 

Opublikowano

Dzięki. 

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...