Оптимизация проверки запасов для масштабируемости - PullRequest
0 голосов
/ 17 июня 2019

РЕДАКТИРОВАТЬ: для ясности

У меня есть несколько инвентаризаций (List<Item> s с именами items1, items2 и т. Д.) В экземпляре инвентаря (inventory). У меня также есть несколько копий списка слотов ниже (slots1).

В данный момент мне нужно скопировать весь цикл for, указанный для каждого набора предметов / слотов. В течение нескольких дней я пытался разумно его сжать, чтобы у меня был только один кусочек кода, который проходит через все инвентаризации.

Я специально пытаюсь найти решение, с помощью которого я могу сказать что-то вроде: items = inventory.items1 slots = slots1

и затем запустите цикл один раз для каждой пары, поэтому, если у меня есть items1 / slots1, items2 / slots2, items3 / slots3, он будет выполняться три раза.

Мой текущий код:

В инвентаре:

public List<Item> items1 = new List<Item>();

В скрипте пользовательского интерфейса:

InventorySlot1[] slots1 = itemsParent1.GetComponentsInChildren<InventorySlot1>();

for (int i = 0; i < slots1.Length; i++)
{
    if (i < inventory.items1.Count)
    {
        slots1[i].AddItem(inventory.items1[i]);
    }
    else
    {
        slots1[i].ClearSlot();
    }
}

Существует копия вышеуказанного кода для каждой пары предметов / слотов! Я хотел бы сделать так, чтобы мне нужна была только одна копия этого цикла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...