private void OnTriggerEnter2D(Collider2D other)
    {
        GameEventArgs args;

        switch (other.tag)
        {
        case "Player":
            args = GameEventArgs.damageArgs(_touchAttackStrength, this.gameObject, other.gameObject);
            _collidedWithPlayerEvent.Raise(args);
            BeginDeathSequence();
            break;

        case "Laser":
            args = GameEventArgs.scoreArgs(_pointValue, this.gameObject, other.gameObject);
            _killedByPlayerEvent.Raise(args);
            Destroy(other.gameObject);
            BeginDeathSequence();
            break;

        default:
            // don't destroy enemy when you, for instance, hit a PowerUp
            break;
        }
    }