private void CollisionTreatmentPunching(int damage, PlatformManager.Type platformType)
    {
        ChangeState(States.Punching, true);
        switch (platformType)
        {
        case PlatformManager.Type.Exit:
            _goalsWithoutHit += damage;
            AddMoney(_goalsWithoutHit * goalMultiplier);
            _punchingCount++;
            break;

        case PlatformManager.Type.Trap:
            Hit(damage / 2);
            break;

        case PlatformManager.Type.Normal:
            AddMoney(_goalsWithoutHit * goalMultiplier);
            break;

        case PlatformManager.Type.Start:
            AddMoney(_goalsWithoutHit * goalMultiplier);
            break;

        case PlatformManager.Type.BonusPunch:
            AddPunching(damage);
            break;

        case PlatformManager.Type.BonusLife:
            AddHealth(damage);
            break;
        }
    }
    private void CollisionTreatmentNormal(int damage, PlatformManager.Type platformType)
    {
        switch (platformType)
        {
        case PlatformManager.Type.Exit:
            ChangeState(States.Fall);
            _goalsWithoutHit += damage;
            AddMoney(_goalsWithoutHit * goalMultiplier);
            break;

        case PlatformManager.Type.Trap:
        case PlatformManager.Type.Normal:
            ChangeState(States.Jump);
            Hit(damage);
            break;

        case PlatformManager.Type.Start:
            ChangeState(States.Jump);
            break;

        case PlatformManager.Type.BonusPunch:
            ChangeState(States.Jump);
            AddPunching(damage);
            break;

        case PlatformManager.Type.BonusLife:
            ChangeState(States.Jump);
            AddHealth(damage);
            break;
        }
    }
 private void CollisionTreatment(int damage, PlatformManager.Type platformType)
 {
     if (_punchingCount > 0)
     {
         CollisionTreatmentPunching(damage, platformType);
     }
     else
     {
         CollisionTreatmentNormal(damage, platformType);
     }
 }