protected override void OnHitFinished(LevelObjectСontroller attacker) { GameObject powerup = GameManager.CreatePowerup(m_PowerupType); powerup.transform.parent = map.transform; powerup.transform.localPosition = position; }
protected override void OnCollision(LevelObjectСontroller other) { EnemyController enemy = other as EnemyController; if (enemy != null) { OnCollision(enemy); } }
protected override void OnCollision(LevelObjectСontroller other) { var enemy = other as EnemyController; if (enemy != null) { enemy.OnPlayerShot(); Destroy(gameObject); } }
protected override void OnDamage(LevelObjectСontroller attacker) { collisionsEnabled = false; flipY = true; m_Velocity.x = attacker.transform.position.x < transform.position.x ? m_DamageImpactSpeed : -m_DamageImpactSpeed; m_Velocity.y = m_DamageJumpSpeed; SetComponentEnabled <Animator>(false); // don't play any animation }
protected override void OnDamage(LevelObjectСontroller attacker) { if (m_state == State.Small) { Die(); } else { ChangeState(State.Small); } }
protected override void OnCollision(LevelObjectСontroller other) { if (other.dead) { return; } if (bottom > other.bottom) { OnJumpOnObject(other); } else { OnCollideObject(other); } }
void OnCollideObject(LevelObjectСontroller other) { EnemyController enemy = other as EnemyController; if (enemy != null) { enemy.OnPlayerCollision(this); return; } Powerup powerup = other as Powerup; if (powerup != null) { PickPowerup(powerup); } }
protected virtual void OnHitFinished(LevelObjectСontroller attacker) { }
protected virtual void OnDamage(LevelObjectСontroller attacker) { }
/// <summary> /// Called when colliding with other object /// </summary> protected virtual void OnCollision(LevelObjectСontroller other) { }
public void TakeDamage(LevelObjectСontroller attacker) { OnDamage(attacker); }