public void HandleCollision(INpc enemy, IProjectile boomerang, Constants.Direction side) { if (boomerang.Owner == Constants.ProjectileOwner.Link) { BoomerangFlyingProjectile boomerangCast = (BoomerangFlyingProjectile)boomerang; enemy.TakeDamage(boomerangCast.DamageAmount()); boomerangCast.ReturnToOwner(); } }
public void HandleCollision(IPlayer link, IProjectile boomerang, Constants.Direction side) { BoomerangFlyingProjectile boomerangCast = (BoomerangFlyingProjectile)boomerang; if (boomerang.Owner == Constants.ProjectileOwner.Link) { return; } link.BeDamaged(boomerang.DamageAmount()); boomerangCast.ReturnToOwner(); }
public void HandleCollision(IProjectile boomerang, IBlock block, Constants.Direction side) { Type blockType = block.GetType(); if (blockType == typeof(TileWater) || blockType == typeof(SecretRoomWall)) { return; } BoomerangFlyingProjectile boomerangCast = (BoomerangFlyingProjectile)boomerang; boomerangCast.ReturnToOwner(); }