public void SetUnitData(GizmoidData data) { name = "Button " + data.nameFull; unitData = data; textPrice.text = data.Price.ToString(); icon.sprite = data.Icon; }
public void SetUnitData(GizmoidData data) { name = "Button " + data.nameFull; unitData = data; textPrice.text = data.Price.ToString(); SetIcon(data.Icon); }
public void SetData(GizmoidData data, int order, UnitGraphics preview = null) { name = data.nameInternal; assets = data.assetData; if (preview) { SetupGraphics(preview, false, order); } else { SetupGraphics(data.unitGraphics, true, order); } SetupReskin(data.nameInternal, data.maxHealth, unitGraphics.renderers); SetupHealth(data.maxHealth); SetupAbilities(data.abilities); foreach (var item in abilities) { var arenaCollider = item.GetComponent <ArenaCollider>(); if (arenaCollider) { arenaCollider.BuildColliders(order); onOrderChanged.AddListener(arenaCollider.BuildColliders); } } CollectOverclockables(); }
private UnitSelectorButton BuildUnitButton(GizmoidData gizmoidData, Transform parent) { var giz = Instantiate(unitSelectorPrefab, parent); giz.transform.localScale = Vector3.one; giz.SetUnitData(gizmoidData); giz.onSelection.AddListener(placementPreview.OnDragEnabled); giz.SetCanAfford(playerProgress.Scraps); giz.onPurchased.AddListener(playerProgress.AdjustScrap); playerProgress.onScrapChanged.AddListener(giz.SetCanAfford); var toggle = giz.GetComponent <ToggleDrag>(); if (toggle) { toggle.group = toggleDragGroup; toggle.onDrag.AddListener(placementPreview.OnDrag); toggle.onDragEnd.AddListener(placementPreview.OnDragEnd); toggle.onValueChanged.AddListener(selectClickInterface.SetActive); toggle.onValueChangedInverse.AddListener(shipInterface.SetActive); } return(giz); }
public GizmoidView BuildGizmoid(GizmoidData data, UnitGraphics preview = null) { if (gizmoids.Count == 6) { return(null); } var giz = Instantiate(prefabGizmoid, transform); giz.transform.localPosition = new Vector3(0, blade.radiusOffset + (GetSpacing() * gizmoids.Count), 0); giz.transform.eulerAngles = new Vector3(0, 0, blade.gameObject.transform.eulerAngles.z); //giz.holder = this; if (!preview) { preview = Instantiate(data.unitGraphics); } giz.SetData(data, gizmoids.Count, preview); gizmoids.Add(giz); onGizmoidAdded.Invoke(giz); giz.onDestroy.AddListener(RemoveGizmoid); var rand = Random.Range(0, giz.assets.clipArrivals.Count); AudioPlayer.Instance.PlaySoundClip(giz.assets.clipArrivals[rand], giz.transform); return(giz); }
public void BuildLoadoutUnit(GizmoidData data) { var unit = Instantiate(loadoutUnitPrefab, unitContent); unit.transform.localScale = Vector3.one; unit.SetUnitData(data); unit.onSelected.AddListener(OnUnitSelected); }
public void OnDragEnabled(bool enabled, GizmoidData data) { gameObject.SetActive(enabled); if (enabled) { gizmoidData = data; if (data.unitGraphics) { ChangePreview(data.unitGraphics); } } else { sectorSelector.gameObject.SetActive(false); } }
public void PlacePreview(GizmoidData data, UnitGraphics preview) { float duration = 0.5f; preview.transform.SetParent(transform); Vector3 rot = Vector3.zero; if (transform.localEulerAngles.z > 180f) { rot = new Vector3(0, 0, 359.9f); } preview.SetSortingLayer("Gizmoid" + gizmoids.Count); sequence = DOTween.Sequence(); sequence.Join(preview.transform.DOLocalMove(new Vector3(0, blade.radiusOffset + (GetSpacing() * gizmoids.Count), 0), duration).SetEase(DG.Tweening.Ease.OutBounce)) .Join(preview.transform.DOLocalRotate(rot, duration).SetEase(DG.Tweening.Ease.OutQuart)) .OnComplete(() => BuildGizmoid(data, preview)); }