elitepvpers

elitepvpers (https://www.elitepvpers.com/forum/)
-   Flyff Private Server (https://www.elitepvpers.com/forum/flyff-private-server/)
-   -   Tab Menü im inventory??? (https://www.elitepvpers.com/forum/flyff-private-server/1507808-tab-men-im-inventory.html)

killerooo 10/25/2011 16:41

Ich hatte es so gemacht die Items für jede Kategorie in einer Spalte zu speichern und über eine Prozedur je nach Typ der jeweiligen Spalte zuzuweisen und dann beim Login auch aus den jeweiligen Spalten wieder auszulesen.

Krustenkäse 10/25/2011 16:54

Quote:

Originally Posted by killerooo (Post 13532836)
Ich hatte es so gemacht die Items für jede Kategorie in einer Spalte zu speichern und über eine Prozedur je nach Typ der jeweiligen Spalte zuzuweisen und dann beim Login auch aus den jeweiligen Spalten wieder auszulesen.

ah ok... ich verstehe, aber wie haste das mim Equipment dann geregelt?
Beim Login wird erstmal nur das Equipment gequeried, heisst die ersten 32 Indezes ( oder waren es die letzten?^^ ) Jedenfalls war das der Grund für mich keinen 4er Array für das Inventar zu verwenden ( also CItemContainer<CItemElem> m_nInventory[4] ) oder gar die DB umzuproggen

N8Schatten 10/25/2011 17:19

Spielt das hier ne rolle habe es gefunden und hat mich an die slots erinnert?
Quote:

#define MAX_VENDOR_INVENTORY_TAB 4

Sedrika 10/25/2011 17:57

Quote:

Originally Posted by N8Schatten (Post 13533536)
Spielt das hier ne rolle habe es gefunden und hat mich an die slots erinnert?

Das ist für shops.

Razzer' 10/25/2011 22:41

Ich glaube dieses Tab System ist von aleo flyff die haben dch die offi Files und Source , :)

Yakuzai. 10/25/2011 23:06

Ja, das ist von Aleo Flyff, die haben auch noch die Source ?

killerooo 10/25/2011 23:06

Danke das du uns darüber aufklärst!
Sie besitzen nur die Files keine Source.

xxrob236xx 10/26/2011 09:28

so no fix source for that inventory

Jumpy*-* 10/26/2011 16:09

Sie benutzen nur normale offi files, ohne source, die wollen alles per Packetfilter fixxen etc. hatten sie mir noch gesagt^^

xxrob236xx 10/29/2011 08:45

WHERE TO PUT THIS
 
Quote:

Originally Posted by Krustenkäse (Post 13532142)
Theoretisch muss man da gar nicht so viel machen :D
1. das Inventar muss bearbeitet werden, sodass 3 weitere Tabs geaddet werden... schnell gemacht:
Code:

    for( int i=0;i<4;i++ )
        m_pInventory[i].SetItemContainer( ITYPE_ITEM, 42 );//ItemContainer erzeugen

    for( int i=0;i<(int)g_pPlayer->m_Inventory.m_dwItemMax;i++ )
    {
        int index = g_pPlayer->m_Inventory.m_apItem[i].GetProp()->GetInvenIndex();
        m_pInventory[ index ].Add( &g_pPlayer->m_Inventory.m_apItem[i] );
        //Items in die Container einfügen... habe eine Funktion, die den Index returnt, in Abhängigkeit vom Itemtyp
    }
    m_wndItemCtrl.Create( WLVS_ICON, CRect( 0, 0, 250, 250 ), pTabCtrl, 11 );//Tab erstellen
    m_wndItemCtrl.InitItem( &m_pInventory[0], APP_INVENTORY, 1 );//und initialisieren
    m_wndItemCtrl_ext[0].Create( WLVS_ICON, CRect( 0, 0, 250, 250 ), pTabCtrl, 12 );
    m_wndItemCtrl_ext[0].InitItem( &m_pInventory[1], APP_INVENTORY, 2 );
    m_wndItemCtrl_ext[1].Create( WLVS_ICON, CRect( 0, 0, 250, 250 ), pTabCtrl, 13 );
    m_wndItemCtrl_ext[1].InitItem( &m_pInventory[2], APP_INVENTORY, 3 );
    m_wndItemCtrl_ext[2].Create( WLVS_ICON, CRect( 0, 0, 250, 250 ), pTabCtrl, 14 );
    m_wndItemCtrl_ext[2].InitItem( &m_pInventory[3], APP_INVENTORY, 4 );

2. Das Inventar auf das 4-fache vergrößern... Hintergedanke: alle Inventarsize/4 beginnt ein neues Tab... dadurch muss dann net so viel geproggt werden.

WHERE I CAN FIND THIS CODE IN SOURCE?


3. die WndItemCtrl Klasse umprogrammieren, damit die richtigen Items angezeigt werden, bei bewegen eines Items der richtige Index abgefragt wird usw...

...so würde ich mir das mit dem Tabbed Inv vorstellen... abe es allerdings noch nicht umgesetzt, weil ich nicht genug Zeit hatte^^

ach ja... die Index Funktion nicht vergessen^^
die habe ich in die ItemProp Klasse rein:
Code:

        int        GetInvenIndex( )
        {
            switch( dwItemKind3 )
            {
                case IK3_GEM:
                    return 3;
                    break;
                case IK3_SUMMON_NPC:
                case IK3_PET:
                    return 1;
                    break;
                case IK3_GLOVE:
                case IK3_CLOTH:
                case IK3_CLOAK:
                case IK3_SHOES:
                case IK3_MASK:
                case IK3_HAT:
                    return 2;
                    break;
                default:
                    return 0;
                    break;
            }
            return 0;
        }

AND THIS WHERE SOURCE CAN I PUT THIS CODE


Edit: Man muss noch ein paar andere Funktionen umproggen, wie zB die CreateItem Funktion, damit er erkennt, wann das Inventar voll ist, was allerdings auch direkt in die >CItemContainer Klasse programmiert werden kann^^

OVER ALL WHAT NAME OF SOURCE CAN I PUT THAT CODE

Achileus 10/29/2011 11:50

Quote:

Originally Posted by xxrob236xx (Post 13597253)
OVER ALL WHAT NAME OF SOURCE CAN I PUT THAT CODE

That was a example!

Synxx© 10/29/2011 20:43

Quote:

Originally Posted by Jumpy*-* (Post 13549528)
Sie benutzen nur normale offi files, ohne source, die wollen alles per Packetfilter fixxen etc. hatten sie mir noch gesagt^^

Auch die offi source haben kleine fehlcodungen also schon dumm :facepalm:
Aber die haben ja ihre user^^


All times are GMT +2. The time now is 22:07.

Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.