public void Attack(Direction direction, Random random) { if (equipedWeapon != null) { if (equipedWeapon is IPotion) { if (equipedWeapon == "BluePotion") { BluePotion currentWeapon = equipedWeapon as BluePotion; currentWeapon.Attack(direction, random); equipedWeapon = null; } else { RedPotion currentWeapon = equipedWeapon as RedPotion; currentWeapon.Attack(direction, random); equipedWeapon = null; } } else { equippedWeapon.Attack(direction, random); } } }