예제 #1
0
 public void SetCountTimeAndColor(int unitCount, float time, UnitColour color)
 {
     spawnMaxTime   = time * 0.25f;
     despawnMaxTime = time * 0.75f;
     unitColor      = color;
     maxUnitCount   = unitCount;
 }
예제 #2
0
    public void CollectUnitsOfColour(UnitColour color, float doorPosition, float time)
    {
        int index = (int)color;

        collectingState[index].collecting    = true;
        collectingState[index].doorPosition  = doorPosition;
        collectingState[index].timeRemaining = time;
    }
예제 #3
0
 void Awake()
 {
     colour        = GetRandomColour();
     direction     = UnitDirection.Left;
     minX          = 0;
     maxX          = 0;
     walkingToGoal = false;
     speed         = GameConstants.RECRUITMENT_UNIT_WALK_SPEED;
 }
예제 #4
0
    public int DestroyAllUnitsOfColour(UnitColour colour)
    {
        int numRemoved = 0;

        for (int i = units.Count - 1; i >= 0; i--)
        {
            RecruitmentAreaUnit unit = units[i] as RecruitmentAreaUnit;
            if (unit.GetColour() == colour)
            {
                DestroyObject(unit.gameObject);
                units.RemoveAt(i);
                numRemoved++;
            }
        }
        collectingState[(int)colour].collecting = false;
        return(numRemoved);
    }
예제 #5
0
 public void SetColour(UnitColour colour)
 {
     this.colour = colour;
 }