private void InitWeaponInventory()
    {
        ResetEquipped();

        foreach (ItemData item in GameInformation.instance.GetInventory())
        {
            bool equippedByUnit = (unit.WeaponMain != null && unit.WeaponMain.name.Equals(item.name)) ||
                                  (unit.WeaponSecondary != null && unit.WeaponSecondary.name.Equals(item.name));

            if (item.equipped && !equippedByUnit)
            {
                continue;
            }

            if (item.type != WeaponType.NONE && item.type != unit.weaponType)
            {
                continue;
            }

            GameObject    temp = Instantiate(equipPrefab, inventoryPanel.transform);
            EquipWeaponUI ui   = temp.GetComponent <EquipWeaponUI>();

            ui.Set(item, equippedByUnit);

            if (equippedByUnit)
            {
                SetEquipped(item, ui,
                            unit.WeaponMain != null && unit.WeaponMain.name.Equals(item.name));
            }

            children.Add(temp);
        }
    }