diff options
Diffstat (limited to 'engines/zvision/scripting')
14 files changed, 43 insertions, 37 deletions
diff --git a/engines/zvision/scripting/control.cpp b/engines/zvision/scripting/control.cpp index 86f6a30c8f..127f35ef12 100644 --- a/engines/zvision/scripting/control.cpp +++ b/engines/zvision/scripting/control.cpp @@ -27,7 +27,6 @@ #include "zvision/zvision.h" #include "zvision/graphics/render_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" @@ -43,7 +42,7 @@ void Control::parsePanoramaControl(ZVision *engine, Common::SeekableReadStream & // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); while (!stream.eos() && !line.contains('}')) { if (line.matchString("angle*", true)) { @@ -67,7 +66,7 @@ void Control::parsePanoramaControl(ZVision *engine, Common::SeekableReadStream & } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); } renderTable->generateRenderTable(); @@ -79,7 +78,7 @@ void Control::parseTiltControl(ZVision *engine, Common::SeekableReadStream &stre // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); while (!stream.eos() && !line.contains('}')) { if (line.matchString("angle*", true)) { @@ -99,7 +98,7 @@ void Control::parseTiltControl(ZVision *engine, Common::SeekableReadStream &stre } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); } renderTable->generateRenderTable(); diff --git a/engines/zvision/scripting/controls/fist_control.cpp b/engines/zvision/scripting/controls/fist_control.cpp index 40d016f360..34a64b4298 100644 --- a/engines/zvision/scripting/controls/fist_control.cpp +++ b/engines/zvision/scripting/controls/fist_control.cpp @@ -27,7 +27,6 @@ #include "zvision/scripting/controls/fist_control.h" #include "zvision/graphics/render_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" -#include "zvision/core/utility.h" #include "zvision/video/rlf_decoder.h" #include "common/stream.h" @@ -63,7 +62,7 @@ FistControl::FistControl(ZVision *engine, uint32 key, Common::SeekableReadStream // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -82,7 +81,7 @@ FistControl::FistControl(ZVision *engine, uint32 key, Common::SeekableReadStream } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } } diff --git a/engines/zvision/scripting/controls/hotmov_control.cpp b/engines/zvision/scripting/controls/hotmov_control.cpp index 4a6d2705b4..e77272ec73 100644 --- a/engines/zvision/scripting/controls/hotmov_control.cpp +++ b/engines/zvision/scripting/controls/hotmov_control.cpp @@ -28,7 +28,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/graphics/render_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" #include "common/file.h" @@ -53,7 +52,7 @@ HotMovControl::HotMovControl(ZVision *engine, uint32 key, Common::SeekableReadSt // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -84,7 +83,7 @@ HotMovControl::HotMovControl(ZVision *engine, uint32 key, Common::SeekableReadSt } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } } diff --git a/engines/zvision/scripting/controls/input_control.cpp b/engines/zvision/scripting/controls/input_control.cpp index e17a5f6dd8..6959f9eca9 100644 --- a/engines/zvision/scripting/controls/input_control.cpp +++ b/engines/zvision/scripting/controls/input_control.cpp @@ -29,7 +29,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/text/string_manager.h" #include "zvision/graphics/render_manager.h" -#include "zvision/core/utility.h" #include "common/str.h" #include "common/stream.h" @@ -50,7 +49,7 @@ InputControl::InputControl(ZVision *engine, uint32 key, Common::SeekableReadStre _animation(NULL) { // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -108,7 +107,7 @@ InputControl::InputControl(ZVision *engine, uint32 key, Common::SeekableReadStre } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } } diff --git a/engines/zvision/scripting/controls/lever_control.cpp b/engines/zvision/scripting/controls/lever_control.cpp index 632554e7f2..71dd52f40f 100644 --- a/engines/zvision/scripting/controls/lever_control.cpp +++ b/engines/zvision/scripting/controls/lever_control.cpp @@ -28,7 +28,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/graphics/render_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" #include "common/file.h" @@ -53,7 +52,7 @@ LeverControl::LeverControl(ZVision *engine, uint32 key, Common::SeekableReadStre // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; @@ -73,7 +72,7 @@ LeverControl::LeverControl(ZVision *engine, uint32 key, Common::SeekableReadStre } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/controls/paint_control.cpp b/engines/zvision/scripting/controls/paint_control.cpp index 24306bf4db..f06dee25ad 100644 --- a/engines/zvision/scripting/controls/paint_control.cpp +++ b/engines/zvision/scripting/controls/paint_control.cpp @@ -28,7 +28,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" #include "zvision/graphics/render_manager.h" -#include "zvision/core/utility.h" namespace ZVision { @@ -44,7 +43,7 @@ PaintControl::PaintControl(ZVision *engine, uint32 key, Common::SeekableReadStre // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -93,7 +92,7 @@ PaintControl::PaintControl(ZVision *engine, uint32 key, Common::SeekableReadStre } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/controls/push_toggle_control.cpp b/engines/zvision/scripting/controls/push_toggle_control.cpp index 28c791168a..3811498cd5 100644 --- a/engines/zvision/scripting/controls/push_toggle_control.cpp +++ b/engines/zvision/scripting/controls/push_toggle_control.cpp @@ -27,7 +27,6 @@ #include "zvision/zvision.h" #include "zvision/scripting/script_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" @@ -42,7 +41,7 @@ PushToggleControl::PushToggleControl(ZVision *engine, uint32 key, Common::Seekab // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -78,7 +77,7 @@ PushToggleControl::PushToggleControl(ZVision *engine, uint32 key, Common::Seekab } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/controls/safe_control.cpp b/engines/zvision/scripting/controls/safe_control.cpp index cb754ecbe2..71be692431 100644 --- a/engines/zvision/scripting/controls/safe_control.cpp +++ b/engines/zvision/scripting/controls/safe_control.cpp @@ -28,7 +28,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/graphics/render_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" #include "common/file.h" @@ -57,7 +56,7 @@ SafeControl::SafeControl(ZVision *engine, uint32 key, Common::SeekableReadStream // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -102,7 +101,7 @@ SafeControl::SafeControl(ZVision *engine, uint32 key, Common::SeekableReadStream } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } renderFrame(_curState); diff --git a/engines/zvision/scripting/controls/save_control.cpp b/engines/zvision/scripting/controls/save_control.cpp index 7de138d8e3..e27faa50b6 100644 --- a/engines/zvision/scripting/controls/save_control.cpp +++ b/engines/zvision/scripting/controls/save_control.cpp @@ -24,7 +24,6 @@ #include "zvision/scripting/controls/input_control.h" #include "zvision/scripting/controls/save_control.h" -#include "zvision/core/utility.h" #include "zvision/zvision.h" #include "zvision/scripting/script_manager.h" @@ -42,7 +41,7 @@ SaveControl::SaveControl(ZVision *engine, uint32 key, Common::SeekableReadStream _saveControl(false) { // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -66,7 +65,7 @@ SaveControl::SaveControl(ZVision *engine, uint32 key, Common::SeekableReadStream } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/controls/slot_control.cpp b/engines/zvision/scripting/controls/slot_control.cpp index 63578d54ea..292a2b4bc9 100644 --- a/engines/zvision/scripting/controls/slot_control.cpp +++ b/engines/zvision/scripting/controls/slot_control.cpp @@ -28,7 +28,6 @@ #include "zvision/scripting/script_manager.h" #include "zvision/graphics/cursors/cursor_manager.h" #include "zvision/graphics/render_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" @@ -42,7 +41,7 @@ SlotControl::SlotControl(ZVision *engine, uint32 key, Common::SeekableReadStream // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -98,7 +97,7 @@ SlotControl::SlotControl(ZVision *engine, uint32 key, Common::SeekableReadStream } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/controls/titler_control.cpp b/engines/zvision/scripting/controls/titler_control.cpp index af26aed952..10ba0af655 100644 --- a/engines/zvision/scripting/controls/titler_control.cpp +++ b/engines/zvision/scripting/controls/titler_control.cpp @@ -28,7 +28,6 @@ #include "zvision/text/text.h" #include "zvision/scripting/script_manager.h" #include "zvision/graphics/render_manager.h" -#include "zvision/core/utility.h" #include "common/stream.h" @@ -42,7 +41,7 @@ TitlerControl::TitlerControl(ZVision *engine, uint32 key, Common::SeekableReadSt // Loop until we find the closing brace Common::String line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); Common::String param; Common::String values; getParams(line, param, values); @@ -62,7 +61,7 @@ TitlerControl::TitlerControl(ZVision *engine, uint32 key, Common::SeekableReadSt } line = stream.readLine(); - trimCommentsAndWhiteSpace(&line); + _engine->getScriptManager()->trimCommentsAndWhiteSpace(&line); getParams(line, param, values); } diff --git a/engines/zvision/scripting/scr_file_handling.cpp b/engines/zvision/scripting/scr_file_handling.cpp index 631cb6128e..56d0c3bd7f 100644 --- a/engines/zvision/scripting/scr_file_handling.cpp +++ b/engines/zvision/scripting/scr_file_handling.cpp @@ -25,7 +25,6 @@ #include "zvision/zvision.h" #include "zvision/scripting/script_manager.h" -#include "zvision/core/utility.h" #include "zvision/scripting/puzzle.h" #include "zvision/scripting/actions.h" #include "zvision/scripting/controls/push_toggle_control.h" diff --git a/engines/zvision/scripting/script_manager.cpp b/engines/zvision/scripting/script_manager.cpp index 605d27216e..65077dfd12 100644 --- a/engines/zvision/scripting/script_manager.cpp +++ b/engines/zvision/scripting/script_manager.cpp @@ -29,7 +29,6 @@ #include "zvision/graphics/cursors/cursor_manager.h" #include "zvision/core/save_manager.h" #include "zvision/scripting/actions.h" -#include "zvision/core/utility.h" #include "zvision/scripting/sidefx/timer_node.h" #include "common/algorithm.h" @@ -812,6 +811,16 @@ void ScriptManager::flushEvent(Common::EventType type) { } } +void ScriptManager::trimCommentsAndWhiteSpace(Common::String *string) const { + for (int i = string->size() - 1; i >= 0; i--) { + if ((*string)[i] == '#') { + string->erase(i); + } + } + + string->trim(); +} + ValueSlot::ValueSlot(ScriptManager *scriptManager, const char *slotValue): _scriptManager(scriptManager) { value = 0; diff --git a/engines/zvision/scripting/script_manager.h b/engines/zvision/scripting/script_manager.h index 89b961634b..1e308faf0d 100644 --- a/engines/zvision/scripting/script_manager.h +++ b/engines/zvision/scripting/script_manager.h @@ -247,6 +247,15 @@ public: Location getLastLocation(); Location getLastMenuLocation(); + /** + * Removes any line comments using '#' as a sequence start. + * Then removes any trailing and leading 'whitespace' using String::trim() + * Note: String::trim uses isspace() to determine what is whitespace and what is not. + * + * @param string The string to modify. It is modified in place + */ + void trimCommentsAndWhiteSpace(Common::String *string) const; + private: void referenceTableAddPuzzle(uint32 key, PuzzleRef ref); void addPuzzlesToReferenceTable(ScriptScope &scope); |