Example #1
0
        private void OnCollisionEnter2D(Collision2D collision)
        {
            IBonusRecipient playerSpaceship = collision.gameObject.GetComponent <IBonusRecipient>();

            if (playerSpaceship != null)
            {
                ApplyBonus(playerSpaceship);
                Observer.Instance().ObectOutdated.Invoke(gameObject);
            }
        }
Example #2
0
 //применение оптечки к получателю
 public override void ApplyBonus(IBonusRecipient recipient)
 {
     recipient.Healing(_healingPower);
     Observer.Instance().ObectOutdated.Invoke(gameObject);
 }
Example #3
0
 //Применение бонуса к получателю
 public override void ApplyBonus(IBonusRecipient recipient)
 {
     recipient.IncreaseSpeed(_speedPower, _duration);
     Observer.Instance().ObectOutdated.Invoke(gameObject);
 }
Example #4
0
 //Метод применения бонуса реализуемый наследниками
 abstract public void ApplyBonus(IBonusRecipient playerSpaceship);