示例#1
0
    public void SetState(Unit.UnitState state)
    {
        unit.currentUnitState = state;

        if (!InPrepState(state))
        {
            onUnitPastPlanning(unit);
        }

        if (state == Unit.UnitState.selected)
        {
            SetSelected();
        }
        else if (state == Unit.UnitState.moving)
        {
            SetMoving(true);
        }
        else if (state == Unit.UnitState.cooldown)
        {
            SetOnCooldown();
        }
        else if (state == Unit.UnitState.attacking)
        {
            SetAttacking();
        }
        else if (state == Unit.UnitState.unselected)
        {
            SetUnselected();
        }
        else if (state == Unit.UnitState.planningMovement)
        {
            SetPlanningMovement();
        }
        else if (state == Unit.UnitState.planningAttack)
        {
            SetPlanningAttack();
        }
    }
示例#2
0
文件: TimerUI.cs 项目: kgc00/GMTKJ
 void StopTimer(Unit.UnitState state)
 {
     hourGlass.enabled = false;
 }
示例#3
0
 public UnitStateChangeEvent(Unit.UnitState state, Unit unit)
 {
     State = state;
     Unit = unit;
 }
示例#4
0
 private static bool InPrepState(Unit.UnitState state)
 {
     return(state == Unit.UnitState.selected ||
            state == Unit.UnitState.planningAttack ||
            state == Unit.UnitState.planningMovement);
 }
示例#5
0
 public List <Unit> GetUnitsInState(Unit.UnitState state)
 {
     return(Units.Where(u => u.State == state).ToList());
 }