Пример #1
0
 public override void ApplyState(StatableObject target)
 {
 }
Пример #2
0
 public override void ResetState(StatableObject target)
 {
 }
Пример #3
0
 /// <summary>
 /// Активирует состояние.
 /// </summary>
 /// <param name="target"> Компонент состояний целевого объекта. </param>
 public void Activate(StatableObject target)
 {
     isActivated = true;
     ApplyState(target);
 }
Пример #4
0
 /// <summary>
 /// Снимает эффекты состояния с объекта.
 /// </summary>
 /// <param name="target"> Компонент состояний целевого объекта. </param>
 public abstract void ResetState(StatableObject target);
Пример #5
0
 /// <summary>
 /// Может ли состояние быть активированно.
 /// </summary>
 /// <param name="target"> Компонент состояний целевого объекта. </param>
 /// <returns> True, если может быть активирован. </returns>
 public bool IsCanActivate(StatableObject target)
 {
     foreach (var conflict in ConflictKeyStates)
     {
         if (target.ContainsActivatedState(conflict.StateKey)
             && !conflict.IsForceDeactivate)
         {
             return false;
         }
     }
     return true;
 }
Пример #6
0
 /// <summary>
 /// Деактивирует состояние.
 /// </summary>
 /// <param name="target"> Компонент состояний целевого объекта. </param>
 public void Deactivate(StatableObject target)
 {
     isActivated = false;
     ResetState(target);
 }
Пример #7
0
 /// <summary>
 /// Применяет эффекты состояния на объект.
 /// </summary>
 /// <param name="target"> Компонент состояний целевого объекта. </param>
 public abstract void ApplyState(StatableObject target);