Пример #1
0
 /// <summary>
 /// Registered method to GameFlowManager's OnGameStateChange event.
 /// </summary>
 /// <param name="oldState">The previous game state.</param>
 /// <param name="newState">The current game state.</param>
 void OnGameStateChange(GameFlowManager.GameState oldState, GameFlowManager.GameState newState)
 {
     if (oldState == GameFlowManager.GameState.MENU && newState == GameFlowManager.GameState.TRANSITION)
     {
         RangedAttack = new DefaultRangedAttack(_projectile, _startingAttackSpeed, _startingArrowSpeed);
     }
     if (oldState == GameFlowManager.GameState.TRANSITION && newState == GameFlowManager.GameState.MENU)
     {
         Clean();
     }
 }
Пример #2
0
 public DoubleShotAttack(IRangedAttack rangedAttack) : base(rangedAttack)
 {
     _secondAttackTimer = 0f;
 }
Пример #3
0
 public TripleShotAttack(IRangedAttack rangedAttack) : base(rangedAttack)
 {
 }
Пример #4
0
 /// <summary>
 /// Constructor.
 /// </summary>
 /// <param name="rangedAttack">The ranged attack logic which will be decorated.</param>
 public RangedAttackDecorator(IRangedAttack rangedAttack)
 {
     _rangedAttack = rangedAttack;
 }