static void Main(string[] args) { IWeapon weapon = new Ak47(); Console.WriteLine("Base Ak47 \n"); Console.WriteLine(weapon.Damage()); Console.WriteLine(weapon.Heavy()); Console.WriteLine(weapon.Rpm()); Console.WriteLine("-----------------\n"); Console.WriteLine("Ak47 with Silencer\n"); weapon = new Silencer(new Ak47()); Console.WriteLine(weapon.Damage()); Console.WriteLine(weapon.Heavy()); Console.WriteLine(weapon.Rpm()); Console.WriteLine("-----------------\n"); Console.WriteLine("Ak47 with Silencer and HandTaker\n"); weapon = new Silencer(new HandTaker(new Ak47())); Console.WriteLine(weapon.Damage()); Console.WriteLine(weapon.Heavy()); Console.WriteLine(weapon.Rpm()); }
static void Main(string[] args) { Cost commonHandgun = new CommonItem("Handgun", 150); Cost rareHandgun = new RareItem("Revolver", 350); commonHandgun = new Silencer(commonHandgun); Console.WriteLine("{0} price: {1} $", commonHandgun.FullName, commonHandgun.GetTotalCost().ToString()); rareHandgun = new Silencer(rareHandgun); rareHandgun = new Collimator(rareHandgun); Console.WriteLine("{0} price: {1} $", rareHandgun.FullName, rareHandgun.GetTotalCost().ToString()); Console.ReadLine(); }