예제 #1
0
        static void Main(string[] args)
        {
            Hero          hero  = new Hero();
            KeeperMemento saves = new KeeperMemento();

            hero.GetInfo();
            hero.Shoot();
            hero.Shoot();
            hero.GetInfo();

            saves.History.Push(hero.SaveState());

            hero.Shoot();
            hero.Shoot();
            hero.GetInfo();

            hero.Shoot();
            hero.Shoot();

            hero.RestoreState(saves.History.Peek());
            hero.GetInfo();

            Console.ReadKey();
        }