{"name":"BIS_fnc_jukebox","operator":null,"title":"BIS fnc jukebox","type":"function","url":"https://community.bistudio.com/wiki/BIS_fnc_jukebox","revid":352108,"updated":"2024-02-01T23:24:56Z","groups":["Sound"],"status":"ok","replaced_by":[],"games":[{"game":"arma3","name":"Arma 3","version":"1.08"}],"since":{"game":"arma3","name":"Arma 3","version":"1.08"},"arma3_since":"1.08","branch":null,"locality":{"argument":null,"effect":null,"server_exec":false},"exec":null,"description":"Plays music, depending on the player group status.\n\n> [!NOTE]\n> If no music classes are given, the function will get them from config automatically.","syntaxes":[{"syntax":"[function, parameters] call BIS_fnc_jukebox","since":null,"effect":null,"exec":null,"params":[{"name":"function","type":"String","optional":true,"default":"\"initialize\"","description":"can be one of:\n- \"initialize\"\n- \"terminate\"\n- \"readContainerFromConfig\"\n- \"isInitialized\"\n- \"forceBehaviour\"\n- \"status\"\n- \"randomMusic\"\n- \"selectMusic\"\n- \"playMusic\"\n- \"nearEnemies\"\n- \"hasContact\"\n- \"isContact\"\n- \"isStealth\"\n- \"isCombat\"\n- \"isSafe\"\n- \"onEachFrame\"","types":["String"],"since":null,"text":"function: String - (Optional, default \"initialize\") can be one of:\n- \"initialize\"\n- \"terminate\"\n- \"readContainerFromConfig\"\n- \"isInitialized\"\n- \"forceBehaviour\"\n- \"status\"\n- \"randomMusic\"\n- \"selectMusic\"\n- \"playMusic\"\n- \"nearEnemies\"\n- \"hasContact\"\n- \"isContact\"\n- \"isStealth\"\n- \"isCombat\"\n- \"isSafe\"\n- \"onEachFrame\""},{"name":"parameters","type":"Array","optional":true,"default":null,"description":"**\"initialize\"**: [stealthMusics, combatMusics, safeMusics, volume, transition, radius, executionRate, noRepeat]\n  - stealthMusics: Array of Strings\n  - combatMusics: Array of Strings\n  - safeMusics: Array of Strings\n  - volume: Number\n- **\"terminate\"**: none\n- **\"readContainerFromConfig\"**: [wantedTheme]\n- **\"isInitialized\"**: none\n- **\"forceBehaviour\"**: [behaviour]\n  - behaviour: String - can be \"stealth\", \"combat\" or \"safe\". Any other value will reset the forced behaviour.\n- **\"status\"**: none\n- **\"randomMusic\"**: [container]\n  - container: Array of Strings - music list to choose from\n- **\"selectMusic\"**: none\n- **\"playMusic\"**: [musicName]\n  - musicName: String\n- **\"nearEnemies\"**: none\n- **\"hasContact\"**: none\n- **\"isContact\"**: none\n- **\"isStealth\"**: none\n- **\"isCombat\"**: none\n- **\"isSafe\"**: none\n- **\"onEachFrame\"**: none","types":["Array"],"since":null,"text":"parameters: Array - (Optional)\n\n- **\"initialize\"**: [stealthMusics, combatMusics, safeMusics, volume, transition, radius, executionRate, noRepeat]\n  - stealthMusics: Array of Strings\n  - combatMusics: Array of Strings\n  - safeMusics: Array of Strings\n  - volume: Number\n- **\"terminate\"**: none\n- **\"readContainerFromConfig\"**: [wantedTheme]\n- **\"isInitialized\"**: none\n- **\"forceBehaviour\"**: [behaviour]\n  - behaviour: String - can be \"stealth\", \"combat\" or \"safe\". Any other value will reset the forced behaviour.\n- **\"status\"**: none\n- **\"randomMusic\"**: [container]\n  - container: Array of Strings - music list to choose from\n- **\"selectMusic\"**: none\n- **\"playMusic\"**: [musicName]\n  - musicName: String\n- **\"nearEnemies\"**: none\n- **\"hasContact\"**: none\n- **\"isContact\"**: none\n- **\"isStealth\"**: none\n- **\"isCombat\"**: none\n- **\"isSafe\"**: none\n- **\"onEachFrame\"**: none"}],"returns":{"type":"- Array for:","types":["Array"],"description":"\"readContainerFromConfig\" - \"nearEnemies\" - a list of enemies nearby - Boolean for: - \"isInitialized\" - \"hasContact\" - \"isContact\" - \"isStealth\" - \"isCombat\" - \"isSafe\" - String for: - \"status\" - can be \"stealth\", \"combat\", \"safe\" or \"error\" - \"randomMusic\" - one of the available musics - \"selectMusic\" - Nothing for: - \"initialize\" - \"terminate\" - \"forceBehaviour\" - \"playMusic\" - \"onEachFrame\"","text":"- Array for:\n  - \"readContainerFromConfig\"\n  - \"nearEnemies\" - a list of enemies nearby\n\n- Boolean for:\n  - \"isInitialized\"\n  - \"hasContact\"\n  - \"isContact\"\n  - \"isStealth\"\n  - \"isCombat\"\n  - \"isSafe\"\n\n- String for:\n  - \"status\" - can be \"stealth\", \"combat\", \"safe\" or \"error\"\n  - \"randomMusic\" - one of the available musics\n  - \"selectMusic\"\n\n- Nothing for:\n  - \"initialize\"\n  - \"terminate\"\n  - \"forceBehaviour\"\n  - \"playMusic\"\n  - \"onEachFrame\""}}],"examples":[{"text":"```sqf\n[] call BIS_fnc_jukebox;\n```","code":["[] call BIS_fnc_jukebox;"]}],"multiplayer":null,"problems":null,"aliases":[],"see_also":["playMusic","BIS_fnc_music"],"notes":[],"categories":["Arma 3: Functions","Arma 3: New Functions","Function Group: Sound","Functions","Introduced with Arma 3 version 1.08"],"docblock":null,"filled_from_docblock":[]}