public void Init(ShipsUIItemData data, int elemIndex, Vector2 halfsize) { RectTransform rectTrans = GetComponent <RectTransform>(); rectTrans.anchorMin = new Vector2(elemIndex * 0.5f - halfsize.x, 0.5f - halfsize.y * Camera.main.aspect); rectTrans.anchorMax = new Vector2(elemIndex * 0.5f + halfsize.x, 0.5f + halfsize.y * Camera.main.aspect); rectTrans.offsetMax = Vector2.zero; rectTrans.offsetMin = Vector2.zero; if (data != null) { shipImage.sprite = data.spriteUI; shipName.text = LocalizationManager.GetLocalizedText(data.name); isInit = true; } }
// Use this for initialization void Start() { _transform = GetComponent <Transform>(); _rectTransform = GetComponent <RectTransform>(); animator = GetComponent <UIPosAnimator>(); gamedata = GlobalData.instance.gameData; SaveData saveData = GlobalData.instance.saveData; UIHalfSize = UISize * 0.5f; shipNb = gamedata.shipsUIItems.Count; for (int i = 0; i < gamedata.shipsUIItems.Count; i++) { ShipsUIItemData dataToSend = saveData.shipsInfo[gamedata.shipsUIItems[i].associatedShipIndex].isUnlocked ? gamedata.shipsUIItems[i] : null; GameObject obj = Instantiate(shipUIPrefab, _transform) as GameObject; obj.GetComponentInChildren <ShipUI>().Init(dataToSend, i, UIHalfSize); } _rectTransform.anchoredPosition = new Vector2(0.5f * Camera.main.pixelWidth, 0); shipSelectedIndex = 0; }