private void calculateVerticalNormalizedPositionRowIncrement() { if (numRows <= 1) { verticalNormalizedPositionRowIncrement = 0f; return; } ExchangeScreenInventoryItem exchangeScreenInventoryItem = items[0]; ExchangeScreenInventoryItem exchangeScreenInventoryItem2 = items[numCols]; float num = exchangeScreenInventoryItem.transform.localPosition.y - exchangeScreenInventoryItem2.transform.localPosition.y; float num2 = scrollRect.content.rect.height - ((RectTransform)scrollRect.transform).rect.height; verticalNormalizedPositionRowIncrement = num / num2; }
private GameObject createItem(string id, int count, GameObject itemPrefab) { GameObject gameObject = UnityEngine.Object.Instantiate(itemPrefab, ScrollContent); ExchangeItem exchangeItem = new ExchangeItem(); exchangeItem.CollectibleType = id; exchangeItem.QuantityEarned = count; exchangeItem.CollectibleDefinition = Service.Get <CollectibleDefinitionService>().Get(id); ExchangeItem exchangeItem2 = exchangeItem; ExchangeScreenInventoryItem component = gameObject.GetComponent <ExchangeScreenInventoryItem>(); component.ExchangeItem = exchangeItem2; items.Add(component); return(gameObject); }
private void changeAnimatingRow(int row) { currentAnimatingRow = row; numAnimatingItems = calculateAnimatingItemsForRow(row); currentRowAnimationTime = totalAnimTime * ((float)numAnimatingItems / (float)totalValidCollectibles); int count = items.Count; for (int i = 0; i < count; i++) { ExchangeScreenInventoryItem exchangeScreenInventoryItem = items[i]; if (exchangeScreenInventoryItem.CalculatedRowPosition == currentAnimatingRow) { exchangeScreenInventoryItem.StartExchanging(); } else if (exchangeScreenInventoryItem.CalculatedRowPosition < currentAnimatingRow) { exchangeScreenInventoryItem.StopExchanging(); } } float num = Mathf.Clamp01((float)currentAnimatingRow * verticalNormalizedPositionRowIncrement); scrollTo(1f - num, RowScrollTime); }
private void calculateItemRowsColumns() { numRows = 0; numCols = 0; float num = 0f; int num2 = 0; int num3 = 0; int count = items.Count; for (int i = 0; i < count; i++) { ExchangeScreenInventoryItem exchangeScreenInventoryItem = items[i]; num3++; if (i == 0) { num = exchangeScreenInventoryItem.transform.localPosition.y; num2 = 1; } else if (Math.Abs(exchangeScreenInventoryItem.transform.localPosition.y - num) > float.Epsilon) { num2++; num = exchangeScreenInventoryItem.transform.localPosition.y; if (numCols == 0) { numCols = num3 - 1; } num3 = 0; } exchangeScreenInventoryItem.CalculatedRowPosition = num2 - 1; } numRows = num2; if (numCols == 0) { numCols = num3; } }