#include "..\script_component.hpp" /* Author: PDT for J. Schmidt sets up a slide show Arguments: 0: _screen - array of objects to display images on 1: _controllers - array of objects to use are controlers 2: _images - array of image paths; images should be powers of 2 3: _autoScroll - should the image auto-scroll 4: _units - unit(s) that should speak 5: _topic - conversation topic 6: _sentence - conversation sentence, "" = play all Return Value: - true if slide show was setup; false if not Example: [Screen01, [Controler01], ["images/folder/image.paa"]] call forge_client_briefing_fnc_initSlideShow; */ params [["_screens", []], ["_controllers", []], ["_images", []], ["_autoScroll", false], ["_units", []], ["_topic", ""], ["_sentence", ""]]; if (_screens isEqualTo []) exitWith { _return = false; _return }; if (_controllers isEqualTo []) exitWith { _return = false; _return }; if (_images isEqualTo []) exitWith { _return = false; _return }; { _x setVariable ["FORGE_SlideShow_Images", _images, true]; _x setVariable ["FORGE_SlideShow_Screens", _screens, true]; _x setVariable ["FORGE_SlideShow_CurrentIndex", 0, true]; _x setVariable ["FORGE_SlideShow_Controllers", _controllers, true]; _x setVariable ["FORGE_SlideShow_AutoScroll", _autoScroll, true]; _x setVariable ["FORGE_SlideShow_Units", _units, true]; _x setVariable ["FORGE_SlideShow_Topic", _topic, true]; _x setVariable ["FORGE_SlideShow_Sentence", _sentence, true]; [_x, ["Start Slide Show", { params ["_target", "_caller", "_actionId", "_arguments"]; _target setVariable ["FORGE_SlideShow_Started", true, true]; [_target] remoteExec ["forge_client_briefing_fnc_startSlideShow", 2, false]; }, nil, 1.5, true, true, "", "!(_target getVariable ['FORGE_SlideShow_Started', false])", 2.5, false, "", ""]] remoteExecCall ["addAction", 0, true]; [_x, ["Next Image", { params ["_target", "_caller", "_actionId", "_arguments"]; [_target] remoteExecCall ["forge_client_briefing_fnc_nextImage", 2, false]; }, nil, 1.5, true, true, "", "_target getVariable ['FORGE_SlideShow_Started', false] && {!(_target getVariable ['FORGE_SlideShow_AutoScroll', false])}", 2.5, false, "", ""]] remoteExecCall ["addAction", 0, true]; [_x, ["Previous Image", { params ["_target", "_caller", "_actionId", "_arguments"]; [_target] remoteExecCall ["forge_client_briefing_fnc_prevImage", 2, false]; }, nil, 1.5, true, true, "", "_target getVariable ['FORGE_SlideShow_Started', false] && {!(_target getVariable ['FORGE_SlideShow_AutoScroll', false])}", 2.5, false, "", ""]] remoteExecCall ["addAction", 0, true]; [_x, ["End Slide Show", { params ["_target", "_caller", "_actionId", "_arguments"]; [_target] remoteExecCall ["forge_client_briefing_fnc_endSlideShow", 2, false]; }, nil, 1.5, true, true, "", "_target getVariable ['FORGE_SlideShow_Started', false]", 2.5, false, "", ""]] remoteExecCall ["addAction", 0, true]; true } count (_controllers); _return = true; _return