static void Main(string[] args) { var pm = PrototypeManager.GetInstance(); var dagger = (Weapon)pm.Clone(WeaponType.Dagger.ToString()); dagger.WeaponInformationPlease(); Console.WriteLine(); var sword = (Weapon)pm.Clone(WeaponType.Sword.ToString()); sword.WeaponInformationPlease(); Console.WriteLine(); var hammer = (Weapon)pm.Clone(WeaponType.Hammer.ToString()); hammer.WeaponInformationPlease(); Console.WriteLine(); ((Weapon)hammer.Clone()).WeaponInformationPlease(); Console.Read(); }
public static PrototypeManager GetInstance() => _pm ?? (_pm = new PrototypeManager());