Exemplo n.º 1
0
    public static void InitSortDataAry <SORT_DATA>(SORT_DATA[] sort_data, SortSettings sort_settings, SortSettings.SortEquipSetInfo sort_equip_set_info = null) where SORT_DATA : SortCompareData, new()
    {
        EquipItemStatus equipItemStatus = null;

        if (sort_equip_set_info != null)
        {
            equipItemStatus = MonoBehaviourSingleton <StatusManager> .I.GetEquipSetAllSkillParam(sort_equip_set_info.equipSetNo, sort_equip_set_info.isLocal, sort_equip_set_info.exclusionSlotIndex);
        }
        for (int i = 0; i < sort_data.Length; i++)
        {
            EquipItemStatus equipItemStatus2 = new EquipItemStatus(equipItemStatus);
            SORT_DATA       sortData         = (SORT_DATA)sort_data[i];
            if (equipItemStatus != null)
            {
                bool exclusion = false;
                sort_equip_set_info?.exclusionUniqID.ForEach((Action <ulong>) delegate(ulong uniq_id)
                {
                    if (!exclusion && sortData.GetUniqID() == uniq_id)
                    {
                        exclusion = true;
                    }
                });
                if (!exclusion)
                {
                    equipItemStatus2.Add(sort_data[i].GetItemStatus());
                }
            }
            sortData.SetupSortingData(sort_settings.requirement, equipItemStatus2);
            sortData.Filtering(sort_settings);
        }
    }
    public override void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
    {
        switch (requirement)
        {
        default:
        {
            sortingData = 0L;
            CreatePickupItemTable.CreatePickupItemData pickupCreateItem = Singleton <CreatePickupItemTable> .I.GetPickupCreateItem(createData.smithCreateTableData.id);

            if (pickupCreateItem != null)
            {
                sortingData = pickupCreateItem.id;
            }
            break;
        }

        case SortBase.SORT_REQUIREMENT.GET:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.RARITY:
            sortingData = (long)createData.equipTableData.rarity;
            break;

        case SortBase.SORT_REQUIREMENT.LV:
            sortingData = 1L;
            break;

        case SortBase.SORT_REQUIREMENT.ATK:
            sortingData = (int)createData.equipTableData.baseAtk + createData.equipTableData.baseElemAtk;
            break;

        case SortBase.SORT_REQUIREMENT.DEF:
            sortingData = (int)createData.equipTableData.baseDef + createData.equipTableData.baseElemDef;
            break;

        case SortBase.SORT_REQUIREMENT.SALE:
            sortingData = createData.equipTableData.sale;
            break;

        case SortBase.SORT_REQUIREMENT.SOCKET:
            sortingData = createData.equipTableData.maxSlot;
            break;

        case SortBase.SORT_REQUIREMENT.PRICE:
            sortingData = (int)createData.smithCreateTableData.needMoney;
            break;

        case SortBase.SORT_REQUIREMENT.NUM:
            sortingData = 1L;
            break;

        case SortBase.SORT_REQUIREMENT.ELEMENT:
            sortingData = 6L - (long)GetIconElement();
            break;
        }
    }
Exemplo n.º 3
0
 public void Add(EquipItemStatus param)
 {
     if (param != null)
     {
         Add((ItemStatus)param);
         int i = 0;
         for (int num = equipTypeBuff.Length; i < num; i++)
         {
             equipTypeBuff[i].Add(param.equipTypeBuff[i]);
         }
     }
 }
Exemplo n.º 4
0
    public override void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
    {
        switch (requirement)
        {
        default:
            sortingData = (long)equipData.uniqueID;
            break;

        case SortBase.SORT_REQUIREMENT.RARITY:
            sortingData = (long)equipData.tableData.rarity;
            break;

        case SortBase.SORT_REQUIREMENT.LV:
            sortingData = equipData.level;
            break;

        case SortBase.SORT_REQUIREMENT.ATK:
            sortingData = equipData.atk + equipData.elemAtk;
            break;

        case SortBase.SORT_REQUIREMENT.DEF:
            sortingData = equipData.def + equipData.elemDef;
            break;

        case SortBase.SORT_REQUIREMENT.SALE:
            sortingData = equipData.tableData.sale;
            break;

        case SortBase.SORT_REQUIREMENT.SOCKET:
            sortingData = equipData.GetMaxSlot();
            break;

        case SortBase.SORT_REQUIREMENT.PRICE:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.NUM:
            sortingData = 1L;
            break;

        case SortBase.SORT_REQUIREMENT.ELEMENT:
            sortingData = 6L - (long)GetIconElement();
            break;

        case SortBase.SORT_REQUIREMENT.ELEM_ATK:
            sortingData = equipData.elemAtk;
            break;

        case SortBase.SORT_REQUIREMENT.ELEM_DEF:
            sortingData = equipData.elemDef;
            break;
        }
    }
Exemplo n.º 5
0
    public override void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
    {
        switch (requirement)
        {
        default:
            sortingData = (long)skillData.uniqueID;
            break;

        case SortBase.SORT_REQUIREMENT.RARITY:
            sortingData = (long)skillData.tableData.rarity;
            break;

        case SortBase.SORT_REQUIREMENT.LV:
            sortingData = skillData.level;
            break;

        case SortBase.SORT_REQUIREMENT.ATK:
            sortingData = skillData.atk;
            break;

        case SortBase.SORT_REQUIREMENT.DEF:
            sortingData = skillData.def;
            break;

        case SortBase.SORT_REQUIREMENT.HP:
            sortingData = skillData.hp;
            break;

        case SortBase.SORT_REQUIREMENT.SALE:
            sortingData = skillData.sellPrice;
            break;

        case SortBase.SORT_REQUIREMENT.PRICE:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.NUM:
            sortingData = 1L;
            break;

        case SortBase.SORT_REQUIREMENT.ELEMENT:
            sortingData = 6L - (long)GetIconElement();
            break;

        case SortBase.SORT_REQUIREMENT.SKILL_TYPE:
            sortingData = 63L - (long)skillData.tableData.type;
            break;
        }
    }
Exemplo n.º 6
0
        public EquipItemStatus GetDefaultSkillBuffParam()
        {
            EquipItemStatus equipItemStatus = new EquipItemStatus();

            _GetDefaultSkillBuffParam(out int[] atk, out int[] def, out int hp);
            equipItemStatus.atk = atk[0];
            equipItemStatus.def = def[0];
            equipItemStatus.hp  = hp;
            int i = 0;

            for (int num = 6; i < num; i++)
            {
                equipItemStatus.elemAtk[i] = atk[i + 1];
                equipItemStatus.elemDef[i] = def[i + 1];
            }
            return(equipItemStatus);
        }
Exemplo n.º 7
0
    public override void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
    {
        switch (requirement)
        {
        default:
            sortingData = (long)itemData.uniqueID;
            break;

        case SortBase.SORT_REQUIREMENT.RARITY:
            sortingData = (long)itemData.tableData.rarity;
            break;

        case SortBase.SORT_REQUIREMENT.LV:
            sortingData = 1L;
            break;

        case SortBase.SORT_REQUIREMENT.ATK:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.DEF:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.SALE:
            sortingData = itemData.tableData.price;
            break;

        case SortBase.SORT_REQUIREMENT.SOCKET:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.PRICE:
            sortingData = 0L;
            break;

        case SortBase.SORT_REQUIREMENT.NUM:
            sortingData = itemData.num;
            break;

        case SortBase.SORT_REQUIREMENT.ELEMENT:
            sortingData = 6L - (long)GetIconElement();
            break;
        }
    }
    public override void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
    {
        switch (requirement)
        {
        default:
            sortingData = itemData.infoData.questData.tableData.questID;
            break;

        case SortBase.SORT_REQUIREMENT.RARITY:
            sortingData = (long)itemData.infoData.questData.tableData.rarity;
            break;

        case SortBase.SORT_REQUIREMENT.NUM:
            sortingData = itemData.infoData.questData.num;
            break;

        case SortBase.SORT_REQUIREMENT.DIFFICULTY:
            sortingData = (long)itemData.infoData.questData.tableData.difficulty;
            break;

        case SortBase.SORT_REQUIREMENT.ENEMY:
        {
            EnemyTable.EnemyData enemyData = Singleton <EnemyTable> .I.GetEnemyData((uint)itemData.infoData.questData.tableData.GetMainEnemyID());

            if (enemyData == null)
            {
                sortingData = 0L;
            }
            else
            {
                sortingData = (long)enemyData.type;
            }
            break;
        }
        }
    }
Exemplo n.º 9
0
    public static SORT_DATA[] CreateSortDataAry <ITEM_DATA, SORT_DATA>(ITEM_DATA[] data, SortSettings sort_settings, SortSettings.SortEquipSetInfo sort_equip_set_info = null) where SORT_DATA : SortCompareData, new()
    {
        EquipItemStatus equipItemStatus = null;

        if (sort_equip_set_info != null)
        {
            equipItemStatus = MonoBehaviourSingleton <StatusManager> .I.GetEquipSetAllSkillParam(sort_equip_set_info.equipSetNo, sort_equip_set_info.isLocal, sort_equip_set_info.exclusionSlotIndex);
        }
        SORT_DATA[] equipItemSortAry = (SORT_DATA[])new SORT_DATA[data.Length];
        int         i;

        for (i = 0; i < data.Length; i++)
        {
            equipItemSortAry[i] = (SORT_DATA) new SORT_DATA();
            equipItemSortAry[i].SetItem(data[i]);
            EquipItemStatus equipItemStatus2 = new EquipItemStatus(equipItemStatus);
            if (equipItemStatus != null)
            {
                bool exclusion = false;
                sort_equip_set_info?.exclusionUniqID.ForEach((Action <ulong>) delegate(ulong uniq_id)
                {
                    if (!exclusion && equipItemSortAry[i].GetUniqID() == uniq_id)
                    {
                        exclusion = true;
                    }
                });
                if (!exclusion)
                {
                    equipItemStatus2.Add(equipItemSortAry[i].GetItemStatus());
                }
            }
            equipItemSortAry[i].SetupSortingData(sort_settings.requirement, equipItemStatus2);
            equipItemSortAry[i].Filtering(sort_settings);
        }
        return((SORT_DATA[])equipItemSortAry);
    }
Exemplo n.º 10
0
 public EquipItemStatus(EquipItemStatus _base)
 {
     Init();
     Add(_base);
 }
Exemplo n.º 11
0
 public virtual void SetupSortingData(SortBase.SORT_REQUIREMENT requirement, EquipItemStatus status = null)
 {
 }