From 2a646f8cc287a98f90e561ce8072c2af4322fd22 Mon Sep 17 00:00:00 2001 From: Thomas Fach-Pedersen Date: Sat, 17 Mar 2018 16:14:48 +0100 Subject: BLADERUNNER: Save game methods --- engines/bladerunner/dialogue_menu.cpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'engines/bladerunner/dialogue_menu.cpp') diff --git a/engines/bladerunner/dialogue_menu.cpp b/engines/bladerunner/dialogue_menu.cpp index 685c8459e0..7b7223fe94 100644 --- a/engines/bladerunner/dialogue_menu.cpp +++ b/engines/bladerunner/dialogue_menu.cpp @@ -25,6 +25,7 @@ #include "bladerunner/bladerunner.h" #include "bladerunner/font.h" #include "bladerunner/mouse.h" +#include "bladerunner/savefile.h" #include "bladerunner/settings.h" #include "bladerunner/shape.h" #include "bladerunner/text_resource.h" @@ -364,6 +365,30 @@ bool DialogueMenu::waitingForInput() const { return _waitingForInput; } +void DialogueMenu::save(SaveFile &f) { + f.write(_isVisible); + f.write(_waitingForInput); + f.write(_selectedItemIndex); + f.write(_listSize); + + f.write(_neverRepeatListSize); + for (int i = 0; i < 100; ++i) { + f.write(_neverRepeatValues[i]); + } + for (int i = 0; i < 100; ++i) { + f.write(_neverRepeatWasSelected[i]); + } + for (int i = 0; i < 10; ++i) { + f.write(_items[i].text, 50); + f.write(_items[i].answerValue); + f.write(_items[i].colorIntensity); + f.write(_items[i].priorityPolite); + f.write(_items[i].priorityNormal); + f.write(_items[i].prioritySurly); + f.write(_items[i].isDone); + } +} + void DialogueMenu::clear() { _isVisible = false; _waitingForInput = false; -- cgit v1.2.3