[Tutorial] Fix split weapons ammo Sourc DNC

Results 1 to 13 of 13
  1. #1
    Enthusiast Jhaimes Ribeiro is offline
    MemberRank
    Jan 2014 Join Date
    35Posts

    happy [Tutorial] Fix split weapons ammo Sourc DNC

    in WZ\src\EclipseStudio\Sources\UI\UIItemInventory.cpp


    find


    Code:
    void UIItemInventory::addTabTypes()
    {
        Scaleform::GFx::Value var[8];
        var[2].SetNumber(0); 
        var[3].SetNumber(0);
        var[4].SetNumber(0);
        var[5].SetNumber(0);
        var[6].SetNumber(0);
        var[7].SetBoolean(true); // visible in store
    
    
        // store & inventory tabs
    
    
        var[0].SetNumber(0);
        var[1].SetString("weapon");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(1);
        var[1].SetString("ammo");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);

    to replace


    Code:
    void UIItemInventory::addTabTypes()
    {
        Scaleform::GFx::Value var[8];
        var[2].SetNumber(0); 
        var[3].SetNumber(0);
        var[4].SetNumber(0);
        var[5].SetNumber(0);
        var[6].SetNumber(0);
        var[7].SetBoolean(true); // visible in store
    
    
        // store & inventory tabs
    
    
        var[0].SetNumber(0);
        var[1].SetString("weapon");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(1);
        var[1].SetString("ammo");
        var[2].SetBoolean(true); 
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);











    find


    Code:
    // special category for ammo
        var[0].SetNumber(419);
        var[1].SetString("ammo");
        //var[2].SetNumber(1);
        var[2].SetNumber(0);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);

    to replace


    Code:
    // special category for ammo
        var[0].SetNumber(419);
        var[1].SetString("ammo");
        var[2].SetNumber(1);
        //var[2].SetNumber(0);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);

    credits @DNC thanks you
    Last edited by DNC; 22-07-14 at 05:18 PM. Reason: Required title tag added since the topic is getting replies (required)


  2. #2
    Member robson154 is offline
    MemberRank
    Sep 2013 Join Date
    75Posts

    Re: Fix split weapons ammo Sourc DNC

    Quote Originally Posted by Jhaimes Ribeiro View Post
    in WZ\src\EclipseStudio\Sources\UI\UIItemInventory.cpp


    find


    Code:
    void UIItemInventory::addTabTypes()
    {
        Scaleform::GFx::Value var[8];
        var[2].SetNumber(0); 
        var[3].SetNumber(0);
        var[4].SetNumber(0);
        var[5].SetNumber(0);
        var[6].SetNumber(0);
        var[7].SetBoolean(true); // visible in store
    
    
        // store & inventory tabs
    
    
        var[0].SetNumber(0);
        var[1].SetString("weapon");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(1);
        var[1].SetString("ammo");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);

    to replace


    Code:
    void UIItemInventory::addTabTypes()
    {
        Scaleform::GFx::Value var[8];
        var[2].SetNumber(0); 
        var[3].SetNumber(0);
        var[4].SetNumber(0);
        var[5].SetNumber(0);
        var[6].SetNumber(0);
        var[7].SetBoolean(true); // visible in store
    
    
        // store & inventory tabs
    
    
        var[0].SetNumber(0);
        var[1].SetString("weapon");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(1);
        var[1].SetString("ammo");
        var[2].SetBoolean(true); 
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);











    find


    Code:
    // special category for ammo
        var[0].SetNumber(419);
        var[1].SetString("ammo");
        //var[2].SetNumber(1);
        var[2].SetNumber(0);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);

    to replace


    Code:
    // special category for ammo
        var[0].SetNumber(419);
        var[1].SetString("ammo");
        var[2].SetNumber(1);
        //var[2].SetNumber(0);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);

    credits @DNC thanks you
    Thanks @Jhaimes Ribeiro
    Thanks @DNC

  3. #3
    Member Alp Erdur is offline
    MemberRank
    Apr 2014 Join Date
    80Posts

    Re: Fix split weapons ammo Sourc DNC

    whats this exactly?

  4. #4
    Member ChuTszHin is offline
    MemberRank
    Jan 2014 Join Date
    HongKongLocation
    69Posts

    Re: Fix split weapons ammo Sourc DNC

    Hello, thank you for sharing.


    This is useful, I succeeded in making the mall bullets displayed separately.


    But the firearms had disappeared, I would like to know how it is displayed.


    Firearms, ammunition, ......

  5. #5
    Enthusiast Jhaimes Ribeiro is offline
    MemberRank
    Jan 2014 Join Date
    35Posts

    Re: Fix split weapons ammo Sourc DNC

    search for
    var[0].SetNumber(0);
    var[1].SetString("weapon");
    var[2].SetBoolean(false); <<-- add (true)
    var[3].SetBoolean(true);
    gfxMovie_->Invoke("_root.api.addTabType", var, 4);




    // special category for ammo
    var[0].SetNumber(419);
    var[1].SetString("ammo");
    var[2].SetNumber(1);
    //var[2].SetNumber(0); <<-- Remove //
    var[3].SetNumber(-1);
    gfxMovie_->Invoke("_root.api.addCategory", var, 4);

  6. #6
    Member ChuTszHin is offline
    MemberRank
    Jan 2014 Join Date
    HongKongLocation
    69Posts

    Re: Fix split weapons ammo Sourc DNC

    Quote Originally Posted by Jhaimes Ribeiro View Post
    search for
    var[0].SetNumber(0);
    var[1].SetString("weapon");
    var[2].SetBoolean(false); <<-- add (true)
    var[3].SetBoolean(true);
    gfxMovie_->Invoke("_root.api.addTabType", var, 4);




    // special category for ammo
    var[0].SetNumber(419);
    var[1].SetString("ammo");
    var[2].SetNumber(1);
    //var[2].SetNumber(0); <<-- Remove //
    var[3].SetNumber(-1);
    gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    Now worse.


    Firearms (firearms, ammunition, mixed together.), Ammunition (empty), accessory items missing.

  7. #7
    Alpha Member javaz97 is offline
    MemberRank
    May 2006 Join Date
    HellLocation
    1,537Posts

    Re: Fix split weapons ammo Sourc DNC

    fix ??

  8. #8
    Professional RageZone XxFuR4xX is online now
    MemberRank
    Jun 2013 Join Date
    ENG / FRLocation
    253Posts

    Re: Fix split weapons ammo Sourc DNC

    What Fix ???

  9. #9
    Professional RageZone XxFuR4xX is online now
    MemberRank
    Jun 2013 Join Date
    ENG / FRLocation
    253Posts

    Re: Fix split weapons ammo Sourc DNC

    Quote Originally Posted by XxFuR4xX View Post
    What Fix ???
    Hello I would really like an answer

  10. #10
    ¿ aLca is offline
    MemberRank
    Apr 2013 Join Date
    /dev/nullLocation
    548Posts

    Re: [Tutorial] Fix split weapons ammo Sourc DNC

    Quick 'n Dirty; in the Communty Edition are Weapons AND Ammo in the same Tab.

  11. #11
    Professional RageZone XxFuR4xX is online now
    MemberRank
    Jun 2013 Join Date
    ENG / FRLocation
    253Posts

    Re: [Tutorial] Fix split weapons ammo Sourc DNC

    Quote Originally Posted by aLca View Post
    Quick 'n Dirty; in the Communty Edition are Weapons AND Ammo in the same Tab.
    This tuto, Not Work

  12. #12
    Apprentice CowZ is offline
    MemberRank
    Dec 2014 Join Date
    7Posts

    Re: [Tutorial] Fix split weapons ammo Sourc DNC

    What do I do give further build solution in releace or end?

  13. #13
    Novice Walking Death is offline
    MemberRank
    Dec 2014 Join Date
    4Posts

    Re: [Tutorial] Fix split weapons ammo Sourc DNC

    Replace whole UIItemInventory.cpp with this, tested and work 100%, hope this help:


    Code:
    #include "r3dPCH.h"
    #include "r3d.h"
    
    
    #include "UIItemInventory.h"
    
    
    #include "APIScaleformGfx.h"
    
    
    #include "ObjectsCode/weapons/WeaponArmory.h"
    
    
    UIItemInventory::UIItemInventory() :
    gfxMovie_(NULL)
    {
    }
    
    
    void UIItemInventory::initialize(r3dScaleformMovie* gfxMovie)
    {
        r3d_assert(gfxMovie);
    
    
        gfxMovie_ = gfxMovie;
    
    
        addTabTypes();
        addItems();
        addCategories();
    }
    
    
    void UIItemInventory::addTabTypes()
    {
        //r3dOutToLog("AomBESystem : Adding Weapons Tab\n");
        //r3dOutToLog("AomBESystem : Added\n");
        Scaleform::GFx::Value var[8];
        var[2].SetNumber(0); 
        var[3].SetNumber(0);
        var[4].SetNumber(0);
        var[5].SetNumber(0);
        var[6].SetNumber(0);
        var[7].SetBoolean(true); // visible in store
    
    
        // AomBE - Market Place
    
    
        // store & inventory tabs
    
    
        // AomBE - Adding Weapons Tab
    
    
        var[0].SetNumber(0);
        var[1].SetString("weapon");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(1);
        var[1].SetString("ammo");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(2);
        var[1].SetString("explosives");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(3);
        var[1].SetString("gear");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(4);
        var[1].SetString("food");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(5);
        var[1].SetString("survival");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(6);
        var[1].SetString("equipment");
        var[2].SetBoolean(true);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    
    
        var[0].SetNumber(7);
        var[1].SetString("account");
        var[2].SetBoolean(false);
        var[3].SetBoolean(true);
        gfxMovie_->Invoke("_root.api.addTabType", var, 4);
    }
    
    
    void UIItemInventory::addItems()
    {
        Scaleform::GFx::Value var[20];
        std::vector<const WeaponConfig*> allWpns;
        std::vector<const GearConfig*> allGear;
        std::vector<const ModelItemConfig*> allItem;
        std::vector<const HeroConfig*> allHeroes;
        std::vector<const FoodConfig*> allFood;
        std::vector<const BackpackConfig*> allBackpack;
        std::vector<const WeaponAttachmentConfig*> allAmmo;
        std::vector<const WeaponAttachmentConfig*> allAttachments;
    
    
        g_pWeaponArmory->startItemSearch();
        while(g_pWeaponArmory->searchNextItem())
        {
            uint32_t itemID = g_pWeaponArmory->getCurrentSearchItemID();
            const WeaponConfig* config = g_pWeaponArmory->getWeaponConfig(itemID);
            if(config)
            {
                allWpns.push_back(config);
            }
            const GearConfig* gearConfig = g_pWeaponArmory->getGearConfig(itemID);
            if(gearConfig)
            {
                allGear.push_back(gearConfig);
            }
            const ModelItemConfig* itemConfig = g_pWeaponArmory->getItemConfig(itemID);
            if(itemConfig)
            {
                allItem.push_back(itemConfig);
            }
            const HeroConfig* heroConfig = g_pWeaponArmory->getHeroConfig(itemID);
            if(heroConfig)
            {
                allHeroes.push_back(heroConfig);
            }            
            const FoodConfig* foodConfig = g_pWeaponArmory->getFoodConfig(itemID);
            if(foodConfig)
            {
                allFood.push_back(foodConfig);
            }            
            const BackpackConfig* backpackConfig = g_pWeaponArmory->getBackpackConfig(itemID);
            if(backpackConfig)
            {
                allBackpack.push_back(backpackConfig);
            }            
            const WeaponAttachmentConfig* wpnAttmConfig = g_pWeaponArmory->getAttachmentConfig(itemID);
            if(wpnAttmConfig)
            {
                if(wpnAttmConfig->m_type == WPN_ATTM_CLIP)
                    allAmmo.push_back(wpnAttmConfig);
                else
                    allAttachments.push_back(wpnAttmConfig);
            }            
        }
    
    
        const int backpackSize = allBackpack.size ();
        for(int i = 0; i < backpackSize; ++i)
        {
            const BackpackConfig* backpack = allBackpack[i];
    
    
            var[0].SetUInt(backpack->m_itemID);
            var[1].SetNumber(backpack->category);
            var[2].SetStringW(backpack->m_StoreNameW);
            var[3].SetStringW(backpack->m_DescriptionW);
            var[4].SetString(backpack->m_StoreIcon);
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(backpack->m_Weight);                        // weight
            var[7].SetInt(backpack->m_maxSlots);
            var[8].SetNumber(backpack->m_maxWeight);
            gfxMovie_->Invoke("_root.api.addItem", var, 9);
        }
    
    
    
    
        const int gearSize = allGear.size ();
        for(int i = 0; i < gearSize; ++i)
        {
            const GearConfig* gear = allGear[i];
    
    
            var[0].SetUInt(gear->m_itemID);
            var[1].SetNumber(gear->category);
            var[2].SetStringW(gear->m_StoreNameW);
            var[3].SetStringW(gear->m_DescriptionW);
            var[4].SetString(gear->m_StoreIcon);
            var[5].SetBoolean(false); // is stackable
            var[6].SetNumber(gear->m_Weight);
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    {
            Scaleform::GFx::Value var[9];
        var[0].SetUInt(301365);
            var[1].SetNumber(28);
            var[2].SetString("Metal Pipe");
            var[3].SetString("Craft Component Item");
            var[4].SetString("$Data/Weapons/StoreIcons/Craft_MetalPipe_01.dds");
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(0);                        // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    {
            Scaleform::GFx::Value var[9];
        var[0].SetUInt(301321);
            var[1].SetNumber(50);
            var[2].SetString("Gas");
            var[3].SetString("");
            var[4].SetString("$Data/Weapons/StoreIcons/Craft_Gas_01.dds");
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(0);                        // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
            {
            Scaleform::GFx::Value var[9];
        var[0].SetUInt(301370);
            var[1].SetNumber(28);
            var[2].SetString("Rope");
            var[3].SetString("Craft Component Item");
            var[4].SetString("$Data/Weapons/StoreIcons/Craft_Rope_01.dds");
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(0);                        // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
                    {
            Scaleform::GFx::Value var[9];
        var[0].SetUInt(301319);
            var[1].SetNumber(28);
            var[2].SetString("Duck Tape");
            var[3].SetString("Craft Component Item");
            var[4].SetString("$Data/Weapons/StoreIcons/Craft_DuckTape_01.dds");
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(0);                        // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
                    {
            Scaleform::GFx::Value var[9];
        var[0].SetUInt(301335);
            var[1].SetNumber(28);
            var[2].SetString("Scissors");
            var[3].SetString("Craft Component Item");
            var[4].SetString("$Data/Weapons/StoreIcons/Craft_Scissors_01.dds");
            var[5].SetBoolean(false);                    // is Stackable
            var[6].SetNumber(0);                        // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
        const int itemSize = allItem.size ();
        for(int i = 0; i < itemSize; ++i)
        {
            const ModelItemConfig* gear = allItem[i];
    
    
            var[0].SetUInt(gear->m_itemID);
            var[1].SetNumber(gear->category);
            var[2].SetStringW(gear->m_StoreNameW);
            var[3].SetStringW(gear->m_DescriptionW);
            var[4].SetString(gear->m_StoreIcon);
            var[5].SetBoolean(false); // is stackable
            var[6].SetNumber(gear->m_Weight);
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    
    
        const int foodSize = allFood.size ();
        for(int i = 0; i < foodSize; ++i)
        {
            const FoodConfig* food = allFood[i];
    
    
            var[0].SetUInt(food->m_itemID);
            var[1].SetNumber(food->category);
            var[2].SetStringW(food->m_StoreNameW);
            var[3].SetStringW(food->m_DescriptionW);
            var[4].SetString(food->m_StoreIcon);
            var[5].SetBoolean(false); // is stackable
            var[6].SetNumber(food->m_Weight);
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    
    
        const int heroSize = allHeroes.size ();
        for(int i = 0; i < heroSize; ++i)
        {
            const HeroConfig* hero = allHeroes[i];
            if(hero->m_Weight < 0) // not available to players
                continue;
    
    
            var[0].SetUInt(hero->m_itemID);
            var[1].SetNumber(hero->category);
            var[2].SetStringW(hero->m_StoreNameW);
            var[3].SetStringW(hero->m_DescriptionW);
            var[4].SetString(hero->m_StoreIcon);
            char tmpStr[256];
            r3dscpy(tmpStr, hero->m_StoreIcon);
            r3dscpy(&tmpStr[strlen(tmpStr)-4], "2.dds");
            var[5].SetString(tmpStr);
    
    
            char tmpStr2[256];
            r3dscpy(tmpStr2, hero->m_StoreIcon);
            r3dscpy(&tmpStr2[strlen(tmpStr2)-4], "3.dds");
            var[6].SetString(tmpStr2);
    
    
            var[7].SetInt (hero->getNumHeads ());
            var[8].SetInt (hero->getNumBodys ());
            var[9].SetInt (hero->getNumLegs ());
            gfxMovie_->Invoke("_root.api.addHero", var, 10);
    
    
            var[0].SetUInt(hero->m_itemID);
            var[1].SetNumber(hero->category);
            var[2].SetStringW(hero->m_StoreNameW);
            var[3].SetStringW(hero->m_DescriptionW);
            var[4].SetString(hero->m_StoreIcon);
            gfxMovie_->Invoke("_root.api.addItem", var, 5);
        }
    
    
        const int weaponSize = allWpns.size ();
        for(int i = 0; i < weaponSize; ++i)
        {
            const WeaponConfig* weapon = allWpns[i];
    
    
            var[0].SetUInt(weapon->m_itemID);
            var[1].SetNumber(weapon->category);
            var[2].SetStringW(weapon->m_StoreNameW);
            var[3].SetStringW(weapon->m_DescriptionW);
            var[4].SetString(weapon->m_StoreIcon);
            var[5].SetBoolean(weapon->category == storecat_GRENADE); // multi Purchase Item
            var[6].SetNumber(weapon->m_Weight); // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
            {
                    var[0].SetUInt(weapon->m_itemID);
            var[1].SetNumber(weapon->category);
            var[2].SetStringW(weapon->m_StoreNameW);
            var[3].SetStringW(weapon->m_DescriptionW);
            var[4].SetString(weapon->m_StoreIcon);
            var[5].SetBoolean(weapon->category == storecat_GRENADE); // multi Purchase Item
            var[6].SetNumber(weapon->m_Weight); // weight
            var[7].SetInt(0);
            var[8].SetNumber(0);
            }
            gfxMovie_->Invoke("_root.api.addItem", var, 9);
        }
        const int ammoSize = allAmmo.size();
        for(int i = 0; i < ammoSize; ++i)
        {
            const WeaponAttachmentConfig* attm = allAmmo[i];
    
    
            var[0].SetUInt(attm->m_itemID);
            var[1].SetNumber(419);
            var[2].SetStringW(attm->m_StoreNameW);
            var[3].SetStringW(attm->m_DescriptionW);
            var[4].SetString(attm->m_StoreIcon);
            var[5].SetBoolean(false);                    // multi Purchase Item
            var[6].SetNumber(attm->m_Weight); // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    
    
        const int attmSize = allAttachments.size();
        for(int i = 0; i < attmSize; ++i)
        {
            const WeaponAttachmentConfig* attm = allAttachments[i];
    
    
            var[0].SetUInt(attm->m_itemID);
            var[1].SetNumber(attm->category);
            var[2].SetStringW(attm->m_StoreNameW);
            var[3].SetStringW(attm->m_DescriptionW);
            var[4].SetString(attm->m_StoreIcon);
            var[5].SetBoolean(false);                    // multi Purchase Item
            var[6].SetNumber(attm->m_Weight); // weight
            gfxMovie_->Invoke("_root.api.addItem", var, 7);
        }
    }
    
    
    void UIItemInventory::addCategories()
    {
        Scaleform::GFx::Value var[4];
    
    
        var[0].SetNumber(storecat_HeroPackage);
        var[1].SetString("storecat_HeroPackage");
        var[2].SetNumber(-1);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_Backpack);
        var[1].SetString("storecat_Backpack");
        var[2].SetNumber(3);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
        
        var[0].SetNumber(storecat_Armor);
        var[1].SetString("storecat_Armor");
        var[2].SetNumber(3);
        var[3].SetNumber(3);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_Helmet);
        var[1].SetString("storecat_Helmet");
        var[2].SetNumber(3);
        var[3].SetNumber(3);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_ASR);
        var[1].SetString("storecat_ASR");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_SNP);
        var[1].SetString("storecat_SNP");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_SHTG);
        var[1].SetString("storecat_SHTG");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_MG);
        var[1].SetString("storecat_MG");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_HG);
        var[1].SetString("storecat_HG");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_SMG);
        var[1].SetString("storecat_SMG");
        var[2].SetNumber(0);
        var[3].SetNumber(0);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_UsableItem);
        var[1].SetString("storecat_UsableItem");
        var[2].SetNumber(5);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_GRENADE);
        var[1].SetString("storecat_GRENADE");
        var[2].SetNumber(1);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_MELEE);
        var[1].SetString("storecat_MELEE");
        var[2].SetNumber(2);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_Food);
        var[1].SetString("storecat_Food");
        var[2].SetNumber(4);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_Water);
        var[1].SetString("storecat_Water");
        var[2].SetNumber(4);
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        // special category for ammo
        var[0].SetNumber(419);
        var[1].SetString("ammo");
        var[2].SetNumber(1); 
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    
    
        var[0].SetNumber(storecat_FPSAttachment);
        var[1].SetString("storecat_FPSAttachment");
        var[2].SetNumber(6); 
        var[3].SetNumber(-1);
        gfxMovie_->Invoke("_root.api.addCategory", var, 4);
    }



Advertisement