Ejemplo n.º 1
0
    public List <UnitSlot> GetUnitSlots(GarrisonSlot garSlot)
    {
        List <UnitSlot>   unitSlots = new List <UnitSlot>();
        List <GameObject> objs      = Utility.GetChildren(garSlot.content.transform);

        foreach (GameObject obj in objs)
        {
            if (obj.GetComponent <UnitSlot>())
            {
                unitSlots.Add(obj.GetComponent <UnitSlot>());
            }
        }

        return(unitSlots);
    }
Ejemplo n.º 2
0
 public void OnCommanderpressed(Commander commander, CommanderButton button)
 {
     gameObject.SetActive(true);
     if (selectedCommanders.Contains(commander))
     {
         //you cound move the logic here from CommanderButton with an out bool success
     }
     else
     {
         GameObject   slotObj      = Instantiate(garrisonSlotObj, panel.transform);
         GarrisonSlot garrisonSlot = slotObj.GetComponent <GarrisonSlot>();
         garrisonSlot.commanderButton = button;
         selectedCommanders.Add(commander);
         garrisonSlot.SetData(commander);
     }
 }
Ejemplo n.º 3
0
    public void OnEndDrag(PointerEventData eventData)
    {
        List <RaycastResult> results = new List <RaycastResult>();

        caster.Raycast(eventData, results);

        foreach (RaycastResult result in results)
        {
            GarrisonSlot garSlot = result.gameObject.GetComponent <GarrisonSlot>();
            if (garSlot != null)
            {
                AddToNewSlot(garSlot);
                slot.DestroySelf();
                return;
            }
        }

        //This is for when you drop it outside
        ReturnToParent();
        UnSetMovedColor();
        GarrisonSlot gSlot = (GarrisonSlot)Utility.GetFirstComponentInParents(gameObject, typeof(GarrisonSlot));

        gSlot.SetTroopsList();
    }
Ejemplo n.º 4
0
 public void AddToNewSlot(GarrisonSlot garSlot)
 {
     slot.unit.Commander.RemoveUnit(slot.unit);
     garSlot.OnAddUnitSlot(slot);
     SetMovedColor();
 }