8 leltár [95% TELJES FOLYTATOM]

Indította huzsihun1997, 2015-04-03, 17:58:07

2015-04-03, 17:58:07 Utolsó szerkesztés: 2015-04-03, 18:06:21 Szerző: huzsihun1997
Mi is ez? Miért publikálom?

Nos, ugye a szerverfile 4 és fél leltárat enged alapból (255 slot miadt)

Nos elöször is, irjuk át a slot-ot "int"-re

Ha ez megvan,
forrásban, a common/lenght.h-ban keresük meg ezt:
INVENTORY_MAX_NUM       = 90,

ha eddig 4 leltárad volt, akkor ezt:

INVENTORY_MAX_NUM       = 180,

és irjuk át erre:
INVENTORY_MAX_NUM       = 360,

game/char_item.cpp-ben
2 leltár esetén keress rá erre:
BYTE bPage = bCell / (INVENTORY_MAX_NUM / 2);

4 leltár esetén erre:
BYTE bPage = bCell / (INVENTORY_MAX_NUM / 4);

ird át erre:
BYTE bPage = bCell / (INVENTORY_MAX_NUM / 8);

ugyanitt 2 leltár esetén erre keress rá:
if (p / (INVENTORY_MAX_NUM / 2) != bPage)
4 esetén:
if (p / (INVENTORY_MAX_NUM / 4) != bPage)
és ird át erre:
if (p / (INVENTORY_MAX_NUM / 8) != bPage)

game/exchange.cpp
keress rá erre:

static CGrid s_grid2(5, INVENTORY_MAX_NUM/5 / 2)

és irj még be alá anyit, ahány leltárt akarsz (8 at)

static CGrid s_grid1(5, INVENTORY_MAX_NUM/5 / 2); // oldal 1
static CGrid s_grid2(5, INVENTORY_MAX_NUM/5 / 2); // oldal 2
static CGrid s_grid3(5, INVENTORY_MAX_NUM/5 / 2); // oldal 3
static CGrid s_grid4(5, INVENTORY_MAX_NUM/5 / 2); // oldal 4
static CGrid s_grid1(5, INVENTORY_MAX_NUM/5 / 2); // oldal 5
static CGrid s_grid2(5, INVENTORY_MAX_NUM/5 / 2); // oldal 6
static CGrid s_grid3(5, INVENTORY_MAX_NUM/5 / 2); // oldal 7
static CGrid s_grid4(5, INVENTORY_MAX_NUM/5 / 2); // oldal 8


keress rá erre:
s_grid1.Clear();
s_grid2.Clear();


ird át erre:

s_grid1.Clear();
s_grid2.Clear();
s_grid3.Clear();
s_grid4.Clear();
s_grid5.Clear();
s_grid6.Clear();
s_grid7.Clear();
s_grid8.Clear();

ezt:
for (i = 0; i < INVENTORY_MAX_NUM / 4; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid1.Put(i, 1, item->GetSize());
    }
    for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid2.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());
    }

    for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid3.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());
    }
    for (i = INVENTORY_MAX_NUM / 4; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid4.Put(i - INVENTORY_MAX_NUM / 4, 1, item->GetSize());
    }


erre:
for (i = 0; i < INVENTORY_MAX_NUM / 8; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid1.Put(i, 1, item->GetSize());
    }
    for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid2.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }

    for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid3.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }
    for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
    {
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid4.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }
for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
{
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid5.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }
for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
{
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid6.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }
for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
{
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid7.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }
for (i = INVENTORY_MAX_NUM / 8; i < INVENTORY_MAX_NUM; ++i)
{
        if (!(item = victim->GetInventoryItem(i)))
            continue;

        s_grid8.Put(i - INVENTORY_MAX_NUM / 8, 1, item->GetSize());
    }


Kliens rész:
Inditóban:
2 leltár esetén erre keress rá
const DWORD c_Inventory_Page_Count = 2;
4 esetén erre:
const DWORD c_Inventory_Page_Count = 4;
és ird át erre:
const DWORD c_Inventory_Page_Count = 8;

root/uiinventory.py
self.inventoryTab.append(self.GetChild("Inventory_Tab_02"))

ird alá ezt
self.inventoryTab.append(self.GetChild("Inventory_Tab_03"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_04"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_05"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_06"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_07"))
self.inventoryTab.append(self.GetChild("Inventory_Tab_08"))


keress rá erre:
self.inventoryTab[1].SetEvent(lambda arg=1: self.SetInventoryPage(arg))

ird alá ezt:
self.inventoryTab[2].SetEvent(lambda arg=2: self.SetInventoryPage(arg))
self.inventoryTab[3].SetEvent(lambda arg=3: self.SetInventoryPage(arg))
self.inventoryTab[4].SetEvent(lambda arg=4: self.SetInventoryPage(arg))
self.inventoryTab[5].SetEvent(lambda arg=5: self.SetInventoryPage(arg))
self.inventoryTab[6].SetEvent(lambda arg=6: self.SetInventoryPage(arg))
self.inventoryTab[7].SetEvent(lambda arg=7: self.SetInventoryPage(arg))



az egész setinventorypage funkciót ird felül ezzel: (erre keress rá "def SetInventoryPage(self, page):"

def SetInventoryPage(self, page):
self.inventoryTab[self.inventoryPageIndex].SetUp()
self.inventoryPageIndex = page
self.RefreshBagSlotWindow()


locale_hu/ui/inventorywindow.py
Csatoltam mert túl hosszú
locale_hu/locale_interface.txt

irjuk be bárhova ezt:
2 leltár esetén
INVENTORY_PAGE_BUTTON_TOOLTIP_3 3. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_4 4. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_5 5. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_6 6. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_7 7. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_8 8. leltár


4 leltár esetén:


INVENTORY_PAGE_BUTTON_TOOLTIP_5 5. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_6 6. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_7 7. leltár
INVENTORY_PAGE_BUTTON_TOOLTIP_8 8. leltár