Beispiel #1
0
    public MinLight GetMins(MinsType minType)
    {
        if (!MinsPoolContainer.ContainsKey(minType))
        {
            return(null);
        }

        var      minList = MinsPoolContainer[minType];
        MinLight minGot  = null;

        foreach (var minLight in minList)
        {
            //TODO find a better way to keep them active/inactive. Active doing their job. Inactive is disabled or just following the player.
            if (!minLight.gameObject.activeSelf)
            {
                minLight.gameObject.SetActive(true);
                minLight.GetComponent <Collider>().enabled = true;
                minGot = minLight;
                minGot.transform.parent = null;
                break;
            }
        }

        return(minGot);
    }
Beispiel #2
0
    protected virtual void OnEnable()
    {
        if (minLight == null)
        {
            minLight = GetComponent <MinLight>();
        }

        movementType       = MinMovementType.None;
        randomPosContainer = null;
        randomPosition     = Vector3.zero;
        minLight.ChangeMinLightSpriteDirection(false);
        minLight.UpdateMinLightSpriteOrder(0);
    }
 public void AddMinToControlledMins(MinLight min)
 {
     controlledMins[min.BaseMin.MinType].Push(min);
 }
Beispiel #4
0
 public void ReturnMins(MinLight minLight)
 {
     minLight.gameObject.SetActive(false);
     minLight.transform.parent        = MinPoolRoot;
     minLight.transform.localPosition = Vector3.zero;
 }