public void DeselectIcon(PawnIcon icon) { selectedIcons.Remove(icon); PawnIconStandard iconStandard = (PawnIconStandard)icon; iconStandard.highlight.gameObject.SetActive(false); }
public void SelectIcon(PawnIcon icon) { selectedIcons.Add(icon); PawnIconStandard iconStandard = (PawnIconStandard)icon; iconStandard.highlight.gameObject.SetActive(true); }
// ==== Helper methods ==== private void AddNewPawnIcon(Pawn pawn) { GameObject o = Instantiate(pawnIconPrefab); o.transform.SetParent(contentFolder, false); // set physical position PawnIcon pawnIcon = o.GetComponent <PawnIcon>(); pawnIcon.Init(pawn); // initialize PawnIcon data pawnIcons.Add(pawnIcon); // add this object to the list for future manipulation }
public void RetirePawns() { for (int i = selectedIcons.Count - 1; i >= 0; i--) { PawnIcon icon = selectedIcons[i]; //print(icon + ": " + icon.pawnData); GameManager.instance.saveGame.pawnWallet.RemovePawn(icon.pawnData.id); DeselectIcon(icon); } SaveLoad.Save(); pawnSelectionView.Refresh(); }
/// <summary> /// Sorts the list of pawnIcons by level. /// Also sets the sibling index so the order is rendered in any layout groups. Uses insertion sort. /// </summary> public void SortByLevel() { for (int i = 1; i < pawnIcons.Count; i++) { PawnIcon x = pawnIcons[i]; int j = i - 1; while (j >= 0 && pawnIcons[j].pawnData.level < x.pawnData.level) { pawnIcons[j + 1] = pawnIcons[j]; j--; } pawnIcons[j + 1] = x; } for (int i = 0; i < pawnIcons.Count; i++) // set the hierarchy position of each pawnIcon { pawnIcons[i].transform.SetSiblingIndex(i); } }
/// <summary> /// Sorts the list of pawnIcons by the hero type, and also by level within each hero type. /// Also sets the sibling index so the order is rendered in any layout groups. Uses insertion sort. /// </summary> public void SortByHeroType() { for (int i = 1; i < pawnIcons.Count; i++) { PawnIcon x = pawnIcons[i]; int j = i - 1; while (j >= 0 && CompareHeroAndLevel(pawnIcons[j].pawnData, x.pawnData) < 0) { pawnIcons[j + 1] = pawnIcons[j]; j--; } pawnIcons[j + 1] = x; } for (int i = 0; i < pawnIcons.Count; i++) // set the hierarchy position of each pawnIcon { pawnIcons[i].transform.SetSiblingIndex(i); } }