public void OnAddUnitSlot(UnitSlot slot) { bool alreadyInTransfer; GarrisonMenu menu = (GarrisonMenu)Utility.GetFirstComponentInParents(gameObject, typeof(GarrisonMenu)); Unit newUnit = slot.unit; if (slot.CurrentCommander != commander) { menu.AddUnitSlotToTransfer(slot, out alreadyInTransfer); } slot.MoveToCommander(commander); commander.AddUnit(newUnit); SetTroopsList(); }
public void SetTroopsList() { ClearTroopsList(); if (commander.Units == null) { return; } units = commander.Units; unitSlots = new List <UnitSlot>(); foreach (Unit unit in units) { GameObject slot = Instantiate(unitSlot, content.transform); UnitSlot uSlot = slot.GetComponent <UnitSlot>(); uSlot.SetData(unit); uSlot.MoveToCommander(commander); if (GarrisonMenu.Instance.IsInTransfer(unit, commander)) { uSlot.draggableImage.SetMovedColor(); } unitSlots.Add(uSlot); } recruitButton.transform.SetAsLastSibling(); }