Item Structure

Results 1 to 2 of 2
  1. #1
    Cyclops-Network Owner Alexsh is offline
    MemberRank
    Sep 2009 Join Date
    New YorkLocation
    306Posts

    ! Item Structure

    Since I still have this problem persisting, can anyone tell me where the piece of code is in the source that sets up how items are displayed in the bag/bank/guild warehouse. The item on slot 1 of each of these keeps disappearing whilst restarting the database server. I've been relentlessly trying to figure this out. I'm not sure which function is even causing it. I've tried commenting out a lot of functions just to see if it would stop. So far i've had no luck whatsoever.

    Help would really be appreciated. I've been trying for the past day and a half.


  2. #2
    (つ•̀ᴥ•́)つ Marvinoo is offline
    MemberRank
    Feb 2009 Join Date
    245Posts

    Re: Item Structure

    Try to use a new database. Clean v15 perhaps?

    anyway i think your /awake system is the problem. Because items keep dissapering off the first slot of your inventory this is the line where it says:

    int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );

    Full line:

    #ifdef __AWA_WITH_PENYACOST
    if( pItemElem )
    {
    int nCost = 1000000;
    int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );

    if( 0 < nCost )
    {
    if( nRandomOptionKind >= 0 )
    {
    if( pUser->GetGold() > nCost )
    {
    if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
    {
    char chMessage[100];
    sprintf( chMessage, "Du musst dein aktives Pet einpacken!" );
    pUser->AddText( chMessage );
    }
    else
    {
    pUser->AddGold( -( nCost ) );
    g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
    g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
    pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
    }
    }
    else
    {
    pUser->AddText( "Du hast nicht genug Geld!" );
    }
    }
    }
    }
    else
    {
    pUser->AddText( "Lege den Gegenstand an den ersten Slot deines Inventars." );
    }
    #else
    if( pItemElem )
    {
    int nRandomOptionKind = g_xRandomOptionProperty->GetRandomOptionKind( pItemElem );
    if( nRandomOptionKind >= 0 ) // ¾ÆÀÌÅÛ °¢¼º, ¿©½ÅÀÇ ÃູÀÌ °¡´ÉÇÑ ´ë»ó
    {
    if(pUser->HasActivatedSystemPet() && pItemElem->GetProp()->dwItemKind3 == IK3_EGG || pUser->HasActivatedEatPet() && pItemElem->GetProp()->dwItemKind3 == IK3_PET )
    {
    char chMessage[100];
    sprintf( chMessage, "Du musst dein aktives Pet einpacken!" );
    pUser->AddText( chMessage );
    }
    else
    {
    g_xRandomOptionProperty->InitializeRandomOption( pItemElem->GetRandomOptItemIdPtr() );
    g_xRandomOptionProperty->GenRandomOption( pItemElem->GetRandomOptItemIdPtr(), nRandomOptionKind, pItemElem->GetProp()->dwParts );
    pUser->UpdateItemEx( (BYTE)( pItemElem->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem->GetRandomOptItemId() );
    }
    }
    }
    #endif //__AWA_WITH_PENYACOST
    somewhere in here is the function you are looking for.

    But the problem i think it is is the database server / or linked server / odbc.



Advertisement