//заполняет модкль данных void SetResult(ref ItemModelGams[] itemModelArray) { for (int i = 0; i < itemModelArray.Length; i++) { itemModelArray[i] = new ItemModelGams(); itemModelArray[i].nameProduct = data.itemGams[i].name; itemModelArray[i].iconMoney = data.itemGams[i].iconMoney; itemModelArray[i].countItem = data.itemGams[i].countItem; itemModelArray[i].cashValue = data.itemGams[i].costItem; } }
//заполняет созданый визуальный элемент списка данными (иконки, названия) void InitializeItemView(GameObject viewGameObject, ItemModelGams model) { ItemViewGams view = new ItemViewGams(viewGameObject.transform); view.iconItem.sprite = model.iconMoney; view.countItemText.text = model.countItem.ToString(); view.cashValueText.text = model.cashValue.ToString() + "$"; //подписываемся на событие нажатия на предмет (кнопку) view.clickButton.onClick.AddListener(() => purchaseManager.BuyConsumable(model.nameProduct)); }
//вытягивает данные из базы IEnumerator GetItems(int count, System.Action <ItemModelGams[]> callback) { yield return(new WaitForSeconds(1f)); var result = new ItemModelGams[count]; SetResult(ref result); //передаём массив данных в метод callback(result); }