//备忘录 public static void testMemento() { //大战Boss前 GameRole lixiaoyao = new GameRole(); lixiaoyao.GetInitState(); lixiaoyao.StateDisplay(); //保存进度 RoleStateCaretaker stateAdmin = new RoleStateCaretaker(); stateAdmin.Memento = lixiaoyao.SaveState(); //大战Boss时,损耗严重 lixiaoyao.Fight(); lixiaoyao.StateDisplay(); //恢复之前状态 lixiaoyao.RecoveryState(stateAdmin.Memento); lixiaoyao.StateDisplay(); Console.Read(); }
public void UltmateExcute() { Console.WriteLine(" BOSS Bettle Before."); GamePlayer lix = new GamePlayer(); lix.GetInitState(); //初始化 lix.StateDisplay(); //顯示資料 Console.WriteLine(" Save."); //紀錄 RoleStateCaretaker sataeAdmin = new RoleStateCaretaker(); sataeAdmin.Memento = lix.SaveState(); Console.WriteLine(" Boss Bettle After."); lix.Fight(); lix.StateDisplay(); Console.WriteLine(" Load."); lix.RecoveryState(sataeAdmin.Memento); lix.StateDisplay(); }