Exemple #1
0
 private void OnTriggerEnter(Collider other)
 {
     if (other.CompareTag("Player"))
     {
         OriginalParentTracker parentTracker = GetComponent <OriginalParentTracker>();
         if (other.transform == parentTracker.GetSource())
         {
             return;
         }
         PlayerEventMessenger messenger = other.GetComponent <PlayerEventMessenger>();
         messenger.SendSetAblazeEvent(parentTracker.GetSource().gameObject, _name, _duration, _ticks, _damage);
     }
 }
 private void OnTriggerEnter(Collider other)
 {
     if (other.CompareTag("Player"))
     {
         OriginalParentTracker parentTracker = GetComponent <OriginalParentTracker>();
         if (other.transform == parentTracker.GetSource())
         {
             return;
         }
         PlayerEventMessenger messenger = other.GetComponent <PlayerEventMessenger>();
         messenger.SendKnockbackEvent(parentTracker.GetSource().gameObject, _name, CalculateDisplacement(), _knockbackDuration);
         messenger.SendHealthChangeEvent(parentTracker.GetSource().gameObject, _name, -_damage, HealthChangeType.Generic);
     }
 }
    public override void Update(PlayerEventMessenger playerEventMessenger)
    {
        _timeSinceLastTick += Time.deltaTime;
        _duration          -= Time.deltaTime;
        if (_timeSinceLastTick > _tickInterval)
        {
            _timeSinceLastTick -= _tickInterval;
            playerEventMessenger.SendHealthChangeEvent(_source, "Ablaze", -_damage, HealthChangeType.DOT);

            if (--_ticks == 0)
            {
                _isActive = false;
            }
        }
    }
 public abstract void Update(PlayerEventMessenger playerEventMessenger);
Exemple #5
0
 private void Start()
 {
     _eventMessenger = GetComponent <PlayerEventMessenger>();
     _eventMessenger.AddSetAblazeReceiver(this);
     _statuses.Add(_ablazeStatus);
 }