protected void CollideWith(CollidableObject obj) { if (obj == null) { return; } if (obj is Enemy) { Enemy enemy = (Enemy)obj; if (IsCollide(enemy)) { HP -= enemy.Attack; OnCollide(enemy); } else if (obj is EnemyBullet) { EnemyBullet enemybullet = (EnemyBullet)obj; if (IsCollide(enemybullet)) { //HPはEnemyBulletで。 //attackがEnemy依存で全部0ダメージになる OnCollide(enemybullet); } } } }
protected override void CollideWith(CollidableObject obj) { base.CollideWith(obj); if (obj is EnemyBullet) { EnemyBullet bullet = (EnemyBullet)obj; if (IsCollide(bullet)) { OnCollide(bullet); bullet.Dispose(); Dispose(); } } }