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); } }