Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Linq;
- using System.Collections.Generic;
- using System;
- namespace Verdun.UI
- {
- public class GUI_Menu_Squad_Progression_AbilitiesRow : MonoBehaviour
- {
- [SerializeField]
- private SquadAbilityImage_Progression abilityImagePrefab;
- [SerializeField]
- private RectTransform rectTransform, lineTransform;
- private List<SquadAbilityImage_Progression> images = new List<SquadAbilityImage_Progression>();
- [SerializeField]
- private int level;
- private const float circleOffset = 1.065f;
- private const float lineScale = .9f;
- public void SetInfo(LeveledAbility[] abilities)
- {
- clearImages();
- if (abilities == null || abilities.Length <= 0)
- {
- gameObject.SetActive(false);
- return;
- }
- gameObject.SetActive(true);
- Vector2 parentSize = rectTransform.sizeDelta,
- lineSize = lineTransform.sizeDelta;
- float ballsize = 0;
- var lastLevel = abilities.Last().level;
- level = lastLevel;
- var ltr = lineTransform.rect;
- lineTransform.sizeDelta = new Vector2((rectTransform.rect.width - ltr.x) * ((float)lastLevel/100f) * lineScale, ltr.height);
- foreach (var leveledAbility in abilities)
- {
- SquadAbilityImage_Progression img = Instantiate(abilityImagePrefab, transform);
- var anchorX = parentSize.x * ((float) leveledAbility.level / 100f);
- img.RectTransform.anchoredPosition = new Vector2(anchorX, 0);
- img.SetInfo(leveledAbility);
- images.Add(img);
- //set inactive
- }
- }
- private void clearImages()
- {
- foreach (var i in images)
- Destroy(i.gameObject);
- images.Clear();
- }
- public void SelectItem()
- {
- if (images.Count > 0)
- images[0].SelectItem();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement